Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

JavaFX QuadCurve 완벽 가이드: 2차 곡선 그리는 방법

2차 곡선(Quadratic Curve)이란?

2차 곡선은 XY 평면 위에서 정의되는 2차(degree 2) 베지어 매개변수 곡선입니다. 시작점과 끝점, 그리고 하나의 조절점(control point)을 이용해 부드럽게 휘어진 곡선을 표현할 수 있습니다.

JavaFX에서는 이러한 2차 곡선을 javafx.scene.shape.QuadCurve 클래스로 나타냅니다. CubicCurve와 유사하지만, CubicCurve가 조절점 2개를 사용하는 것과 달리 QuadCurve는 조절점 1개만을 사용한다는 점이 다릅니다.

QuadCurve 클래스의 주요 속성

QuadCurve 클래스는 총 6개의 핵심 속성을 가지고 있으며, 각 속성은 대응하는 setter 메서드로 값을 설정할 수 있습니다.

  • startX − 곡선 시작점의 x 좌표를 나타냅니다. setStartX() 메서드로 값을 설정합니다.

  • startY − 곡선 시작점의 y 좌표를 나타냅니다. setStartY() 메서드로 값을 설정합니다.

  • controlX − 곡선의 모양을 결정하는 조절점의 x 좌표를 나타냅니다. setControlX() 메서드로 값을 설정합니다.

  • controlY − 조절점의 y 좌표를 나타냅니다. setControlY() 메서드로 값을 설정합니다.

  • endX − 곡선 끝점의 x 좌표를 나타냅니다. setEndX() 메서드로 값을 설정합니다.

  • endY − 곡선 끝점의 y 좌표를 나타냅니다. setEndY() 메서드로 값을 설정합니다.

2차 곡선을 그리는 절차

JavaFX로 2차 곡선을 화면에 그리려면 다음 세 단계를 따르면 됩니다.

  • 1단계: QuadCurve 클래스의 인스턴스를 생성합니다.

  • 2단계: setter 메서드를 사용하거나, 생성자에 인자를 직접 전달하여 필요한 속성 값들을 설정합니다.

  • 3단계: 생성된 노드(도형)를 Group 객체에 추가하여 장면(scene)에 표시합니다.

예제 코드

아래 예제는 시작점 (75, 75), 조절점 (250, 250), 끝점 (500, 260)을 가지는 2차 곡선을 그리고, 채우기 색상과 선 두께, 윤곽선 색상까지 함께 지정하는 전체 코드입니다.

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.QuadCurve;

public class DrawingQuadCurve extends Application {
    @Override
    public void start(Stage stage) {
       // 2차 곡선 그리기
       QuadCurve quadraticCurve = new QuadCurve();
       // 곡선의 좌표 속성 설정
       quadraticCurve.setStartX(75.0f);
       quadraticCurve.setStartY(75.0f);
       quadraticCurve.setControlX(250.0f);
       quadraticCurve.setControlY(250.0f);
       quadraticCurve.setEndX(500.0f);
       quadraticCurve.setEndY(260.0f);
       // 기타 스타일 속성 설정
       quadraticCurve.setFill(Color.CHOCOLATE);
       quadraticCurve.setStrokeWidth(8.0);
       quadraticCurve.setStroke(Color.BROWN);
       // Scene 객체 설정
       Group root = new Group(quadraticCurve);
       Scene scene = new Scene(root, 595, 300);
       stage.setTitle("Drawing a quadratic curve");
       stage.setScene(scene);
       stage.show();
    }
    public static void main(String args[]) {
       launch(args);
    }
}

실행 결과

위 코드를 실행하면 초콜릿색으로 채워지고 갈색 윤곽선이 둘러진 2차 곡선이 창에 출력됩니다. 조절점의 위치를 변경하면 곡선의 휘어짐 정도와 방향이 달라지므로, 다양한 좌표 값을 실험해 보면서 원하는 형태의 곡선을 만들어 보세요.

JavaFX QuadCurve 완벽 가이드: 2차 곡선 그리는 방법