ゲームなどでは円周上の座標を求めたい時などがあります。例えば自分の周りをぐるぐる回るバリアを作りたいときなどです。
この画像で言う黄色い円の座標をどうやって求めるかという話です。
sinとcosを使うだけです。これに角度を渡すだけです。簡単にいうと下記です。
例えばJavaScriptのプログラミングになおすと下記です。
const x = Math.cos(angle)
const y = Math.sin(angle)
むちゃくちゃ簡単ですね!
ただ、angleは0~360の角度ではありません。ラジアン単位に変換する必要があります。これは数学で習いますし決まりきっているので簡単です。
const radianAngle = angle * Math.PI / 180
このradianAngleを先程のcos, sinに渡します。
cos, sinの答えは0~1で返ってきます。そのため、半径をかけてあげる必要があります。これで実際の座標が出せます。
const x = radius * Math.cos(radianAngle)
const y = radius * Math.sin(radianAngle)
これの逆をやりたい時はタンジェントとかや逆三角関数とかがまた出てきます。プログラミングにはどれも同様の機能があるためそれを呼ぶだけなので簡単です。
Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント