count = 271;
while (Number(count)<=360) {
set("sin" add count, eval ("sin"
add (360 - count)) * -1);
count = Number(count)+1;
}
count = 0;
while (Number(count)<=90) {
set("cos" add count, eval ("sin"
add (90 - count)));
count = Number(count)+1;
}
count = 91;
while (Number(count)<=180) {
set("cos" add count, eval ("cos"
add (180 - count)) * -1);
count = Number(count)+1;
}
count = 181;
while (Number(count)<=270) {
set("cos" add count, eval ("cos"
add (count - 180)) * -1);
count = Number(count)+1;
}
count = 271;
while (Number(count)<=360) {
set("cos" add count, eval ("cos"
add (360 - count)) );
count = Number(count)+1;
}
上面的代码设置不同范围内"整数角度"的正弦、余弦值,请注意这里是"整数角度"。
6.回到图层Action,在第10帧插入关键帧,设置此帧的标签为Sin ,在此帧添加如下Action:
call("adjustAngle");
output = eval ("sin" add intDegree);
获得正弦的值并在输出框"output"中输出,第1条语句表示调用标签为"adjustAngle",即第3个关键帧中的程序,第2条语句表示从输出框中输出正弦的值。
7.在第20帧插入关键帧,设置此帧的标签为Cos,在此帧添加如下Action:
call("adjustAngle");
output = eval ("cos" add intDegree);
表示获得余弦的值并在输出框"output"中输出
在第33帧插入关键帧,设置此帧的标签为adjustAngle,在此帧添加如下Action:
call("adjustAngle2");
if (Number(intDegree)>360) {
intDegree = intDegree-(int(intDegree/360)*360);
}
if (Number(intDegree)<0) {
if (Number(intDegree) intDegree = intDegree-(int(intDegree/360)*360);
}
intDegree = Number(intDegree)+360;
}
第1条语句表示调用标签为"adjustAngle2"的帧,即第4个关键帧的程序。下面的语句表示:输入角度大于360或小于0两种情况下的角度取值。
最后在第43帧插入关键帧,设置此帧的标签为adjustAngle2,在此帧添加如下Action:
if (Number(arg)>0) {
if (Number(int(Number(arg)+.5))>Number(int(arg)))
{
intDegree = int(Number(arg)+.5);
} else {
intDegree = int(arg);
}
} else {
if (Number(int(arg-.5)) intDegree = int(arg-.5);
} else {
intDegree = int(arg);
}
}
以上程序表示:当输入的角度为小数时,把角度值化为整数。
|