Files
modeling-app/docs/kcl/involuteCircular.md
Ben Crabbe 9e1f1152e3 Involute curve for sketch (#6258)
* WIP: Involute circles in KCL

* first pass involute end calculation

* fmt

* cleanup

* involute snapshot

* actually update markdown

* remove debug build stuff

* spacing

---------

Co-authored-by: Adam Chalmers <adam.chalmers@zoo.dev>
2025-04-11 21:59:11 +01:00

39 KiB

title, excerpt, layout
title excerpt layout
involuteCircular Extend the current sketch with a new involute circular curve. manual

Extend the current sketch with a new involute circular curve.

involuteCircular(
  sketch: Sketch,
  startRadius: number,
  endRadius: number,
  angle: number,
  reverse?: bool,
  tag?: TagDeclarator,
): Sketch

Arguments

Name Type Description Required
sketch Sketch Which sketch should this path be added to? Yes
startRadius number The involute is described between two circles, start_radius is the radius of the inner circle. Yes
endRadius number The involute is described between two circles, end_radius is the radius of the outer circle. Yes
angle number The angle to rotate the involute by. A value of zero will produce a curve with a tangent along the x-axis at the start point of the curve. Yes
reverse bool If reverse is true, the segment will start from the end of the involute, otherwise it will start from that start. Defaults to false. No
tag TagDeclarator Create a new tag which refers to this line No

Returns

Sketch

Examples

a = 10
b = 14
startSketchOn(XZ)
  |> startProfileAt([0, 0], %)
  |> involuteCircular(startRadius = a, endRadius = b, angle = 60)
  |> involuteCircular(
       startRadius = a,
       endRadius = b,
       angle = 60,
       reverse = true,
     )

Rendered example of involuteCircular 0