Heim > Java > javaLernprogramm > Hauptteil

Welche verschiedenen 2D-Formen bietet JavaFX?

PHPz
Freigeben: 2023-09-03 21:41:05
nach vorne
910 Leute haben es durchsucht

Hier sind die verschiedenen geometrischen Formen, die Sie mit JavaFX zeichnen können.

  • Linie – Eine Linie ist eine geometrische Struktur, die zwei Punkte verbindet. javafx.scene.shape. Die Klasse Line repräsentiert eine Linie in der XY-Ebene.

  • Rechteck – Ein Rechteck ist ein vierseitiges Polygon mit zwei Paaren paralleler und gleichzeitiger Seiten, und alle Innenwinkel sind rechte Winkel. javafx.scene. Die Klasse Rectangle repräsentiert ein Rechteck in der XY-Ebene.

  • Kreis strong> – Ein Kreis ist eine Linie, die eine geschlossene Schleife bildet, wobei jeder Punkt darauf einen festen Abstand vom Mittelpunkt hat. javafx.scene. Die Klasse Circle repräsentiert einen Kreis in der XY-Ebene.

  • Ellipse strong> – Eine Ellipse wird durch zwei Punkte definiert, jeder Punkt wird als Fokus bezeichnet. Nimmt man einen beliebigen Punkt auf der Ellipse, ist die Summe der Abstände zum Fokus konstant. Die -Klasse von javafx.scene.Ellipse stellt eine Ellipse in der XY-Ebene dar.

  • Polygon > – Eine geschlossene Form, die aus vielen koplanaren Liniensegmenten besteht, die Ende an Ende verbunden sind, wird als Polygon bezeichnet. Die Klasse javafx.scene.Polygon repräsentiert Polygone in der XY-Ebene.

  • Polylinie – Eine Polylinie ist dasselbe wie ein Polygon, außer dass die Polylinie am Ende nicht geschlossen ist. Oder eine durchgehende Linie, die aus einem oder mehreren Liniensegmenten besteht. Die Klasse javafx.scene.Polyline repräsentiert eine Polylinie in der XY-Ebene.

  • Kubische Kurve strong> – Eine kubische Kurve ist eine parametrische Bezier-Kurve in der XY-Ebene und eine kubische Kurve. Die Klasse javafx.scene.CubicCurve stellt eine kubische Kurve in XY dar.

  • QuadCurve – Eine quadratische Kurve ist eine parametrische Bezier-Kurve in der XY-Ebene und eine quadratische Kurve. Die Klasse javafx.scene.QuadCurve repräsentiert eine viereckige Kurve in der XY-Ebene.

  • Arc – Ein Bogen ist ein Teil einer Kurve. Die Klasse javafx.scene.Arc repräsentiert einen Bogen in der XY-Ebene.

Um die gewünschte Form zu erstellen, müssen Sie die entsprechende Klasse instanziieren -

  • .

  • Legen Sie seine Eigenschaften fest.

    li>
  • Fügen Sie das erstellte Objekt zur Gruppe hinzu.

Beispiel

Das folgende JavaFX-Beispiel demonstriert die Erstellung aller verfügbaren 2D-Formen −

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.shape.Arc;
import javafx.scene.shape.ArcType;
import javafx.scene.shape.Circle;
import javafx.scene.shape.CubicCurve;
import javafx.scene.shape.Ellipse;
import javafx.scene.shape.Line;
import javafx.scene.shape.Polygon;
import javafx.scene.shape.Polyline;
import javafx.scene.shape.QuadCurve;
import javafx.scene.shape.Rectangle;
import javafx.scene.text.Font;
import javafx.scene.text.FontPosture;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
public class JavaFXShapes extends Application {
   public void start(Stage stage) {
      Font font = Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 12);
      Text cirText = new Text("Circle");
      cirText.setFont(font);
      cirText.setX(50);
      cirText.setY(130);
      Text rectText = new Text("Rectangle");
      rectText.setFont(font);
      rectText.setX(170);
      rectText.setY(130);
      Text ellipseText = new Text("Ellipse");
      ellipseText.setFont(font);
      ellipseText.setX(310);
      ellipseText.setY(130);
      Text polyText = new Text("Polygon");
      polyText.setFont(font);
      polyText.setX(425);
      polyText.setY(130);
      Text lineText = new Text("Line");
      lineText.setFont(font);
      lineText.setX(530);
      lineText.setY(130);
      Text polyLineText = new Text("Poly Line");
      polyLineText.setFont(font);
      polyLineText.setX(40);
      polyLineText.setY(260);
      Text cubicCurveText = new Text("Cubic Curve");
      cubicCurveText.setFont(font);
      cubicCurveText.setX(140);
      cubicCurveText.setY(260);
      Text quadCurveText = new Text("Quad Curve");
      quadCurveText.setFont(font);
      quadCurveText.setX(340);
      quadCurveText.setY(260);
      Text arcText = new Text("Arc");
      arcText.setFont(font);
      arcText.setX(490);
      arcText.setY(260);
      //Drawing a circle
      Circle circle = new Circle(75.0f, 65.0f, 40.0f );
      //Drawing a Rectangle
      Rectangle rect = new Rectangle(150, 30, 100, 65);
      //Drawing an ellipse
      Ellipse ellipse = new Ellipse(330, 60, 60, 35);
      //Drawing Polygon
      Polygon poly = new Polygon(410, 60, 430, 30, 470, 30, 490, 60, 470, 100, 430, 100 );
      //Drawing a Line
      Line line = new Line(540, 30, 540, 90);
      line.setStrokeWidth(5.0);
      //Drawing a Poly line
      Polyline polyLine = new Polyline(25, 210, 100, 210, 50, 180, 50, 230);
      polyLine.setStrokeWidth(5.0);
      //Drawing a cubic curve
      CubicCurve cubicCurve = new CubicCurve(150.0, 210.0, 200.0, 70.0, 200.0, 290.0, 270.0, 210.0);
      //Drawing Quadratic curve
      QuadCurve quadCurve = new QuadCurve(400.0, 200.0, 440.0, 250.0, 330.0, 170.0);
      //Drawing an arc
      Arc arc = new Arc(490, 240, 50, 80, 30, 70);
      arc.setType(ArcType.ROUND);
      //Setting the stage
      Group root = new Group(
      circle, ellipse, rect, poly, line,
      polyLine, cubicCurve, quadCurve, arc,
      cirText, rectText, ellipseText, polyText, lineText,
      polyLineText, cubicCurveText, quadCurveText, arcText);
      Scene scene = new Scene(root, 600, 300);
      stage.setTitle("2D shapes Example");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}
Nach dem Login kopieren

Ausgabe

Welche verschiedenen 2D-Formen bietet JavaFX?

Das obige ist der detaillierte Inhalt vonWelche verschiedenen 2D-Formen bietet JavaFX?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage