- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Explain the Stroke Line Join property of 2D shapes in JavaFX
In shapes formed by joining more than one line, the stroke line join property specifies/defines the shape of the joint of the two lines. You can set the stoke line join using the setStrokeLineJoin() method.
Java FX supports three kinds of stroke line joins represented by three constants of the Enum named StrokeLineJoin they are −
BEVEL − In this type, the outside edges of the intersection are connected with a line segment.
MITER − In this type, the outside edges of the intersection are joined together forming a sharp edge.
ROUND − In this type, the outside edges of the intersection are joined by rounding off the corner, the radius of this will be exactly half the width of the join.
Example
import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.paint.Color; import javafx.scene.shape.Polygon; import javafx.scene.shape.StrokeLineJoin; import javafx.scene.text.Font; import javafx.scene.text.FontPosture; import javafx.scene.text.FontWeight; import javafx.scene.text.Text; import javafx.stage.Stage; public class StrokeLineJoinExample extends Application { public void start(Stage stage) { Font font = Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 12); Text label1 = new Text("Original Image"); label1.setFont(font); label1.setX(250.0); label1.setY(125.0); Polygon rhombus1 = new Polygon(300.0, 0.0, 250.0, 50.0, 300.0, 100.0, 350.0, 50.0); Text label2 = new Text("Line Join: Round"); label2.setFont(font); label2.setX(25.0); label2.setY(275.0); Polygon rhombus2 = new Polygon(100.0, 150.0, 50.0, 200.0, 100.0, 250.0, 150.0, 200.0); rhombus2.setStroke(Color.BLUE); rhombus2.setStrokeWidth(20); rhombus2.setStrokeLineJoin(StrokeLineJoin.ROUND); Text label3 = new Text("Line Join: Bevel"); label3.setFont(font); label3.setX(250.0); label3.setY(275.0); Polygon rhombus3 = new Polygon(300.0, 150.0, 250.0, 200.0, 300.0, 250.0, 350.0, 200.0); rhombus3.setStroke(Color.BLUE); rhombus3.setStrokeWidth(20.0); rhombus3.setStrokeLineJoin(StrokeLineJoin.BEVEL); Text label4 = new Text("Line Join: Miter"); label4.setFont(font); label4.setX(430.0); label4.setY(275.0); Polygon rhombus4 = new Polygon(490.0, 150.0, 440, 200.0, 490.0, 250.0, 540.0, 200.0); rhombus4.setStroke(Color.BLUE); rhombus4.setStrokeWidth(20.0); rhombus4.setStrokeLineJoin(StrokeLineJoin.MITER); //Creating a Group object Group root = new Group(label1, label2, label3, label4, rhombus1, rhombus2, rhombus3, rhombus4); //Creating a scene object Scene scene = new Scene(root, 595, 310); //Setting title to the Stage stage.setTitle("Stroke Line Join"); //Adding scene to the stage stage.setScene(scene); //Displaying the contents of the stage stage.show(); } public static void main(String args[]){ launch(args); } }
Output
Advertisements