The Execute DAT lets you edit scripts and run them based on conditions. It can be executed at the start or end of every frame, or at the start or end of the TouchDesigner process. Text can be created in the DAT via the Node Viewer or an external text editor. Text can also can be passed into the Text DAT through the node's input, however this text will not be editable.
Execute DATs are created with default python method placeholders. For each monitored condition in the parameters, there is a matching python method in the DAT. When a condition is turned on in the parameters, each time that condition is satisfied the corresponding python method will be executed.
Parameters - Execute Page
active - While on, the DAT will respond to the events selected below.
executeloc - ⊞ - (Tscript only) Determines the location the script is run from.
- Current Node
current- (Tscript only) The script is executed from the current node location.
- This Node
here- The script is executed from the parent of the DAT. The DAT executes from the parent to make siblings of the DAT easy to access: DAT scripts used to execute from inside the DAT.
- Specified Operator
op- The script is executed from the operator specified in the From Operator parameter below.
fromop - This component is also the path that the script will be executed from if the Execute From parameter is set to Specified Operator.
start - The onStart() method is executed when TouchDesigner starts.
create - The create() method is executed when the node is created. This can be triggered on start, by loading a component from disk, by copying & pasting, or any other way a node can be created.
exit - The onExit() method is executed when the TouchDesigner process quits.
framestart - The onFrameStart() method is executed at the start of every frame.
frameend - The onFrameEnd() method is executed at the end of every frame.
Play State Change
playstatechange - The onPlayStateChange() method is executed each time the play state changes, ie. pause or play is used on the timeline.
devicechange - The onDeviceChange() method is executed each time devices are connected or disconnected from the computer. For example, plugging in MIDI devices, cameras, joysticks, etc.
NOTE: When using multiple Execute DATs with Start and Create functions, they are triggered in numbered-alphanumeric order of the DAT's names.
edit - Clicking this opens a text editor to edit text in the DAT.
TIP: To direct all "standard output" of python to a Text DAT, put this in the
sys.stdout = op('text1')
To safely to this and restore standard output:
prev = sys.stdout sys.stdout = op('text1') sys.stdout = prev
Parameters - Common Page
language - ⊞ - Select how the DAT decides which script language to operate on.
input- The DAT uses the inputs script language.
node- The DAT uses it's own script language.
extension - ⊞ - Select the file extension this DAT should expose to external editors.
dat- various common file extensions.
- From Language
language- pick extension from DATs script language.
- Custom Extension
custom- Specify a custom extension.
customext - Specifiy the custom extension.
wordwrap - ⊞ - Enable Word Wrap for Node Display.
input- The DAT uses the inputs setting.
on- Turn on Word Wrap.
off- Turn off Word Wrap.
|• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •|
An that manipulates text strings: multi-line text or tables. Multi-line text is often a command , but can be any multi-line text. are rows and columns of cells, each containing a text string.
The generic thing that holds an , and includes (display, bypass, lock, render, immune) and its position/size in the network. Whether you "lay down an Operator" or "lay down an Node", you're doing the same thing.
Any of the procedural data operators. OPs do all the work in TouchDesigner. They "cook" and output data to other OPs, which ultimately result in new images, data and audio being generated. See .