kcl

helix

Create a helix.

helix(data: HelixData) -> HelixValue

Arguments

NameTypeDescriptionRequired
dataHelixDataData for a helix.Yes

Returns

HelixValue - A helix.

Examples

// Create a helix around the Z axis.
helixPath = helix({
  angleStart = 0,
  ccw = true,
  revolutions = 5,
  length = 10,
  radius = 5,
  axis = 'Z'
})

// Create a spring by sweeping around the helix path.
springSketch = startSketchOn('YZ')
  |> circle({ center = [0, 0], radius = 0.5 }, %)
  |> sweep({ path = helixPath }, %)

Rendered example of helix 0

// Create a helix around an edge.
helper001 = startSketchOn('XZ')
  |> startProfileAt([0, 0], %)
  |> line([0, 10], %, $edge001)

helixPath = helix({
  angleStart = 0,
  ccw = true,
  revolutions = 5,
  length = 10,
  radius = 5,
  axis = edge001
})

// Create a spring by sweeping around the helix path.
springSketch = startSketchOn('XY')
  |> circle({ center = [0, 0], radius = 0.5 }, %)
  |> sweep({ path = helixPath }, %)

Rendered example of helix 1

// Create a helix around a custom axis.
helixPath = helix({
  angleStart = 0,
  ccw = true,
  revolutions = 5,
  length = 10,
  radius = 5,
  axis = {
    custom = {
      axis = [0, 0, 1.0],
      origin = [0, 0.25, 0]
    }
  }
})

// Create a spring by sweeping around the helix path.
springSketch = startSketchOn('XY')
  |> circle({ center = [0, 0], radius = 1 }, %)
  |> sweep({ path = helixPath }, %)

Rendered example of helix 2