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

JavaFX에서 호(Arc) 경로 요소 만드는 방법

ArcTo 클래스는 경로(path) 요소 중 하나인 호(arc)를 나타냅니다. 이 클래스를 활용하면 현재 좌표에서 지정된 새로운 좌표까지 곡선 형태의 호를 그릴 수 있습니다.

호 경로 요소 생성 절차

JavaFX에서 ArcTo 경로 요소를 만들려면 다음 순서대로 진행합니다.

  1. ArcTo 클래스의 인스턴스를 생성합니다.
  2. setter 메서드를 사용하거나 생성자에 값을 전달하여 해당 클래스의 속성 값들을 설정합니다.
  3. Path 클래스의 인스턴스를 생성합니다.
  4. 앞서 생성한 Path 객체에 대해 getElements() 메서드를 호출하여 관찰 가능한 리스트(observable list)를 가져옵니다.
  5. add() 메서드를 사용하여 해당 리스트에 ArcTo 객체를 추가합니다.
  6. 마지막으로, 완성된 경로를 Group 객체에 추가합니다.

예제 코드

다음은 MoveTo, LineTo와 함께 ArcTo 및 VLineTo를 조합하여 하나의 경로 위에 호를 그리는 예제입니다.

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.ArcTo;
import javafx.scene.shape.LineTo;
import javafx.scene.shape.MoveTo;
import javafx.scene.shape.Path;
import javafx.scene.shape.VLineTo;
public class ArcToExample extends Application {
   public void start(Stage stage) {
      //PathElement 객체 생성
      MoveTo moveTo = new MoveTo(490, 50);
      LineTo line1 = new LineTo(250, 250);
      //ArcTo 클래스 인스턴스화
      ArcTo arcTo = new ArcTo();
      arcTo.setX(300.0);
      arcTo.setY(50.0);
      arcTo.setRadiusX(50.0);
      arcTo.setRadiusY(50.0);
      //VLineTo 객체 생성
      VLineTo vLine = new VLineTo();
      vLine.setY(180);
      //경로(Path) 생성
      Path path = new Path();
      path.getElements().addAll(moveTo, line1, arcTo, vLine);
      //기타 속성 설정
      path.setStrokeWidth(8.0);
      path.setStroke(Color.DARKSLATEGREY);  
      //Stage 객체 준비
      Group root = new Group(path);
      Scene scene = new Scene(root, 595, 300, Color.BEIGE);
      stage.setTitle("JavaFX Example");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}

실행 결과

JavaFX에서 호(Arc) 경로 요소 만드는 방법

위 코드를 실행하면 시작점에서 직선을 따라 이동한 뒤, 설정된 반지름(radiusX, radiusY = 50)을 기준으로 목표 좌표까지 부드럽게 휘어진 호가 그려지고, 이어서 세로 선분까지 연결된 경로가 화면에 표시됩니다.