We can create a Polygon object by creating an instance of fabric.Polygon. A polygon object can be characterized as any closed shape consisting of a set of connected straight line segments. Since it is one of the basic elements of FabricJS, we can also easily customize it by applying properties such as angle, opacity, etc. We can add coordinates in a polygon using the points property.
new fabric.Polygon( points: Array, { points: Array }: Object )
points - This parameter accepts an Array, which represents the array of points that make up the polygon object.
Options (optional) - This parameter is an object that provides additional customization to our object. Using this parameter, you can change the origin, stroke width, and many other properties associated with the Polygon object for which points is the property.
points - This property accepts an Array which allows us to set an array of points.
Let's look at a code example to see how to add a polygon object to the canvas. In this example, we are not using the points attribute. We have specified an array of points as the first parameter itself, which represents the coordinate values to use.
<!DOCTYPE html> <html> <head> <!-- Adding the Fabric JS Library--> <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body> <h2>Default appearance of Polygon object</h2> <p>You can see the Polygon object has been added to the canvas</p> <canvas id="canvas"></canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // Initiating a polygon object var polygon = new fabric.Polygon( [ { x: -20, y: -35 }, { x: 20, y: -35 }, { x: 40, y: 0 }, { x: 20, y: 35 }, { x: -20, y: 35 }, { x: -40, y: 0 }, ], { top: 50, left: 50, } ); // Adding it to the canvas canvas.add(polygon); </script> </body> </html>
In this example, we used the point attribute and assigned it an array, which consists of the coordinate values of the polygon, where each point is a point with "x" and "y" value object. As you can see, although we have specified the points of the Polygon object, once we use the point properties, it overwrites the values and uses the new coordinates.
<!DOCTYPE html> <html> <head> <!-- Adding the Fabric JS Library--> <script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/510/fabric.min.js"></script> </head> <body> <h2>Using the points property</h2> <p>You can see the Polygon object's coordinates have changed</p> <canvas id="canvas"></canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); // Initiating a points array var points = [ { x: 0, y: 30 }, { x: 30, y: 30 }, { x: 30, y: 0 }, { x: 0, y: 0 }, ]; // Initiating a polygon object var polygon = new fabric.Polygon(points, { top: 50, left: 50, points: [ { x: 0, y: 70 }, { x: 70, y: 70 }, { x: 70, y: 0 }, { x: 0, y: 0 }, ], }); // Adding it to the canvas canvas.add(polygon); </script> </body> </html>
In this tutorial, we use two simple examples to demonstrate how to add coordinates in a polygon using FabricJS.
The above is the detailed content of How to add coordinates in a polygon using FabricJS?. For more information, please follow other related articles on the PHP Chinese website!