Java图形化编程学习笔记(一)

一个JavaFX应用程序

一、程序清单1.1

package javafx1;
import javafx.application.Application;
import javafx.scene.canvas.Canvas;
import javafx.scene.Scene;
import javafx.scene.Group;
import javafx.stage.Stage;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.shape.ArcType;

public class HappyFace extends Application
{
    
    
   public static void main(String[] args)
   {
    
    
      launch(args);
   }

   @Override
   public void start(Stage primaryStage) throws Exception
   {
    
    
	  Group root = new Group();
   	  Scene scene = new Scene(root);//设置场景
      Canvas canvas = new Canvas(400, 300);//设置画布
      GraphicsContext gc = canvas.getGraphicsContext2D();
      
      gc.strokeOval(100, 50, 200, 200);//圆
	  gc.fillOval(155, 100, 10, 20);//椭圆
	  gc.fillOval(230, 100, 10, 20);//椭圆
	  gc.strokeArc(150, 160, 100, 50, 180, 180, ArcType.OPEN);//弧

      root.getChildren().add(canvas);
      primaryStage.setTitle("HappyFace in JavaFX");//设置窗口标题
      primaryStage.setScene(scene);
      primaryStage.show();
   }
}

运行结果
在这里插入图片描述

二、绘制圆或椭圆

1.strokeOval方法(无填充)

public void strokeOval(double x, double y, double w, double h)

注:

  • x,y为包围椭圆或圆的矩形左上角坐标
  • w,h为矩形的宽度和高度

2.fillOval方法(有填充)

public void fillOval(double x, double y, double w, double h)

注:同上

三、绘制弧

strokeArc方法

public void strokeArc(double x, double y, double w, double h, double startAngle, double arcAngle, ArcType closure)

注:

  • x,y为包围椭圆或圆的矩形左上角坐标
  • w,h为矩形的宽度和高度
  • 椭圆焦点弦最右端为0°,逆时针方向为正角度,从startAngle开始,沿椭圆移动arcAngle°,绘制成弧
  • ArcType可以是ArcType.OPEN(弧的两个端点不连接)、ArcType.CHORD(线段连接弧的起点和终点)、ArcType.ROUND(线段连接弧的起点和椭圆圆心,再连接弧的终点,使其封闭)

猜你喜欢

转载自blog.csdn.net/m0_50115641/article/details/110285501