JavaFx 绘制图形和文本
文本—Text
创建方法
Text(double x, double y, String text)
设置参数
字体/加粗/倾斜/大小
text.setFont(Font.font("Courier",FontWeight.BOLD,FontPosture.ITALIC,15))
填充颜色
text.setFill(Color.RED)
下划线
text.setUnderLine(true)
删除线
text.setStrikethrough(true)
线—Line
创建方法
Line(double startX, double startY, double endX, double endY)
设置参数
粗细
line1.setStrokeWidth(5)
颜色
line1.setStroke(Color.GREEN)
属性绑定
line1终点X和Y值与面板的宽度和高度绑定
终点的X值 = 宽度- 10, 终点的Y值 = 高度 - 10
Line line1 = new Line(10, 10, 10, 10)
line1.endXProperty().bind(widthProperty().subtract(10))
line1.endYProperty().bind(heightProperty().subtract(10))
矩形—Rectangle
创建方法
从点(x,y)向右向下拓展宽度和高度
Rectangle(double x, double y, double width, double height)
设置参数
轮廓线颜色
默认黑色填充
r.setStroke(Color.BLACK)
内部填充颜色
默认黑色填充
r.setFill(Color.WHITE)
圆角矩形
圆弧的水平直径
r.setArcWidth(15)
圆弧的垂直直径
r.setArcHeight(25)
圆—Circle
创建方法
Circle(double x, double y, double r)
椭圆—Ellipse
创建方法
Ellipse(double x, double y, double radiusX, double radiusY)
设置参数
轮廓线颜色
e.setStroke(Color.color(Math.random(),Math.random(),Math.random()))
填充颜色
e.setFill(Color.WHITE)
旋转
e.setRotate(180 / 16)
圆弧—Arc
创建方法
(x,y):圆心 radiusX/Y:水平/垂直半径 startAngle:起始角度 length:按逆时针旋转了多少度
Arc(double x, double y, double radiusX, double radius radiusY, double startAngle double length)
设置参数
轮廓线颜色
arc.setStroke(Color.BLACK)
填充颜色
arc.setFill(Color.WHITE)
类型
arc.setType(ArcType.ROUND)
arc.setType(ArcType.OPEN)
arc.setType(ArcType.CHORD)
多边形—Polygon
创建方法
Polygon(double ... point)
Polygon polygon = new Polygon()
ObservableList<Double> list = polygon.getPoints();
//绘制六边形
final double WIDTH = 200, HEIGHT = 200;
double centerX = WIDTH / 2, centerY = HEIGHT / 2;
double radius = Math.min(WIDTH,HEIGHT) * 0.4;
for (int i = 0; i < 6; i++) {
list.add(centerX + radius * Math.cos(2*i*Math.PI / 6));
list.add(centerY + radius * Math.sin(2*i*Math.PI / 6));
}
设置参数
轮廓线颜色
polygon.setStroke(Color.BLACK)
填充颜色
polygon.setFill(Color.WHITE)