Compare commits
1 Commits
test-windo
...
achalmers/
Author | SHA1 | Date | |
---|---|---|---|
9a3fc3bdce |
@ -1,4 +1,3 @@
|
||||
[codespell]
|
||||
ignore-words-list: crate,everytime,inout,co-ordinate,ot,nwo,atleast,ue,afterall,ser,fromM,FromM
|
||||
skip: **/target,node_modules,build,dist,./out,**/Cargo.lock,./docs/**/*.md,./e2e/playwright/lib/console-error-whitelist.ts,.package-lock.json,**/package-lock.json,./openapi/*.json,./packages/codemirror-lang-kcl/test/all.test.ts,./public/kcl-samples,./rust/kcl-lib/tests/kcl_samples,tsconfig.tsbuildinfo,./src/lib/machine-api.d.ts,./test-results,./playwright-report,./kcl-book/book
|
||||
|
||||
skip: **/target,node_modules,build,dist,./out,**/Cargo.lock,./docs/kcl/*.md,./e2e/playwright/lib/console-error-whitelist.ts,.package-lock.json,**/package-lock.json,./openapi/*.json,./packages/codemirror-lang-kcl/test/all.test.ts,./public/kcl-samples,./rust/kcl-lib/tests/kcl_samples,tsconfig.tsbuildinfo,./src/lib/machine-api.d.ts
|
||||
|
@ -87,14 +87,6 @@
|
||||
{
|
||||
"selector": "CallExpression[callee.object.name='TOML'][callee.property.name='parse']",
|
||||
"message": "Do not use TOML.parse directly. Use the wrappers in test-utils instead like tomlToSettings."
|
||||
},
|
||||
{
|
||||
"selector": "CallExpression[callee.property.name='split'] > Literal[value='/']",
|
||||
"message": "Avoid using split with '/'."
|
||||
},
|
||||
{
|
||||
"selector": "CallExpression[callee.property.name='join'] > Literal[value='/']",
|
||||
"message": "Avoid using join with '/'."
|
||||
}
|
||||
],
|
||||
"no-restricted-imports": [
|
||||
|
4
.github/workflows/cargo-test.yml
vendored
4
.github/workflows/cargo-test.yml
vendored
@ -84,7 +84,7 @@ jobs:
|
||||
run: |
|
||||
set -euo pipefail
|
||||
cd rust
|
||||
cargo nextest run --workspace --features artifact-graph --retries=10 --no-fail-fast --profile ci simulation_tests::kcl_samples 2>&1 | tee /tmp/github-actions.log
|
||||
cargo nextest run --workspace --features artifact-graph --retries=2 --no-fail-fast --profile ci simulation_tests::kcl_samples 2>&1 | tee /tmp/github-actions.log
|
||||
env:
|
||||
KITTYCAD_API_TOKEN: ${{secrets.KITTYCAD_API_TOKEN_DEV}}
|
||||
ZOO_HOST: https://api.dev.zoo.dev
|
||||
@ -180,7 +180,7 @@ jobs:
|
||||
ls -lah
|
||||
cd rust
|
||||
cargo nextest run\
|
||||
--retries=10 --no-fail-fast --profile ci --archive-file nextest-archive.tar.zst \
|
||||
--retries=2 --no-fail-fast -P ci --archive-file nextest-archive.tar.zst \
|
||||
--partition count:${{ matrix.partitionIndex}}/${{ matrix.partitionTotal }} \
|
||||
2>&1 | tee /tmp/github-actions.log
|
||||
env:
|
||||
|
14
.github/workflows/generate-website-docs.yml
vendored
14
.github/workflows/generate-website-docs.yml
vendored
@ -38,13 +38,17 @@ jobs:
|
||||
run: |
|
||||
mkdir -p documentation/content/pages/docs/kcl/
|
||||
# cleanup old
|
||||
rm -rf documentation/content/pages/docs/kcl-std
|
||||
rm -rf documentation/content/pages/docs/kcl-lang
|
||||
rm -rf documentation/content/pages/docs/kcl/*.md
|
||||
rm -rf documentation/content/pages/docs/kcl/types
|
||||
rm -rf documentation/content/pages/docs/kcl/functions
|
||||
rm -rf documentation/content/pages/docs/kcl/consts
|
||||
# move new
|
||||
mv -f docs/kcl-std documentation/content/pages/docs
|
||||
mv -f docs/kcl-lang documentation/content/pages/docs
|
||||
mv -f docs/kcl/*.md documentation/content/pages/docs/kcl/
|
||||
mv -f docs/kcl/types documentation/content/pages/docs/kcl/
|
||||
mv -f docs/kcl/functions documentation/content/pages/docs/kcl/
|
||||
mv -f docs/kcl/consts documentation/content/pages/docs/kcl/
|
||||
# We don't need the README
|
||||
rm documentation/content/pages/docs/kcl-std/README.md
|
||||
rm documentation/content/pages/docs/kcl/README.md
|
||||
- name: move kcl-samples
|
||||
shell: bash
|
||||
run: |
|
||||
|
@ -97,7 +97,7 @@ The following will need to be run when checking out a new commit and guarantees
|
||||
```bash
|
||||
npm install
|
||||
npm run build:wasm
|
||||
npm start
|
||||
npm start # or npm run build:local && npm run serve for slower but more production-like build
|
||||
```
|
||||
|
||||
## Before submitting a PR
|
||||
|
20
Makefile
20
Makefile
@ -49,9 +49,14 @@ REACT_SOURCES := $(wildcard src/*.tsx) $(wildcard src/**/*.tsx)
|
||||
TYPESCRIPT_SOURCES := tsconfig.* $(wildcard src/*.ts) $(wildcard src/**/*.ts)
|
||||
VITE_SOURCES := $(wildcard vite.*) $(wildcard vite/**/*.tsx)
|
||||
|
||||
|
||||
.PHONY: build
|
||||
build: install public/kcl_wasm_lib_bg.wasm .vite/build/main.js
|
||||
build: build-web build-desktop
|
||||
|
||||
.PHONY: build-web
|
||||
build-web: install public/kcl_wasm_lib_bg.wasm build/index.html
|
||||
|
||||
.PHONY: build-desktop
|
||||
build-desktop: install public/kcl_wasm_lib_bg.wasm .vite/build/main.js
|
||||
|
||||
public/kcl_wasm_lib_bg.wasm: $(CARGO_SOURCES) $(RUST_SOURCES)
|
||||
ifdef WINDOWS
|
||||
@ -60,6 +65,9 @@ else
|
||||
npm run build:wasm:dev
|
||||
endif
|
||||
|
||||
build/index.html: $(REACT_SOURCES) $(TYPESCRIPT_SOURCES) $(VITE_SOURCES)
|
||||
npm run build:local
|
||||
|
||||
.vite/build/main.js: $(REACT_SOURCES) $(TYPESCRIPT_SOURCES) $(VITE_SOURCES)
|
||||
npm run tronb:vite:dev
|
||||
|
||||
@ -87,11 +95,11 @@ TARGET ?= desktop
|
||||
run: run-$(TARGET)
|
||||
|
||||
.PHONY: run-web
|
||||
run-web: install build ## Start the web app
|
||||
run-web: install build-web ## Start the web app
|
||||
npm run start
|
||||
|
||||
.PHONY: run-desktop
|
||||
run-desktop: install build ## Start the desktop app
|
||||
run-desktop: install build-desktop ## Start the desktop app
|
||||
npm run tron:start
|
||||
|
||||
###############################################################################
|
||||
@ -113,7 +121,7 @@ test-unit: install ## Run the unit tests
|
||||
test-e2e: test-e2e-$(TARGET)
|
||||
|
||||
.PHONY: test-e2e-web
|
||||
test-e2e-web: install build ## Run the web e2e tests
|
||||
test-e2e-web: install build-web ## Run the web e2e tests
|
||||
@ curl -fs localhost:3000 >/dev/null || ( echo "Error: localhost:3000 not available, 'make run-web' first" && exit 1 )
|
||||
ifdef E2E_GREP
|
||||
npm run chrome:test -- --headed --grep="$(E2E_GREP)" --max-failures=$(E2E_FAILURES)
|
||||
@ -122,7 +130,7 @@ else
|
||||
endif
|
||||
|
||||
.PHONY: test-e2e-desktop
|
||||
test-e2e-desktop: install build ## Run the desktop e2e tests
|
||||
test-e2e-desktop: install build-desktop ## Run the desktop e2e tests
|
||||
ifdef E2E_GREP
|
||||
npm run test:playwright:electron -- --grep="$(E2E_GREP)" --max-failures=$(E2E_FAILURES)
|
||||
else
|
||||
|
@ -1,12 +0,0 @@
|
||||
---
|
||||
title: "KCL Language Guide"
|
||||
excerpt: "Documentation of the KCL language for the Zoo Design Studio."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
## Topics
|
||||
|
||||
* [`Types`](/docs/kcl-lang/types)
|
||||
* [`Modules`](/docs/kcl-lang/modules)
|
||||
* [`Settings`](/docs/kcl-lang/settings)
|
||||
* [`Known Issues`](/docs/kcl-lang/known-issues)
|
@ -210,7 +210,7 @@ As per the example above you can use the tag identifier to get a reference to th
|
||||
tagged object. The syntax for this is `myTag`.
|
||||
|
||||
In the example above we use the tag identifier to get the angle of the segment
|
||||
`segAng(rectangleSegmentA001)`.
|
||||
`segAng(rectangleSegmentA001, %)`.
|
||||
|
||||
### `Start`
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,16 +0,0 @@
|
||||
---
|
||||
title: "turns::HALF_TURN"
|
||||
subtitle: "Constant in turns"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
turns::HALF_TURN: number(deg) = 180deg
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
@ -1,16 +0,0 @@
|
||||
---
|
||||
title: "turns::QUARTER_TURN"
|
||||
subtitle: "Constant in turns"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
turns::QUARTER_TURN: number(deg) = 90deg
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
@ -1,16 +0,0 @@
|
||||
---
|
||||
title: "turns::THREE_QUARTER_TURN"
|
||||
subtitle: "Constant in turns"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
turns::THREE_QUARTER_TURN: number(deg) = 270deg
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
@ -1,16 +0,0 @@
|
||||
---
|
||||
title: "turns::ZERO"
|
||||
subtitle: "Constant in turns"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
turns::ZERO: number = 0
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,162 +0,0 @@
|
||||
---
|
||||
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)
|
||||
* [`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)
|
||||
* [`bezierCurve`](/docs/kcl-std/bezierCurve)
|
||||
* [`circle`](/docs/kcl-std/functions/std-sketch-circle)
|
||||
* [`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)
|
||||
* [`revolve`](/docs/kcl-std/functions/std-sketch-revolve)
|
||||
* [`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)
|
||||
* [`intersect`](/docs/kcl-std/intersect)
|
||||
* [`patternCircular3d`](/docs/kcl-std/patternCircular3d)
|
||||
* [`patternLinear3d`](/docs/kcl-std/patternLinear3d)
|
||||
* [`patternTransform`](/docs/kcl-std/patternTransform)
|
||||
* [`shell`](/docs/kcl-std/functions/std-solid-shell)
|
||||
* [`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)
|
||||
* [**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)
|
||||
|
||||
* [**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)
|
||||
* [`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)
|
@ -1,13 +0,0 @@
|
||||
---
|
||||
title: "array"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1,39 +0,0 @@
|
||||
---
|
||||
title: "math"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Functions and constants
|
||||
|
||||
* [`E`](/docs/kcl-std/consts/std-math-E)
|
||||
* [`PI`](/docs/kcl-std/consts/std-math-PI)
|
||||
* [`TAU`](/docs/kcl-std/consts/std-math-TAU)
|
||||
* [`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)
|
||||
* [`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)
|
||||
|
@ -1,17 +0,0 @@
|
||||
---
|
||||
title: "sketch"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Functions and constants
|
||||
|
||||
* [`circle`](/docs/kcl-std/functions/std-sketch-circle)
|
||||
* [`revolve`](/docs/kcl-std/functions/std-sketch-revolve)
|
||||
|
@ -1,19 +0,0 @@
|
||||
---
|
||||
title: "solid"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Functions and constants
|
||||
|
||||
* [`chamfer`](/docs/kcl-std/functions/std-solid-chamfer)
|
||||
* [`fillet`](/docs/kcl-std/functions/std-solid-fillet)
|
||||
* [`hollow`](/docs/kcl-std/functions/std-solid-hollow)
|
||||
* [`shell`](/docs/kcl-std/functions/std-solid-shell)
|
||||
|
@ -1,16 +0,0 @@
|
||||
---
|
||||
title: "transform"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Functions and constants
|
||||
|
||||
* [`mirror2d`](/docs/kcl-std/functions/std-transform-mirror2d)
|
||||
|
@ -1,19 +0,0 @@
|
||||
---
|
||||
title: "turns"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Functions and constants
|
||||
|
||||
* [`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)
|
||||
|
@ -1,30 +0,0 @@
|
||||
---
|
||||
title: "types"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## 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)
|
||||
* [`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)
|
@ -1,23 +0,0 @@
|
||||
---
|
||||
title: "units"
|
||||
subtitle: "Module in std"
|
||||
excerpt: "Functions for converting numbers to different units. "
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Functions for converting numbers to different units.
|
||||
|
||||
|
||||
|
||||
|
||||
## Functions and constants
|
||||
|
||||
* [`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)
|
||||
|
@ -1,35 +0,0 @@
|
||||
---
|
||||
title: "prelude"
|
||||
subtitle: "Module in "
|
||||
excerpt: "The KCL standard library "
|
||||
layout: manual
|
||||
---
|
||||
|
||||
The KCL standard library
|
||||
|
||||
Contains frequently used constants, functions for interacting with the KittyCAD servers to create sketches and geometry, and utility functions.
|
||||
|
||||
## Modules
|
||||
|
||||
* [`array`](/docs/kcl-std/modules/std-array)
|
||||
* [`math`](/docs/kcl-std/modules/std-math)
|
||||
* [`sketch`](/docs/kcl-std/modules/std-sketch)
|
||||
* [`solid`](/docs/kcl-std/modules/std-solid)
|
||||
* [`transform`](/docs/kcl-std/modules/std-transform)
|
||||
* [`turns::turns`](/docs/kcl-std/modules/std-turns)
|
||||
* [`types`](/docs/kcl-std/modules/std-types)
|
||||
* [`units::units`](/docs/kcl-std/modules/std-units)
|
||||
|
||||
## Functions and constants
|
||||
|
||||
* [`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)
|
||||
* [`helix`](/docs/kcl-std/functions/std-helix)
|
||||
* [`offsetPlane`](/docs/kcl-std/functions/std-offsetPlane)
|
||||
|
@ -1,18 +0,0 @@
|
||||
---
|
||||
title: "Point2d"
|
||||
subtitle: "Type in types"
|
||||
excerpt: "A point in two dimensional space."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
A point in two dimensional space.
|
||||
|
||||
```kcl
|
||||
type Point2d = [number(Length); 2]
|
||||
```
|
||||
|
||||
[`Point2d`](/docs/kcl-std/types/std-types-Point2d) is an alias for a two-element array of [number](/docs/kcl-std/types/std-types-number)s. To write a value
|
||||
with type [`Point2d`](/docs/kcl-std/types/std-types-Point2d), use an array, e.g., `[0, 0]` or `[5.0, 3.14]`.
|
||||
|
||||
|
||||
|
@ -1,18 +0,0 @@
|
||||
---
|
||||
title: "Point3d"
|
||||
subtitle: "Type in types"
|
||||
excerpt: "A point in three dimensional space."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
A point in three dimensional space.
|
||||
|
||||
```kcl
|
||||
type Point3d = [number(Length); 3]
|
||||
```
|
||||
|
||||
[`Point3d`](/docs/kcl-std/types/std-types-Point3d) is an alias for a three-element array of [number](/docs/kcl-std/types/std-types-number)s. To write a value
|
||||
with type [`Point3d`](/docs/kcl-std/types/std-types-Point3d), use an array, e.g., `[0, 0, 0]` or `[5.0, 3.14, 6.8]`.
|
||||
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "angledLine"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Draw a line segment relative to the current origin using the polar measure of some angle and distance."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Draw a line segment relative to the current origin using the polar measure of some angle and distance.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
angledLine(
|
||||
@sketch: Sketch,
|
||||
sketch: Sketch,
|
||||
angle: number,
|
||||
length?: number,
|
||||
lengthX?: number,
|
||||
@ -21,23 +22,22 @@ angledLine(
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `sketch` | [`Sketch`](/docs/kcl-std/types/std-types-Sketch) | Which sketch should this path be added to? | Yes |
|
||||
| `angle` | [`number`](/docs/kcl-std/types/std-types-number) | Which angle should the line be drawn at? | Yes |
|
||||
| `length` | [`number`](/docs/kcl-std/types/std-types-number) | Draw the line this distance along the given angle. Only one of `length`, `lengthX`, `lengthY`, `endAbsoluteX`, `endAbsoluteY` can be given. | No |
|
||||
| `lengthX` | [`number`](/docs/kcl-std/types/std-types-number) | Draw the line this distance along the X axis. Only one of `length`, `lengthX`, `lengthY`, `endAbsoluteX`, `endAbsoluteY` can be given. | No |
|
||||
| `lengthY` | [`number`](/docs/kcl-std/types/std-types-number) | Draw the line this distance along the Y axis. Only one of `length`, `lengthX`, `lengthY`, `endAbsoluteX`, `endAbsoluteY` can be given. | No |
|
||||
| `endAbsoluteX` | [`number`](/docs/kcl-std/types/std-types-number) | Draw the line along the given angle until it reaches this point along the X axis. Only one of `length`, `lengthX`, `lengthY`, `endAbsoluteX`, `endAbsoluteY` can be given. | No |
|
||||
| `endAbsoluteY` | [`number`](/docs/kcl-std/types/std-types-number) | Draw the line along the given angle until it reaches this point along the Y axis. Only one of `length`, `lengthX`, `lengthY`, `endAbsoluteX`, `endAbsoluteY` can be given. | No |
|
||||
| [`tag`](/docs/kcl-std/types/std-types-tag) | [`TagDeclarator`](/docs/kcl-lang/types#TagDeclarator) | Create a new tag which refers to this line | No |
|
||||
| `sketch` | [`Sketch`](/docs/kcl/types/std-types-Sketch) | Which sketch should this path be added to? | Yes |
|
||||
| `angle` | [`number`](/docs/kcl/types/std-types-number) | Which angle should the line be drawn at? | Yes |
|
||||
| `length` | [`number`](/docs/kcl/types/std-types-number) | Draw the line this distance along the given angle. Only one of `length`, `lengthX`, `lengthY`, `endAbsoluteX`, `endAbsoluteY` can be given. | No |
|
||||
| `lengthX` | [`number`](/docs/kcl/types/std-types-number) | Draw the line this distance along the X axis. Only one of `length`, `lengthX`, `lengthY`, `endAbsoluteX`, `endAbsoluteY` can be given. | No |
|
||||
| `lengthY` | [`number`](/docs/kcl/types/std-types-number) | Draw the line this distance along the Y axis. Only one of `length`, `lengthX`, `lengthY`, `endAbsoluteX`, `endAbsoluteY` can be given. | No |
|
||||
| `endAbsoluteX` | [`number`](/docs/kcl/types/std-types-number) | Draw the line along the given angle until it reaches this point along the X axis. Only one of `length`, `lengthX`, `lengthY`, `endAbsoluteX`, `endAbsoluteY` can be given. | No |
|
||||
| `endAbsoluteY` | [`number`](/docs/kcl/types/std-types-number) | Draw the line along the given angle until it reaches this point along the Y axis. Only one of `length`, `lengthX`, `lengthY`, `endAbsoluteX`, `endAbsoluteY` can be given. | No |
|
||||
| [`tag`](/docs/kcl/types/std-types-tag) | [`TagDeclarator`](/docs/kcl/types#TagDeclarator) | Create a new tag which refers to this line | No |
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
[`Sketch`](/docs/kcl/types/std-types-Sketch)
|
||||
|
||||
|
||||
### Examples
|
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "angledLineThatIntersects"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Draw an angled line from the current origin, constructing a line segment such that the newly created line intersects the desired target line segment."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Draw an angled line from the current origin, constructing a line segment such that the newly created line intersects the desired target line segment.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
angledLineThatIntersects(
|
||||
@sketch: Sketch,
|
||||
sketch: Sketch,
|
||||
angle: number,
|
||||
intersectTag: TagIdentifier,
|
||||
offset?: number,
|
||||
@ -18,20 +19,19 @@ angledLineThatIntersects(
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `sketch` | [`Sketch`](/docs/kcl-std/types/std-types-Sketch) | Which sketch should this path be added to? | Yes |
|
||||
| `angle` | [`number`](/docs/kcl-std/types/std-types-number) | Which angle should the line be drawn at? | Yes |
|
||||
| `intersectTag` | [`TagIdentifier`](/docs/kcl-lang/types#TagIdentifier) | The tag of the line to intersect with | Yes |
|
||||
| `offset` | [`number`](/docs/kcl-std/types/std-types-number) | The offset from the intersecting line. Defaults to 0. | No |
|
||||
| [`tag`](/docs/kcl-std/types/std-types-tag) | [`TagDeclarator`](/docs/kcl-lang/types#TagDeclarator) | Create a new tag which refers to this line | No |
|
||||
| `sketch` | [`Sketch`](/docs/kcl/types/std-types-Sketch) | Which sketch should this path be added to? | Yes |
|
||||
| `angle` | [`number`](/docs/kcl/types/std-types-number) | Which angle should the line be drawn at? | Yes |
|
||||
| `intersectTag` | [`TagIdentifier`](/docs/kcl/types#TagIdentifier) | The tag of the line to intersect with | Yes |
|
||||
| `offset` | [`number`](/docs/kcl/types/std-types-number) | The offset from the intersecting line. Defaults to 0. | No |
|
||||
| [`tag`](/docs/kcl/types/std-types-tag) | [`TagDeclarator`](/docs/kcl/types#TagDeclarator) | Create a new tag which refers to this line | No |
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
[`Sketch`](/docs/kcl/types/std-types-Sketch)
|
||||
|
||||
|
||||
### Examples
|
@ -1,35 +1,35 @@
|
||||
---
|
||||
title: "appearance"
|
||||
subtitle: "Function in std"
|
||||
excerpt: "Set the appearance of a solid. This only works on solids, not sketches or individual paths."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Set the appearance of a solid. This only works on solids, not sketches or individual paths.
|
||||
|
||||
This will work on any solid, including extruded solids, revolved solids, and shelled solids.
|
||||
|
||||
```kcl
|
||||
appearance(
|
||||
@solids: [Solid] | ImportedGeometry,
|
||||
solids: [Solid] | ImportedGeometry,
|
||||
color: string,
|
||||
metalness?: number,
|
||||
roughness?: number,
|
||||
): [Solid] | ImportedGeometry
|
||||
```
|
||||
|
||||
This will work on any solid, including extruded solids, revolved solids, and shelled solids.
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `solids` | [`[Solid]`](/docs/kcl-std/types/std-types-Solid) or [`ImportedGeometry`](/docs/kcl-lang/types#ImportedGeometry) | The solid(s) whose appearance is being set | Yes |
|
||||
| `color` | [`string`](/docs/kcl-std/types/std-types-string) | Color of the new material, a hex string like '#ff0000' | Yes |
|
||||
| `metalness` | [`number`](/docs/kcl-std/types/std-types-number) | Metalness of the new material, a percentage like 95.7. | No |
|
||||
| `roughness` | [`number`](/docs/kcl-std/types/std-types-number) | Roughness of the new material, a percentage like 95.7. | No |
|
||||
| `solids` | [`[Solid]`](/docs/kcl/types/std-types-Solid) or [`ImportedGeometry`](/docs/kcl/types#ImportedGeometry) | The solid(s) whose appearance is being set | Yes |
|
||||
| `color` | [`string`](/docs/kcl/types/std-types-string) | Color of the new material, a hex string like '#ff0000' | Yes |
|
||||
| `metalness` | [`number`](/docs/kcl/types/std-types-number) | Metalness of the new material, a percentage like 95.7. | No |
|
||||
| `roughness` | [`number`](/docs/kcl/types/std-types-number) | Roughness of the new material, a percentage like 95.7. | No |
|
||||
|
||||
### Returns
|
||||
|
||||
[`[Solid]`](/docs/kcl-std/types/std-types-Solid) or [`ImportedGeometry`](/docs/kcl-lang/types#ImportedGeometry) - Data for a solid or an imported geometry.
|
||||
[`[Solid]`](/docs/kcl/types/std-types-Solid) or [`ImportedGeometry`](/docs/kcl/types#ImportedGeometry) - Data for a solid or an imported geometry.
|
||||
|
||||
|
||||
### Examples
|
@ -1,15 +1,18 @@
|
||||
---
|
||||
title: "arc"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Draw a curved line segment along an imaginary circle."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Draw a curved line segment along an imaginary circle.
|
||||
|
||||
The arc is constructed such that the current position of the sketch is placed along an imaginary circle of the specified radius, at angleStart degrees. The resulting arc is the segment of the imaginary circle from that origin point to angleEnd, radius away from the center of the imaginary circle.
|
||||
|
||||
Unless this makes a lot of sense and feels like what you're looking for to construct your shape, you're likely looking for tangentialArc.
|
||||
|
||||
```kcl
|
||||
arc(
|
||||
@sketch: Sketch,
|
||||
sketch: Sketch,
|
||||
angleStart?: number,
|
||||
angleEnd?: number,
|
||||
radius?: number,
|
||||
@ -19,25 +22,22 @@ arc(
|
||||
): Sketch
|
||||
```
|
||||
|
||||
The arc is constructed such that the current position of the sketch is placed along an imaginary circle of the specified radius, at angleStart degrees. The resulting arc is the segment of the imaginary circle from that origin point to angleEnd, radius away from the center of the imaginary circle.
|
||||
|
||||
Unless this makes a lot of sense and feels like what you're looking for to construct your shape, you're likely looking for tangentialArc.
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `sketch` | [`Sketch`](/docs/kcl-std/types/std-types-Sketch) | Which sketch should this path be added to? | Yes |
|
||||
| `angleStart` | [`number`](/docs/kcl-std/types/std-types-number) | Where along the circle should this arc start? | No |
|
||||
| `angleEnd` | [`number`](/docs/kcl-std/types/std-types-number) | Where along the circle should this arc end? | No |
|
||||
| `radius` | [`number`](/docs/kcl-std/types/std-types-number) | How large should the circle be? | No |
|
||||
| `interiorAbsolute` | [`Point2d`](/docs/kcl-std/types/std-types-Point2d) | Any point between the arc's start and end? Requires `endAbsolute`. Incompatible with `angleStart` or `angleEnd` | No |
|
||||
| `endAbsolute` | [`Point2d`](/docs/kcl-std/types/std-types-Point2d) | Where should this arc end? Requires `interiorAbsolute`. Incompatible with `angleStart` or `angleEnd` | No |
|
||||
| [`tag`](/docs/kcl-std/types/std-types-tag) | [`TagDeclarator`](/docs/kcl-lang/types#TagDeclarator) | Create a new tag which refers to this line | No |
|
||||
| `sketch` | [`Sketch`](/docs/kcl/types/std-types-Sketch) | Which sketch should this path be added to? | Yes |
|
||||
| `angleStart` | [`number`](/docs/kcl/types/std-types-number) | Where along the circle should this arc start? | No |
|
||||
| `angleEnd` | [`number`](/docs/kcl/types/std-types-number) | Where along the circle should this arc end? | No |
|
||||
| `radius` | [`number`](/docs/kcl/types/std-types-number) | How large should the circle be? | No |
|
||||
| `interiorAbsolute` | [`Point2d`](/docs/kcl/types/std-types-Point2d) | Any point between the arc's start and end? Requires `endAbsolute`. Incompatible with `angleStart` or `angleEnd` | No |
|
||||
| `endAbsolute` | [`Point2d`](/docs/kcl/types/std-types-Point2d) | Where should this arc end? Requires `interiorAbsolute`. Incompatible with `angleStart` or `angleEnd` | No |
|
||||
| [`tag`](/docs/kcl/types/std-types-tag) | [`TagDeclarator`](/docs/kcl/types#TagDeclarator) | Create a new tag which refers to this line | No |
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
[`Sketch`](/docs/kcl/types/std-types-Sketch)
|
||||
|
||||
|
||||
### Examples
|
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "assert"
|
||||
subtitle: "Function in std"
|
||||
excerpt: "Check a value meets some expected conditions at runtime. Program terminates with an error if conditions aren't met. If you provide multiple conditions, they will all be checked and all must be met."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Check a value meets some expected conditions at runtime. Program terminates with an error if conditions aren't met. If you provide multiple conditions, they will all be checked and all must be met.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
assert(
|
||||
@actual: number,
|
||||
actual: number,
|
||||
isGreaterThan?: number,
|
||||
isLessThan?: number,
|
||||
isGreaterThanOrEqual?: number,
|
||||
@ -21,19 +22,18 @@ assert(
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `actual` | [`number`](/docs/kcl-std/types/std-types-number) | Value to check. It will be compared with one of the comparison arguments. | Yes |
|
||||
| `isGreaterThan` | [`number`](/docs/kcl-std/types/std-types-number) | Comparison argument. If given, checks the `actual` value is greater than this. | No |
|
||||
| `isLessThan` | [`number`](/docs/kcl-std/types/std-types-number) | Comparison argument. If given, checks the `actual` value is less than this. | No |
|
||||
| `isGreaterThanOrEqual` | [`number`](/docs/kcl-std/types/std-types-number) | Comparison argument. If given, checks the `actual` value is greater than or equal to this. | No |
|
||||
| `isLessThanOrEqual` | [`number`](/docs/kcl-std/types/std-types-number) | Comparison argument. If given, checks the `actual` value is less than or equal to this. | No |
|
||||
| `isEqualTo` | [`number`](/docs/kcl-std/types/std-types-number) | Comparison argument. If given, checks the `actual` value is less than or equal to this. | No |
|
||||
| `tolerance` | [`number`](/docs/kcl-std/types/std-types-number) | If `isEqualTo` is used, this is the tolerance to allow for the comparison. This tolerance is used because KCL's number system has some floating-point imprecision when used with very large decimal places. | No |
|
||||
| `error` | [`string`](/docs/kcl-std/types/std-types-string) | If the value was false, the program will terminate with this error message | No |
|
||||
| `actual` | [`number`](/docs/kcl/types/std-types-number) | Value to check. It will be compared with one of the comparison arguments. | Yes |
|
||||
| `isGreaterThan` | [`number`](/docs/kcl/types/std-types-number) | Comparison argument. If given, checks the `actual` value is greater than this. | No |
|
||||
| `isLessThan` | [`number`](/docs/kcl/types/std-types-number) | Comparison argument. If given, checks the `actual` value is less than this. | No |
|
||||
| `isGreaterThanOrEqual` | [`number`](/docs/kcl/types/std-types-number) | Comparison argument. If given, checks the `actual` value is greater than or equal to this. | No |
|
||||
| `isLessThanOrEqual` | [`number`](/docs/kcl/types/std-types-number) | Comparison argument. If given, checks the `actual` value is less than or equal to this. | No |
|
||||
| `isEqualTo` | [`number`](/docs/kcl/types/std-types-number) | Comparison argument. If given, checks the `actual` value is less than or equal to this. | No |
|
||||
| `tolerance` | [`number`](/docs/kcl/types/std-types-number) | If `isEqualTo` is used, this is the tolerance to allow for the comparison. This tolerance is used because KCL's number system has some floating-point imprecision when used with very large decimal places. | No |
|
||||
| `error` | [`string`](/docs/kcl/types/std-types-string) | If the value was false, the program will terminate with this error message | No |
|
||||
|
||||
### Returns
|
||||
|
@ -1,27 +1,27 @@
|
||||
---
|
||||
title: "assertIs"
|
||||
subtitle: "Function in std"
|
||||
excerpt: "Asserts that a value is the boolean value true."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Asserts that a value is the boolean value true.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
assertIs(
|
||||
@actual: bool,
|
||||
actual: bool,
|
||||
error?: string,
|
||||
): ()
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `actual` | [`bool`](/docs/kcl-std/types/std-types-bool) | Value to check. If this is the boolean value true, assert passes. Otherwise it fails. | Yes |
|
||||
| `error` | [`string`](/docs/kcl-std/types/std-types-string) | If the value was false, the program will terminate with this error message | No |
|
||||
| `actual` | [`bool`](/docs/kcl/types/std-types-bool) | Value to check. If this is the boolean value true, assert passes. Otherwise it fails. | Yes |
|
||||
| `error` | [`string`](/docs/kcl/types/std-types-string) | If the value was false, the program will terminate with this error message | No |
|
||||
|
||||
### Returns
|
||||
|
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "bezierCurve"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Draw a smooth, continuous, curved line segment from the current origin to the desired (x, y), using a number of control points to shape the curve's shape."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Draw a smooth, continuous, curved line segment from the current origin to the desired (x, y), using a number of control points to shape the curve's shape.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
bezierCurve(
|
||||
@sketch: Sketch,
|
||||
sketch: Sketch,
|
||||
control1: Point2d,
|
||||
control2: Point2d,
|
||||
end: Point2d,
|
||||
@ -18,20 +19,19 @@ bezierCurve(
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `sketch` | [`Sketch`](/docs/kcl-std/types/std-types-Sketch) | Which sketch should this path be added to? | Yes |
|
||||
| `control1` | [`Point2d`](/docs/kcl-std/types/std-types-Point2d) | First control point for the cubic | Yes |
|
||||
| `control2` | [`Point2d`](/docs/kcl-std/types/std-types-Point2d) | Second control point for the cubic | Yes |
|
||||
| `end` | [`Point2d`](/docs/kcl-std/types/std-types-Point2d) | How far away (along the X and Y axes) should this line go? | Yes |
|
||||
| [`tag`](/docs/kcl-std/types/std-types-tag) | [`TagDeclarator`](/docs/kcl-lang/types#TagDeclarator) | Create a new tag which refers to this line | No |
|
||||
| `sketch` | [`Sketch`](/docs/kcl/types/std-types-Sketch) | Which sketch should this path be added to? | Yes |
|
||||
| `control1` | [`Point2d`](/docs/kcl/types/std-types-Point2d) | First control point for the cubic | Yes |
|
||||
| `control2` | [`Point2d`](/docs/kcl/types/std-types-Point2d) | Second control point for the cubic | Yes |
|
||||
| `end` | [`Point2d`](/docs/kcl/types/std-types-Point2d) | How far away (along the X and Y axes) should this line go? | Yes |
|
||||
| [`tag`](/docs/kcl/types/std-types-tag) | [`TagDeclarator`](/docs/kcl/types#TagDeclarator) | Create a new tag which refers to this line | No |
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
[`Sketch`](/docs/kcl/types/std-types-Sketch)
|
||||
|
||||
|
||||
### Examples
|
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "circleThreePoint"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Construct a circle derived from 3 points."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Construct a circle derived from 3 points.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
circleThreePoint(
|
||||
@sketchSurfaceOrGroup: Sketch | Plane | Face,
|
||||
sketchSurfaceOrGroup: Sketch | Plane | Face,
|
||||
p1: Point2d,
|
||||
p2: Point2d,
|
||||
p3: Point2d,
|
||||
@ -18,20 +19,19 @@ circleThreePoint(
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `sketchSurfaceOrGroup` | [`Sketch`](/docs/kcl-std/types/std-types-Sketch) or [`Plane`](/docs/kcl-std/types/std-types-Plane) or [`Face`](/docs/kcl-std/types/std-types-Face) | Plane or surface to sketch on. | Yes |
|
||||
| `p1` | [`Point2d`](/docs/kcl-std/types/std-types-Point2d) | 1st point to derive the circle. | Yes |
|
||||
| `p2` | [`Point2d`](/docs/kcl-std/types/std-types-Point2d) | 2nd point to derive the circle. | Yes |
|
||||
| `p3` | [`Point2d`](/docs/kcl-std/types/std-types-Point2d) | 3rd point to derive the circle. | Yes |
|
||||
| [`tag`](/docs/kcl-std/types/std-types-tag) | [`TagDeclarator`](/docs/kcl-lang/types#TagDeclarator) | Identifier for the circle to reference elsewhere. | No |
|
||||
| `sketchSurfaceOrGroup` | [`Sketch`](/docs/kcl/types/std-types-Sketch) or [`Plane`](/docs/kcl/types/std-types-Plane) or [`Face`](/docs/kcl/types/std-types-Face) | Plane or surface to sketch on. | Yes |
|
||||
| `p1` | [`Point2d`](/docs/kcl/types/std-types-Point2d) | 1st point to derive the circle. | Yes |
|
||||
| `p2` | [`Point2d`](/docs/kcl/types/std-types-Point2d) | 2nd point to derive the circle. | Yes |
|
||||
| `p3` | [`Point2d`](/docs/kcl/types/std-types-Point2d) | 3rd point to derive the circle. | Yes |
|
||||
| [`tag`](/docs/kcl/types/std-types-tag) | [`TagDeclarator`](/docs/kcl/types#TagDeclarator) | Identifier for the circle to reference elsewhere. | No |
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
[`Sketch`](/docs/kcl/types/std-types-Sketch)
|
||||
|
||||
|
||||
### Examples
|
@ -1,31 +1,31 @@
|
||||
---
|
||||
title: "clone"
|
||||
subtitle: "Function in std"
|
||||
excerpt: "Clone a sketch or solid."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Clone a sketch or solid.
|
||||
|
||||
```kcl
|
||||
clone(@geometry: Solid | Sketch | ImportedGeometry): Solid | Sketch | ImportedGeometry
|
||||
```
|
||||
|
||||
This works essentially like a copy-paste operation. It creates a perfect replica at that point in time that you can manipulate individually afterwards.
|
||||
|
||||
This doesn't really have much utility unless you need the equivalent of a double instance pattern with zero transformations.
|
||||
|
||||
Really only use this function if YOU ARE SURE you need it. In most cases you do not need clone and using a pattern with `instance = 2` is more appropriate.
|
||||
|
||||
```kcl
|
||||
clone(geometry: Solid | Sketch | ImportedGeometry): Solid | Sketch | ImportedGeometry
|
||||
```
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `geometry` | [`Solid`](/docs/kcl-std/types/std-types-Solid) or [`Sketch`](/docs/kcl-std/types/std-types-Sketch) or [`ImportedGeometry`](/docs/kcl-lang/types#ImportedGeometry) | The sketch, solid, or imported geometry to be cloned | Yes |
|
||||
| `geometry` | [`Solid`](/docs/kcl/types/std-types-Solid) or [`Sketch`](/docs/kcl/types/std-types-Sketch) or [`ImportedGeometry`](/docs/kcl/types#ImportedGeometry) | The sketch, solid, or imported geometry to be cloned | Yes |
|
||||
|
||||
### Returns
|
||||
|
||||
[`Solid`](/docs/kcl-std/types/std-types-Solid) or [`Sketch`](/docs/kcl-std/types/std-types-Sketch) or [`ImportedGeometry`](/docs/kcl-lang/types#ImportedGeometry) - A geometry including an imported geometry.
|
||||
[`Solid`](/docs/kcl/types/std-types-Solid) or [`Sketch`](/docs/kcl/types/std-types-Sketch) or [`ImportedGeometry`](/docs/kcl/types#ImportedGeometry) - A geometry including an imported geometry.
|
||||
|
||||
|
||||
### Examples
|
@ -1,31 +1,31 @@
|
||||
---
|
||||
title: "close"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Construct a line segment from the current origin back to the profile's origin, ensuring the resulting 2-dimensional sketch is not open-ended."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Construct a line segment from the current origin back to the profile's origin, ensuring the resulting 2-dimensional sketch is not open-ended.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
close(
|
||||
@sketch: Sketch,
|
||||
sketch: Sketch,
|
||||
tag?: TagDeclarator,
|
||||
): Sketch
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `sketch` | [`Sketch`](/docs/kcl-std/types/std-types-Sketch) | The sketch you want to close | Yes |
|
||||
| [`tag`](/docs/kcl-std/types/std-types-tag) | [`TagDeclarator`](/docs/kcl-lang/types#TagDeclarator) | Create a new tag which refers to this line | No |
|
||||
| `sketch` | [`Sketch`](/docs/kcl/types/std-types-Sketch) | The sketch you want to close | Yes |
|
||||
| [`tag`](/docs/kcl/types/std-types-tag) | [`TagDeclarator`](/docs/kcl/types#TagDeclarator) | Create a new tag which refers to this line | No |
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
[`Sketch`](/docs/kcl/types/std-types-Sketch)
|
||||
|
||||
|
||||
### Examples
|
@ -1,16 +1,15 @@
|
||||
---
|
||||
title: "END"
|
||||
subtitle: "Constant in prelude"
|
||||
title: "std::END"
|
||||
excerpt: "Identifies the ending face of an extrusion. I.e., the new face created by an extrusion."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Identifies the ending face of an extrusion. I.e., the new face created by an extrusion.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
END: string = 'end'
|
||||
std::END: string = 'end'
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
@ -1,16 +1,15 @@
|
||||
---
|
||||
title: "START"
|
||||
subtitle: "Constant in prelude"
|
||||
title: "std::START"
|
||||
excerpt: "Identifies the starting face of an extrusion. I.e., the face which is extruded."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Identifies the starting face of an extrusion. I.e., the face which is extruded.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
START: string = 'start'
|
||||
std::START: string = 'start'
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
@ -1,16 +1,15 @@
|
||||
---
|
||||
title: "X"
|
||||
subtitle: "Constant in prelude"
|
||||
title: "std::X"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
X
|
||||
std::X
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
@ -1,16 +1,15 @@
|
||||
---
|
||||
title: "XY"
|
||||
subtitle: "Constant in prelude"
|
||||
title: "std::XY"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
XY
|
||||
std::XY
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
@ -1,16 +1,15 @@
|
||||
---
|
||||
title: "XZ"
|
||||
subtitle: "Constant in prelude"
|
||||
title: "std::XZ"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
XZ
|
||||
std::XZ
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
@ -1,16 +1,15 @@
|
||||
---
|
||||
title: "Y"
|
||||
subtitle: "Constant in prelude"
|
||||
title: "std::Y"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
Y
|
||||
std::Y
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
@ -1,16 +1,15 @@
|
||||
---
|
||||
title: "YZ"
|
||||
subtitle: "Constant in prelude"
|
||||
title: "std::YZ"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
YZ
|
||||
std::YZ
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
@ -1,16 +1,15 @@
|
||||
---
|
||||
title: "Z"
|
||||
subtitle: "Constant in prelude"
|
||||
title: "std::Z"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
Z
|
||||
std::Z
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
32
docs/kcl/consts/std-math-E.md
Normal file
32
docs/kcl/consts/std-math-E.md
Normal file
File diff suppressed because one or more lines are too long
28
docs/kcl/consts/std-math-PI.md
Normal file
28
docs/kcl/consts/std-math-PI.md
Normal file
File diff suppressed because one or more lines are too long
32
docs/kcl/consts/std-math-TAU.md
Normal file
32
docs/kcl/consts/std-math-TAU.md
Normal file
File diff suppressed because one or more lines are too long
15
docs/kcl/consts/std-turns-HALF_TURN.md
Normal file
15
docs/kcl/consts/std-turns-HALF_TURN.md
Normal file
@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "std::turns::HALF_TURN"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::turns::HALF_TURN: number(deg) = 180deg
|
||||
```
|
||||
|
||||
|
15
docs/kcl/consts/std-turns-QUARTER_TURN.md
Normal file
15
docs/kcl/consts/std-turns-QUARTER_TURN.md
Normal file
@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "std::turns::QUARTER_TURN"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::turns::QUARTER_TURN: number(deg) = 90deg
|
||||
```
|
||||
|
||||
|
15
docs/kcl/consts/std-turns-THREE_QUARTER_TURN.md
Normal file
15
docs/kcl/consts/std-turns-THREE_QUARTER_TURN.md
Normal file
@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "std::turns::THREE_QUARTER_TURN"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::turns::THREE_QUARTER_TURN: number(deg) = 270deg
|
||||
```
|
||||
|
||||
|
15
docs/kcl/consts/std-turns-ZERO.md
Normal file
15
docs/kcl/consts/std-turns-ZERO.md
Normal file
@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "std::turns::ZERO"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::turns::ZERO: number = 0
|
||||
```
|
||||
|
||||
|
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "extrude"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "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."
|
||||
layout: 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.
|
||||
|
||||
```kcl
|
||||
extrude(
|
||||
@sketches: [Sketch],
|
||||
sketches: [Sketch],
|
||||
length: number,
|
||||
symmetric?: bool,
|
||||
bidirectionalLength?: number,
|
||||
@ -18,22 +19,21 @@ extrude(
|
||||
): [Solid]
|
||||
```
|
||||
|
||||
You can provide more than one sketch to extrude, and they will all be extruded in the same direction.
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `sketches` | [`[Sketch]`](/docs/kcl-std/types/std-types-Sketch) | Which sketch or sketches should be extruded | Yes |
|
||||
| `length` | [`number`](/docs/kcl-std/types/std-types-number) | How far to extrude the given sketches | Yes |
|
||||
| `symmetric` | [`bool`](/docs/kcl-std/types/std-types-bool) | If true, the extrusion will happen symmetrically around the sketch. Otherwise, the | No |
|
||||
| `bidirectionalLength` | [`number`](/docs/kcl-std/types/std-types-number) | If specified, will also extrude in the opposite direction to 'distance' to the specified distance. If 'symmetric' is true, this value is ignored. | No |
|
||||
| `tagStart` | [`TagDeclarator`](/docs/kcl-lang/types#TagDeclarator) | A named tag for the face at the start of the extrusion, i.e. the original sketch | No |
|
||||
| `tagEnd` | [`TagDeclarator`](/docs/kcl-lang/types#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 |
|
||||
| `sketches` | [`[Sketch]`](/docs/kcl/types/std-types-Sketch) | Which sketch or sketches should be extruded | Yes |
|
||||
| `length` | [`number`](/docs/kcl/types/std-types-number) | How far to extrude the given sketches | Yes |
|
||||
| `symmetric` | [`bool`](/docs/kcl/types/std-types-bool) | If true, the extrusion will happen symmetrically around the sketch. Otherwise, the | No |
|
||||
| `bidirectionalLength` | [`number`](/docs/kcl/types/std-types-number) | If specified, will also extrude in the opposite direction to 'distance' to the specified distance. If 'symmetric' is true, this value is ignored. | No |
|
||||
| `tagStart` | [`TagDeclarator`](/docs/kcl/types#TagDeclarator) | A named tag for the face at the start of the extrusion, i.e. the original sketch | No |
|
||||
| `tagEnd` | [`TagDeclarator`](/docs/kcl/types#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]`](/docs/kcl-std/types/std-types-Solid)
|
||||
[`[Solid]`](/docs/kcl/types/std-types-Solid)
|
||||
|
||||
|
||||
### Examples
|
124
docs/kcl/functions/std-helix.md
Normal file
124
docs/kcl/functions/std-helix.md
Normal file
File diff suppressed because one or more lines are too long
51
docs/kcl/functions/std-math-abs.md
Normal file
51
docs/kcl/functions/std-math-abs.md
Normal file
File diff suppressed because one or more lines are too long
45
docs/kcl/functions/std-math-acos.md
Normal file
45
docs/kcl/functions/std-math-acos.md
Normal file
File diff suppressed because one or more lines are too long
44
docs/kcl/functions/std-math-asin.md
Normal file
44
docs/kcl/functions/std-math-asin.md
Normal file
File diff suppressed because one or more lines are too long
@ -1,17 +1,17 @@
|
||||
---
|
||||
title: "atan"
|
||||
subtitle: "Function in math"
|
||||
title: "std::math::atan"
|
||||
excerpt: "Compute the arctangent of a number."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Compute the arctangent of a number.
|
||||
|
||||
Consider using `atan2()` instead for the true inverse of tangent.
|
||||
|
||||
```kcl
|
||||
atan(@num: number(_)): number(rad)
|
||||
```
|
||||
|
||||
Consider using `atan2()` instead for the true inverse of tangent.
|
||||
|
||||
### Arguments
|
||||
|
48
docs/kcl/functions/std-math-atan2.md
Normal file
48
docs/kcl/functions/std-math-atan2.md
Normal file
File diff suppressed because one or more lines are too long
42
docs/kcl/functions/std-math-ceil.md
Normal file
42
docs/kcl/functions/std-math-ceil.md
Normal file
File diff suppressed because one or more lines are too long
44
docs/kcl/functions/std-math-cos.md
Normal file
44
docs/kcl/functions/std-math-cos.md
Normal file
File diff suppressed because one or more lines are too long
42
docs/kcl/functions/std-math-floor.md
Normal file
42
docs/kcl/functions/std-math-floor.md
Normal file
File diff suppressed because one or more lines are too long
42
docs/kcl/functions/std-math-ln.md
Normal file
42
docs/kcl/functions/std-math-ln.md
Normal file
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user