(Objective-C)ある中心座標から角度と距離を定義して円形の座標を取得する。

仕事で使うことがあったので備忘録として。

イメージしやすいものでいうと時計とかのイメージです。
中心点があって、そこから等距離に数字を配置したりするイメージ。
あれをコードで書くと以下のような形になります。

この例はobjective-Cですが、javaなどにも応用できます。

int angle = 30; // 角度
int radius = 50; // 半径
int centerX = 100; // 中心点X
int centerY = 100; // 中心点Y

// 角度を算出
double ragian = M_PI/180*angle;
// 座標の算出
int posX = centerX + radius * cos(ragian);
int posY = centerY + radius * sin(ragian);

また、ここにtangentの処理を追加すれば3Dのカメラワークなども作れたりします。
色々便利な三角関数でした。

この記事へのコメント