Compare commits
36 Commits
nightly-v2
...
tab-demo
| Author | SHA1 | Date | |
|---|---|---|---|
| b5fe5f85eb | |||
| 29fd6ad45f | |||
| 479179dd9b | |||
| 67f9dba77b | |||
| 89c345649d | |||
| 0550eef701 | |||
| 1c21198499 | |||
| 8ac232414d | |||
| 91e306f447 | |||
| f01957edc7 | |||
| e9f6ebb6d1 | |||
| 2fee3a424c | |||
| 43d5a72514 | |||
| f938364d54 | |||
| 998dbdc6ff | |||
| 2b3dfaf023 | |||
| f8a33a63ac | |||
| af50422544 | |||
| 6e21c486e8 | |||
| c6ee10cd50 | |||
| 6170319428 | |||
| e373d285fe | |||
| 17c326e654 | |||
| b0b1198d2e | |||
| 134ec63610 | |||
| cc904d258b | |||
| d187a29e55 | |||
| 996517f5c4 | |||
| 8fb1563f2d | |||
| 7b0ea5078c | |||
| a04f7e9923 | |||
| e356cd34e3 | |||
| 941eacd559 | |||
| e06a09ed42 | |||
| 9fcc792b7e | |||
| 1841e63021 |
@ -1,3 +1,4 @@
|
||||
[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
|
||||
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
|
||||
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
# DO NOT commit secrets, overrides go in the ignored `.env.development.local`
|
||||
|
||||
NODE_ENV=development
|
||||
DEV=true
|
||||
|
||||
@ -7,7 +9,10 @@ VITE_KC_SITE_BASE_URL=https://dev.zoo.dev
|
||||
VITE_KC_SITE_APP_URL=https://app.dev.zoo.dev
|
||||
VITE_KC_SKIP_AUTH=false
|
||||
VITE_KC_CONNECTION_TIMEOUT_MS=5000
|
||||
# ONLY add your token in .env.development.local if you want to skip auth, otherwise this token takes precedence!
|
||||
#VITE_KC_DEV_TOKEN="your token from dev.zoo.dev should go in .env.development.local"
|
||||
#VITE_KC_DEV_TOKEN="optional token from dev.zoo.dev to skip auth in the app"
|
||||
|
||||
RUST_BACKTRACE=1
|
||||
PYO3_PYTHON=/usr/local/bin/python3
|
||||
#KITTYCAD_API_TOKEN="required token from dev.zoo.dev for engine testing"
|
||||
|
||||
FAIL_ON_CONSOLE_ERRORS=true
|
||||
|
||||
@ -87,6 +87,14 @@
|
||||
{
|
||||
"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": [
|
||||
|
||||
40
.github/workflows/cargo-test.yml
vendored
40
.github/workflows/cargo-test.yml
vendored
@ -2,7 +2,6 @@ on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
pull_request:
|
||||
workflow_dispatch:
|
||||
permissions:
|
||||
@ -131,7 +130,6 @@ jobs:
|
||||
with:
|
||||
name: nextest-archive
|
||||
path: rust/nextest-archive.tar.zst
|
||||
|
||||
run-test-artifacts:
|
||||
name: cargo test (shard ${{ matrix.partitionIndex}})
|
||||
runs-on:
|
||||
@ -186,4 +184,40 @@ jobs:
|
||||
env:
|
||||
KITTYCAD_API_TOKEN: ${{secrets.KITTYCAD_API_TOKEN_DEV}}
|
||||
ZOO_HOST: https://api.dev.zoo.dev
|
||||
|
||||
run-wasm-tests:
|
||||
name: Run wasm tests
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest, macos-latest]
|
||||
fail-fast: false
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Use correct Rust toolchain
|
||||
shell: bash
|
||||
run: |
|
||||
[ -e rust-toolchain.toml ] || cp rust/rust-toolchain.toml ./
|
||||
- name: Install rust
|
||||
uses: actions-rust-lang/setup-rust-toolchain@v1
|
||||
with:
|
||||
cache: false # Configured below.
|
||||
- uses: taiki-e/install-action@d4635f2de61c8b8104d59cd4aede2060638378cc
|
||||
with:
|
||||
tool: wasm-pack
|
||||
- name: Rust Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
with:
|
||||
workspaces: './rust'
|
||||
- name: Build Wasm
|
||||
shell: bash
|
||||
run: |
|
||||
npm install
|
||||
npm run build:wasm
|
||||
- name: Run wasm tests
|
||||
run: |
|
||||
cd rust
|
||||
cd kcl-wasm-lib
|
||||
#wasm-pack test --headless --chrome
|
||||
env:
|
||||
KITTYCAD_API_TOKEN: ${{ secrets.KITTYCAD_API_TOKEN_DEV }}
|
||||
NODE_ENV: development
|
||||
|
||||
7
.github/workflows/static-analysis.yml
vendored
7
.github/workflows/static-analysis.yml
vendored
@ -171,13 +171,8 @@ jobs:
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
- name: Install codespell
|
||||
run: |
|
||||
python -m pip install codespell
|
||||
- name: Run codespell
|
||||
run: codespell --config .codespellrc # Edit this file to tweak the typo list and other configuration.
|
||||
uses: crate-ci/typos@v1.32.0
|
||||
|
||||
npm-unit-test-kcl-samples:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
124
CONTRIBUTING.md
124
CONTRIBUTING.md
@ -300,131 +300,17 @@ Which will run our suite of [Vitest unit](https://vitest.dev/) and [React Testin
|
||||
|
||||
### Rust tests
|
||||
|
||||
**Dependencies**
|
||||
Prepare these system dependencies:
|
||||
|
||||
- `KITTYCAD_API_TOKEN`
|
||||
- `cargo-nextest`
|
||||
- `just`
|
||||
- Set `$KITTYCAD_API_TOKEN` from https://dev.zoo.dev/account/api-tokens
|
||||
- Install `just` following [these instructions](https://just.systems/man/en/packages.html)
|
||||
|
||||
#### Setting KITTYCAD_API_TOKEN
|
||||
|
||||
Use the production zoo.dev token, set this environment variable before running the tests
|
||||
|
||||
#### Installing cargonextest
|
||||
then run tests that target the KCL language:
|
||||
|
||||
```
|
||||
cd rust
|
||||
cargo search cargo-nextest
|
||||
cargo install cargo-nextest
|
||||
npm run test:rust
|
||||
```
|
||||
|
||||
#### just
|
||||
|
||||
install [`just`](https://github.com/casey/just?tab=readme-ov-file#pre-built-binaries)
|
||||
|
||||
#### Running the tests
|
||||
|
||||
```bash
|
||||
# With just
|
||||
# Make sure KITTYCAD_API_TOKEN=<prod zoo.dev token> is set
|
||||
# Make sure you installed cargo-nextest
|
||||
# Make sure you installed just
|
||||
cd rust
|
||||
just test
|
||||
```
|
||||
|
||||
```bash
|
||||
# Without just
|
||||
# Make sure KITTYCAD_API_TOKEN=<prod zoo.dev token> is set
|
||||
# Make sure you installed cargo-nextest
|
||||
cd rust
|
||||
export RUST_BRACKTRACE="full" && cargo nextest run --workspace --test-threads=1
|
||||
```
|
||||
|
||||
Where `XXX` is an API token from the production engine (NOT the dev environment).
|
||||
|
||||
We recommend using [nextest](https://nexte.st/) to run the Rust tests (its faster and is used in CI). Once installed, run the tests using
|
||||
|
||||
```
|
||||
cd rust
|
||||
KITTYCAD_API_TOKEN=XXX cargo run nextest
|
||||
```
|
||||
|
||||
### Mapping CI CD jobs to local commands
|
||||
|
||||
When you see the CI CD fail on jobs you may wonder three things
|
||||
|
||||
- Do I have a bug in my code?
|
||||
- Is the test flaky?
|
||||
- Is there a bug in `main`?
|
||||
|
||||
To answer these questions the following commands will give you confidence to locate the issue.
|
||||
|
||||
#### Static Analysis
|
||||
|
||||
Part of the CI CD pipeline performs static analysis on the code. Use the following commands to mimic the CI CD jobs.
|
||||
|
||||
The following set of commands should get us closer to one and done commands to instantly retest issues.
|
||||
|
||||
```
|
||||
npm run test-setup
|
||||
```
|
||||
|
||||
> Gotcha, are packages up to date and is the wasm built?
|
||||
|
||||
```
|
||||
npm run tsc
|
||||
npm run fmt:check
|
||||
npm run lint
|
||||
npm run test:unit:local
|
||||
```
|
||||
|
||||
> Gotcha: Our unit tests have integration tests in them. You need to run a localhost server to run the unit tests.
|
||||
|
||||
#### E2E Tests
|
||||
|
||||
**Playwright Electron**
|
||||
|
||||
These E2E tests run in electron. There are tests that are skipped if they are ran in a windows, linux, or macos environment. We can use playwright tags to implement test skipping.
|
||||
|
||||
```
|
||||
npm run test:playwright:electron:local
|
||||
npm run test:playwright:electron:windows:local
|
||||
npm run test:playwright:electron:macos:local
|
||||
npm run test:playwright:electron:ubuntu:local
|
||||
```
|
||||
|
||||
> Why does it say local? The CI CD commands that run in the pipeline cannot be ran locally. A single command will not properly setup the testing environment locally.
|
||||
|
||||
#### Some notes on CI
|
||||
|
||||
The tests are broken into snapshot tests and non-snapshot tests, and they run in that order, they automatically commit new snap shots, so if you see an image commit check it was an intended change. If we have non-determinism in the snapshots such that they are always committing new images, hopefully this annoyance makes us fix them asap, if you notice this happening let Kurt know. But for the odd occasion `git reset --hard HEAD~ && git push -f` is your friend.
|
||||
|
||||
How to interpret failing playwright tests?
|
||||
If your tests fail, click through to the action and see that the tests failed on a line that includes `await page.getByTestId('loading').waitFor({ state: 'detached' })`, this means the test fail because the stream never started. It's you choice if you want to re-run the test, or ignore the failure.
|
||||
|
||||
We run on ubuntu and macos, because safari doesn't work on linux because of the dreaded "no RTCPeerConnection variable" error. But linux runs first and then macos for the same reason that we limit the number of parallel tests to 1 because we limit stream connections per user, so tests would start failing we if let them run together.
|
||||
|
||||
If something fails on CI you can download the artifact, unzip it and then open `playwright-report/data/<UUID>.zip` with https://trace.playwright.dev/ to see what happened.
|
||||
|
||||
#### Getting started writing a playwright test in our app
|
||||
|
||||
Besides following the instructions above and using the playwright docs, our app is weird because of the whole stream thing, which means our testing is weird. Because we've just figured out this stuff and therefore docs might go stale quick here's a 15min vid/tutorial
|
||||
|
||||
https://github.com/KittyCAD/modeling-app/assets/29681384/6f5e8e85-1003-4fd9-be7f-f36ce833942d
|
||||
|
||||
<details>
|
||||
|
||||
<summary>
|
||||
PS: for the debug panel, the following JSON is useful for snapping the camera
|
||||
</summary>
|
||||
|
||||
```JSON
|
||||
{"type":"modeling_cmd_req","cmd_id":"054e5472-e5e9-4071-92d7-1ce3bac61956","cmd":{"type":"default_camera_look_at","center":{"x":15,"y":0,"z":0},"up":{"x":0,"y":0,"z":1},"vantage":{"x":30,"y":30,"z":30}}}
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
### Logging
|
||||
|
||||
To display logging (to the terminal or console) set `ZOO_LOG=1`. This will log some warnings and simple performance metrics. To view these in test runs, use `-- --nocapture`.
|
||||
|
||||
1
Makefile
1
Makefile
@ -106,6 +106,7 @@ test: test-unit test-e2e
|
||||
|
||||
.PHONY: test-unit
|
||||
test-unit: install ## Run the unit tests
|
||||
npm run test:rust
|
||||
@ curl -fs localhost:3000 >/dev/null || ( echo "Error: localhost:3000 not available, 'make run-web' first" && exit 1 )
|
||||
npm run test:unit
|
||||
|
||||
|
||||
39
_typos.toml
Normal file
39
_typos.toml
Normal file
@ -0,0 +1,39 @@
|
||||
[files]
|
||||
extend-exclude = [
|
||||
"**/target",
|
||||
"node_modules",
|
||||
"build",
|
||||
"dist",
|
||||
"out",
|
||||
"**/Cargo.lock",
|
||||
"docs/**/*.md",
|
||||
"docs/**/*.json",
|
||||
"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",
|
||||
"kcl-book/book",
|
||||
]
|
||||
|
||||
[default.extend-words]
|
||||
metalness = "metalness" # appearance API
|
||||
Hom = "Hom" # short for homogenous
|
||||
typ = "typ" # used to declare a variable named 'type' which is a reserved keyword in Rust
|
||||
ue = "ue" # short for UnaryExpression
|
||||
THRE = "THRE" # Weird bug that wrongly detects THREEjs as a typo
|
||||
nwo = "nwo" # don't know what this is about tbh
|
||||
"ot" = "ot" # some abbreviation, idk what
|
||||
"oe" = "oe" # some abbreviation, idk what
|
||||
|
||||
[default]
|
||||
extend-ignore-identifiers-re = [
|
||||
"\\dnd", # e.g. 2nd
|
||||
]
|
||||
extend-ignore-re = [
|
||||
"@xstate-layout .*",
|
||||
]
|
||||
@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "KCL Known Issues"
|
||||
title: "Known Issues"
|
||||
excerpt: "Known issues with the KCL standard library for the Zoo Design Studio."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "KCL Modules"
|
||||
title: "Modules"
|
||||
excerpt: "Documentation of modules for the KCL language for the Zoo Design Studio."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "KCL Settings"
|
||||
title: "Settings"
|
||||
excerpt: "Documentation of settings for the KCL language and Zoo Design Studio."
|
||||
layout: manual
|
||||
---
|
||||
@ -8,16 +8,16 @@ layout: manual
|
||||
|
||||
There are three levels of settings available in Zoo Design Studio:
|
||||
|
||||
1. [User Settings](/docs/kcl/settings-user): Global settings that apply to all projects, stored in `user.toml`
|
||||
2. [Project Settings](/docs/kcl/settings-project): Settings specific to a project, stored in `project.toml`
|
||||
1. [User Settings](/docs/kcl-lang/settings/user): Global settings that apply to all projects, stored in `user.toml`
|
||||
2. [Project Settings](/docs/kcl-lang/settings/project): Settings specific to a project, stored in `project.toml`
|
||||
3. Per-file Settings: Settings that apply to a single KCL file, specified using the `@settings` attribute
|
||||
|
||||
## Configuration Files
|
||||
|
||||
Zoo Design Studio uses TOML files for configuration:
|
||||
|
||||
* **User Settings**: `user.toml` - See [complete documentation](/docs/kcl/settings-user)
|
||||
* **Project Settings**: `project.toml` - See [complete documentation](/docs/kcl/settings-project)
|
||||
* **User Settings**: `user.toml` - See [complete documentation](/docs/kcl-lang/settings/user)
|
||||
* **Project Settings**: `project.toml` - See [complete documentation](/docs/kcl-lang/settings/project)
|
||||
|
||||
## Per-file settings
|
||||
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "KCL Types"
|
||||
title: "Types"
|
||||
excerpt: "Documentation of types for the KCL standard library for the Zoo Design Studio."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
@ -1,16 +1,15 @@
|
||||
---
|
||||
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,6 +20,8 @@ angledLine(
|
||||
): Sketch
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -36,7 +37,7 @@ angledLine(
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch)
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,16 +1,15 @@
|
||||
---
|
||||
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,6 +17,8 @@ angledLineThatIntersects(
|
||||
): Sketch
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -30,7 +31,7 @@ angledLineThatIntersects(
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch)
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -1,18 +1,15 @@
|
||||
---
|
||||
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,
|
||||
@ -22,6 +19,10 @@ 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 |
|
||||
@ -36,7 +37,7 @@ arc(
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch)
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,16 +1,15 @@
|
||||
---
|
||||
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,6 +20,8 @@ assert(
|
||||
): ()
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|
||||
@ -1,20 +1,21 @@
|
||||
---
|
||||
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 |
|
||||
|
||||
@ -1,16 +1,15 @@
|
||||
---
|
||||
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,6 +17,8 @@ bezierCurve(
|
||||
): Sketch
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -30,7 +31,7 @@ bezierCurve(
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch)
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,16 +1,15 @@
|
||||
---
|
||||
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,6 +17,8 @@ circleThreePoint(
|
||||
): Sketch
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -30,7 +31,7 @@ circleThreePoint(
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch)
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -1,20 +1,21 @@
|
||||
---
|
||||
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 |
|
||||
@ -24,7 +25,7 @@ close(
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch)
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "std::END"
|
||||
title: "END"
|
||||
subtitle: "Constant in std"
|
||||
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
|
||||
std::END: string = 'end'
|
||||
END: string = 'end'
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "std::START"
|
||||
title: "START"
|
||||
subtitle: "Constant in std"
|
||||
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
|
||||
std::START: string = 'start'
|
||||
START: string = 'start'
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "std::X"
|
||||
title: "X"
|
||||
subtitle: "Constant in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::X
|
||||
X
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "std::XY"
|
||||
title: "XY"
|
||||
subtitle: "Constant in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::XY
|
||||
XY
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "std::XZ"
|
||||
title: "XZ"
|
||||
subtitle: "Constant in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::XZ
|
||||
XZ
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "std::Y"
|
||||
title: "Y"
|
||||
subtitle: "Constant in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::Y
|
||||
Y
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "std::YZ"
|
||||
title: "YZ"
|
||||
subtitle: "Constant in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::YZ
|
||||
YZ
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "std::Z"
|
||||
title: "Z"
|
||||
subtitle: "Constant in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::Z
|
||||
Z
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
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,15 +1,16 @@
|
||||
---
|
||||
title: "std::turns::HALF_TURN"
|
||||
title: "turns::HALF_TURN"
|
||||
subtitle: "Constant in std::turns"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::turns::HALF_TURN: number(deg) = 180deg
|
||||
turns::HALF_TURN: number(deg) = 180deg
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "std::turns::QUARTER_TURN"
|
||||
title: "turns::QUARTER_TURN"
|
||||
subtitle: "Constant in std::turns"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::turns::QUARTER_TURN: number(deg) = 90deg
|
||||
turns::QUARTER_TURN: number(deg) = 90deg
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "std::turns::THREE_QUARTER_TURN"
|
||||
title: "turns::THREE_QUARTER_TURN"
|
||||
subtitle: "Constant in std::turns"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::turns::THREE_QUARTER_TURN: number(deg) = 270deg
|
||||
turns::THREE_QUARTER_TURN: number(deg) = 270deg
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,15 +1,16 @@
|
||||
---
|
||||
title: "std::turns::ZERO"
|
||||
title: "turns::ZERO"
|
||||
subtitle: "Constant in std::turns"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
std::turns::ZERO: number = 0
|
||||
turns::ZERO: number = 0
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,16 +1,15 @@
|
||||
---
|
||||
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,
|
||||
@ -19,6 +18,8 @@ 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 |
|
||||
|
||||
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,26 +1,27 @@
|
||||
---
|
||||
title: "std::math::atan"
|
||||
title: "atan"
|
||||
subtitle: "Function in std::math"
|
||||
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
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `num` | `number(_)` | | Yes |
|
||||
| `num` | [`number(_)`](/docs/kcl-std/types/std-types-number) | A number | Yes |
|
||||
|
||||
### Returns
|
||||
|
||||
`number(rad)`
|
||||
[`number(rad)`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
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
287
docs/kcl-std/functions/std-sketch-revolve.md
Normal file
287
docs/kcl-std/functions/std-sketch-revolve.md
Normal file
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
122
docs/kcl-std/functions/std-transform-mirror2d.md
Normal file
122
docs/kcl-std/functions/std-transform-mirror2d.md
Normal file
File diff suppressed because one or more lines are too long
@ -1,26 +1,27 @@
|
||||
---
|
||||
title: "std::units::toCentimeters"
|
||||
title: "units::toCentimeters"
|
||||
subtitle: "Function in std::units"
|
||||
excerpt: "Convert a number to centimeters from its current units."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Convert a number to centimeters from its current units.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
units::toCentimeters(@num: number(cm)): number(cm)
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `num` | `number(cm)` | | Yes |
|
||||
| `num` | [`number(cm)`](/docs/kcl-std/types/std-types-number) | A number | Yes |
|
||||
|
||||
### Returns
|
||||
|
||||
`number(cm)`
|
||||
[`number(cm)`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -1,26 +1,27 @@
|
||||
---
|
||||
title: "std::units::toFeet"
|
||||
title: "units::toFeet"
|
||||
subtitle: "Function in std::units"
|
||||
excerpt: "Convert a number to feet from its current units."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Convert a number to feet from its current units.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
units::toFeet(@num: number(ft)): number(ft)
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `num` | `number(ft)` | | Yes |
|
||||
| `num` | [`number(ft)`](/docs/kcl-std/types/std-types-number) | A number | Yes |
|
||||
|
||||
### Returns
|
||||
|
||||
`number(ft)`
|
||||
[`number(ft)`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,26 +1,27 @@
|
||||
---
|
||||
title: "std::units::toInches"
|
||||
title: "units::toInches"
|
||||
subtitle: "Function in std::units"
|
||||
excerpt: "Convert a number to inches from its current units."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Convert a number to inches from its current units.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
units::toInches(@num: number(in)): number(in)
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `num` | `number(in)` | | Yes |
|
||||
| `num` | [`number(in)`](/docs/kcl-std/types/std-types-number) | A number | Yes |
|
||||
|
||||
### Returns
|
||||
|
||||
`number(in)`
|
||||
[`number(in)`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,26 +1,27 @@
|
||||
---
|
||||
title: "std::units::toMeters"
|
||||
title: "units::toMeters"
|
||||
subtitle: "Function in std::units"
|
||||
excerpt: "Convert a number to meters from its current units."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Convert a number to meters from its current units.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
units::toMeters(@num: number(m)): number(m)
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `num` | `number(m)` | | Yes |
|
||||
| `num` | [`number(m)`](/docs/kcl-std/types/std-types-number) | A number | Yes |
|
||||
|
||||
### Returns
|
||||
|
||||
`number(m)`
|
||||
[`number(m)`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,26 +1,27 @@
|
||||
---
|
||||
title: "std::units::toMillimeters"
|
||||
title: "units::toMillimeters"
|
||||
subtitle: "Function in std::units"
|
||||
excerpt: "Convert a number to millimeters from its current units."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Convert a number to millimeters from its current units.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
units::toMillimeters(@num: number(mm)): number(mm)
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `num` | `number(mm)` | | Yes |
|
||||
| `num` | [`number(mm)`](/docs/kcl-std/types/std-types-number) | A number | Yes |
|
||||
|
||||
### Returns
|
||||
|
||||
`number(mm)`
|
||||
[`number(mm)`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -1,26 +1,27 @@
|
||||
---
|
||||
title: "std::units::toYards"
|
||||
title: "units::toYards"
|
||||
subtitle: "Function in std::units"
|
||||
excerpt: "Converts a number to yards from its current units."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Converts a number to yards from its current units.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
units::toYards(@num: number(yd)): number(yd)
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|----------|------|-------------|----------|
|
||||
| `num` | `number(yd)` | | Yes |
|
||||
| `num` | [`number(yd)`](/docs/kcl-std/types/std-types-number) | A number | Yes |
|
||||
|
||||
### Returns
|
||||
|
||||
`number(yd)`
|
||||
[`number(yd)`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,17 +1,18 @@
|
||||
---
|
||||
title: "getCommonEdge"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Get the shared edge between two faces."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Get the shared edge between two faces.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
getCommonEdge(faces: [TagIdentifier]): Uuid
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|
||||
@ -1,17 +1,18 @@
|
||||
---
|
||||
title: "getNextAdjacentEdge"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Get the next adjacent edge to the edge given."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Get the next adjacent edge to the edge given.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
getNextAdjacentEdge(edge: TagIdentifier): Uuid
|
||||
getNextAdjacentEdge(@edge: TagIdentifier): Uuid
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|
||||
@ -1,17 +1,18 @@
|
||||
---
|
||||
title: "getOppositeEdge"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Get the opposite edge to the edge given."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Get the opposite edge to the edge given.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
getOppositeEdge(edge: TagIdentifier): Uuid
|
||||
getOppositeEdge(@edge: TagIdentifier): Uuid
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|
||||
@ -1,17 +1,18 @@
|
||||
---
|
||||
title: "getPreviousAdjacentEdge"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Get the previous adjacent edge to the edge given."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Get the previous adjacent edge to the edge given.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
getPreviousAdjacentEdge(edge: TagIdentifier): Uuid
|
||||
getPreviousAdjacentEdge(@edge: TagIdentifier): Uuid
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|
||||
@ -9,68 +9,18 @@ layout: manual
|
||||
### Functions
|
||||
|
||||
* [**std**](/docs/kcl-std/modules/std)
|
||||
* [`angledLine`](/docs/kcl-std/angledLine)
|
||||
* [`angledLineThatIntersects`](/docs/kcl-std/angledLineThatIntersects)
|
||||
* [`appearance`](/docs/kcl-std/appearance)
|
||||
* [`arc`](/docs/kcl-std/arc)
|
||||
* [`assert`](/docs/kcl-std/assert)
|
||||
* [`assertIs`](/docs/kcl-std/assertIs)
|
||||
* [`bezierCurve`](/docs/kcl-std/bezierCurve)
|
||||
* [`circleThreePoint`](/docs/kcl-std/circleThreePoint)
|
||||
* [`clone`](/docs/kcl-std/clone)
|
||||
* [`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)
|
||||
* [`helix`](/docs/kcl-std/functions/std-helix)
|
||||
* [`intersect`](/docs/kcl-std/intersect)
|
||||
* [`involuteCircular`](/docs/kcl-std/involuteCircular)
|
||||
* [`lastSegX`](/docs/kcl-std/lastSegX)
|
||||
* [`lastSegY`](/docs/kcl-std/lastSegY)
|
||||
* [`legAngX`](/docs/kcl-std/legAngX)
|
||||
* [`legAngY`](/docs/kcl-std/legAngY)
|
||||
* [`legLen`](/docs/kcl-std/legLen)
|
||||
* [`line`](/docs/kcl-std/line)
|
||||
* [`loft`](/docs/kcl-std/loft)
|
||||
* [`map`](/docs/kcl-std/map)
|
||||
* [`offsetPlane`](/docs/kcl-std/functions/std-offsetPlane)
|
||||
* [`patternCircular2d`](/docs/kcl-std/patternCircular2d)
|
||||
* [`patternCircular3d`](/docs/kcl-std/patternCircular3d)
|
||||
* [`patternLinear2d`](/docs/kcl-std/patternLinear2d)
|
||||
* [`patternLinear3d`](/docs/kcl-std/patternLinear3d)
|
||||
* [`patternTransform`](/docs/kcl-std/patternTransform)
|
||||
* [`patternTransform2d`](/docs/kcl-std/patternTransform2d)
|
||||
* [`polygon`](/docs/kcl-std/polygon)
|
||||
* [**std::array**](/docs/kcl-std/modules/std-array)
|
||||
* [`map`](/docs/kcl-std/map)
|
||||
* [`pop`](/docs/kcl-std/pop)
|
||||
* [`profileStart`](/docs/kcl-std/profileStart)
|
||||
* [`profileStartX`](/docs/kcl-std/profileStartX)
|
||||
* [`profileStartY`](/docs/kcl-std/profileStartY)
|
||||
* [`push`](/docs/kcl-std/push)
|
||||
* [`reduce`](/docs/kcl-std/reduce)
|
||||
* [`revolve`](/docs/kcl-std/functions/std-revolve)
|
||||
* [`rotate`](/docs/kcl-std/rotate)
|
||||
* [`scale`](/docs/kcl-std/scale)
|
||||
* [`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)
|
||||
* [`subtract`](/docs/kcl-std/subtract)
|
||||
* [`subtract2d`](/docs/kcl-std/subtract2d)
|
||||
* [`sweep`](/docs/kcl-std/sweep)
|
||||
* [`tangentToEnd`](/docs/kcl-std/tangentToEnd)
|
||||
* [`tangentialArc`](/docs/kcl-std/tangentialArc)
|
||||
* [`translate`](/docs/kcl-std/translate)
|
||||
* [`union`](/docs/kcl-std/union)
|
||||
* [`xLine`](/docs/kcl-std/xLine)
|
||||
* [`yLine`](/docs/kcl-std/yLine)
|
||||
* [**std::math**](/docs/kcl-std/modules/std-math)
|
||||
* [`abs`](/docs/kcl-std/functions/std-math-abs)
|
||||
* [`acos`](/docs/kcl-std/functions/std-math-acos)
|
||||
@ -80,6 +30,9 @@ layout: manual
|
||||
* [`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)
|
||||
@ -94,13 +47,62 @@ layout: manual
|
||||
* [`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)
|
||||
* [`mirror2d`](/docs/kcl-std/functions/std-sketch-mirror2d)
|
||||
* [`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)
|
||||
@ -136,12 +138,12 @@ layout: manual
|
||||
|
||||
See also the [types overview](/docs/kcl-lang/types)
|
||||
|
||||
* [**Primitive types**](/docs/kcl-std/modules/Primitive types)
|
||||
* [`End`](/docs/kcl-std/types#End)
|
||||
* [`ImportedGeometry`](/docs/kcl-std/types#ImportedGeometry)
|
||||
* [`Start`](/docs/kcl-std/types#Start)
|
||||
* [`TagDeclarator`](/docs/kcl-std/types#TagDeclarator)
|
||||
* [`TagIdentifier`](/docs/kcl-std/types#TagIdentifier)
|
||||
* [**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)
|
||||
|
||||
@ -1,20 +1,21 @@
|
||||
---
|
||||
title: "intersect"
|
||||
subtitle: "Function in std::solid"
|
||||
excerpt: "Intersect returns the shared volume between multiple solids, preserving only overlapping regions."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Intersect returns the shared volume between multiple solids, preserving only overlapping regions.
|
||||
|
||||
Intersect computes the geometric intersection of multiple solid bodies, returning a new solid representing the volume that is common to all input solids. This operation is useful for determining shared material regions, verifying fit, and analyzing overlapping geometries in assemblies.
|
||||
|
||||
```kcl
|
||||
intersect(
|
||||
solids: [Solid],
|
||||
@solids: [Solid],
|
||||
tolerance?: number,
|
||||
): [Solid]
|
||||
```
|
||||
|
||||
Intersect computes the geometric intersection of multiple solid bodies, returning a new solid representing the volume that is common to all input solids. This operation is useful for determining shared material regions, verifying fit, and analyzing overlapping geometries in assemblies.
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|
||||
@ -1,16 +1,15 @@
|
||||
---
|
||||
title: "involuteCircular"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Extend the current sketch with a new involute circular curve."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Extend the current sketch with a new involute circular curve.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
involuteCircular(
|
||||
sketch: Sketch,
|
||||
@sketch: Sketch,
|
||||
startRadius: number,
|
||||
endRadius: number,
|
||||
angle: number,
|
||||
@ -19,6 +18,8 @@ involuteCircular(
|
||||
): Sketch
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -32,7 +33,7 @@ involuteCircular(
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch)
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,17 +1,18 @@
|
||||
---
|
||||
title: "lastSegX"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Extract the 'x' axis value of the last line segment in the provided 2-d sketch."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Extract the 'x' axis value of the last line segment in the provided 2-d sketch.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
lastSegX(sketch: Sketch): number
|
||||
lastSegX(@sketch: Sketch): number
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -20,7 +21,7 @@ lastSegX(sketch: Sketch): number
|
||||
|
||||
### Returns
|
||||
|
||||
[`number`](/docs/kcl-std/types/std-types-number)
|
||||
[`number`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,17 +1,18 @@
|
||||
---
|
||||
title: "lastSegY"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Extract the 'y' axis value of the last line segment in the provided 2-d sketch."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Extract the 'y' axis value of the last line segment in the provided 2-d sketch.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
lastSegY(sketch: Sketch): number
|
||||
lastSegY(@sketch: Sketch): number
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -20,7 +21,7 @@ lastSegY(sketch: Sketch): number
|
||||
|
||||
### Returns
|
||||
|
||||
[`number`](/docs/kcl-std/types/std-types-number)
|
||||
[`number`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,13 +1,12 @@
|
||||
---
|
||||
title: "legAngX"
|
||||
subtitle: "Function in std::math"
|
||||
excerpt: "Compute the angle of the given leg for x."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Compute the angle of the given leg for x.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
legAngX(
|
||||
hypotenuse: number,
|
||||
@ -15,6 +14,8 @@ legAngX(
|
||||
): number
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -24,7 +25,7 @@ legAngX(
|
||||
|
||||
### Returns
|
||||
|
||||
[`number`](/docs/kcl-std/types/std-types-number)
|
||||
[`number`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,13 +1,12 @@
|
||||
---
|
||||
title: "legAngY"
|
||||
subtitle: "Function in std::math"
|
||||
excerpt: "Compute the angle of the given leg for y."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Compute the angle of the given leg for y.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
legAngY(
|
||||
hypotenuse: number,
|
||||
@ -15,6 +14,8 @@ legAngY(
|
||||
): number
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -24,7 +25,7 @@ legAngY(
|
||||
|
||||
### Returns
|
||||
|
||||
[`number`](/docs/kcl-std/types/std-types-number)
|
||||
[`number`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,13 +1,12 @@
|
||||
---
|
||||
title: "legLen"
|
||||
subtitle: "Function in std::math"
|
||||
excerpt: "Compute the length of the given leg."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Compute the length of the given leg.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
legLen(
|
||||
hypotenuse: number,
|
||||
@ -15,6 +14,8 @@ legLen(
|
||||
): number
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -24,7 +25,7 @@ legLen(
|
||||
|
||||
### Returns
|
||||
|
||||
[`number`](/docs/kcl-std/types/std-types-number)
|
||||
[`number`](/docs/kcl-std/types/std-types-number) - A number
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,22 +1,23 @@
|
||||
---
|
||||
title: "line"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Extend the current sketch with a new straight line."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Extend the current sketch with a new straight line.
|
||||
|
||||
|
||||
|
||||
```kcl
|
||||
line(
|
||||
sketch: Sketch,
|
||||
@sketch: Sketch,
|
||||
endAbsolute?: Point2d,
|
||||
end?: Point2d,
|
||||
tag?: TagDeclarator,
|
||||
): Sketch
|
||||
```
|
||||
|
||||
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -28,7 +29,7 @@ line(
|
||||
|
||||
### Returns
|
||||
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch)
|
||||
[`Sketch`](/docs/kcl-std/types/std-types-Sketch) - A sketch is a collection of paths.
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,16 +1,15 @@
|
||||
---
|
||||
title: "loft"
|
||||
subtitle: "Function in std::sketch"
|
||||
excerpt: "Create a 3D surface or solid by interpolating between two or more sketches."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Create a 3D surface or solid by interpolating between two or more sketches.
|
||||
|
||||
The sketches need to closed and on the same plane.
|
||||
|
||||
```kcl
|
||||
loft(
|
||||
sketches: [Sketch],
|
||||
@sketches: [Sketch],
|
||||
vDegree: number,
|
||||
bezApproximateRational: bool,
|
||||
baseCurveIndex?: number,
|
||||
@ -20,6 +19,8 @@ loft(
|
||||
): Solid
|
||||
```
|
||||
|
||||
The sketches need to closed and on the same plane.
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
@ -34,7 +35,7 @@ loft(
|
||||
|
||||
### Returns
|
||||
|
||||
[`Solid`](/docs/kcl-std/types/std-types-Solid)
|
||||
[`Solid`](/docs/kcl-std/types/std-types-Solid) - A solid is a collection of extrude surfaces.
|
||||
|
||||
|
||||
### Examples
|
||||
|
||||
@ -1,20 +1,21 @@
|
||||
---
|
||||
title: "map"
|
||||
subtitle: "Function in std::array"
|
||||
excerpt: "Apply a function to every element of a list."
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Apply a function to every element of a list.
|
||||
|
||||
Given a list like `[a, b, c]`, and a function like `f`, returns `[f(a), f(b), f(c)]`
|
||||
|
||||
```kcl
|
||||
map(
|
||||
array: [any],
|
||||
@array: [any],
|
||||
f: FunctionSource,
|
||||
): [any]
|
||||
```
|
||||
|
||||
Given a list like `[a, b, c]`, and a function like `f`, returns `[f(a), f(b), f(c)]`
|
||||
|
||||
### Arguments
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
|
||||
19
docs/kcl-std/modules/std-array.md
Normal file
19
docs/kcl-std/modules/std-array.md
Normal file
@ -0,0 +1,19 @@
|
||||
---
|
||||
title: "array"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Functions and constants
|
||||
|
||||
* [`map`](/docs/kcl-std/map)
|
||||
* [`pop`](/docs/kcl-std/pop)
|
||||
* [`push`](/docs/kcl-std/push)
|
||||
* [`reduce`](/docs/kcl-std/reduce)
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
---
|
||||
title: "std::math"
|
||||
title: "math"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
@ -22,6 +23,9 @@ layout: manual
|
||||
* [`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)
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
---
|
||||
title: "std::sketch"
|
||||
title: "sketch"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
@ -11,6 +12,44 @@ layout: manual
|
||||
|
||||
## Functions and constants
|
||||
|
||||
* [`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)
|
||||
* [`mirror2d`](/docs/kcl-std/functions/std-sketch-mirror2d)
|
||||
* [`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)
|
||||
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
---
|
||||
title: "std::solid"
|
||||
title: "solid"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
@ -14,5 +15,11 @@ layout: manual
|
||||
* [`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)
|
||||
|
||||
|
||||
19
docs/kcl-std/modules/std-transform.md
Normal file
19
docs/kcl-std/modules/std-transform.md
Normal file
@ -0,0 +1,19 @@
|
||||
---
|
||||
title: "transform"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Functions and constants
|
||||
|
||||
* [`mirror2d`](/docs/kcl-std/functions/std-transform-mirror2d)
|
||||
* [`rotate`](/docs/kcl-std/rotate)
|
||||
* [`scale`](/docs/kcl-std/scale)
|
||||
* [`translate`](/docs/kcl-std/translate)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user