Руководство JavaFX Line
View more Tutorials:
В JavaFX, класс Line используется для наривания прямой линии. Так же как класс Rectangle, Circle, ... они все расширены из класса Shape.


LineDemo.java
package org.o7planning.javafx.line; import javafx.application.Application; import javafx.geometry.Insets; import javafx.scene.Scene; import javafx.scene.layout.AnchorPane; import javafx.scene.paint.Color; import javafx.scene.shape.Line; import javafx.stage.Stage; public class LineDemo extends Application { @Override public void start(Stage stage) { // A line in Ox Axis Line oxLine1 = new Line(0, 0, 400, 0); // Stroke Width oxLine1.setStrokeWidth(5); oxLine1.setStroke(Color.BLUE); // A line in Oy Axis Line oyLine = new Line(0, 0, 0, 200); // Stroke Width oyLine.setStrokeWidth(5); oyLine.setStroke(Color.BLUEVIOLET); // An other Line Line line = new Line(); line.setStartX(100.0f); line.setStartY(200.0f); line.setEndX(300.0f); line.setEndY(70.0f); line.setStrokeWidth(10); line.setStroke(Color.PINK); AnchorPane root = new AnchorPane(); root.setPadding(new Insets(15)); final Scene scene = new Scene(root, 400, 250); scene.setFill(null); root.getChildren().addAll(oyLine, oxLine1, line); stage.setTitle("JavaFX Line (o7planning.org)"); stage.setScene(scene); stage.show(); } public static void main(String[] args) { launch(args); } }
smooth
Значениеị true если вы хотите включить свойство сглаживания (anti-aliasing), и false чтобы отключить свойство сглаживания (anti-aliasing).

strokeWidth
Установить ширину линии.

stroke
Использовть метод setStroke для установки цвета линии.
// Set Line color. line.setStroke(Color.RED);
Stroke Dash Array

LineStrokeDashArrayDemo.java
package org.o7planning.javafx.line; import javafx.application.Application; import javafx.geometry.Insets; import javafx.scene.Scene; import javafx.scene.layout.AnchorPane; import javafx.scene.shape.Line; import javafx.stage.Stage; public class LineStrokeDashArrayDemo extends Application { @Override public void start(Stage stage) { Line line1 = new Line(20, 40, 270, 40); line1.getStrokeDashArray().addAll(25.0, 20.0, 5.0, 20.0); Line line2 = new Line(20, 60, 270, 60); line2.getStrokeDashArray().addAll(50.0, 40.0); Line line3 = new Line(20, 80, 270, 80); line3.getStrokeDashArray().addAll(25.0, 10.0); Line line4 = new Line(20, 100, 270, 100); line4.getStrokeDashArray().addAll(2.0); Line line5 = new Line(20, 120, 270, 120); line5.getStrokeDashArray().addAll(2.0, 21.0); AnchorPane root = new AnchorPane(); root.setPadding(new Insets(5)); final Scene scene = new Scene(root, 400, 250); root.getChildren().addAll(line1, line2, line3, line4, line5); stage.setTitle("JavaFX Line (o7planning.org)"); stage.setScene(scene); stage.show(); } public static void main(String[] args) { launch(args); } }
strokeDashOffset
stroke-dashoffset - Это дополнительный атрибут к атрибуту stroke-dasharray, который имеет способность передвигать момент начала dash.

strokeLineCap
strokeLineCap - определяет фигуру использованную в конце. Есть 3 фигуры как в изображении ниже:
- StrokeLineCap.BUTT
- StrokeLineCap.ROUND
- StrokeLineCap.SQUARE

strokeLineJoin
stroke-linejoin: Определяет фигуру в углу пересеченных линий. Есть 3 вида фигуры:
- StrokeLineJoin.MITER
- StrokeLineJoin.BEVEL
- StrokeLineJoin.ROUND

strokeMiterLimit
strokeMiterLimit - Это значение в диапазоне 0-1, которое применяется в случае strokeLineJoin = StoreLineJoin.MITER. Чтобы ограничить пропорцию между miterLengh и strokeWidth.

Чем меньше угол при пересечении двух прямых линий (чем острее угол). Пропорция между miterLength и storeWidth может быть больше storeMiterLimit. В данном случае фигура при пересечении между двумя прямыми линиями изменится из "Miter-Join" в "Bevel-Join".
