1
0
Fork 0
freesewing/markdown/dev/reference/api/point/rotate/en.md

31 lines
834 B
Markdown
Raw Normal View History

---
2021-10-16 15:42:30 +02:00
title: Point.rotate()
---
2021-10-16 15:42:30 +02:00
A point's `rotate()` method returns a new `Point` that has been rotated by `angle` degrees
around the point (`center`) that you pass it.
Just like the result of the [`Point.angle()`](reference/api/point/angle/) method, an angle of 0° points right, and the angle increases counterclockwise.
```js
Point point.rotate(float angle, Point center)
2021-10-16 15:42:30 +02:00
```
2021-10-16 15:42:30 +02:00
<Example
part="point_rotate"
caption="An example of the Point.rotate() method"
/>
```js
let { Point, points, Path, paths, Snippet, snippets } = part.shorthand();
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}`]);
}
```