Original Spec| Sample

定義

PositionInterpolator { 
  eventIn      SFFloat set_fraction        # (-,)
  exposedField MFFloat key           []    # (-,)
  exposedField MFVec3f keyValue      []    # (-,)
  eventOut     SFVec3f value_changed
}
入力された値を位置に変換します。
set_fraction
keyの値を設定する
key
キーの集合
keyValue
キーに対応した値の集合
value_changed
出力される値(3次元位置座標)

サンプル

TimeSensorの出力は0-1ですので keyも0-1の間で指定します。
#VRML V2.0 utf8
DEF Obj Transform {
 children Shape {geometry Box {}}
}
DEF Polator PositionInterpolator {
 key [0, .4, .7, 1]
 keyValue [0 0 0, 2 0 0, 0 2 0, 0 0 0]
}
DEF Sensor TimeSensor {
  loop TRUE
  cycleInterval 10
  stopTime -1
}
ROUTE Sensor.fraction_changed TO Polator.set_fraction
ROUTE Polator.value_changed TO Obj.set_translation
#http://vrmlbyhand.hoops.ne.jp/ref/wrl/PositionInterpolator.wrl