Files
modeling-app/docs/kcl/extrude.md
Jess Frazelle d19a7df7e8 Tag and name end and start caps (#5874)
* initial commit

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

* updates

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

* update for revolve

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>

* fixes

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

---------

Signed-off-by: Jess Frazelle <github@jessfraz.com>
2025-03-19 19:18:19 +00:00

164 KiB

title, excerpt, layout
title excerpt layout
extrude Extend a 2-dimensional sketch through a third dimension in order to create new 3-dimensional volume, or if extruded into an existing volume, cut into an existing solid. manual

Extend a 2-dimensional sketch through a third dimension in order to create new 3-dimensional volume, or if extruded into an existing volume, cut into an existing solid.

You can provide more than one sketch to extrude, and they will all be extruded in the same direction.

extrude(
  sketches: [Sketch],
  length: number,
  tagStart?: TagDeclarator,
  tagEnd?: TagDeclarator,
): [Solid]

Arguments

Name Type Description Required
sketches [Sketch] Which sketch or sketches should be extruded Yes
length number How far to extrude the given sketches Yes
tagStart TagDeclarator A named tag for the face at the start of the extrusion, i.e. the original sketch No
tagEnd TagDeclarator A named tag for the face at the end of the extrusion, i.e. the new face created by extruding the original sketch No

Returns

[Solid]

Examples

example = startSketchOn('XZ')
  |> startProfileAt([0, 0], %)
  |> line(end = [10, 0])
  |> arc({
       angleStart = 120,
       angleEnd = 0,
       radius = 5
     }, %)
  |> line(end = [5, 0])
  |> line(end = [0, 10])
  |> bezierCurve({
       control1 = [-10, 0],
       control2 = [2, 10],
       to = [-5, 10]
     }, %)
  |> line(end = [-5, -2])
  |> close()
  |> extrude(length = 10)

Rendered example of extrude 0

exampleSketch = startSketchOn('XZ')
  |> startProfileAt([-10, 0], %)
  |> arc({
       angleStart = 120,
       angleEnd = -60,
       radius = 5
     }, %)
  |> line(end = [10, 0])
  |> line(end = [5, 0])
  |> bezierCurve({
       control1 = [-3, 0],
       control2 = [2, 10],
       to = [-5, 10]
     }, %)
  |> line(end = [-4, 10])
  |> line(end = [-5, -2])
  |> close()

example = extrude(exampleSketch, length = 10)

Rendered example of extrude 1