DATs」カテゴリーアーカイブ

MQTT Client DAT

概要

MQTT Client DATは、MQTTサーバー(ブローカー)を介してMQTT装置との間でデータを送受信します。 TouchDesignerはクライアントとして動作し、別のコンピュータはMQTTサーバーとして動作する必要があります。 クライアントがサーバーとの接続を確立すると、次の2つのことができます。
1.サーバーにメッセージを送信して、特定の「トピック」文字列を持つデータに注目します。 これは「subscribing」と呼ばれます。 次にMQTT Client DATは、サーバーがそのトピックを取得するすべてのメッセージを受け取ります。
2.特定のトピック文字列でサーバーにメッセージを送信し、そのトピックのメッセージを送信することをサーバーに通知します。 その後、メッセージはそのトピックを注目したクライアントに転送されます。

WebSocket DAT

概要

WebSocket DATはWebSocketメッセージを受信して解析します。 WebSocketはWebサーバーとクライアントが使用する効率的な双方向通信プロトコルです。 各メッセージは解析され、DATのテーブルの行として追加されます。 テーブルは先入れ先出し型のFIFOであり、パラメータセット数に制限されています。 受信したパケットごとにオプションでスクリプトを実行することが出来ます。 WebSocket DATはバージョン0.9.14までのSocket.IOハンドシェークプロトコルもサポートしています。
関連項目:TCP / IP DAT

UDT Out DAT

概要

UDT Out DATは遠隔に配置されたコンピュータ間のUDT接続を介して情報を送信します。
udtoutDAT_Classを使用してメッセージを送信します。 UDT In DATに接続されたコールバックDATを使用して、受信したメッセージを処理します。 ネットワークプロトコルの章を参照してください。
このオペレータはOutするノードですが、送信先のマシンからの返信メッセージを受け取ることが出来ます。 メッセージはDATの内容に表示されます(UDT In DATと同様)。
Tscriptはsendコマンドを使用してデータ出力を開始します。
参照:UDT in DAT

UDT In DAT

概要

UDT In DATは、遠隔地にある2台のコンピュータ間のUDT接続を介して情報を受信します。 キューイングやバッファリングなしですべてのメッセージをキャプチャして、必要なメッセージを送信することができます。 UDTストリーミングは、信頼できるストリーミング接続指向のプロトコルです。 1台のサーバーから複数のクライアントに同時に送信することが出来ます。
UDT In DATに接続されたコールバックDATを参照して受信したメッセージを処理します。 udtinDAT_Classを使用して返信を送信します。
UDT Out DAT、ネットワークプロトコルの章も参照してください。

TUIO In DAT

概要

TUIO In DATは、TUIOメッセージ(ネットワーク経由で受信)を受信し、テーブル列を解析します。 TUIOはOSCバンドルをパケット化するので、TUIOデータはOSC In DATのより未処理の形式で見ることができます。
TUIOおよびネットワークプロトコルの章も参照してください。

Touch Out DAT

概要

Touch Out DATは、他のネットワークベースのDATを使用したメッセージとは異なり、ネットワークを介して別のTouchDesignerプロセスのTouch In DATへフルDATテーブルを送信します。 TouchDesignerプロセス間でデータを同期するための非常に強力なメカニズムです。
UDP Out DATの章も参照してください。

Touch In DAT

概要

Touch In DATは他のネットワークベースのメッセージではなく、Touch Out DATからネットワークを介してフルテーブルを受信します。
UDP Out DATの章も参照してください。

Serial DAT

概要

Serial DATは、RS-232プロトコルを使用して外部ポートを介したシリアル通信を行います。 これらのポートは通常、9ピンコネクタ、新しいマシンではUSBポートです。 (USBポートを使用するにはUSB-シリアルアダプタとドライバが必要です)コンピュータで利用可能なシリアルポートはWindowsオペレーティングシステムのデバイスマネージャのComputer –> Manage -> Devices -> Serial… -> COMに全て表示されます。 これらの名前は「COM」で始まります。 例:COM1、COM2、COM3。
この接続からバイトを送信するには、serialDAT_Classのsendメソッド、またはTscriptのsendコマンドを参照してください。
ArduinoとSerial CHOPの章も参照してください。

Script DAT

概要

Script DATはDATがcookされる度にスクリプトを実行して、オプションの入力テーブルに基づいて出力テーブルを構築/変更します。Script DATは、cook、onPulse、setupParametersという3つのPythonメソッドを含むアタッチされたDATで作成されます。 cookメソッドは、Script DATがCookingされる度に実行されます。 setupParametersメソッドは、[Script]ページの[Setup Parameter]ボタンが押される度に実行されます。 onPulseメソッドは、カスタムパルスパラメータがプッシュされる度に実行されます。
Help -> Python Examples 或いは Help -> Operator Snippetを参照してください。
注意:Script OPが実行されるたびに、依存するオペレータ、パラメータ、ノードなどのリストが作成され、変更されると、Script OPは再作成されます。
参照:Script CHOP、Script SOP

OP Find DAT

概要

OP Find DATは、1つのコンポーネントを起点としてコンポーネント階層を横断して全てのノードを調べます。ユーザーが設定した基準に一致するノードを1行のテーブルで出力します。 例えば「すべてのRamp TOPs」または「名前が “wave”で始まるすべてのノード」または「Cloneパラメータが “master1″に設定されたすべてのノード」または 「”emitter”というタグを持つすべてのGeometryコンポーネント」などの基準を設定することが出来ます。
条件には、特定のファミリのノードまたは特定のオペレータタイプのみに制限することができます。 パス、特定の値(定数と式の両方)、コメント、タグ、または特定の文字列を含むDATの内容を含む特定のパラメータをフィルタすることができます。
また、指定されたコンポーネントから階層の深さを2レベル下までに制限、あるいは無制限になど検索を制限することもできます。
条件で大文字小文字を区別するかどうか設定することができます。大文字と小文字を区別するオンまたはオフは、OP検索DATのすべての条件に適用されます。
さらに、接続されたコールバックDATに含まれるコールバックにTrue/Falseを返すことによって、より特殊な基準を使用していくつかのノードを除外することができます。
フィルターの組み合わせメニュー(任意あるいは全て、デフォルトは全て)では、パターンマッチングの基準に「or」または「and」を使用できます。
また、フィルタを連結させるオペレータのリスト(例えば別のOP Find DAT)のオプションのDATを使用することも出来ます。

出力列
名前、ID、パス、タイプ、タグなど選択できるさまざまな列があります。 (idはオペレータに付けられた固有の整数です。TouchDesignerプロセスの実行中は変更されません。)
コールバックDATの列名を設定して、コールバックDAT内の別の関数を介して列セルを入力することによって、カスタム列を出力することが出来ます。 例えばノードのtxパラメータ値のカスタム列を出力することが出来ます。
OP Find DATがいつcookするか制御することが出来ます。 通常、指定した階層内のノードのいずれかが変更される毎にcookします。 Active Cookパラメータでフレームごとに強制的にcookすることも、完全にcookをオフにすることも出来ます。 また、Active CookのPulseパラメータをクリックして強制的にcookしたり、node.cookpulse.pulse()pythonコールを使用して同等の処理を実行することも出来ます。
OP Find DATは、起点となるコンポーネントのパスを設定する代わりに、事前生成されたノードへのパスのリストDATを取り込み、各入力ラインの結果を出力に併合することが出来ます。 これを行うためには、入力DATに最初の列としてノード “id”を含める必要があります。これは別のOPで作成します。
例えば、まず全てのパネルコンポーネントをリストし、次にタイプまたはColumnsパラメータでグループに分けます。 最初のOP Find DATでは、事前にノードの巨大な階層をフィルタリングします。その後のOP Find DATは、より多くのチェックとcookを排除するために、よりシンプルなセットで動作します。
Help -> Operator Snippetsを参照してください。