TouchDesigner」タグアーカイブ

Multi Touch In DAT

概要

Multi Touch In DATは、Windows7以降の標準マルチタッチAPIからメッセージとイベントを受信するために使用されます。 すべてのメッセージをキャプチャし、新しいメッセージごとに出力するテーブルを変更します。 メッセージがDATに追加されると、新しいメッセージを指す任意のスクリプトを呼び出すことができます。 Multi Touch In DATは、最も頻繁にRender Pick DATに送信されます。
次の2つのテーブル形式のいずれかを出力できます。(1)生のイベントをFIFO(first in – first out)リストとして、または(2)IDテーブル。これは、より使いやすいone-row-per-fingerのテーブルに処理されるイベントです。
Raw Eventsフォーマットでは、FIFOタイプのDAT(FIFO DATも参照)が作成され、マルチタッチイベントごとにテーブルの下部に行が追加され、同時に上部の行が削除されます。

注意:Windows 7、8、または10のイベントストリームを介してイベントを送信するマルチタッチスクリーンでパネルガジェットを操作するには、DATを必要とせずにマルチタッチが機能します。 オブジェクトを選択する3Dレンダリングを表示するコンテナのように、1つのパネルで複数の指を使用する場合は、DATを使用する必要があります。
IDテーブル形式には、次の列が含まれます。

  • id
    指を押すたびにIDが1増えます。
  • sn
    各指のプレスの継続的なカウント。
  • select
    1の場合、この行は指が下がっていることを表します。
  • downf
    指で押したときの絶対フレーム番号。
  • upf
    指のプレスが終了した絶対フレーム番号。
  • x, y
    水平方向と垂直方向のピクセル単位の位置。 注:x値とy値は、パネルの幅/高さのピクセルではなく、画面のピクセルで表されます。 たとえば、パネルが別のパネル、ウィンドウ、またはネットワークビューア内で拡大縮小されている場合、パネルの右上隅は異なります。 uとvを使用し、パネルの幅と高さでスケーリングすることをお勧めします。
  • u, v
    位置、水平・垂直方向に0~1
  • downu, downv
    最初にタッチしたときの水平方向と垂直方向の位置(最初にタッチダウンした位置)を0から1までの範囲で指定します。
  • contactx, contacty
    接触領域の幅との高さ。contactu、contactv
  • monitor
    0から始まるモニター番号
  • clicktime
    クリック回数。downfのように、数秒で
  • elapsedtime
    指がダウンしている秒数。
  • changedtime
    指で押してから最新のuまたはv値が変更された時間。
  • dclick
    ダブルタップの発生
  • aux
    イベントは、PanelCOMP_Class メソッド interactTouch() を介してユーザが提供したデータを使用します。 Include Mouse オプションを使用してイベントがマウスによってトリガーされると、auxには使用されるマウスボタンが含まれます(左に1、中央に2、右に4、ビット単位でテストできます)。

添付のcallback DAT(`mtouchin1_callbacks`という名前)を使って、マルチタッチイベントに反応させることができます。これはRender Pick DATを必要としない2Dインターフェースに適しています。
パレットのToolsの下にあるmultiTouchの例を参照してください。
MultiTouch の章も参照してください。

パラメータ – Multi Touch In ページ
Active / active

ActiveがOnの時のイベントを登録します。

Output / outputtype

テーブルでの出力の表示方法を設定します。

  • Raw Events / log
    イベントは、first in – first out(FIFO)の順序でテーブルに追加されます。
  • ID Table / changes
    イベントは、テーブル内のone-row-per-fingerを使って処理されます。
Panel / panel

タッチイベントをキャプチャするパネルコンポーネントを設定します。

Relative IDs / relativeid

指定したパネル内のタッチIDのみがカウントされるように、タッチIDを並べ替えます。

Relative Position / relativepos

指定したパネルの左下隅を基準とした位置と正規化された座標を出力します。

Include Mouse / mouse

オンにすると、マウスがクリックされたときにタッチイベントを追加します。このイベントは常に最初のタッチと ID 1 を共有します。マウスとマルチタッチを同時に使用すると、予期せぬ動作をすることがあります。

Position Threshold / posthresh

指の移動がこの単位数よりも少ない場合、新しいメッセージは追加されません。単位は入力デバイスによって決定され、必ずしもそれに関連付けられた画面の解像度ではありません。

Contact Threshold / contactthresh

タッチデバイスの中には、指の接触量の圧力を表すプレスの幅と高さを持っているものがあります。これは、イベントが認識されない最小のしきい値を設定します。

Min Rows Displayed / minrows

テーブルに常に表示される行数の最小値を設定します。

Double Click (secs) / doubleclickthresh

クリック間の最大許容時間を設定して、ダブルクリックとして登録します。

パラメータ – Received Messages ページ
Callbacks DAT / callbacks

コールバックを含む DAT へのパスを設定します。

Execute from / executeloc

スクリプトが実行される場所を設定します。

  • Current Node / current
    スクリプトは現在のノードの位置から実行されます。
  • Callbacks DAT / callbacks
    スクリプトは、Callbacks DATパラメータで指定されたDATの場所から実行されます。
  • Specified Operator / op
    スクリプトは、以下のFrom Operatorパラメータで指定したオペレータから実行されます。
From Operator / fromop

Execute FromパラメーターがSpecified Operatorに設定されている場合に実行されるスクリプトのパスを設定します。

Clamp Output / clamp

DATはデフォルトで100メッセージに制限されていますが、Clamp Outputでは無制限を含む任意の設定が可能です。

Maximum Lines / maxlines

メッセージ数を制限し、古いメッセージはリストから最初に削除されます。

Clear Output / clear

見出し以外の行をすべて削除します。スクリプトコマンドでクリアするには、次のような例があります。: `opparm -c /serial1 clear`

パラメータ – Common ページ

参照:共通 Common ページ

Merge DAT

概要

Merge DATは、入力DATのテキストまたはテーブルをマージするマルチ入力DATです。

パラメータ – Merge ページ
DAT / dat

マージする DAT へのパスを設定します。オペレータの有線入力と組み合わせて使用することができます。

How / how

テーブルをマージする方法を設定します。

  • Append Rows / row
    後続のテーブルの行を最初のテーブルに追加することにより、テーブルをマージします。 Name オプションを使用すると、後続のテーブルのデータが同じ名前の列に追加され、最初の行は追加されません。 後続のテーブルに入力テーブルよりも多くの列がある場合、それらは追加されます。
  • Append Columns / col
    後続のテーブルの列を最初のテーブルに追加して、テーブルをマージします。Name オプションを使用すると、後続のテーブルのデータが同じ名前の行に追加され、最初の列は追加されません。 後続のテーブルに入力テーブルよりも多くの行がある場合、それらは追加されます。
  • Collapse Columns / collapsecol
    行内のすべてのセルを1つの単一のセルに連結することにより、テーブルをマージします。 最後に1つの列と1つ以上の行を持つことになります。
  • Collapse Rows / collapserow
    列内のすべてのセルを1つの単一のセルに連結することにより、テーブルをマージします。最後に1行と1つ以上の列を持つことになります。
  • Collapse Cells / collapsecells
    すべてのセルを連結してテーブルをマージします。 最後に1つのセルがあります。
  • Replace Cells by Column / repcolcells
    最初のテーブルのデータを行名で一致する後続のテーブルのデータで置き換えます。最後のテーブルのデータが常に使用されます。
  • Replace Cells by Row / reprowcells
    最初のテーブルのデータを列名で一致する後続のテーブルのデータに置き換えます。最後のテーブルのデータが常に使用されます。

例えば、最初の入力テーブルが

Name Species Age
Birch Ferret 6
Diefenbaker Ferret 4

という順番で、さらに2つの入力テーブルがあります。

Name Species Age
Birch Ferret 5
Diefenbaker Wolverine 5
Name Species Age
Birch Ferret 6
Diefenbaker Otter 10

出力テーブルは以下のようになります。

Name Species Age
Birch Ferret 5

By Name / byname

列や行を名前で追加するかどうか設定します。

Concatenate with / spacer

連結時にセルデータを文字列で区切ることができます。デフォルトはスペースです。

Append Unmatched / unmatched

後続のテーブルに最初のテーブルにない行または列がある場合、出力に追加されます。

パラメータ – Common ページ

参照:共通 Common ページ

Insert DAT

概要

Insert DATは既存のテーブルに行または列を挿入します。
スペースを区切って、新しいセルに配置する文字列を追加できます。 セルにスペースを含める場合は、Contentsパラメーターにセルの内容を引用符で囲みます: `cell1’cell 2’cell3`。 または、パラメータ式のリスト: `[‘cell1’、 ‘cell 2’]`
入力DATがテーブルでない場合は、テーブルに変換されます。

パラメータ – Insert ページ
Insert / insert

何を挿入するか設定します。

  • Row / row
    行を挿入します。
  • Column / col
    列を挿入します。
At / at

挿入する箇所を設定します。

  • Before First / start
    冒頭に挿入します。
  • After Last / end
    最後に追加します。
  • Index / index
    指定したインデックスに挿入します。
Index / index

行または列を挿入するインデックス。ローカル変数 $NR と $NC を使用して、テーブルの最後に追加することができます。

Contents / contents

スペースで区切られた各セルのエントリ。例えば、`Name Species “Home Planet”` は最初のセルに Name、2 番目に Species、3 番目に Home Planet を配置します。余分なエントリは無視されます。

パラメータ – Common ページ

参照:共通 Common ページ

Info DAT

概要

Info DAT は、ノードに関する文字列情報を提供します。いくつかのノードだけが、Info DATでアクセスできる追加の文字列情報を含んでいます。

パラメータ – Info ページ
Operator / op

Info DATが情報を取得するオペレータへのパスを設定します。任意のノードをドラッグ&ドロップするか、フィールドに直接パスを入力します。

Passive / passive

このオプションがoffの場合、Info DATは情報が変更されたときに自動的に更新されます。onにすると、データが古い場合とそうでない場合があり、Info DATの内容を更新するために強制的にcookが必要になる場合があります。このパラメータは、不必要なcookを防ぐのに役立ちます。

パラメータ – Common ページ

参照:共通 Common ページ

Indices DAT

概要

インデックスDATは、開始値と終了値の間にある一連の数値を表に作成します。これらの値は、グラフの水平軸または垂直軸に沿って表示するのに適しています。これらの値は、それらがすべて四捨五入され、きれいに間隔をあけて表示されるように選ばれます。

パラメータ – Indices ページ
Start / start

数字の範囲の開始点を設定します。

End / end

数字の範囲の終了点を設定します。

Level / level

範囲をどのように分割するかを設定します。粗 = 0、中 = 1、細 = 2。

Origin / origin

シリーズの最初の番号を設定します。

パラメータ – Common ページ

参照:共通 Common ページ

In DAT

概要

In DATは、コンポーネント内にDAT入力を作成するために使用します。コンポーネントの入力は、コンポーネントの左側に英数字で表示されます。In DAT への入力を切断しても、元の入力にインスタンス化されたコンテンツは保持されます。

パラメータ – In ページ
Label / label

カーソルがこのコンポーネント入力の上に移動すると表示されるポップアップラベルを設定します

パラメータ – Common ページ

参照:共通 Common ページ

File Out DAT

概要

File Out DATを使用すると、DATの内容を .dat ファイルまたは .txt ファイルに書き出すことができます。 .dat ファイルは、テーブルDATの配列を保持するために使用されるTouchDesignerのファイルタイプの1つです。
File Out DATの入力が0の場合、 send コマンドを使用してテキストを送信するようにトリガーできます。
Append がオフの場合、毎回新しいファイルが書き込まれます。Append がオンの場合、ファイルは追加され、ファイルハンドルは開いたままになります。

パラメータ – File Out ページ
File / file

書き込むファイルのファイルシステムパスとファイル名を設定します。

N / n

ファイル名に `me.par.n` (Tscriptでは$N) を使用して (Fileパラメータで) ファイル名をインクリメントする方法をここではNパラメータと組み合わせて使用します。N パラメータは毎回手動でインクリメントしなければなりません。新しいファイルを保存するたびにインクリメントするCount CHOPをエクスポートすると簡単にできます。

Write File / write

このボタンを押すと、ファイルが1回書き込まれます。

Append (txt Only) / append

ファイルの内容を完全に上書きするのではなく、テキストをファイルに追加します。

パラメータ – Common ページ

参照:共通 Common ページ

Execute DAT

概要

Execute DATを使用すると、スクリプトを編集して、条件に基づいて実行できます。 すべてのフレームの開始時または終了時、またはTouchDesignerプロセスの開始時または終了時に実行できます。 テキストは、ノードビューアまたは外部テキストエディタを介してDATで作成できます。 テキストは、ノードの入力を介してテキストDATに渡すこともできますが、このテキストは編集できません。
Execute DATはデフォルトのPythonメソッドのプレースホルダで作成されます。パラメータで監視されている各条件に対して、DATにはそれにマッチしたpythonメソッドが存在します。パラメータで条件がオンになると、その条件が満たされるたびに対応する python メソッドが実行されます。

パラメータ – Execute ページ
Active / active

onの間、DATは以下で設定されたイベントに応答します。

Execute from / executeloc

(Tscript のみ) スクリプトが実行される場所を設定します。

  • Current Node / current
    (Tscript のみ) スクリプトは現在のノードの位置から実行されます。
  • This Node / here
    スクリプトはDATの親から実行されます。 DATは親から実行され、DATの兄弟に簡単にアクセスできるようにします。DAT内部から実行するために使用されるDATスクリプト。
  • Specified Operator / op
    スクリプトはFrom Operatorパラメータで設定したオペレータから実行されます。
From Operator / fromop

ExecuteFromパラメーターがSpecifiedOperatorに設定された場合の実行されるスクリプトのパスを設定します。

Start / start

onStart()メソッドはTouchDesignerの起動時に実行されます。

Create / create

create() メソッドは、ノードが作成されたときに実行されます。これは、起動時、ディスクからのコンポーネントのロード、コピー&ペースト、その他の方法でノードを作成することでトリガーすることができます。

Exit / exit

onExit() メソッドは、TouchDesigner プロセスが終了したときに実行されます。

Frame Start / framestart

onFrameStart() メソッドは、各フレームの開始時に実行されます。

Frame End / frameend

onFrameEnd()メソッドは、各フレームの終了時に実行されます。

Play State Change / playstatechange

onPlayStateChange()メソッドは、再生状態が変化するたびに実行されます。 例えばタイムラインで一時停止または再生が使用された場合などです。

Device Change / devicechange

onDeviceChange() メソッドは、デバイスがコンピュータに接続または切断される毎に実行されます。例えば、MIDI デバイス、カメラ、ジョイスティックなどを接続した場合などです。

注意:Start関数とCreate関数で複数のExecute DATを使用している場合、DATの名前の番号付き英数字順にトリガされます。

Edit.. / edit

これをクリックすると、DAT内のテキストを編集するためのテキストエディタが開きます。

TIP:Pythonのすべての標準出力を Text DAT に送信するには、これをstart()メソッドに入れます。sys.stdout= op( ‘text1’)
これを安全に行い、標準出力を復元するには:

prev = sys.stdout
sys.stdout = op(‘text1’)
sys.stdout = prev

パラメータ – Common ページ

参照:共通 Common ページ

Error DAT

概要

エラーDATには、最新のTouchDesignerエラーがFIFO(first in/first out)テーブルに一覧表示されます。
深刻度、タイプ、エラーが発生したノードのパスなど、いくつかの列のパターンマッチングを使用してメッセージをフィルタリングすることができます。1つの列として、エラーが発生した絶対フレーム(`absTime.frame`)があります。

パラメータ – Error ページ
Active / active

ログにメッセージを追加することを禁止/許可します。

Severity / severity

出力のフィルタパターン。message, warning, abort のいずれかを組み合わせて使用することができます。

Type / type

ソース オペレータ ファミリが指定された出力に対するフィルタパターン。オペレータ ファミリの組み合わせまたは1つを設定することができます。

Source / source

エラーのログをプロジェクト内の特定の場所に制限できる出力のフィルターパターン。

Message / message

エラーメッセージに適用される出力のフィルタパターン。

Log Current Errors / logcurrent

すべてのノードをトラバースし、現在のすべてのエラーをキャプチャします。

パラメータ – Log ページ
Callbacks DAT / callbacks

DATのスクリプトは、メッセージが来るたびに一度だけ実行されます。使い方は errorDAT_Class の章を参照してください。

Execute from / executeloc

スクリプトが実行される場所を設定します。

  • Current Node / current
    スクリプトは現在のノードの位置で実行されます。
  • Callbacks DAT / callbacks
    スクリプトはCallbacks DATパラメータで指定されたDATの場所で実行されます。
  • Specified Operator / op
    スクリプトはFrom Operatorパラメータで設定したオペレータで実行されます。
From Operator / fromop

Execute From パラメータがSpecified Operatorに設定されている場合、スクリプトが実行されるパスを設定します。

Clamp Output / clamp

DATはデフォルトでは100メッセージに制限されていますが、Clamp Outputでは無制限を含む任意の設定が可能です。

Maximum Lines / maxlines

メッセージの数を制限し、メッセージはリストから古い順に削除されます。

Clear Output / clear

ヘッダ以外の行をすべて削除します。

パラメータ – Common ページ

参照:共通 Common ページ

Convert DAT

概要

Convert DATはテキスト形式を単純なテキストから表形式に、またその逆も同様に変更します。

パラメータ – Convert ページ
How / how

変換するテキスト形式を設定します。

  • Input / input
    DATは入力スクリプト言語を使用します。
  • Node / node
    DATは自身に設定されたスクリプト言語を使用します。
Remove Blank Lines / removeblank

有効にすると、空行を空行に変換しません。

Split Cells at / delimiters

文字列をセルに分割するために使用する個々の文字リストを設定します。区切り文字はそれぞれ独立して使用されます。このパラメータで$%を設定した場合、セルは$%だけでなく、$ 或いは %で分割されます。Substitute DATは、より複雑なデリミタを1つの文字に折りたたんで変換するために使用します。

Concatenate with / spacers

表からテキストに変換する際に、各セルの間にこの文字列を挿入します。

パラメータ – Common ページ

参照:共通 Common ページ