1
0
Fork 0
freesewing/sites/dev/docs/reference/api/point/shift
2025-05-19 17:20:45 -07:00
..
readme.mdx fix(dev:docs): Dimension macro, boundary box, and typo fixes 2025-05-19 17:20:45 -07:00

---
title: Point.shift()
---

The `Point.shift()` method returns a new `Point` that is `distance` (mm) away
in the direction of `angle` (degrees).  An angle of 0° points to the right, and
the angle increases counterclockwise.

## Signature

```js
Point point.shift(float angle, float distance)
```

## Example

<Example caption="An example of the Point.shift() method">
```js
({ Point, points, macro, part }) => {

  points.A = new Point(90, 40)
    .setText("Point A", "right text-sm")
  points.B = points.A.shift(155, 70)
    .setText("Point B is point A shifted 7 cm\nat a 155 degree angle", "text-sm")
    .attr("data-text-lineheight", 6)

  macro("ld", {
    from: points.B,
    to: points.A,
    d: -10,
    id: 'macro1',
    force: true,
  })

  return part
}
```
</Example>