1
double testx, testy, testdeg, testrad, endx, endy;

testx = 1;
testy = 1;
testdeg = atan2( testx, testy) / Math::PI* 180;  
testrad = sqrt(pow(testx,2) + pow(testy,2));
endx = testrad * cos(testdeg);
endy = testrad * sin(testdeg);

endx と endy should = testx と testy を除いて、これのすべての部分は適切に等しいようです。

4

1 に答える 1

8

ここでは、2 つの問題が考えられます。

  • atan2私が知っているすべての言語で(y、x)の順序でパラメーターを取ります。(x,y) を渡しました。
  • cosパラメータをラジアンでsin受け取りますが、度で指定しています。角度をラジアン単位に保つために、180/pi による乗算を削除します。
于 2010-06-05T22:08:13.387 に答える