Home  >  Article  >  Web Front-end  >  How to add coordinates in a polygon using FabricJS?

How to add coordinates in a polygon using FabricJS?

PHPz
PHPzforward
2023-08-24 14:33:02996browse

如何使用 FabricJS 在多边形中添加坐标?

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.

grammar

new fabric.Polygon( points: Array, { points: Array }: Object )

parameter

  • 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.

Option key

  • points - This property accepts an Array which allows us to set an array of points.

Example 1: Default appearance of polygonal objects

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> 

Example 2: Using the Points attribute

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 conclusion

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!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete