* add unit functions Signed-off-by: Jess Frazelle <github@jessfraz.com> * add tests Signed-off-by: Jess Frazelle <github@jessfraz.com> * update docs Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * A snapshot a day keeps the bugs away! 📷🐛 (OS: windows-latest) * empty * A snapshot a day keeps the bugs away! 📷🐛 (OS: windows-latest) --------- Signed-off-by: Jess Frazelle <github@jessfraz.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
131 lines
85 KiB
Markdown
131 lines
85 KiB
Markdown
---
|
|
title: "segLen"
|
|
excerpt: "Compute the length of the provided line segment."
|
|
layout: manual
|
|
---
|
|
|
|
Compute the length of the provided line segment.
|
|
|
|
|
|
|
|
```js
|
|
segLen(tag: TagIdentifier) -> number
|
|
```
|
|
|
|
### Examples
|
|
|
|
```js
|
|
const exampleSketch = startSketchOn("XZ")
|
|
|> startProfileAt([0, 0], %)
|
|
|> angledLine({ angle: 60, length: 10 }, %, $thing)
|
|
|> tangentialArc({ offset: -120, radius: 5 }, %)
|
|
|> angledLine({ angle: -60, length: segLen(thing) }, %)
|
|
|> close(%)
|
|
|
|
const example = extrude(5, exampleSketch)
|
|
```
|
|
|
|

|
|
|
|
### Arguments
|
|
|
|
* `tag`: `TagIdentifier` (REQUIRED)
|
|
```js
|
|
{
|
|
// Engine information for a tag.
|
|
info: {
|
|
// The id of the tagged object.
|
|
id: uuid,
|
|
// The path the tag is on.
|
|
path: {
|
|
// The from point.
|
|
from: [number, number],
|
|
// The tag of the path.
|
|
tag: {
|
|
digest: [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number],
|
|
end: number,
|
|
start: number,
|
|
value: string,
|
|
},
|
|
// The to point.
|
|
to: [number, number],
|
|
},
|
|
// The sketch group the tag is on.
|
|
sketchGroup: uuid,
|
|
// The surface information for the tag.
|
|
surface: {
|
|
// The face id for the extrude plane.
|
|
faceId: uuid,
|
|
// The id of the geometry.
|
|
id: uuid,
|
|
// The source range.
|
|
sourceRange: [number, number],
|
|
// The tag.
|
|
tag: {
|
|
digest: [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number],
|
|
end: number,
|
|
start: number,
|
|
value: string,
|
|
},
|
|
type: "extrudePlane",
|
|
} |
|
|
{
|
|
// The face id for the extrude plane.
|
|
faceId: uuid,
|
|
// The id of the geometry.
|
|
id: uuid,
|
|
// The source range.
|
|
sourceRange: [number, number],
|
|
// The tag.
|
|
tag: {
|
|
digest: [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number],
|
|
end: number,
|
|
start: number,
|
|
value: string,
|
|
},
|
|
type: "extrudeArc",
|
|
} |
|
|
{
|
|
// The id for the chamfer surface.
|
|
faceId: uuid,
|
|
// The id of the geometry.
|
|
id: uuid,
|
|
// The source range.
|
|
sourceRange: [number, number],
|
|
// The tag.
|
|
tag: {
|
|
digest: [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number],
|
|
end: number,
|
|
start: number,
|
|
value: string,
|
|
},
|
|
type: "chamfer",
|
|
} |
|
|
{
|
|
// The id for the fillet surface.
|
|
faceId: uuid,
|
|
// The id of the geometry.
|
|
id: uuid,
|
|
// The source range.
|
|
sourceRange: [number, number],
|
|
// The tag.
|
|
tag: {
|
|
digest: [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number],
|
|
end: number,
|
|
start: number,
|
|
value: string,
|
|
},
|
|
type: "fillet",
|
|
},
|
|
},
|
|
value: string,
|
|
}
|
|
```
|
|
|
|
### Returns
|
|
|
|
`number`
|
|
|
|
|
|
|