Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Path 클래스를 사용하여 JavaFX에서 사용자 정의 모양을 그리는 방법은 무엇입니까?


javafx.scene.shape 패키지는 다양한 2D 모양을 그릴 수 있는 클래스를 제공하지만 이는 선, 원, 다각형, 타원 등과 같은 원시적인 모양일 뿐입니다...

따라서 복잡한 사용자 정의 모양을 그리려면 Path 클래스를 사용해야 합니다.

경로 클래스

Path 클래스는 모양의 기하학적 윤곽을 나타내며 MoveTo, LineTo, HlineTo, VlineTo, ArcTo, QuadCurveTo, CubicCurveTo와 같은 다양한 경로 요소를 보유하는 관찰 가능한 목록에 첨부됩니다.

이 클래스의 생성자는 PathElement 유형의 변수 인수를 허용합니다. 주어진 경로 요소를 기반으로 경로를 구성합니다.

예시

Path 요소 MoveTo는 경로의 현재 위치를 지정된 지점으로 이동하는 데 사용되며 LineTo는 현재 좌표에서 지정된 좌표로 선을 그립니다.

다음 예에서는 MoveTo PathTo 및 Path 클래스를 사용하여 복잡한 맞춤형 모양을 그리려고 합니다. −

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.shape.LineTo;
import javafx.scene.shape.MoveTo;
import javafx.scene.shape.Path;
public class ComplexShape extends Application {
   public void start(Stage stage) {
      //Drawing the shape
      MoveTo moveTo = new MoveTo(108, 71);
      LineTo line1 = new LineTo(321, 161);
      LineTo line2 = new LineTo(126,232);
      LineTo line3 = new LineTo(232,52);
      LineTo line4 = new LineTo(269, 250);
      LineTo line5 = new LineTo(108, 71);  
      //Creating a Path
      Path path = new Path(moveTo, line1, line2, line3, line4, line5);
      //Preparing the Stage object
      Group root = new Group(path);
      Scene scene = new Scene(root, 600, 300);
      stage.setTitle("Drawing an arc through a path");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}

출력

Path 클래스를 사용하여 JavaFX에서 사용자 정의 모양을 그리는 방법은 무엇입니까?