0

私は2つの形状を持っています。それは Shape1 と Shape2 と呼ばれます。そしてタッチセンサー。Shape1にタッチしたときにShape2を非表示にすることはできますか? もう一度Shape1にタッチすると、Shape2が再び表示されますか?

助けてくれてありがとう!

4

1 に答える 1

0

VRML を作成してからかなり時間が経ちましたが、ここにいくつかのアイデアがあります。

TouchSensor を Shape1 に取り付けます。次のいずれかを実行するように出力をルーティングします。

1) シェイプ 2 を透明にします (これで十分かもしれませんが、オブジェクトはまだそこにあります)、または 2) シェイプ 2 が見えないように非常に遠くに移動します、または 3) スイッチ ノードに移動します。 Shape2 は、Null オブジェクト (正当かどうかは不明) または小さなオブジェクトまたは非常に離れたオブジェクトと共に、Switch ノードにあります。4) Shape2 をグループ ノードに配置し、add または remove child を使用してそれを追加または削除するスクリプトにトリガーをルーティングします。

複雑な要因は、TouchSensor がクリックされたときにのみトリガーされ、瞬間的なスイッチとして機能することですが、おそらく必要なのはトグル スイッチです。そのためには、トグル機能を実装する短く単純なスイッチに出力をルーティングし、次にそのスクリプトの出力を、Shape2 を「非表示」にすることを選択する方法にルーティングする必要があります。非常に単純な例については、http://accad.osu.edu/~mlewis/VRML/Class/jsSwitchColor.htmlを参照してください。

于 2013-12-24T22:06:48.563 に答える