--- 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) * [`assert`](/docs/kcl-std/functions/std-assert) * [`assertIs`](/docs/kcl-std/functions/std-assertIs) * [`clone`](/docs/kcl-std/functions/std-clone) * [`helix`](/docs/kcl-std/functions/std-helix) * [`offsetPlane`](/docs/kcl-std/functions/std-offsetPlane) * [**std::appearance**](/docs/kcl-std/modules/std-appearance) * [`appearance::hexString`](/docs/kcl-std/functions/std-appearance-hexString) * [**std::array**](/docs/kcl-std/modules/std-array) * [`map`](/docs/kcl-std/functions/std-array-map) * [`pop`](/docs/kcl-std/functions/std-array-pop) * [`push`](/docs/kcl-std/functions/std-array-push) * [`reduce`](/docs/kcl-std/functions/std-array-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/functions/std-math-legAngX) * [`legAngY`](/docs/kcl-std/functions/std-math-legAngY) * [`legLen`](/docs/kcl-std/functions/std-math-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/functions/std-sketch-angledLine) * [`angledLineThatIntersects`](/docs/kcl-std/functions/std-sketch-angledLineThatIntersects) * [`arc`](/docs/kcl-std/functions/std-sketch-arc) * [`bezierCurve`](/docs/kcl-std/functions/std-sketch-bezierCurve) * [`circle`](/docs/kcl-std/functions/std-sketch-circle) * [`circleThreePoint`](/docs/kcl-std/functions/std-sketch-circleThreePoint) * [`close`](/docs/kcl-std/functions/std-sketch-close) * [`extrude`](/docs/kcl-std/functions/std-sketch-extrude) * [`getCommonEdge`](/docs/kcl-std/functions/std-sketch-getCommonEdge) * [`getNextAdjacentEdge`](/docs/kcl-std/functions/std-sketch-getNextAdjacentEdge) * [`getOppositeEdge`](/docs/kcl-std/functions/std-sketch-getOppositeEdge) * [`getPreviousAdjacentEdge`](/docs/kcl-std/functions/std-sketch-getPreviousAdjacentEdge) * [`involuteCircular`](/docs/kcl-std/functions/std-sketch-involuteCircular) * [`lastSegX`](/docs/kcl-std/functions/std-sketch-lastSegX) * [`lastSegY`](/docs/kcl-std/functions/std-sketch-lastSegY) * [`line`](/docs/kcl-std/functions/std-sketch-line) * [`loft`](/docs/kcl-std/functions/std-sketch-loft) * [`patternCircular2d`](/docs/kcl-std/functions/std-sketch-patternCircular2d) * [`patternLinear2d`](/docs/kcl-std/functions/std-sketch-patternLinear2d) * [`patternTransform2d`](/docs/kcl-std/functions/std-sketch-patternTransform2d) * [`planeOf`](/docs/kcl-std/functions/std-sketch-planeOf) * [`polygon`](/docs/kcl-std/functions/std-sketch-polygon) * [`profileStart`](/docs/kcl-std/functions/std-sketch-profileStart) * [`profileStartX`](/docs/kcl-std/functions/std-sketch-profileStartX) * [`profileStartY`](/docs/kcl-std/functions/std-sketch-profileStartY) * [`rectangle`](/docs/kcl-std/functions/std-sketch-rectangle) * [`revolve`](/docs/kcl-std/functions/std-sketch-revolve) * [`segAng`](/docs/kcl-std/functions/std-sketch-segAng) * [`segEnd`](/docs/kcl-std/functions/std-sketch-segEnd) * [`segEndX`](/docs/kcl-std/functions/std-sketch-segEndX) * [`segEndY`](/docs/kcl-std/functions/std-sketch-segEndY) * [`segLen`](/docs/kcl-std/functions/std-sketch-segLen) * [`segStart`](/docs/kcl-std/functions/std-sketch-segStart) * [`segStartX`](/docs/kcl-std/functions/std-sketch-segStartX) * [`segStartY`](/docs/kcl-std/functions/std-sketch-segStartY) * [`startProfile`](/docs/kcl-std/functions/std-sketch-startProfile) * [`startSketchOn`](/docs/kcl-std/functions/std-sketch-startSketchOn) * [`subtract2d`](/docs/kcl-std/functions/std-sketch-subtract2d) * [`sweep`](/docs/kcl-std/functions/std-sketch-sweep) * [`tangentToEnd`](/docs/kcl-std/functions/std-sketch-tangentToEnd) * [`tangentialArc`](/docs/kcl-std/functions/std-sketch-tangentialArc) * [`xLine`](/docs/kcl-std/functions/std-sketch-xLine) * [`yLine`](/docs/kcl-std/functions/std-sketch-yLine) * [**std::solid**](/docs/kcl-std/modules/std-solid) * [`appearance`](/docs/kcl-std/functions/std-solid-appearance) * [`chamfer`](/docs/kcl-std/functions/std-solid-chamfer) * [`fillet`](/docs/kcl-std/functions/std-solid-fillet) * [`hollow`](/docs/kcl-std/functions/std-solid-hollow) * [`intersect`](/docs/kcl-std/functions/std-solid-intersect) * [`patternCircular3d`](/docs/kcl-std/functions/std-solid-patternCircular3d) * [`patternLinear3d`](/docs/kcl-std/functions/std-solid-patternLinear3d) * [`patternTransform`](/docs/kcl-std/functions/std-solid-patternTransform) * [`shell`](/docs/kcl-std/functions/std-solid-shell) * [`subtract`](/docs/kcl-std/functions/std-solid-subtract) * [`union`](/docs/kcl-std/functions/std-solid-union) * [**std::transform**](/docs/kcl-std/modules/std-transform) * [`mirror2d`](/docs/kcl-std/functions/std-transform-mirror2d) * [`rotate`](/docs/kcl-std/functions/std-transform-rotate) * [`scale`](/docs/kcl-std/functions/std-transform-scale) * [`translate`](/docs/kcl-std/functions/std-transform-translate) * [**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::sweep**](/docs/kcl-std/modules/std-sweep) * [`sweep::SKETCH_PLANE`](/docs/kcl-std/consts/std-sweep-SKETCH_PLANE) * [`sweep::TRAJECTORY`](/docs/kcl-std/consts/std-sweep-TRAJECTORY) * [**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) * [**Primitive types**](/docs/kcl-lang/types) * [`ImportedGeometry`](/docs/kcl-std/types/std-types-ImportedGeometry) * [`TagDecl`](/docs/kcl-std/types/std-types-TagDecl) * [`any`](/docs/kcl-std/types/std-types-any) * [`bool`](/docs/kcl-std/types/std-types-bool) * [`fn`](/docs/kcl-std/types/std-types-fn) * [`number`](/docs/kcl-std/types/std-types-number) * [`string`](/docs/kcl-std/types/std-types-string) * [**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) * [`TaggedEdge`](/docs/kcl-std/types/std-types-TaggedEdge) * [`TaggedFace`](/docs/kcl-std/types/std-types-TaggedFace)