【发布时间】:2012-03-06 10:35:21
【问题描述】:
我目前正在尝试修改一些示例代码,但在尝试用变量替换硬编码坐标时遇到了问题。
以下示例代码有效:
TweenMax.to(sp,
5,
{bezierThrough:[{x:250,y:100},{x:50,y:200},{x:500,y:200}],
onUpdate:drawme,
onUpdateParams:[sp]});
但是当我尝试用变量替换贝塞尔点时,我得到一个运行时错误,指出 Shape 的属性 0 不存在。 sp 是 Shape 类型。 (以下为完整错误)。
var centralLinePoints:Array = new Array();
for (var i:int = 0; i < data.nodes.length; i++)
{
var foo:Object = data.nodes[i].data.abc;
var bar:Number = data.nodes[i].data.def;
if (foo != null)
{
centralLinePoints.push({x: bar, y: foo});
}
}
TweenMax.to(sp,
5,
{bezierThrough:[centralLinePoints],
onUpdate:drawme,
onUpdateParams:[sp]});
我找到了这个文档:http://www.greensock.com/as/docs/tween/com/greensock/plugins/BezierThroughPlugin.html,但我不确定是什么类型。
完全错误:
ReferenceError:错误 #1069:在 flash.display.Shape 上找不到属性 0,并且没有默认值。 在 com.greensock.plugins::BezierPlugin/init()[C:[...]\greensock-as3\com\greensock\plugins\BezierPlugin.as:99] 在 com.greensock.plugins::BezierThroughPlugin/onInitTween()[C:[...]\greensock-as3\com\greensock\plugins\BezierThroughPlugin.as:68]
[对格式感到抱歉]
【问题讨论】:
标签: flash actionscript tween gsap