Rumah > Java > javaTutorial > Dalam JavaFX, apakah elemen laluan yang berbeza?

Dalam JavaFX, apakah elemen laluan yang berbeza?

王林
Lepaskan: 2023-08-28 12:53:20
ke hadapan
1083 orang telah melayarinya

javafx.scene.shape Pakej ini menyediakan beberapa kelas yang boleh anda gunakan untuk melukis pelbagai bentuk 2D, tetapi ini hanyalah bentuk primitif seperti garisan, bulatan, poligon dan bujur dan seterusnya... Jadi jika anda ingin melukis bentuk tersuai yang kompleks, anda perlu menggunakan kelas Path.

Kelas laluan

Kelas laluan Anda boleh melukis laluan tersuai menggunakan garis besar geometri ini yang mewakili bentuk.

Untuk melukis laluan tersuai, JavaFX menyediakan pelbagai elemen laluan, kesemuanya tersedia sebagai kelas dalam pakej javafx.scene.shape .

  • LineTo - Kelas ini mewakili elemen laluan line. Ia membantu anda melukis garis lurus dari koordinat semasa ke koordinat (baru) yang ditentukan.

  • HlineTo - Ini ialah kelas yang mewakili elemen laluan garis mendatar. Ia membantu anda melukis garisan mendatar dari koordinat semasa ke koordinat (baru) yang ditentukan.

  • VLineTo - Ini ialah kelas yang mewakili elemen laluan garis menegak. Ia membantu anda melukis garis menegak dari koordinat semasa ke koordinat (baharu) yang ditentukan.

  • QuadCurveTo - Kelas ini mewakili elemen laluan #🎜🎜 #lengkung kuadratik. Ia membantu anda melukis lengkung kuadratik daripada koordinat semasa kepada koordinat semasa Nyatakan koordinat (baru).

  • CubicCurveTo - Kelas ini mewakili elemen laluan kubik curve. Ia membantu anda melukis lengkung padu daripada koordinat semasa ke koordinat (baru) yang ditentukan.

  • ArcTo - Ini ialah kelas yang mewakili elemen laluan ARC. Ia membantu anda melukis lengkok dari koordinat semasa ke koordinat (baru) yang ditentukan.

  • MoveTo - Menggunakan kelas ini anda boleh mengalihkan laluan daripada koordinat semasa ke koordinat baharu.

Mencipta laluan menggunakan elemen laluan

Kelas Path mengandungi senarai boleh diperhatikan yang memegang laluan semasa. Jadi, untuk melukis laluan -

  • instantiate kelas PathElement yang diperlukan.

  • Tetapkan sifat setiap laluan menggunakan kaedah penetap, atau hantarkannya sebagai parameter kepada pembina.

  • Segera kelas Path.

  • Dapatkan objek yang boleh diperhatikan menggunakan kaedah

    getElements() untuk mendapatkan objek senarai Path yang dibuat di atas.

  • Tambahkan semua objek elemen laluan ke senarai yang boleh diperhatikan dalam susunan yang dikehendaki menggunakan kaedah add() atau addAll().

  • Akhir sekali, tambah laluan ke objek Kumpulan.

NOTE - Anda juga boleh menghantar elemen laluan kepada pembina kelas Path.

Contoh

Contoh JavaFX berikut menggunakan elemen laluan LineTo untuk mencipta laluan−

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.LineTo;
import javafx.scene.shape.MoveTo;
import javafx.scene.shape.Path;
public class PathElementsExample extends Application {
   public void start(Stage stage) {
      //Drawing the shape
      MoveTo moveTo = new MoveTo(208, 71);
      LineTo line1 = new LineTo(421, 161);
      LineTo line2 = new LineTo(226,232);
      LineTo line3 = new LineTo(332,52);
      LineTo line4 = new LineTo(369, 250);
      LineTo line5 = new LineTo(208, 71);
      //Creating a Path
      Path path = new Path(moveTo, line1, line2, line3, line4, line5);
      path.setFill(Color.DARKCYAN);
      path.setStrokeWidth(8.0);
      path.setStroke(Color.DARKSLATEGREY);
      //Preparing the Stage object
      Group root = new Group(path);
      Scene scene = new Scene(root, 595, 300, Color.BEIGE);
      stage.setTitle("Drawing an arc through a path");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}
Salin selepas log masuk
Output

Atas ialah kandungan terperinci Dalam JavaFX, apakah elemen laluan yang berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan