1
0
Fork 0
freesewing/sites/dev/docs/reference/api/point/rotate/readme.mdx

36 lines
861 B
Text
Raw Normal View History

---
2021-10-16 15:42:30 +02:00
title: Point.rotate()
---
The `Point.rotate()` method returns a new `Point` that has been rotated by
`angle` degrees around the point (`center`) that you pass it.
2021-10-16 15:42:30 +02:00
Just like the result of the [`Point.angle()`](/reference/api/point/angle/)
method, an angle of 0° points right, and the angle increases counterclockwise.
2021-10-16 15:42:30 +02:00
## Signature
2021-11-06 19:03:54 +01:00
```js
Point point.rotate(float angle, Point center)
2021-10-16 15:42:30 +02:00
```
## Example
<Example caption="An example of the Point.rotate() method">
```js
({ Point, points, Path, paths, Snippet, snippets, part }) => {
points.sun = new Point(40, 40)
points.moon = new Point(70, 40)
let step = 360 / 36
for (let i = 1; i < 37; i++) {
let angle = step * i
points[`moon${i}`] = points.moon.rotate(angle, points.sun)
paths[`moon${i}`] = new Path().move(points.sun).line(points[`moon${i}`])
}
return part
}
```
</Example>