Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
How to set the vertical scale factor of Circle using FabricJS?
In this tutorial, we are going to learn how to set the vertical scale factor of a Circle using FabricJS. Circle is one of the various shapes provided by FabricJS. In order to create a circle, we will have to create an instance of fabric.Circle class and add it to the canvas. Just as we can specify the position, colour, opacity and dimension of a circle object in the canvas, we can also set the vertical scale of a circle object. This can be done by using the scaleY property.
Syntax
new fabric.Circle({ scaleY : Number }: Object)
Parameters
-
options (optional) ? This parameter is an Object which provides additional customizations to our circle. Using this parameter, properties such as colour, cursor, stroke width and a lot of other properties can be changed related to the object of which scaleY is a property.
Options Keys
-
scaleY ? This property accepts a Number value. The value that is assigned, determines the vertical object scale factor. Its default value is 1.
Example 1: Default Appearance
Default appearance when scaleY is not used
Let's see an example that displays the appearance of our circle object when the scaleY property is not used. By default, the vertical scale factor of the circle object is 1. scaleY determines the transformation that resizes an object along the Y-axis.
<!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>Setting the vertical scale factor of a Circle using FabricJS</h2>
<p>Notice the vertical scale factor of the circle. Here we have not used the <b>scaleY</b> property, but by default, it is set to 1. </p>
<canvas id="canvas"></canvas>
<script>
// Initiate a canvas instance
var canvas = new fabric.Canvas("canvas");
var circle = new fabric.Circle({
left: 115,
top: 50,
padding: 7,
radius: 50,
fill: "#85bb65"
});
canvas.add(circle);
canvas.setWidth(document.body.scrollWidth);
canvas.setHeight(250);
</script>
</body>
</html>
Example 2: Using scaleY Property
Passing scaleY property as key
In this example, we are passing the scaleY property as a key with a value of 2. This means that the circle object's scale factor in the vertical direction is doubled, making it appear elongated along the Y-axis.
<!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>Setting the vertical scale factor of a Circle using FabricJS</h2>
<p>Notice the vertical scale factor of the circle. Here we have set <b>scaleY</b> at 2, so the object appears elongated on the Y-axis. </p>
<canvas id="canvas"></canvas>
<script>
// Initiate a canvas instance
var canvas = new fabric.Canvas("canvas");
var circle = new fabric.Circle({
left: 115,
top: 50,
padding: 7,
radius: 50,
fill: "#85bb65",
scaleY: 2
});
canvas.add(circle);
canvas.setWidth(document.body.scrollWidth);
canvas.setHeight(250);
</script>
</body>
</html>
Key Points
The
scaleYproperty controls vertical scaling along the Y-axisDefault value is 1 (no scaling)
Values greater than 1 stretch the object vertically
Values less than 1 compress the object vertically
Conclusion
The scaleY property in FabricJS allows you to control the vertical scale factor of circle objects. By setting different values, you can create various visual effects from compressed to elongated circles along the Y-axis.
