Files
modeling-app/docs/kcl-std/functions/std-offsetPlane.md
Nick Cameron 1841e63021 Misc docs polishing (#6712)
* Fake modules for Rust std lib functions

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

* Include the missing @ in Rust std lib fns

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

* Move revolve and mirror2d to better modules

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

* Use docs from KCL mods for type summaries

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

* Use type docs to describe types from KCL std lib

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

---------

Signed-off-by: Nick Cameron <nrc@ncameron.org>
2025-05-06 16:09:59 +12:00

510 KiB

title, excerpt, layout
title excerpt layout
std::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: Plane,
  offset: number(Length),
): Plane

Arguments

Name Type Description Required
plane Plane The plane (e.g. XY) which this new plane is created from. Yes
offset number(Length) 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)
    |> startProfile(at = [-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 std::offsetPlane 0

// Loft a square and a circle on the `XZ` plane using offset.
squareSketch = startSketchOn(XZ)
    |> startProfile(at = [-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 std::offsetPlane 1

// Loft a square and a circle on the `YZ` plane using offset.
squareSketch = startSketchOn(YZ)
    |> startProfile(at = [-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 std::offsetPlane 2

// Loft a square and a circle on the `-XZ` plane using offset.
squareSketch = startSketchOn(-XZ)
    |> startProfile(at = [-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 std::offsetPlane 3

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

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

Rendered example of std::offsetPlane 4