5
我想找到座標的新值,如果我圍繞原點旋轉。如何旋轉座標系?
例如,說我有點(1,1)。 如果我圍繞原點旋轉座標軸45度,變換的座標將是(0,1.414)
有沒有辦法在cocos2d或objective-c中有效地做到這一點? 即使解答數學這樣做的答案也會有所幫助。
我想找到座標的新值,如果我圍繞原點旋轉。如何旋轉座標系?
例如,說我有點(1,1)。 如果我圍繞原點旋轉座標軸45度,變換的座標將是(0,1.414)
有沒有辦法在cocos2d或objective-c中有效地做到這一點? 即使解答數學這樣做的答案也會有所幫助。
參見本頁: http://www.siggraph.org/education/materials/HyperGraph/modeling/mod_tran/2drota.htm
這是下式:
X '= X COS的F - ý罪˚F
Y'= Y COS F + X罪˚F
請記住,sin和cos需要弧度,所以您必須這樣做:
double x,y;
double newX,newY;
double angle;
//Test values:
x=1;
y=1;
angle = 45;
double rad = angle*M_PI/180;
newX = x * cos(rad) - y * sin(rad);
newY = y * cos(rad) + x * sin(rad);
我沒有測試這個,所以可能有錯別字...;)
感謝您的回答。 – xcoder 2012-02-08 09:38:20