JavaFX - 2D 形状 圆形

  • 简述

    圆是与固定点(圆心)相距固定距离(圆的半径)的所有点的轨迹。换句话说,圆是一条形成闭环的线,其上的每个点与中心点的距离都是固定的。
    一个圆由两个参数定义,即 -
    • Centre- 它是圆内的一个点。圆上的所有点都与中心点等距(相同距离)。
    • Radius− 半径是圆心到圆上任意一点的距离。它是直径的一半。
    圆圈
    在 JavaFX 中,圆由名为的类表示 Circle. 这个类属于包javafx.scene.shape.
    通过实例化此类,您可以在 JavaFX 中创建一个 Circle 节点。
    此类具有双数据类型的 3 个属性,即 -
    • centerX − 圆心的 x 坐标。
    • centerY − 圆心的 y 坐标。
    • radius - 圆的半径(以像素为单位)。
    要绘制一个圆,您需要将值传递给这些属性,或者通过将它们传递给此类的构造函数,以相同的顺序,在实例化时,如下所示 -
    
    Circle circle = new Circle(centerx, centery, radius);
    
    或者,通过使用它们各自的 setter 方法如下 -
    
    setCenterX(value);
    setCenterY(value);
    setRadius(value);
    
  • 画圆的步骤

    按照下面给出的步骤在 JavaFX 中绘制一个圆。

    第 1 步:创建一个类

    创建一个Java类并继承 Application 包的类别 javafx.application 并实施 start() 这个类的方法如下。
    
    public class ClassName extends Application {
       @Override
       public void start(Stage primaryStage) throws Exception {
       }
    }
    

    第 2 步:创建一个圆圈

    您可以通过实例化名为的类在 JavaFX 中创建一个圆 Circle 属于一个包 javafx.scene.shape, 实例化这个类如下。
    
    //Creating a circle object
    Circle circle = new Circle();
    

    第 3 步:为圆设置属性

    通过使用各自的 setter 方法设置属性 X、Y 和半径来指定圆心的 x、y 坐标和圆的半径,如下面的代码块所示。
    
    circle.setCenterX(300.0f);
    circle.setCenterY(135.0f);
    circle.setRadius(100.0f);
    

    步骤 4:创建组对象

    在里面 start() 方法,通过实例化名为的类创建一个组对象 Group,属于包 javafx.scene.
    将在上一步中创建的圆(节点)对象作为参数传递给 Group 类的构造函数,以便将其添加到组中,如下所示 -
    
    Group root = new Group(circle);
    

    步骤 5:创建场景对象

    通过实例化名为的类来创建场景 Scene 属于包 javafx.scene. 向这个类传递 Group 对象 (root),在上一步中创建。
    除了根对象,您还可以传递两个表示屏幕高度和宽度的双参数以及 Group 类的对象,如下所示。
    
    Scene scene = new Scene(group ,600, 300);
    

    第 6 步:设置舞台的标题

    您可以使用 setTitle() 的方法 Stage班级。这primaryStage 是一个 Stage 对象,它作为参数传递给场景类的 start 方法。
    使用 primaryStage 对象,将场景的标题设置为 Sample Application 如下。
    
    primaryStage.setTitle("Sample Application");
    

    第 7 步:将场景添加到舞台

    您可以使用方法将 Scene 对象添加到舞台 setScene() 类名为 Stage. 使用此方法添加前面步骤中准备的 Scene 对象,如下所示。
    
    primaryStage.setScene(scene);
    

    步骤 8:显示舞台内容

    使用 Stage 类的名为 show() 的方法显示场景的内容,如下所示。
    
    primaryStage.show();
    

    步骤 9:启动应用程序

    通过调用静态方法启动 JavaFX 应用程序 launch()Application 类从主要方法如下。
    
    public static void main(String args[]){
       launch(args);
    }
    

    例子

    以下是使用 JavaFX 生成圆的程序。将此代码保存在名称为的文件中CircleExample.java.
    
    import javafx.application.Application;
    import javafx.scene.Group;
    import javafx.scene.Scene;
    import javafx.stage.Stage;
    import javafx.scene.shape.Circle;
    
    public class CircleExample extends Application {
       @Override
       public void start(Stage stage) {
          //Drawing a Circle
          Circle circle = new Circle();
    
          //Setting the properties of the circle
          circle.setCenterX(300.0f);
          circle.setCenterY(135.0f);
          circle.setRadius(100.0f);
    
          //Creating a Group object
          Group root = new Group(circle);
    
          //Creating a scene object
          Scene scene = new Scene(root, 600, 300);
          //Setting title to the Stage
          stage.setTitle("Drawing a Circle");
    
          //Adding scene to the stage
          stage.setScene(scene);
    
          //Displaying the contents of the stage
          stage.show();
       }
       public static void main(String args[]){
          launch(args);
       }
    }
    
    使用以下命令从命令提示符编译并执行保存的 java 文件。
    
    javac CircleExample.java
    java CircleExample
    
    执行时,上面的程序会生成一个 javaFx 窗口,显示一个圆圈,如下所示。
    画圆