私が2次元平面上の任意の2点(p1(x1、y1)、p2(x2、y1))であり、両方の点が中心(c(c1、c2))との線を形成するとしましょう。したがって、私は 2 つの行が同じポイントで終了します。これらの2本の線の間の角度を計算する方法を知りたいです。0〜2piの角度範囲を表示できるようにしたい。また、p1 と c によるライン フォームをライン 1 とその他のライン 2 にする 0-(-2pi) です。ありがとう
2723 次
2 に答える
2
中心と 2 点の間のデルタ ベクトルを見つけます
d1 = p1-c;
d2 = p2-c;
atan2 を使用して、これらのそれぞれの角度を取得できます。
angle1 = atan2(d1.Y, d1.X)
angle2 = atan2(d2.Y, d2.X)
希望の角度は単に違いです:
a = angle2-angle1;
角度を 0 と 2pi の間で表すか、-2pi と 0 で表すかによって、while ループを使用して 2pi を減算/2pi を追加し、必要な表現を取得することができます。人間に角度を提示するとき
于 2010-08-31T20:17:36.623 に答える
1
ポイントをベクトルに変換し (各終点から中心点を引きます)、内積を使用して角度を計算します。
于 2010-08-31T20:15:12.177 に答える