C#の使用:
中心座標と半径がある場合、円のエッジ上の(x、y)座標を特定の角度で取得するにはどうすればよいですか?
おそらく、SIN、TAN、COSIN、およびその他の10年生の数学が関係しています... :)
これはC#とは関係ありません。含まれているのはほんの一部の初等数学です。
x = x0 + r * cos(theta)
y = y0 + r * sin(theta)
シータはラジアン、x0とy0は中心の座標、rは半径、角度はx軸から反時計回りに測定されます。しかし、C#でそれが必要で、角度が度単位の場合:
double x = x0 + r * Math.Cos(theta * Math.PI / 180);
double y = y0 + r * Math.Sin(theta * Math.PI / 180);
ピタゴラスの定理を使用(x1、y1はエッジポイント):
x1 = x + r cos(theta)
y1 = y + r sin(theta)
c#では、次のようになります。
x1 = x + radius * Math.Cos(angle * (Math.PI / 180));
y1 = y + radius * Math.Sin(angle * (Math.PI / 180));
ここで、すべての変数はdoubles
であり、angle
は度単位です
Origin (j, k)
、半径r
、角度t
(ラジアン):
x(t) = r * cos(t) + j
y(t) = r * sin(t) + k