使用x3Dom创建动画的最佳方法是什么?

时间:2014-08-11 17:18:40

标签: javascript x3d x3dom

我想构建一个场景,其中包含一些由复选框切换的动画。单击时,我希望所有框元素的高度缩放到' .1'。再次单击时,我希望它返回到原始高度。我已尝试过Routes和TimeSensors,但发现它们难以使用。在x3dom中有没有更简单的动画选项?

以下是我在模板中使用的一些代码

<timeSensor DEF="time" cycleInterval="2" loop="false" > </timeSensor>
<positionInterpolator def="scale" key="0 1" keyValue="1 1 1  1 .1" ></positionInterpolator>
<route fromNode="time" fromField ="fraction_changed" toNode="scale" toField="set_fraction"></route> 
<route fromNode="scale" fromField ="value_changed" toNode="box" toField="size"></route>

1 个答案:

答案 0 :(得分:1)

TimeSensor是强制性的,因为他是触发插值器keyValue的人 这是一个简单的例子,TimeSensor非常易于使用:

  

DEF TS TimeSensor {cycleInterval 2 loop TRUE}
  DEF SI   ScalarInterpolator {
  键[0 0.5 1]
  核心价值   [2 2 2 1 1 1 0.5 0.5 0.5]}

     

ROUTE T​​S.fraction_changed TO SI.set_fraction
  ROUTE SI.value_changed TO   BOX.scale

定时器的分数被路由到ScalarInterpolator。每当分数大于键中的值(0,0.5或1)时,相应的keyValue(第N个索引)被路由到BOX的比例。就是这样......

如果想要效果较慢,可以增加TimeSensor的循环间隔。如果您想要只有一次效果,那么您可以将循环设置为FALSE。

你也可以拥有多个钥匙和钥匙。键值..