2025-05-06 11:02:55 +12:00
|
|
|
---
|
|
|
|
title: "KCL Standard Library"
|
|
|
|
excerpt: "Documentation for the KCL standard library for the Zoo Design Studio."
|
|
|
|
layout: manual
|
|
|
|
---
|
|
|
|
|
|
|
|
## Table of Contents
|
|
|
|
|
|
|
|
### Functions
|
|
|
|
|
|
|
|
* [**std**](/docs/kcl-std/modules/std)
|
|
|
|
* [`appearance`](/docs/kcl-std/appearance)
|
|
|
|
* [`assert`](/docs/kcl-std/assert)
|
|
|
|
* [`assertIs`](/docs/kcl-std/assertIs)
|
2025-05-06 16:09:59 +12:00
|
|
|
* [`clone`](/docs/kcl-std/clone)
|
|
|
|
* [`helix`](/docs/kcl-std/functions/std-helix)
|
|
|
|
* [`offsetPlane`](/docs/kcl-std/functions/std-offsetPlane)
|
|
|
|
* [`patternLinear2d`](/docs/kcl-std/patternLinear2d)
|
|
|
|
* [**std::array**](/docs/kcl-std/modules/std-array)
|
|
|
|
* [`map`](/docs/kcl-std/map)
|
|
|
|
* [`pop`](/docs/kcl-std/pop)
|
|
|
|
* [`push`](/docs/kcl-std/push)
|
|
|
|
* [`reduce`](/docs/kcl-std/reduce)
|
|
|
|
* [**std::math**](/docs/kcl-std/modules/std-math)
|
|
|
|
* [`abs`](/docs/kcl-std/functions/std-math-abs)
|
|
|
|
* [`acos`](/docs/kcl-std/functions/std-math-acos)
|
|
|
|
* [`asin`](/docs/kcl-std/functions/std-math-asin)
|
|
|
|
* [`atan`](/docs/kcl-std/functions/std-math-atan)
|
|
|
|
* [`atan2`](/docs/kcl-std/functions/std-math-atan2)
|
|
|
|
* [`ceil`](/docs/kcl-std/functions/std-math-ceil)
|
|
|
|
* [`cos`](/docs/kcl-std/functions/std-math-cos)
|
|
|
|
* [`floor`](/docs/kcl-std/functions/std-math-floor)
|
|
|
|
* [`legAngX`](/docs/kcl-std/legAngX)
|
|
|
|
* [`legAngY`](/docs/kcl-std/legAngY)
|
|
|
|
* [`legLen`](/docs/kcl-std/legLen)
|
|
|
|
* [`ln`](/docs/kcl-std/functions/std-math-ln)
|
|
|
|
* [`log`](/docs/kcl-std/functions/std-math-log)
|
|
|
|
* [`log10`](/docs/kcl-std/functions/std-math-log10)
|
|
|
|
* [`log2`](/docs/kcl-std/functions/std-math-log2)
|
|
|
|
* [`max`](/docs/kcl-std/functions/std-math-max)
|
|
|
|
* [`min`](/docs/kcl-std/functions/std-math-min)
|
|
|
|
* [`polar`](/docs/kcl-std/functions/std-math-polar)
|
|
|
|
* [`pow`](/docs/kcl-std/functions/std-math-pow)
|
|
|
|
* [`rem`](/docs/kcl-std/functions/std-math-rem)
|
|
|
|
* [`round`](/docs/kcl-std/functions/std-math-round)
|
|
|
|
* [`sin`](/docs/kcl-std/functions/std-math-sin)
|
|
|
|
* [`sqrt`](/docs/kcl-std/functions/std-math-sqrt)
|
|
|
|
* [`tan`](/docs/kcl-std/functions/std-math-tan)
|
|
|
|
* [**std::sketch**](/docs/kcl-std/modules/std-sketch)
|
|
|
|
* [`angledLine`](/docs/kcl-std/angledLine)
|
|
|
|
* [`angledLineThatIntersects`](/docs/kcl-std/angledLineThatIntersects)
|
|
|
|
* [`arc`](/docs/kcl-std/arc)
|
2025-05-06 11:02:55 +12:00
|
|
|
* [`bezierCurve`](/docs/kcl-std/bezierCurve)
|
2025-05-06 16:09:59 +12:00
|
|
|
* [`circle`](/docs/kcl-std/functions/std-sketch-circle)
|
2025-05-06 11:02:55 +12:00
|
|
|
* [`circleThreePoint`](/docs/kcl-std/circleThreePoint)
|
|
|
|
* [`close`](/docs/kcl-std/close)
|
|
|
|
* [`extrude`](/docs/kcl-std/extrude)
|
|
|
|
* [`getCommonEdge`](/docs/kcl-std/getCommonEdge)
|
|
|
|
* [`getNextAdjacentEdge`](/docs/kcl-std/getNextAdjacentEdge)
|
|
|
|
* [`getOppositeEdge`](/docs/kcl-std/getOppositeEdge)
|
|
|
|
* [`getPreviousAdjacentEdge`](/docs/kcl-std/getPreviousAdjacentEdge)
|
|
|
|
* [`involuteCircular`](/docs/kcl-std/involuteCircular)
|
|
|
|
* [`lastSegX`](/docs/kcl-std/lastSegX)
|
|
|
|
* [`lastSegY`](/docs/kcl-std/lastSegY)
|
|
|
|
* [`line`](/docs/kcl-std/line)
|
|
|
|
* [`loft`](/docs/kcl-std/loft)
|
|
|
|
* [`patternCircular2d`](/docs/kcl-std/patternCircular2d)
|
|
|
|
* [`patternTransform2d`](/docs/kcl-std/patternTransform2d)
|
|
|
|
* [`polygon`](/docs/kcl-std/polygon)
|
|
|
|
* [`profileStart`](/docs/kcl-std/profileStart)
|
|
|
|
* [`profileStartX`](/docs/kcl-std/profileStartX)
|
|
|
|
* [`profileStartY`](/docs/kcl-std/profileStartY)
|
2025-05-06 16:09:59 +12:00
|
|
|
* [`revolve`](/docs/kcl-std/functions/std-sketch-revolve)
|
2025-05-06 11:02:55 +12:00
|
|
|
* [`segAng`](/docs/kcl-std/segAng)
|
|
|
|
* [`segEnd`](/docs/kcl-std/segEnd)
|
|
|
|
* [`segEndX`](/docs/kcl-std/segEndX)
|
|
|
|
* [`segEndY`](/docs/kcl-std/segEndY)
|
|
|
|
* [`segLen`](/docs/kcl-std/segLen)
|
|
|
|
* [`segStart`](/docs/kcl-std/segStart)
|
|
|
|
* [`segStartX`](/docs/kcl-std/segStartX)
|
|
|
|
* [`segStartY`](/docs/kcl-std/segStartY)
|
|
|
|
* [`startProfile`](/docs/kcl-std/startProfile)
|
|
|
|
* [`startSketchOn`](/docs/kcl-std/startSketchOn)
|
|
|
|
* [`subtract2d`](/docs/kcl-std/subtract2d)
|
|
|
|
* [`sweep`](/docs/kcl-std/sweep)
|
|
|
|
* [`tangentToEnd`](/docs/kcl-std/tangentToEnd)
|
|
|
|
* [`tangentialArc`](/docs/kcl-std/tangentialArc)
|
|
|
|
* [`xLine`](/docs/kcl-std/xLine)
|
|
|
|
* [`yLine`](/docs/kcl-std/yLine)
|
|
|
|
* [**std::solid**](/docs/kcl-std/modules/std-solid)
|
|
|
|
* [`chamfer`](/docs/kcl-std/functions/std-solid-chamfer)
|
|
|
|
* [`fillet`](/docs/kcl-std/functions/std-solid-fillet)
|
|
|
|
* [`hollow`](/docs/kcl-std/functions/std-solid-hollow)
|
2025-05-06 16:09:59 +12:00
|
|
|
* [`intersect`](/docs/kcl-std/intersect)
|
|
|
|
* [`patternCircular3d`](/docs/kcl-std/patternCircular3d)
|
|
|
|
* [`patternLinear3d`](/docs/kcl-std/patternLinear3d)
|
|
|
|
* [`patternTransform`](/docs/kcl-std/patternTransform)
|
2025-05-06 11:02:55 +12:00
|
|
|
* [`shell`](/docs/kcl-std/functions/std-solid-shell)
|
2025-05-06 16:09:59 +12:00
|
|
|
* [`subtract`](/docs/kcl-std/subtract)
|
|
|
|
* [`union`](/docs/kcl-std/union)
|
|
|
|
* [**std::transform**](/docs/kcl-std/modules/std-transform)
|
|
|
|
* [`mirror2d`](/docs/kcl-std/functions/std-transform-mirror2d)
|
|
|
|
* [`rotate`](/docs/kcl-std/rotate)
|
|
|
|
* [`scale`](/docs/kcl-std/scale)
|
|
|
|
* [`translate`](/docs/kcl-std/translate)
|
2025-05-06 11:02:55 +12:00
|
|
|
* [**std::units**](/docs/kcl-std/modules/std-units)
|
|
|
|
* [`units::toCentimeters`](/docs/kcl-std/functions/std-units-toCentimeters)
|
|
|
|
* [`units::toDegrees`](/docs/kcl-std/functions/std-units-toDegrees)
|
|
|
|
* [`units::toFeet`](/docs/kcl-std/functions/std-units-toFeet)
|
|
|
|
* [`units::toInches`](/docs/kcl-std/functions/std-units-toInches)
|
|
|
|
* [`units::toMeters`](/docs/kcl-std/functions/std-units-toMeters)
|
|
|
|
* [`units::toMillimeters`](/docs/kcl-std/functions/std-units-toMillimeters)
|
|
|
|
* [`units::toRadians`](/docs/kcl-std/functions/std-units-toRadians)
|
|
|
|
* [`units::toYards`](/docs/kcl-std/functions/std-units-toYards)
|
|
|
|
|
|
|
|
### Constants
|
|
|
|
|
|
|
|
* [**std**](/docs/kcl-std/modules/std)
|
|
|
|
* [`END`](/docs/kcl-std/consts/std-END)
|
|
|
|
* [`START`](/docs/kcl-std/consts/std-START)
|
|
|
|
* [`X`](/docs/kcl-std/consts/std-X)
|
|
|
|
* [`XY`](/docs/kcl-std/consts/std-XY)
|
|
|
|
* [`XZ`](/docs/kcl-std/consts/std-XZ)
|
|
|
|
* [`Y`](/docs/kcl-std/consts/std-Y)
|
|
|
|
* [`YZ`](/docs/kcl-std/consts/std-YZ)
|
|
|
|
* [`Z`](/docs/kcl-std/consts/std-Z)
|
|
|
|
* [**std::math**](/docs/kcl-std/modules/std-math)
|
|
|
|
* [`E`](/docs/kcl-std/consts/std-math-E)
|
|
|
|
* [`PI`](/docs/kcl-std/consts/std-math-PI)
|
|
|
|
* [`TAU`](/docs/kcl-std/consts/std-math-TAU)
|
|
|
|
* [**std::turns**](/docs/kcl-std/modules/std-turns)
|
|
|
|
* [`turns::HALF_TURN`](/docs/kcl-std/consts/std-turns-HALF_TURN)
|
|
|
|
* [`turns::QUARTER_TURN`](/docs/kcl-std/consts/std-turns-QUARTER_TURN)
|
|
|
|
* [`turns::THREE_QUARTER_TURN`](/docs/kcl-std/consts/std-turns-THREE_QUARTER_TURN)
|
|
|
|
* [`turns::ZERO`](/docs/kcl-std/consts/std-turns-ZERO)
|
|
|
|
|
|
|
|
### Types
|
|
|
|
|
|
|
|
See also the [types overview](/docs/kcl-lang/types)
|
|
|
|
|
2025-05-07 10:33:23 +12:00
|
|
|
* [**Primitive types**](/docs/kcl-lang/types)
|
|
|
|
* [`End`](/docs/kcl-lang/types#End)
|
|
|
|
* [`ImportedGeometry`](/docs/kcl-lang/types#ImportedGeometry)
|
|
|
|
* [`Start`](/docs/kcl-lang/types#Start)
|
|
|
|
* [`TagDeclarator`](/docs/kcl-lang/types#TagDeclarator)
|
|
|
|
* [`TagIdentifier`](/docs/kcl-lang/types#TagIdentifier)
|
2025-05-06 11:02:55 +12:00
|
|
|
* [`any`](/docs/kcl-std/types/std-types-any)
|
|
|
|
* [`bool`](/docs/kcl-std/types/std-types-bool)
|
|
|
|
* [`number`](/docs/kcl-std/types/std-types-number)
|
|
|
|
* [`string`](/docs/kcl-std/types/std-types-string)
|
|
|
|
* [`tag`](/docs/kcl-std/types/std-types-tag)
|
|
|
|
* [**std::types**](/docs/kcl-std/modules/std-types)
|
|
|
|
* [`Axis2d`](/docs/kcl-std/types/std-types-Axis2d)
|
|
|
|
* [`Axis3d`](/docs/kcl-std/types/std-types-Axis3d)
|
|
|
|
* [`Edge`](/docs/kcl-std/types/std-types-Edge)
|
|
|
|
* [`Face`](/docs/kcl-std/types/std-types-Face)
|
|
|
|
* [`Helix`](/docs/kcl-std/types/std-types-Helix)
|
|
|
|
* [`Plane`](/docs/kcl-std/types/std-types-Plane)
|
|
|
|
* [`Point2d`](/docs/kcl-std/types/std-types-Point2d)
|
|
|
|
* [`Point3d`](/docs/kcl-std/types/std-types-Point3d)
|
|
|
|
* [`Sketch`](/docs/kcl-std/types/std-types-Sketch)
|
|
|
|
* [`Solid`](/docs/kcl-std/types/std-types-Solid)
|