1
0
Fork 0

chore(docs): Updated Path api docs for v3

This commit is contained in:
Joost De Cock 2022-09-27 18:24:35 +02:00
parent 3cb5384df5
commit ede3c137bc
40 changed files with 1192 additions and 948 deletions

View file

@ -1,54 +1,55 @@
---
title: shiftAlong()
title: Path.shiftAlong()
---
```js
Point path.shiftAlong(float distance[, int stepsPerMm=25])
```
The `Path.shiftAlong()` method returns a point that lies at distance travelled
along the path.
Returns a point that lies at distance travelled along the path.
<Example part="path_shiftalong">
Example of the Path.shiftAlong() method
</Example>
## Signature
```js
let { Point, points, Path, paths, Snippet, snippets } = part.shorthand();
points.A = new Point(45, 60);
points.B = new Point(10, 30);
points.BCp2 = new Point(40, 20);
points.C = new Point(90, 30);
points.CCp1 = new Point(50, -30);
paths.example = new Path()
.move(points.A)
.line(points.B)
.curve(points.BCp2, points.CCp1, points.C);
points.x1 = paths.example
.shiftAlong(20)
.attr("data-text", "2cm")
.attr("data-text-class", "center fill-note")
.attr("data-text-lineheight", 6);
points.x2 = paths.example
.shiftAlong(90)
.attr("data-text", "9cm")
.attr("data-text-class", "center fill-note")
.attr("data-text-lineheight", 6);
snippets.x1 = new Snippet("notch", points.x1);
snippets.x2 = new Snippet("notch", points.x2);
Point path.shiftAlong(float distance[, int stepsPerMm=10])
```
<Note>
##### The second parameter is optional
The second parameter controls the precision by which the path will be _walked_.
By default, we'll divide it into 25 steps per mm.
By default, we'll divide it into 10 steps per mm.
If you don't need that precision, you can pass a lower number.
But for most cases, you can just ignore it.
If you need more precision, you can pass a higher number.
For most cases, the default will be fine.
</Note>
## Example
<Example caption="Example of the Path.shiftAlong() method">
```js
({ Point, points, Path, paths, Snippet, snippets, part }) => {
points.A = new Point(45, 60);
points.B = new Point(10, 30);
points.BCp2 = new Point(40, 20);
points.C = new Point(90, 30);
points.CCp1 = new Point(50, -30);
paths.example = new Path()
.move(points.A)
.line(points.B)
.curve(points.BCp2, points.CCp1, points.C);
points.x1 = paths.example
.shiftAlong(20)
.attr("data-text", "2cm")
.attr("data-text-class", "center fill-note")
.attr("data-text-lineheight", 6);
points.x2 = paths.example
.shiftAlong(90)
.attr("data-text", "9cm")
.attr("data-text-class", "center fill-note")
.attr("data-text-lineheight", 6);
snippets.x1 = new Snippet("notch", points.x1);
snippets.x2 = new Snippet("notch", points.x2);
return part
}
```
</Example>