Files
modeling-app/docs/kcl/segStart.md
Nick Cameron 5d25f4a0e5 Support types in the standard library (#5651)
* Parse an unparse type decls (and refactor impl attributes slightly)

Signed-off-by: Nick Cameron <nrc@ncameron.org>

* Remove special treatment of geometric types from parser and executor

Signed-off-by: Nick Cameron <nrc@ncameron.org>

* Generate docs for std types

Signed-off-by: Nick Cameron <nrc@ncameron.org>

* Hover tool-tips for types and fixup the frontend

Signed-off-by: Nick Cameron <nrc@ncameron.org>

* Fixes

Signed-off-by: Nick Cameron <nrc@ncameron.org>

---------

Signed-off-by: Nick Cameron <nrc@ncameron.org>
2025-03-07 09:53:34 -05:00

84 KiB

title, excerpt, layout
title excerpt layout
segStart Compute the starting point of the provided line segment. manual

Compute the starting point of the provided line segment.

segStart(tag: TagIdentifier): [number]

Arguments

Name Type Description Required
tag TagIdentifier The line segment being queried by its tag Yes

Returns

[number]

Examples

w = 15
cube = startSketchOn('XY')
  |> startProfileAt([0, 0], %)
  |> line(end = [w, 0], tag = $line1)
  |> line(end = [0, w], tag = $line2)
  |> line(end = [-w, 0], tag = $line3)
  |> line(end = [0, -w], tag = $line4)
  |> close()
  |> extrude(length = 5)

fn cylinder(radius, tag) {
  return startSketchOn('XY')
    |> startProfileAt([0, 0], %)
    |> circle(radius = radius, center = segStart(tag))
    |> extrude(length = radius)
}

cylinder(1, line1)
cylinder(2, line2)
cylinder(3, line3)
cylinder(4, line4)

Rendered example of segStart 0