Ale*_*lex 0 math flash trigonometry
嘿偷看,我得到了这个代码:
red = red + 1;
trace("red: " + red);
trace("Math.sin(red): " + Math.sin(red));
var newRed:uint = Math.abs(Math.sin(red)) * 255;
trace("newRed: " + newRed);
Run Code Online (Sandbox Code Playgroud)
此代码输出以下内容:
red: 256
Math.sin(red): -0.9992080341070627
newRed: 254
red: 257
Math.sin(red): -0.5733571748155426
newRed: 146
red: 258
Math.sin(red): 0.37963562682930313
newRed: 96
red: 259
Math.sin(red): 0.9835931839466808
newRed: 250
Run Code Online (Sandbox Code Playgroud)
等等
当我将sin(257)插入计算器时,我得到-0.974370064785235,但Flash正在提出-0.5733571748155426
编辑:-
但是当我插入sin(256)时,我从每个中获得相同的数字.这让我很困惑.
我有点困惑为什么会这样.请帮忙.亚历克斯
确保提供正确格式的输入参数.有些人可能希望参数以弧度表示角度,有些在度数上.
http://en.wikipedia.org/wiki/Sine?section=9#Properties_relating_to_the_quadrants
根据Action Script引用,sin函数将参数视为弧度.