2
フィギュアの回転を効率的に計算する方法は?
バイトの行列(ビットマップのような行列)で表されるFigureがあります。例の図はに示されていPicture 1ます。 目標は、特定の図の最適な回転角度を見つけることです。Figureが最適な角度だけ回転すると、X軸とY軸に平行でFigureに内接する長方形の面積が最小になります。 図に内接する長方形は、写真上で薄い灰色で示されています。ではPicture 2、あなたは図の理想的な回転が時計回りに約30度であることがわかります。 今、私はこの角度を見つける方法をアルゴリズムを知っていますが、それは非常に効率が悪いようです。こんなふうになります: 0から45までの角度でループします。 現在の角度について、すべての図形ポイントについて、新しい、回転した、位置を計算します 数字(最小および最大x、y)を含む長方形の境界を見つけ、これまでで最良の一致である場合は登録します 次の角度 これは一種のブルートフォース方式であり、小さな人物に対してはうまく機能し、適度に高速です。ただし、最大1,000万ポイントを含む数値を使用する必要があり、アルゴリズムが遅くなります。 この問題に適したアルゴリズムは何でしょうか?
13
c#
algorithms
geometry