Files
modeling-app/docs/kcl/angledLineThatIntersects.md
Adam Chalmers 7fce38b212 KCL: angledLineThatIntersects migrate to kwargs (#6296)
* KCL: Convert angledLineThatIntersects to use kwargs

* Update KCL tests and samples

* WIP

* Fix tsc and lint errors

* Fix missing cases

* Fix modifyAst unit tests

* Fix sketch unit tests

* Fix std unit tests

* Fix to not have extra docs

* Fix more unit tests

* Fix bench test

* Fix e2e tests to use new kw args

* tiny lint

* Fix adding constraint from UI to work

* Fix to use labeledArg constraints and use the correct order of args

* Fix selections e2e test

* Fix e2e test expectation

App was working as expected, but the e2e test was
expecting the old code, not the new code.

* Fix order of constraints in unit test

* Update docs

* Fix KCL formatting

* Update output

---------

Co-authored-by: Jonathan Tran <jonnytran@gmail.com>
2025-04-15 02:06:55 +00:00

66 KiB

title, excerpt, layout
title excerpt layout
angledLineThatIntersects Draw an angled line from the current origin, constructing a line segment such that the newly created line intersects the desired target line segment. manual

Draw an angled line from the current origin, constructing a line segment such that the newly created line intersects the desired target line segment.

angledLineThatIntersects(
  sketch: Sketch,
  angle: number,
  intersectTag: TagIdentifier,
  offset?: number,
  tag?: TagDeclarator,
): Sketch

Arguments

Name Type Description Required
sketch Sketch Which sketch should this path be added to? Yes
angle number Which angle should the line be drawn at? Yes
intersectTag TagIdentifier The tag of the line to intersect with Yes
offset number The offset from the intersecting line. Defaults to 0. No
tag TagDeclarator Create a new tag which refers to this line No

Returns

Sketch

Examples

exampleSketch = startSketchOn(XZ)
  |> startProfileAt([0, 0], %)
  |> line(endAbsolute = [5, 10])
  |> line(endAbsolute = [-10, 10], tag = $lineToIntersect)
  |> line(endAbsolute = [0, 20])
  |> angledLineThatIntersects(angle = 80, intersectTag = lineToIntersect, offset = 10)
  |> close()

example = extrude(exampleSketch, length = 10)

Rendered example of angledLineThatIntersects 0