ホームページ  >  記事  >  Java  >  JavaでX軸を中心にポリゴンを垂直に回転させる方法は?

JavaでX軸を中心にポリゴンを垂直に回転させる方法は?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-27 07:25:29242ブラウズ

How to Rotate a Polygon Vertically Around the X-Axis in Java?

X 軸を中心に図形を垂直に回転する

提供された Java コードは、X 軸を中心にポリゴンを垂直に回転しようとしますが、回転は水平軸に沿って適用されます。ポリゴンを垂直方向に回転するには、コードでポリゴンの座標に直接回転変換を適用するのではなく、ポリゴンの Graphics2D オブジェクトに回転変換を適用する必要があります。

これを実現するには、コードに次の変更を加える必要があります。

  1. 提供された Graphics オブジェクトから Graphics2D オブジェクトを作成します:
<code class="java">Graphics2D g2d = (Graphics2D) g;</code>
  1. アンチエイリアシングを有効にするためにレンダリング ヒントを設定します:
<code class="java">g2d.setRenderingHint(
    RenderingHints.KEY_ANTIALIASING,
    RenderingHints.VALUE_ANTIALIAS_ON);</code>
  1. ポリゴンの中心点を計算します:
<code class="java">int centerX = (int) p2x.sum() / p2x.length;
int centerY = (int) p2y.sum() / p2y.length;</code>
  1. Graphics2D オブジェクトをポリゴンの中心に移動します:
<code class="java">g2d.translate(centerX - (getWidth() / 2), centerY - (getHeight() / 2));</code>
  1. X 軸を中心に Graphics2D オブジェクトを回転します:
<code class="java">g2d.rotate(Math.toRadians(angle), 0, getHeight() / 2);</code>
  1. 変換された Graphics2D オブジェクトを使用して多角形を描画します:
<code class="java">g2d.drawPolygon(p2);</code>

これらの変更により、ポリゴンは X 軸を中心に垂直に回転します。

以上がJavaでX軸を中心にポリゴンを垂直に回転させる方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。