Original Spec|
Sample
定義
ProximitySensor {
exposedField SFVec3f center 0 0 0 # (-,)
exposedField SFVec3f size 0 0 0 # [0,)
exposedField SFBool enabled TRUE
eventOut SFBool isActive
eventOut SFVec3f position_changed
eventOut SFRotation orientation_changed
eventOut SFTime enterTime
eventOut SFTime exitTime
}
視点の移動を検知します。
- center
- 検知範囲の中心
- size
- 検知範囲の大きさ
- enabled
- 検知を行うかどうかのフラグ
- isActive
- 検知開始時(視点が検知範囲に入ったとき)に真、検知終了時
(視点が検知範囲から出たとき)に偽を送出
- position_changed
- 視点の位置
- orientation_changed
- 視線の方向
- enterTime
- 検知開始時に時間を送出
- exitTime
- 検知終了時に時間を送出
サンプル
円錐に近づいて行くと始めは大きさが変わるのですが、ある時大きさが
変わらなくなります. この時は上下に視点を動かしても物体も同じよう
に動くので見え方は変わりません.後ろに下がってゆくとまた大きさが
変わる様になり、この時は視点を上下に動かすと物体は動かず見え方が
変わります.
#VRML V2.0 utf8
DEF OBJ Transform {
children Transform {
translation 0 0 -5
children Shape { geometry Cone {}}
}
}
DEF SENSOR ProximitySensor {
size 10 10 10
}
ROUTE SENSOR.position_changed TO OBJ.set_translation