回転した矩形からバウンディングボックス座標を計算する
2023-09-21 01:08:28
質問
長方形の左上の点の座標と、その幅、高さ、0~180および-0~180の回転があります。
私は、長方形の周りの実際のボックスの境界座標を取得しようとしています。
バウンディングボックスの座標を計算する簡単な方法は何ですか?
- 最小 y、最大 y、最小 x、最大 x?
A点は必ずしもmin y境界上にあるとは限らず、どこにあってもかまいません。
必要であれば、as3のtransformツールキットのmatrixを使用することができますね。
どのように解決するのですか?
- 四隅の座標を変換する
-
4つのxの最小値を次のように求めます。
min_x
-
4つのxのうち最大のものを求め、それを
max_x
- y の場合も同様
-
バウンディングボックスは
(min_x,min_y), (min_x,max_y), (max_x,max_y), (max_x,min_y)
AFAIK、もっと早く行ける王道はないんだ。
座標変換の方法に迷ったら、試してみてください。
x2 = x0+(x-x0)*cos(theta)+(y-y0)*sin(theta)
y2 = y0-(x-x0)*sin(theta)+(y-y0)*cos(theta)
ここで、(x0,y0) は回転する中心です。 三角関数(度数またはラジアンを期待するか)、座標系の意味/符号、角度を指定する方法などに応じて、これをいじる必要があるかもしれません。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン