角度を指定して、円周上の点の位置を取得しますか?


回答:


23

これは、基本的な三角法を使用して解決できます。 http://www.freehomeworkmathhelp.com/Trigonometry/Trigonometry_Introduction/trigonometry.html

Tan(angle) = Opposite / Adjacent
Sin(angle) = Opposite / Hypotenuse
Cos(angle) = Adjacent / Hypotenuse

私はいつも上記を覚えています

The Old Arab
Sat On His
Camel And Howled

上記は、直角三角形の角度と1つの長さがあれば、他の辺の長さを計算できることを意味します。幸いなことに、問題は三角形の辺の長さを計算することと考えることができます。

円の三角形の画像

上記で、rは斜辺、xは隣接、yは反対です。

xの場合:

Cos(a) = x / r
Cos(a) * r = x
x = Cos(a) * r

yの場合:

Sin(a) = y / r
Sin(a) * r = y
y = Sin(a) * r

これは(0、0)の円を想定しているため、円の中心に追加します。

radius = 1;
CenterX = 0.5;
CenterY = 0.5;

x = Cos(angle) * radius + CenterX;
Y = Sin(angle) * radius + CenterY;

注: C#数学関数はラジアン単位の角度を使用するため、度数がある場合は最初に変換します。

radians = degrees * Math.PI / 180

1
角度はラジアン単位でなければならないことに注意してください。
bummzack

数学ライブラリに依存しますが、良い点は、XNA / .Netはラジアンを使用します。
ジョージダケット

なぜ古いアラブ人はWhyえたのですか?ここで私たちはすべて英語を話すわけではないので、概念的なメモ規則はニーモニック文よりもはるかに優れています
-FxIII

1
@FxIII:確かに、これは最も人気のあるメモではありませんが、SOHCAHTOAよりも覚えやすいのは珍しいことです。
ジョージデュケット

または、概念に慣れたら、必要な年に1回または2回、調べてみてください。
テトラッド
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.