> Java > java지도 시간 > Java에서 X축을 중심으로 도형을 수직으로 회전하는 방법은 무엇입니까?

Java에서 X축을 중심으로 도형을 수직으로 회전하는 방법은 무엇입니까?

DDD
풀어 주다: 2024-10-26 16:07:03
원래의
631명이 탐색했습니다.

How to Rotate a Shape Vertically Around the X-axis in Java?

X축을 중심으로 도형을 수직으로 회전하는 방법

2D 그래픽 작업을 하다 보면 도형을 회전시켜야 하는 경우가 많습니다. 축. 이는 변환 조합을 사용하여 달성할 수 있습니다.

x축을 중심으로 모양을 회전하는 한 가지 방법은 AffineTransform 클래스를 사용하는 것입니다. 이 클래스는 회전을 포함하여 모양에 대한 변형을 수행하기 위한 다양한 메서드를 제공합니다.

x축을 중심으로 모양을 회전하려면 AffineTransform 클래스의 Rotate() 메서드를 사용할 수 있습니다. 이 메서드는 두 가지 인수, 즉 라디안 단위의 회전 각도와 회전이 발생해야 하는 지점의 x 및 y 좌표를 사용합니다.

예를 들어 다음 코드는 x축을 중심으로 도형을 다음과 같이 회전합니다. 45도:

<code class="java">AffineTransform at = new AffineTransform();
at.rotate(Math.toRadians(45), x, y);</code>
로그인 후 복사

AffineTransform 객체를 생성한 후에는 Shape 클래스의 변환() 메서드를 사용하여 도형에 적용할 수 있습니다. 이 메소드는 AffineTransform 개체를 인수로 사용하고 모양에 변환을 적용합니다.

예를 들어 다음 코드는 AffineTransform 개체를 다각형에 적용합니다.

<code class="java">Polygon polygon = new Polygon();
at.transform(polygon, polygon);</code>
로그인 후 복사

일단 적용한 후 도형으로 변환하려면 Graphics2D 클래스의 draw() 메서드를 사용하여 그릴 수 있습니다.

예를 들어 다음 코드는 다각형을 그립니다.

<code class="java">Graphics2D g2d = (Graphics2D) g;
g2d.draw(polygon);</code>
로그인 후 복사

Scaling 모양

모양을 회전하는 것 외에도 크기를 조정할 수도 있습니다. 이는 AffineTransform 클래스의 scale() 메서드를 사용하여 달성할 수 있습니다. 이 메서드는 x 및 y 배율 인수라는 두 가지 인수를 사용합니다.

예를 들어 다음 코드는 모양의 배율을 2배로 조정합니다.

<code class="java">at.scale(2, 2);</code>
로그인 후 복사

배율 변환을 적용한 후 Graphics2D 클래스의 draw() 메서드를 사용하여 모양을 그릴 수 있습니다.

예를 들어 다음 코드는 크기가 조정된 다각형을 그립니다.

<code class="java">g2d.draw(polygon);</code>
로그인 후 복사
로그인 후 복사

변환 결합

AffineTransform 클래스의 concatenate() 메서드를 사용하여 여러 변환을 결합할 수 있습니다. 이 메서드는 다른 AffineTransform 개체를 인수로 사용하여 현재 변환에 적용합니다.

예를 들어 다음 코드는 회전 및 크기 조정 변환을 결합합니다.

<code class="java">at.concatenate(at2);</code>
로그인 후 복사

변환의 경우 Shape 클래스의 변환() 메서드를 사용하여 모양에 적용할 수 있습니다.

예를 들어 다음 코드는 결합된 변환을 다각형에 적용합니다.

<code class="java">at.transform(polygon, polygon);</code>
로그인 후 복사

한 번 결합된 변환을 모양에 적용한 경우 Graphics2D 클래스의 draw() 메서드를 사용하여 그릴 수 있습니다.

예를 들어 다음 코드는 변환된 다각형을 그립니다.

<code class="java">g2d.draw(polygon);</code>
로그인 후 복사
로그인 후 복사

위 내용은 Java에서 X축을 중심으로 도형을 수직으로 회전하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿