Files
modeling-app/docs/kcl/offsetPlane.md
Jess Frazelle 343f6572a2 circle moved to kw args (#5560)
* rust side of circle args

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* change circle in all test js files

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* more js side

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* fix

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* A snapshot a day keeps the bugs away! 📷🐛 (OS: namespace-profile-ubuntu-8-cores)

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* fix

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* ud[ates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* ud[ates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* A snapshot a day keeps the bugs away! 📷🐛 (OS: namespace-profile-ubuntu-8-cores)

---------

Signed-off-by: Jess Frazelle <github@jessfraz.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-02-28 20:40:01 -05:00

490 KiB

title, excerpt, layout
title excerpt layout
offsetPlane Offset a plane by a distance along its normal. manual

Offset a plane by a distance along its normal.

For example, if you offset the 'XZ' plane by 10, the new plane will be parallel to the 'XZ' plane and 10 units away from it.

offsetPlane(
  plane: PlaneData,
  offset: number,
) -> Plane

Arguments

Name Type Description Required
plane PlaneData The plane (e.g. 'XY') which this new plane is created from. Yes
offset number Distance from the standard plane this new plane will be created at. Yes

Returns

Plane - A plane.

Examples

// Loft a square and a circle on the `XY` plane using offset.
squareSketch = startSketchOn('XY')
  |> startProfileAt([-100, 200], %)
  |> line(end = [200, 0])
  |> line(end = [0, -200])
  |> line(end = [-200, 0])
  |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
  |> close()

circleSketch = startSketchOn(offsetPlane('XY', offset = 150))
  |> circle(center = [0, 100], radius = 50)

loft([squareSketch, circleSketch])

Rendered example of offsetPlane 0

// Loft a square and a circle on the `XZ` plane using offset.
squareSketch = startSketchOn('XZ')
  |> startProfileAt([-100, 200], %)
  |> line(end = [200, 0])
  |> line(end = [0, -200])
  |> line(end = [-200, 0])
  |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
  |> close()

circleSketch = startSketchOn(offsetPlane('XZ', offset = 150))
  |> circle(center = [0, 100], radius = 50)

loft([squareSketch, circleSketch])

Rendered example of offsetPlane 1

// Loft a square and a circle on the `YZ` plane using offset.
squareSketch = startSketchOn('YZ')
  |> startProfileAt([-100, 200], %)
  |> line(end = [200, 0])
  |> line(end = [0, -200])
  |> line(end = [-200, 0])
  |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
  |> close()

circleSketch = startSketchOn(offsetPlane('YZ', offset = 150))
  |> circle(center = [0, 100], radius = 50)

loft([squareSketch, circleSketch])

Rendered example of offsetPlane 2

// Loft a square and a circle on the `-XZ` plane using offset.
squareSketch = startSketchOn('-XZ')
  |> startProfileAt([-100, 200], %)
  |> line(end = [200, 0])
  |> line(end = [0, -200])
  |> line(end = [-200, 0])
  |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
  |> close()

circleSketch = startSketchOn(offsetPlane('-XZ', offset = -150))
  |> circle(center = [0, 100], radius = 50)

loft([squareSketch, circleSketch])

Rendered example of offsetPlane 3

// A circle on the XY plane
startSketchOn("XY")
  |> startProfileAt([0, 0], %)
  |> circle(radius = 10, center = [0, 0])

// Triangle on the plane 4 units above
startSketchOn(offsetPlane("XY", offset = 4))
  |> startProfileAt([0, 0], %)
  |> line(end = [10, 0])
  |> line(end = [0, 10])
  |> close()

Rendered example of offsetPlane 4