🚩
Dynamoサンプル:制御文
if文で実行/実行しない
例えば、選択した図形の画層が「_1」の場合のみ、その図形を移動したい時。

こんな風に作成してみる。条件式がfalseで、出力がnullになってはいる。

でもどちらも移動されてしまう。

なぜならifの前は全部実行されてしまうので、ifの前の「移動を実行」グループはtrueだろうがfalseだろうが、実行されてしまうのだ。

じゃあ、どうするか?
これが正解かはわからないのだけど、ScopeIfを使うとよいみたい。ただし、ScopeIfはカスタムノードで使用しないと、うまく動いてくれないらしい。
「オブジェクトの選択」と「X移動量」以外を選択し、背景で右クリック(ノードの上ではダメ)、「カスタムノードを作成」を選択。

「名前」と「アドオンのカテゴリ」を適当に入力。

作成されたノードを右クリックし、「カスタムノードを編集」を選択。

IfをScopeIfに変更し、保存して閉じる。

実行してみると、「_1」画層以外では動かないようになる。

Discussion