Original Spec| Sample

定義

NormalInterpolator { 
  eventIn      SFFloat set_fraction       # (-,)
  exposedField MFFloat key           []   # (-,)
  exposedField MFVec3f keyValue      []   # (-,)
  eventOut     MFVec3f value_changed
}
set_fraction
入力
key
キーとなる値
keyValue
キーに対応する値
value_changed
出力

サンプル

緑色が点滅して見えるのは、一定の照明に対して法線が変化している ためです.
#VRML V2.0 utf8
Shape {
  geometry IndexedFaceSet {
    coord Coordinate  {point [1 0 0, 0 1 0, -1 0 0]}
    color Color { color [1 1 1] }
    coordIndex [0 1 2 -1 ]
    colorIndex [0 0 0 -1 ]
    solid FALSE
    normal DEF NOR Normal {vector [0 0 1, 0 1 0]}
    normalIndex [0 1 1 -1 ]
  }
  appearance Appearance {  material Material {} }
}
DEF SENSOR TimeSensor {
 loop TRUE
 stopTime -1
 cycleTime 10
}
DEF POL NormalInterpolator {
 key [0 .5  1]
 keyValue [0 0 1  0 1 0, 
           0 1 0  0 1 0, 
           0 0 1  0 1 0]
}
DirectionalLight {
  color 0 1 0 
  direction 0 0 -1
}
ROUTE SENSOR.fraction_changed TO POL.set_fraction
ROUTE POL.value_changed TO NOR.set_vector