Java绘制椭圆是一种常见的图形绘制方式,它可以用来表示不同的形状,如圆形、椭圆形、椎体形和其他复杂的几何图形。Java中有两种方法可以用来绘制椭圆:一是使用Graphics2D.drawOval()方法;二是使用Graphics2D.fillOval()方法。
Graphics2D.drawOval()方法可以用来绘制一个椭圆,它需要传入4个参数:x坐标、y坐标、宽度和高度。例如:
int x = 100; // x坐标 int y = 100; // y坐标 int width = 200; // 宽度 int height = 100; // 高度 graphics2d.drawOval(x, y, width, height); // 画出一个椭圆
Graphics2D.fillOval()方法也可以用来绘制椭圆,它需要传入4个参数:x坐标、y坐标、宽度和高度。例如:
int x = 100; // x坐标 int y = 100; // y坐标 int width = 200; // 宽度 int height = 100; // 高度 graphics2d.fillOval(x, y, width, height); // 画出一个椭圆并将其内部进行填充
此外,还可以使用Graphics2D.setColor()方法设置椭圆的颜色。例如:
graphics2d.setColor(Color.RED); // 设置椭圆的颜色
总之,Java中有多种方式可以用来绘制椭圆。使用Graphics2D.drawOval()或者Graphics2D.fillOval()方法都能够很好的实现这一功能。正常情况下,我们会选择使用fillOval()方法来进行图形的填充工作。
avaFX Shape类定义了常见的形状,如线,矩形,圆,Arc,CubicCurve,Ellipse和QuadCurve。
在场景图上绘制矩形需要宽度,高度和左上角的(x,y)位置。
要在JavaFX中绘制一个矩形,我们可以使用 javafx.scene.shape.Rectangle
类。
import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.paint.Color; import javafx.scene.shape.Rectangle; import javafx.stage.Stage; public class Main extends Application { public static void main(String[] args) { Application.launch(args); } @Override public void start(Stage primaryStage) { primaryStage.setTitle(""); Group root = new Group(); Scene scene = new Scene(root, 300, 250, Color.WHITE); Rectangle r = new Rectangle(); r.setX(50); r.setY(50); r.setWidth(200); r.setHeight(100); root.getChildren().add(r); primaryStage.setScene(scene); primaryStage.show(); } }
上面的代码生成以下结果。
Rectangle
类实现圆弧宽度和圆弧高度。我们可以使用这些功能来绘制圆角矩形。
import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.paint.Color; import javafx.scene.shape.Rectangle; import javafx.stage.Stage; public class Main extends Application { public static void main(String[] args) { Application.launch(args); } @Override public void start(Stage primaryStage) { Group group = new Group(); Rectangle rect = new Rectangle(20,20,200,200); rect.setArcHeight(15); rect.setArcWidth(15); rect.setStroke(Color.BLACK); group.getChildren().add(rect); Scene scene = new Scene(group, 300, 200); primaryStage.setScene(scene); primaryStage.show(); } }
上面的代码生成以下结果。
import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.effect.DropShadow; import javafx.scene.paint.Color; import javafx.scene.shape.Ellipse; import javafx.stage.Stage; public class Main extends Application { public static void main(String[] args) { Application.launch(args); } @Override public void start(Stage primaryStage) { primaryStage.setTitle(""); Group root = new Group(); Scene scene = new Scene(root, 300, 250, Color.WHITE); Group g = new Group(); DropShadow ds = new DropShadow(); ds.setOffsetY(3.0); ds.setColor(Color.color(0.4, 0.4, 0.4)); Ellipse ellipse = new Ellipse(); ellipse.setCenterX(50.0f); ellipse.setCenterY(50.0f); ellipse.setRadiusX(50.0f); ellipse.setRadiusY(25.0f); ellipse.setEffect(ds); g.getChildren().add(ellipse); root.getChildren().add(g); primaryStage.setScene(scene); primaryStage.show(); } }
上面的代码生成以下结果。
JavaFX教程 -JavaFX绑定JavaFX绑定同步两个值:当因变量更改时,其他变量更改。要将属性绑定到另一个属性,请调用bind()方法,该...
JavaFX教程 -JavaFX按钮当用户单击按钮时,JavaFX Button类可以触发事件。Button类扩展标记的类,它可以显示文本,图像,或两者...
JavaFX教程 -JavaFX 文本字段TextField用于单行文本输入。import javafx.application.Application;import javafx.geometry.Inset...
JavaFX教程 -JavaFX渐变颜色我们可以使用径向渐变使形状看起来三维。梯度绘制可以在两种或更多种颜色之间内插,这给出形状的深度...
JavaFX教程 -JavaFX 滚动条ScrollBar类经常带有一个可滚动的窗格。import javafx.application.Application;import javafx.geomet...