別の点を中心に点を回転する (2D)
衝突検出の形状を定義する点を決定するには、回転する必要があります。ピボットポイントの周りの点。この場合、ピボット ポイントはシェイプの中心です。
別の点 (cx、cy) を中心に点 p をラジアン単位の角度だけ回転するには、次の手順に従います。
(cx, cy):
p.x -= cx; p.y -= cy;
点を反時計回りに回転します:
float xnew = p.x * cos(angle) - p.y * sin(angle); float ynew = p.x * sin(angle) + p.y * cos(angle);
(cx, cy):
p.x = xnew + cx; p.y = ynew + cy;
このメソッドを使用すると、任意の点を他の点を中心に回転させ、衝突検出用のオブジェクトの形状を決定できます。
以上が2D ポイントを別のポイントを中心に回転するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。