In this tutorial, we will learn how to disable centered rotation of a Circle using FabricJS. Circles are one of the various shapes provided by FabricJS. To create a circle, we will create an instance of the Fabric.Circle class and add it to the canvas. By default, all objects in FabricJS use their center as the rotation point. However, we can change this behavior using the centeredRotation property.
new fabric.Circle({ centeredRotation: Boolean }: Object)
Options (optional) - This parameter is a Object< /em> Provides additional customization for our circles. Using this parameter, you can change the color, cursor, stroke width and other properties of the object related to the centeredRotation property.
##centeredRotation - This property accepts a Boolean value Value allows us to control whether the object uses its transform origin as the center point when rotated through the control. Its default value is < /strong>True.
Default behavior of rotation > Circle in FabricJS
Let’s look at a description circle An example of the default behavior of a shape object. Since thecenteredRotation property is set to True by default, circular objects use their center as the point of rotation.
<!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>Disabling the centered rotation of circle using FabricJs</h2> <p>Select the object and rotate it by holding its controlling corner at the top. The circle will rotate around its center. It is the default behavior. Here we have not used the <b>centeredRotation</b> property but it is by default set to True. </p> <canvas id="canvas"></canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); var cir = new fabric.Circle({ left: 215, top: 100, fill: "white", radius: 50, stroke: "#c154c1", strokeWidth: 5, borderColor: "#daa520", }); // Adding it to the canvas canvas.add(cir); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); </script> </body> </html>
Passing the centeredRotation key with value "false"
Now that we have seen the default behavior, Let's look at a piece of code to understand what happens when thecenteredRotation property is specified as False.
<!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>Disabling the centered rotation of circle using FabricJs</h2> <p>Select the object and rotate it by holding its controlling corner at the top. Now the circle will not rotate around its cente because we have used the <b>centeredRotation</b> property and set it False. </p> <canvas id="canvas"></canvas> <script> // Initiate a canvas instance var canvas = new fabric.Canvas("canvas"); var cir = new fabric.Circle({ left: 215, top: 100, fill: "white", radius: 50, stroke: "#c154c1", strokeWidth: 5, borderColor: "#daa520", centeredRotation: false }); // Adding it to the canvas canvas.add(cir); canvas.setWidth(document.body.scrollWidth); canvas.setHeight(250); </script> </body> </html>
The above is the detailed content of How to disable center rotation of a circle using FabricJS?. For more information, please follow other related articles on the PHP Chinese website!