JavaFX에서 호(Arc)란 무엇인가?
일반적으로 호(Arc)는 곡선의 일부를 이루는 작은 선분을 의미합니다. JavaFX에서는 javafx.scene.shape.Arc 클래스가 호를 표현하며, 이 클래스에는 다음과 같은 여섯 가지 핵심 속성이 있습니다.
centerX − 호 중심점의 x 좌표를 나타냅니다. setCenterX() 메서드를 사용해 값을 설정할 수 있습니다.
centerY − 호 중심점의 y 좌표를 나타냅니다. setCenterY() 메서드를 사용해 값을 설정할 수 있습니다.
radiusX − 현재 호가 속한 전체 타원의 너비(가로 반지름)를 나타냅니다. setRadiusX() 메서드로 값을 설정합니다.
radiusY − 현재 호가 속한 전체 타원의 높이(세로 반지름)를 나타냅니다. setRadiusY() 메서드로 값을 설정합니다.
startAngle − 호가 시작되는 각도를 도(degree) 단위로 나타냅니다. setStartAngle() 메서드로 값을 설정합니다.
length − 호가 차지하는 각도 범위를 도(degree) 단위로 나타냅니다. setLength() 메서드로 값을 설정합니다.
또한 setType() 메서드를 사용하면 호의 형태를 지정할 수 있으며, ArcType.OPEN(열린 호), ArcType.CHORD(현으로 닫은 형태), ArcType.ROUND(부채꼴 형태) 세 가지 유형 중에서 선택할 수 있습니다.
JavaFX에서 호를 만드는 절차
JavaFX로 호를 그리려면 아래 세 단계만 거치면 됩니다.
- Arc 클래스의 인스턴스를 생성합니다.
- setter 메서드를 호출하거나 생성자에 인수를 전달하여 필요한 속성을 설정합니다.
- 생성된 노드(도형)를 Group 객체에 추가합니다.
예제 코드
다음은 중심 좌표, 반지름, 시작 각도, 각도 범위를 지정하여 초콜릿색 부채꼴 호를 화면에 그리는 완전한 JavaFX 예제입니다.
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import javafx.scene.shape.Arc;
import javafx.scene.shape.ArcType;
public class DrawingArc extends Application {
public void start(Stage stage) {
// 호(Arc) 객체 생성
Arc arc = new Arc();
// 호의 속성 설정
arc.setCenterX(280);
arc.setCenterY(230);
arc.setRadiusX(100);
arc.setRadiusY(180);
arc.setStartAngle(45);
arc.setLength(100);
arc.setType(ArcType.ROUND);
// 기타 스타일 속성 설정
arc.setFill(Color.CHOCOLATE);
arc.setStrokeWidth(8.0);
arc.setStroke(Color.BROWN);
// Scene 객체 구성
Group root = new Group(arc);
Scene scene = new Scene(root, 595, 300, Color.BEIGE);
stage.setTitle("Drawing arc");
stage.setScene(scene);
stage.show();
}
public static void main(String args[]) {
launch(args);
}
}
실행 결과
위 코드를 실행하면 시작 각도 45도, 각도 범위 100도로 설정된 초콜릿색 채우기와 갈색 테두리를 가진 부채꼴 모양의 호가 베이지색 배경 위에 나타납니다.
