Delete CHOP

From TouchDesigner 099 Wiki

Summary

The Delete CHOP removes entire channels and/or individual samples of its input.

For deleting channels, on the Channels page, you can specify which channels to delete by channel name or a channel number range. A second method deletes channels using a value range to select channels whose values are all within a range. The third method deletes constant-valued channels. An option selects whether to delete or retain the matched channels.

For deleting individual samples (i.e. no channels are deleted), on the Samples page you can delete, for example, only the samples whose value is below 0, which will shorten the length of the CHOP.

In CHOPs with two or more channels, one or more "compare" channels are used to determine which samples are to be deleted. By default it uses the first channel to compare against. Deleting a sample at a certain index deletes a value for all the channels. If there are 4 channels, red, green, blue, alpha and you specify alpha as the "compare" channel, you can delete all the samples with an alpha of 0. If a CHOP is 3 channels with an X,Y,Z position, you can delete all samples where the XYZ length is below a threshold.

This is useful, for example, for thinning your data before sending a CHOP to a Geometry component for instancing.

When all the samples are deleted, the CHOP will keep one sample for all channels and will have a length of one sample. When this happens, if you have an Info CHOP attached to the Delete CHOP, it's

See also Splice CHOP, Select CHOP, Trim CHOP

PythonIcon.png deleteCHOP_Class

Parameters - Channels Page

Delete Channels - Toggle to enable channel deleting.

Delete - Determines whether the scoped channels should be deleted or retained:

  • Scoped Channels - The scoped channels are deleted. The rest are output.
  • Non-Scoped Channels - The scoped channels are output. The rest are deleted.

Select Channels - How to select channels - By Name, or By Numeric index.

Channel Names - Enter a scope pattern here to specify the names of channels to delete or extract. You do this by specifying a scope pattern, as detailed in Pattern Matching.

The default scope pattern t* will scope the translation channels: tx, ty, and tz , or any other channel whose name starts with t.

Channel Numbers - The indices of the channels to delete or extract. - See possible number patterns below.

Channel Value - Chooses the type of value range selection:

  • Off - Don't perform range selection.
  • Channel Completely Within Range - All the channel's samples must be within the specified range for it to be selected.
  • Channel Partially Within Range - At least one of the channel's samples must be in the range for it to be selected.
  • Channel Completely Outside Range - None of the channel's samples can be in the range for it to be selected.

Value Range /selrange - The lower and upper values of the range used for Range Selection.

Select Constant Valued Channels - Select channels which have the same value for all samples. These kinds of channel name patterns are used to select existing channels in an input CHOP, see Pattern Matching for details.

Also these kinds of channel number patterns can be used to select existing channels in an input CHOP:

  • 0 1 4 - Matches the first, second and fifth channel.
  • [0-4] - Matches the first five channels.
  • [3-9:2] - Matches channels at indices 3,5, 7 and 9.

Parameters - Samples Page

Delete Samples - Toggle to enable sample deleting.

Channels to Compare /compchans - How to select channels used to compare against criteria - By Name, by Numeric index, by using the First Channel, or by using the Last Channel.

Channel Names /compnames - Enter a scope pattern here to specify the names of channels to be used as compare channels. You do this by specifying a scope pattern, as detailed in Pattern Matching.

The default scope pattern t* will scope the translation channels: tx, ty, and tz , or any other channel whose name starts with t.

Channel Numbers /compnums - The indices of the channels to be used as compare channels, the default being 0, the first channel. - See possible number patterns above.

Multi-Compare Channels /compmulti - If there is more that one compare channel, this determines how to treat the values in the compare channels before checking against the criteria:

  • Any Chan in Range /any - Delete the sample if any of the compare channels meets the criteria.
  • All Chans in Range /all - Delete the sample if all the compare channels meets the criteria.
  • Add /add - Add all the compare channels and delete the sample if the result meets the criteria.
  • Subtract /sub - Subtract all the compare channels from the first and delete the sample if the result meets the criteria.
  • Multiply /mul - Multiply all the compare channels and delete the sample if the result meets the criteria.
  • Divide /div - Divide the first channel by rest of the compare channels and delete the sample if the result meets the criteria.
  • Average /avg - Find the average of all the compare channels and delete the sample if the result meets the criteria.
  • Minimum /min - Find the minimum of all the compare channels and delete the sample if the result meets the criteria.
  • Maximum /max - Find the maximum of all the compare channels and delete the sample if the result meets the criteria.
  • Length /len - Assume all the compare channels are vectors and find their length, and delete the sample if the result meets the criteria.

Delete Condition /condition - Choose the criteria for the samples to be compare against:

  • Less Than Value 1 /less - Delete if the comparing samples are below Value 1.
  • Greater Than Value 1 /greater - Delete if the comparing samples are above Value 1.
  • Equal to Value 1 /equal - Delete if the comparing samples are equal to Value 1.
  • Not Equal to Value 1 /notequal - Delete if the comparing samples are not equal to Value 1.
  • Inside Range /inside - Delete if the comparing samples are inside the range assigned by Value 1 and Value 2.
  • Outside Range /outside - Delete if the comparing samples are outside the range assigned by Value 1 and Value 2.

Value 1 /value1 - Set a value for Value 1.

Include Value 1 /inclvalue1 - Toggle the inclusivity of Value 1.

Value 2 /value2 - Set a value for Value 2.

Include Value 2 /inclvalue2 - Toggle the inclusivity of Value 2.

Delete Compare Channels /deletecomp - Determines whether the compare channels should be deleted or retained.

One Sample if All Deleted /onesample - Leaves one sample even when all samples are deleted.

Standard Options and Local Variables

None.