Improve KCL Samples (#5767)

* improve KCL Samples & .gitignore

* update block and car wheel assembly

* update flange and lego, delete flange xy

* artifacts

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* scale

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* docs

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

---------

Signed-off-by: Jess Frazelle <github@jessfraz.com>
Co-authored-by: Jess Frazelle <github@jessfraz.com>
This commit is contained in:
Josh Gomez
2025-03-13 23:38:51 -07:00
committed by GitHub
parent dd99c27d56
commit 58e0c0e916
101 changed files with 107664 additions and 57348 deletions

3
.gitignore vendored
View File

@ -53,13 +53,14 @@ e2e/playwright/export-snapshots/*
/public/kcl-samples.zip
/public/kcl-samples/.github
/public/kcl-samples/screenshots/main.kcl
/public/kcl-samples/step/main.kcl
/test-results/
/playwright-report/
/blob-report/
/playwright/.cache/
/src/lang/std/artifactMapCache
## generated files
src/**/*.typegen.ts

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -248838,7 +248838,7 @@
"keywordArguments": true,
"args": [
{
"name": "solid",
"name": "solidSet",
"type": "SolidOrImportedGeometry",
"schema": {
"$schema": "https://spec.openapis.org/oas/3.0/schema/2019-04-02#/definitions/Schema",
@ -248948,6 +248948,26 @@
}
}
}
},
{
"type": [
"object",
"array"
],
"items": {
"$ref": "#/components/schemas/Solid"
},
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"solidSet"
]
}
}
}
],
"definitions": {
@ -250490,7 +250510,7 @@
},
"required": true,
"includeInSnippet": true,
"description": "The solid to rotate.",
"description": "The solid or set of solids to rotate.",
"labelRequired": false
},
{
@ -259918,6 +259938,26 @@
}
}
}
},
{
"type": [
"object",
"array"
],
"items": {
"$ref": "#/components/schemas/Solid"
},
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"solidSet"
]
}
}
}
],
"definitions": {
@ -261467,7 +261507,8 @@
"examples": [
"// Rotate a pipe with roll, pitch, and yaw.\n\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> rotate(roll = 10, pitch = 10, yaw = 90)",
"// Rotate a pipe about an axis with an angle.\n\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> rotate(axis = [0, 0, 1.0], angle = 90)",
"// Rotate an imported model.\n\n\nimport \"tests/inputs/cube.sldprt\" as cube\n\ncube\n |> rotate(axis = [0, 0, 1.0], angle = 90)"
"// Rotate an imported model.\n\n\nimport \"tests/inputs/cube.sldprt\" as cube\n\ncube\n |> rotate(axis = [0, 0, 1.0], angle = 90)",
"// Sweep two sketches along the same path.\n\n\nsketch001 = startSketchOn('XY')\nrectangleSketch = startProfileAt([-200, 23.86], sketch001)\n |> angledLine([0, 73.47], %, $rectangleSegmentA001)\n |> angledLine([\n segAng(rectangleSegmentA001) - 90,\n 50.61\n ], %)\n |> angledLine([\n segAng(rectangleSegmentA001),\n -segLen(rectangleSegmentA001)\n ], %)\n |> line(endAbsolute = [profileStartX(%), profileStartY(%)])\n |> close()\n\ncircleSketch = circle(sketch001, center = [200, -30.29], radius = 32.63)\n\nsketch002 = startSketchOn('YZ')\nsweepPath = startProfileAt([0, 0], sketch002)\n |> yLine(length = 231.81)\n |> tangentialArc({ radius = 80, offset = -90 }, %)\n |> xLine(length = 384.93)\n\nparts = sweep([rectangleSketch, circleSketch], path = sweepPath)\n\n// Rotate the sweeps.\nrotate(parts, axis = [0, 0, 1.0], angle = 90)"
]
},
{
@ -261520,7 +261561,7 @@
"keywordArguments": true,
"args": [
{
"name": "solid",
"name": "solidSet",
"type": "SolidOrImportedGeometry",
"schema": {
"$schema": "https://spec.openapis.org/oas/3.0/schema/2019-04-02#/definitions/Schema",
@ -261630,6 +261671,26 @@
}
}
}
},
{
"type": [
"object",
"array"
],
"items": {
"$ref": "#/components/schemas/Solid"
},
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"solidSet"
]
}
}
}
],
"definitions": {
@ -263172,7 +263233,7 @@
},
"required": true,
"includeInSnippet": true,
"description": "The solid to scale.",
"description": "The solid or set of solids to scale.",
"labelRequired": false
},
{
@ -266393,6 +266454,26 @@
}
}
}
},
{
"type": [
"object",
"array"
],
"items": {
"$ref": "#/components/schemas/Solid"
},
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"solidSet"
]
}
}
}
],
"definitions": {
@ -267941,7 +268022,8 @@
"deprecated": false,
"examples": [
"// Scale a pipe.\n\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> scale(scale = [1.0, 1.0, 2.5])",
"// Scale an imported model.\n\n\nimport \"tests/inputs/cube.sldprt\" as cube\n\ncube\n |> scale(scale = [1.0, 1.0, 2.5])"
"// Scale an imported model.\n\n\nimport \"tests/inputs/cube.sldprt\" as cube\n\ncube\n |> scale(scale = [1.0, 1.0, 2.5])",
"// Sweep two sketches along the same path.\n\n\nsketch001 = startSketchOn('XY')\nrectangleSketch = startProfileAt([-200, 23.86], sketch001)\n |> angledLine([0, 73.47], %, $rectangleSegmentA001)\n |> angledLine([\n segAng(rectangleSegmentA001) - 90,\n 50.61\n ], %)\n |> angledLine([\n segAng(rectangleSegmentA001),\n -segLen(rectangleSegmentA001)\n ], %)\n |> line(endAbsolute = [profileStartX(%), profileStartY(%)])\n |> close()\n\ncircleSketch = circle(sketch001, center = [200, -30.29], radius = 32.63)\n\nsketch002 = startSketchOn('YZ')\nsweepPath = startProfileAt([0, 0], sketch002)\n |> yLine(length = 231.81)\n |> tangentialArc({ radius = 80, offset = -90 }, %)\n |> xLine(length = 384.93)\n\nparts = sweep([rectangleSketch, circleSketch], path = sweepPath)\n\n// Scale the sweep.\nscale(parts, scale = [1.0, 1.0, 0.5])"
]
},
{
@ -317079,7 +317161,7 @@
"keywordArguments": true,
"args": [
{
"name": "solid",
"name": "solidSet",
"type": "SolidOrImportedGeometry",
"schema": {
"$schema": "https://spec.openapis.org/oas/3.0/schema/2019-04-02#/definitions/Schema",
@ -317189,6 +317271,26 @@
}
}
}
},
{
"type": [
"object",
"array"
],
"items": {
"$ref": "#/components/schemas/Solid"
},
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"solidSet"
]
}
}
}
],
"definitions": {
@ -318731,7 +318833,7 @@
},
"required": true,
"includeInSnippet": true,
"description": "The solid to move.",
"description": "The solid or set of solids to move.",
"labelRequired": false
},
{
@ -321952,6 +322054,26 @@
}
}
}
},
{
"type": [
"object",
"array"
],
"items": {
"$ref": "#/components/schemas/Solid"
},
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"enum": [
"solidSet"
]
}
}
}
],
"definitions": {
@ -323500,7 +323622,8 @@
"deprecated": false,
"examples": [
"// Move a pipe.\n\n\n// Create a path for the sweep.\nsweepPath = startSketchOn('XZ')\n |> startProfileAt([0.05, 0.05], %)\n |> line(end = [0, 7])\n |> tangentialArc({ offset = 90, radius = 5 }, %)\n |> line(end = [-3, 0])\n |> tangentialArc({ offset = -90, radius = 5 }, %)\n |> line(end = [0, 7])\n\n// Create a hole for the pipe.\npipeHole = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 1.5)\n\nsweepSketch = startSketchOn('XY')\n |> circle(center = [0, 0], radius = 2)\n |> hole(pipeHole, %)\n |> sweep(path = sweepPath)\n |> translate(translate = [1.0, 1.0, 2.5])",
"// Move an imported model.\n\n\nimport \"tests/inputs/cube.sldprt\" as cube\n\ncube\n |> translate(translate = [1.0, 1.0, 2.5])"
"// Move an imported model.\n\n\nimport \"tests/inputs/cube.sldprt\" as cube\n\ncube\n |> translate(translate = [1.0, 1.0, 2.5])",
"// Sweep two sketches along the same path.\n\n\nsketch001 = startSketchOn('XY')\nrectangleSketch = startProfileAt([-200, 23.86], sketch001)\n |> angledLine([0, 73.47], %, $rectangleSegmentA001)\n |> angledLine([\n segAng(rectangleSegmentA001) - 90,\n 50.61\n ], %)\n |> angledLine([\n segAng(rectangleSegmentA001),\n -segLen(rectangleSegmentA001)\n ], %)\n |> line(endAbsolute = [profileStartX(%), profileStartY(%)])\n |> close()\n\ncircleSketch = circle(sketch001, center = [200, -30.29], radius = 32.63)\n\nsketch002 = startSketchOn('YZ')\nsweepPath = startProfileAt([0, 0], sketch002)\n |> yLine(length = 231.81)\n |> tangentialArc({ radius = 80, offset = -90 }, %)\n |> xLine(length = 384.93)\n\nparts = sweep([rectangleSketch, circleSketch], path = sweepPath)\n\n// Move the sweeps.\ntranslate(parts, translate = [1.0, 1.0, 2.5])"
]
},
{

File diff suppressed because one or more lines are too long

View File

@ -55,6 +55,21 @@ Data for an imported geometry.
----
**Type:** `[object, array]`
`[` [`Solid`](/docs/kcl/types/Solid) `]`
## Properties
| Property | Type | Description | Required |
|----------|------|-------------|----------|
| `type` |enum: `solidSet`| | No |
----

View File

@ -23,14 +23,14 @@ KCL samples conform to a set of style guidelines to ensure consistency and reada
When you submit a PR to add or modify KCL samples, images and STEP files will be generated and added to the repository automatically.
---
#### [3d-boaty](3d-boaty/main.kcl) ([step](step/3d-boaty.step)) ([screenshot](screenshots/3d-boaty.png))
[![3d-boaty](screenshots/3d-boaty.png)](3d-boaty/main.kcl)
#### [80-20-rail](80-20-rail/main.kcl) ([step](step/80-20-rail.step)) ([screenshot](screenshots/80-20-rail.png))
[![80-20-rail](screenshots/80-20-rail.png)](80-20-rail/main.kcl)
#### [a-parametric-bearing-pillow-block](a-parametric-bearing-pillow-block/main.kcl) ([step](step/a-parametric-bearing-pillow-block.step)) ([screenshot](screenshots/a-parametric-bearing-pillow-block.png))
[![a-parametric-bearing-pillow-block](screenshots/a-parametric-bearing-pillow-block.png)](a-parametric-bearing-pillow-block/main.kcl)
#### [ball-bearing](ball-bearing/main.kcl) ([step](step/ball-bearing.step)) ([screenshot](screenshots/ball-bearing.png))
[![ball-bearing](screenshots/ball-bearing.png)](ball-bearing/main.kcl)
#### [bench](bench/main.kcl) ([step](step/bench.step)) ([screenshot](screenshots/bench.png))
[![bench](screenshots/bench.png)](bench/main.kcl)
#### [bracket](bracket/main.kcl) ([step](step/bracket.step)) ([screenshot](screenshots/bracket.png))
[![bracket](screenshots/bracket.png)](bracket/main.kcl)
#### [car-wheel-assembly](car-wheel-assembly/main.kcl) ([step](step/car-wheel-assembly.step)) ([screenshot](screenshots/car-wheel-assembly.png))
@ -45,10 +45,8 @@ When you submit a PR to add or modify KCL samples, images and STEP files will be
[![enclosure](screenshots/enclosure.png)](enclosure/main.kcl)
#### [exhaust-manifold](exhaust-manifold/main.kcl) ([step](step/exhaust-manifold.step)) ([screenshot](screenshots/exhaust-manifold.png))
[![exhaust-manifold](screenshots/exhaust-manifold.png)](exhaust-manifold/main.kcl)
#### [flange-with-patterns](flange-with-patterns/main.kcl) ([step](step/flange-with-patterns.step)) ([screenshot](screenshots/flange-with-patterns.png))
[![flange-with-patterns](screenshots/flange-with-patterns.png)](flange-with-patterns/main.kcl)
#### [flange-xy](flange-xy/main.kcl) ([step](step/flange-xy.step)) ([screenshot](screenshots/flange-xy.png))
[![flange-xy](screenshots/flange-xy.png)](flange-xy/main.kcl)
#### [flange](flange/main.kcl) ([step](step/flange.step)) ([screenshot](screenshots/flange.png))
[![flange](screenshots/flange.png)](flange/main.kcl)
#### [focusrite-scarlett-mounting-bracket](focusrite-scarlett-mounting-bracket/main.kcl) ([step](step/focusrite-scarlett-mounting-bracket.step)) ([screenshot](screenshots/focusrite-scarlett-mounting-bracket.png))
[![focusrite-scarlett-mounting-bracket](screenshots/focusrite-scarlett-mounting-bracket.png)](focusrite-scarlett-mounting-bracket/main.kcl)
#### [food-service-spatula](food-service-spatula/main.kcl) ([step](step/food-service-spatula.step)) ([screenshot](screenshots/food-service-spatula.png))

View File

@ -15,90 +15,57 @@ padding = 1.5
bearingDia = 3
// (Needs to be updated). Sketch the block and extrude up to where the counterbore diameter starts.
block = startSketchOn('XY')
extrude001 = startSketchOn('XY')
|> startProfileAt([-width / 2, -length / 2], %)
|> line(endAbsolute = [width / 2, -length / 2])
|> line(endAbsolute = [width / 2, length / 2])
|> line(endAbsolute = [-width / 2, length / 2])
|> close()
|> hole(circle(
center = [
|> extrude(length = height)
extrude002 = startSketchOn(extrude001, 'end')
|> circle(
center = [
-(width / 2 - (padding / 2)),
-(length / 2 - (padding / 2))
],
radius = holeDia / 2
), %)
|> hole(circle(
center = [
-(width / 2 - (padding / 2)),
length / 2 - (padding / 2)
],
radius = holeDia / 2
), %)
|> hole(circle(
center = [
width / 2 - (padding / 2),
length / 2 - (padding / 2)
],
radius = holeDia / 2
), %)
|> hole(circle(
center = [
width / 2 - (padding / 2),
-(length / 2 - (padding / 2))
],
radius = holeDia / 2
), %)
|> hole(circle(
center = [0, 0],
radius = bearingDia / 2
), %)
|> extrude(length = height - cbDepth)
],
radius = cbDia / 2,
)
|> patternLinear2d(
instances = 2,
distance = length - padding,
axis = [0, 1],
)
|> patternLinear2d(
instances = 2,
distance = width - padding,
axis = [1, 0],
)
|> extrude(%, length = -cbDepth)
// Create a second sketch that creates the counterbore diameters and extrude the rest of the way to get the total height. Note: You cannot use startSketchOn(block, 'end'). The extrude lives outside the bounds, and the engine will not execute. This is a known issue.
secondHalf = startSketchOn({
plane = {
origin = { x = 0, y = 0, z = height - cbDepth },
xAxis = { x = 1, y = 0, z = 0 },
yAxis = { x = 0, y = 1, z = 0 },
zAxis = { x = 0, y = 0, z = 1 }
}
})
|> startProfileAt([-width / 2, -length / 2], %)
|> line(endAbsolute = [width / 2, -length / 2])
|> line(endAbsolute = [width / 2, length / 2])
|> line(endAbsolute = [-width / 2, length / 2])
|> close()
|> hole(circle(
center = [
-(width / 2 - (padding / 2)),
-(length / 2 - (padding / 2))
],
radius = cbDia / 2
), %)
|> hole(circle(
center = [
-(width / 2 - (padding / 2)),
length / 2 - (padding / 2)
],
radius = cbDia / 2
), %)
|> hole(circle(
center = [
width / 2 - (padding / 2),
length / 2 - (padding / 2)
],
radius = cbDia / 2
), %)
|> hole(circle(
center = [
width / 2 - (padding / 2),
-(length / 2 - (padding / 2))
],
radius = cbDia / 2
), %)
|> hole(circle(
center = [0, 0],
radius = bearingDia / 2
), %)
|> extrude(length = cbDepth)
extrude003 = startSketchOn(extrude001, 'start')
|> circle(
center = [
-(width / 2 - (padding / 2)),
-(length / 2 - (padding / 2))
],
radius = holeDia / 2,
)
|> patternLinear2d(
instances = 2,
distance = length - padding,
axis = [0, 1],
)
|> patternLinear2d(
instances = 2,
distance = width - padding,
axis = [1, 0],
)
|> extrude(length = -height + cbDepth)
extrude004 = startSketchOn(extrude001, 'end')
|> circle(
center = [0, 0],
radius = bearingDia/2,
)
|> extrude(length = -height)

View File

@ -16,21 +16,8 @@ chainWidth = sphereDia / 2
chainThickness = sphereDia / 8
linkDiameter = sphereDia / 4
customPlane = {
plane = {
origin = {
x = 0,
y = 0,
z = -overallThickness / 2
},
xAxis = { x = 1, y = 0, z = 0 },
yAxis = { x = 0, y = 1, z = 0 },
zAxis = { x = 0, y = 0, z = 1 }
}
}
// Sketch the inside bearing piece
insideWallSketch = startSketchOn(customPlane)
insideWallSketch = startSketchOn(offsetPlane("XY", offset = -overallThickness / 2))
|> circle(
center = [0, 0],
radius = shaftDia / 2 + wallThickness
@ -109,7 +96,7 @@ linkRevolve = revolve({ axis = 'Y', angle = 360 / nBalls }, linkSketch)
)
// Create the sketch for the outside walls
outsideWallSketch = startSketchOn(customPlane)
outsideWallSketch = startSketchOn(offsetPlane("XY", offset = -overallThickness / 2))
|> circle(
center = [0, 0],
radius = outsideDiameter / 2

View File

@ -1,4 +1,4 @@
// 3D Boaty
// Bench
// This is a slight remix of Depep1's original 3D Boaty (https://www.printables.com/model/1141963-3d-boaty). This is a tool used for benchmarking 3D FDM printers for bed adhesion, overhangs, bridging and top surface quality. The name of this file is a bit of misnomer, the shape of the object is a typical park bench.
// Set units in millimeters (mm)
@ -8,12 +8,12 @@
benchLength = 56
// Import various constants and functions from our library
import dividerThickness from "boat-parts.kcl"
import divider from "boat-parts.kcl"
import connector from "boat-parts.kcl"
import seatSlats from "boat-parts.kcl"
import backSlats from "boat-parts.kcl"
import armRest from "boat-parts.kcl"
import dividerThickness from "bench-parts.kcl"
import divider from "bench-parts.kcl"
import connector from "bench-parts.kcl"
import seatSlats from "bench-parts.kcl"
import backSlats from "bench-parts.kcl"
import armRest from "bench-parts.kcl"
// Create the dividers, these hold the seat and back slats
divider("YZ")

View File

@ -1,113 +1,76 @@
// Shelf Bracket
// This is a bracket that holds a shelf. It is made of aluminum and is designed to hold a force of 300 lbs. The bracket is 6 inches wide and the force is applied at the end of the shelf, 12 inches from the wall. The bracket has a factor of safety of 1.2. The legs of the bracket are 5 inches and 2 inches long. The thickness of the bracket is calculated from the constraints provided.
// Set units
@settings(defaultLengthUnit = in)
// Define constants
sigmaAllow = 35000 // psi (6061-T6 aluminum)
width = 6
width = 6 // inch
p = 300 // Force on shelf - lbs
factorOfSafety = 1.2 // FOS of 1.2
shelfMountL = 5
wallMountL = 2
shelfMountL = 5 // inches
wallMountL = 2 // inches
shelfDepth = 12 // Shelf is 12 inches in depth from the wall
moment = shelfDepth * p // assume the force is applied at the end of the shelf to be conservative (lb-in)
filletRadius = .375
extFilletRadius = .25
mountingHoleDiameter = 0.5
// Calculate required thickness of bracket
thickness = sqrt(moment * factorOfSafety * 6 / (sigmaAllow * width)) // this is the calculation of two brackets holding up the shelf (inches)
filletRadius = .25
extFilletRadius = filletRadius + thickness
mountingHoleDiameter = 0.5
// Sketch the bracket body and fillet the inner and outer edges of the bend
bracketLeg1Sketch = startSketchOn('XY')
sketch001 = startSketchOn('XZ')
|> startProfileAt([0, 0], %)
|> line(end = [shelfMountL - filletRadius, 0], tag = $fillet1)
|> line(end = [0, width], tag = $fillet2)
|> line(end = [-shelfMountL + filletRadius, 0])
|> xLine(length = shelfMountL - thickness, tag = $seg01)
|> yLine(length = thickness, tag = $seg02)
|> xLine(length = -shelfMountL, tag = $seg03)
|> yLine(length = -wallMountL, tag = $seg04)
|> xLine(length = thickness, tag = $seg05)
|> line(endAbsolute = [profileStartX(%), profileStartY(%)], tag = $seg06)
|> close()
|> hole(circle(
center = [1, 1],
radius = mountingHoleDiameter / 2
), %)
|> hole(circle(
center = [shelfMountL - 1.5, width - 1],
radius = mountingHoleDiameter / 2
), %)
|> hole(circle(
center = [1, width - 1],
radius = mountingHoleDiameter / 2
), %)
|> hole(circle(
center = [shelfMountL - 1.5, 1],
radius = mountingHoleDiameter / 2
), %)
// Extrude the leg 2 bracket sketch
bracketLeg1Extrude = extrude(bracketLeg1Sketch, length = thickness)
|> extrude(%, length = width)
|> fillet(
radius = extFilletRadius,
tags = [
getNextAdjacentEdge(fillet1),
getNextAdjacentEdge(fillet2)
]
tags = [getNextAdjacentEdge(seg03)],
)
// Sketch the fillet arc
filletSketch = startSketchOn('XZ')
|> startProfileAt([0, 0], %)
|> line(end = [0, thickness])
|> arc({
angleEnd = 180,
angleStart = 90,
radius = filletRadius + thickness
}, %)
|> line(end = [thickness, 0])
|> arc({
angleEnd = 90,
angleStart = 180,
radius = filletRadius
}, %)
// Sketch the bend
filletExtrude = extrude(filletSketch, length = -width)
// Create a custom plane for the leg that sits on the wall
customPlane = {
plane = {
origin = { x = -filletRadius, y = 0, z = 0 },
xAxis = { x = 0, y = 1, z = 0 },
yAxis = { x = 0, y = 0, z = 1 },
zAxis = { x = 1, y = 0, z = 0 }
}
}
// Create a sketch for the second leg
bracketLeg2Sketch = startSketchOn(customPlane)
|> startProfileAt([0, -filletRadius], %)
|> line(end = [width, 0])
|> line(end = [0, -wallMountL], tag = $fillet3)
|> line(end = [-width, 0], tag = $fillet4)
|> close()
|> hole(circle(
center = [1, -1.5],
radius = mountingHoleDiameter / 2
), %)
|> hole(circle(
center = [5, -1.5],
radius = mountingHoleDiameter / 2
), %)
// Extrude the second leg
bracketLeg2Extrude = extrude(bracketLeg2Sketch, length = -thickness)
|> fillet(
radius = extFilletRadius,
tags = [
getNextAdjacentEdge(fillet3),
getNextAdjacentEdge(fillet4)
]
radius = filletRadius,
tags = [getNextAdjacentEdge(seg06)],
)
|> fillet(
radius = filletRadius,
tags = [seg02, getOppositeEdge(seg02)],
)
|> fillet(
radius = filletRadius,
tags = [seg05, getOppositeEdge(seg05)],
)
sketch002 = startSketchOn(sketch001, seg03)
|> circle(
center = [-1.25, 1],
radius = mountingHoleDiameter / 2,
)
|> patternLinear2d(
instances = 2,
distance = 2.5,
axis = [-1, 0],
)
|> patternLinear2d(
instances = 2,
distance = 4,
axis = [0, 1],
)
|> extrude(%, length = -thickness-.01)
sketch003 = startSketchOn(sketch001, seg04)
|> circle(
center = [1, -1],
radius = mountingHoleDiameter / 2,
)
|> patternLinear2d(
instances = 2,
distance = 4,
axis = [1, 0],
)
|> extrude(%, length = -thickness-0.1)

View File

@ -9,18 +9,8 @@
// Import Constants
import caliperTolerance, caliperPadLength, caliperThickness, caliperOuterEdgeRadius, caliperInnerEdgeRadius, rotorDiameter, rotorTotalThickness, yAxisOffset from "globals.kcl"
// Create the plane for the brake caliper. This is so it can match up with the rotor model.
brakeCaliperPlane = {
plane = {
origin = { x = 0, y = yAxisOffset, z = 0 },
xAxis = { x = 1, y = 0, z = 0 },
yAxis = { x = 0, y = 1, z = 0 },
zAxis = { x = 0, y = 0, z = 1 }
}
}
// Sketch the brake caliper profile
brakeCaliperSketch = startSketchOn(brakeCaliperPlane)
brakeCaliperSketch = startSketchOn('XY')
|> startProfileAt([
rotorDiameter / 2 + caliperTolerance,
0

View File

@ -9,64 +9,61 @@
// Import Constants
import rotorDiameter, rotorInnerDiameter, rotorSinglePlateThickness, rotorInnerDiameterThickness, lugHolePatternDia, lugSpacing, rotorTotalThickness, spacerPatternDiameter, spacerDiameter, spacerLength, spacerCount, wheelDiameter, lugCount, yAxisOffset, drillAndSlotCount from "globals.kcl"
rotorPlane = {
plane = {
origin = { x = 0, y = yAxisOffset, z = 0 },
xAxis = { x = -1, y = 0, z = 0 },
yAxis = { x = 0, y = 0, z = 1 },
zAxis = { x = 0, y = 1, z = 0 }
}
}
fn lugPattern(plane) {
lugHolePattern = circle(
plane,
center = [-lugSpacing / 2, 0],
radius = 0.315
)
|> patternCircular2d(
arcDegrees = 360,
center = [0, 0],
instances = lugCount,
rotateDuplicates = true
)
return lugHolePattern
}
rotorSketch = startSketchOn(rotorPlane)
rotorSketch = startSketchOn('XZ')
|> circle(
center = [0, 0],
radius = rotorDiameter / 2
)
|> hole(lugPattern(%), %)
rotor = extrude(rotorSketch, length = rotorSinglePlateThickness)
|> appearance(color = "#dbcd70", roughness = 90, metalness = 90)
rotorBumpSketch = startSketchOn(rotorPlane)
rotorBumpSketch = startSketchOn(rotor, 'end')
|> circle(
center = [0, 0],
radius = rotorInnerDiameter / 2
)
|> hole(lugPattern(%), %)
rotorBump = extrude(rotorBumpSketch, length = -rotorInnerDiameterThickness)
rotorBump = extrude(rotorBumpSketch, length = rotorInnerDiameterThickness)
lugHoles = startSketchOn(rotorBump, 'end')
|> circle(
center = [-lugSpacing / 2, 0],
radius = 0.315
)
|> patternCircular2d(
arcDegrees = 360,
center = [0, 0],
instances = lugCount,
rotateDuplicates = true
)
|> extrude(%, length = -(rotorInnerDiameterThickness + rotorSinglePlateThickness))
|> appearance(color = "#dbcd70", roughness = 90, metalness = 90)
rotorSecondaryPlatePlane = {
plane = {
origin = {
x = 0,
y = yAxisOffset + rotorTotalThickness * 0.75,
z = 0
},
xAxis = { x = -1, y = 0, z = 0 },
yAxis = { x = 0, y = 0, z = 1 },
zAxis = { x = 0, y = 1, z = 0 }
}
}
secondaryRotorSketch = startSketchOn(rotorSecondaryPlatePlane)
// (update when boolean is available)
centerSpacer = startSketchOn(rotor, 'start')
|> circle(%, center = [0, 0], radius = .25)
|> extrude(%, length = spacerLength)
secondaryRotorSketch = startSketchOn(centerSpacer, 'end')
|> circle(
center = [0, 0],
radius = rotorDiameter / 2
)
|> hole(lugPattern(%), %)
secondRotor = extrude(secondaryRotorSketch, length = rotorSinglePlateThickness)
spacerSketch = startSketchOn(rotorSecondaryPlatePlane)
lugHoles2 = startSketchOn(secondRotor, 'end')
|> circle(
center = [-lugSpacing / 2, 0],
radius = 0.315
)
|> patternCircular2d(
arcDegrees = 360,
center = [0, 0],
instances = lugCount,
rotateDuplicates = true
)
|> extrude(length = -rotorSinglePlateThickness)
spacerSketch = startSketchOn(rotor, 'start')
|> circle(
center = [spacerPatternDiameter / 2, 0],
radius = spacerDiameter
@ -77,8 +74,8 @@ spacerSketch = startSketchOn(rotorSecondaryPlatePlane)
instances = spacerCount,
rotateDuplicates = true
)
spacers = extrude(spacerSketch, length = -spacerLength)
|> appearance(color = "#dbcd70", roughness = 90, metalness = 90)
spacers = extrude(spacerSketch, length = spacerLength)
rotorSlottedSketch = startSketchOn(rotor, 'START')
|> startProfileAt([2.17, 2.56], %)
|> xLine(length = 0.12)
@ -107,5 +104,6 @@ secondRotorSlottedSketch = startSketchOn(secondRotor, 'END')
arcDegrees = 360,
rotateDuplicates = true
)
secondRotorSlotted = extrude(secondRotorSlottedSketch, length = -rotorSinglePlateThickness / 2)
extrude(secondRotorSlottedSketch, length = -rotorSinglePlateThickness / 2)
|> appearance(color = "#dbcd70", roughness = 90, metalness = 90)

View File

@ -12,6 +12,7 @@ import 'car-tire.kcl' as carTire
import lugCount from 'globals.kcl'
carRotor
|> translate(translate = [0, 0.5, 0])
carWheel
lugNut
|> patternCircular3d(
@ -22,4 +23,5 @@ lugNut
rotateDuplicates = false
)
brakeCaliper
|> translate(translate = [0, 0.5, 0])
carTire

View File

@ -1,87 +0,0 @@
// Flange with XY coordinates
// A flange is a flat rim, collar, or rib, typically forged or cast, that is used to strengthen an object, guide it, or attach it to another object. Flanges are known for their use in various applications, including piping, plumbing, and mechanical engineering, among others.
// Set units
@settings(defaultLengthUnit = in)
// Define constants
mountingHoleDia = .625
baseDia = 4.625
pipeDia = 1.25
thickness = .625
totalThickness = 0.813
topTotalDiameter = 2.313
bottomThickness = 0.06
bottomTotalDiameter = 2.5
mountingHolePlacementDiameter = 3.5
baseThickness = .625
topTotalThickness = totalThickness - (bottomThickness + baseThickness)
holeLocator = baseDia - 8
nHoles = 4
// Add assertion so nHoles are always greater than 1
assertGreaterThan(nHoles, 1, "nHoles must be greater than 1")
// Create the flange base and the six mounting holes
flangeBase = startSketchOn('XY')
|> circle(
center = [0, 0],
radius = baseDia / 2
)
|> hole(circle(
center = [mountingHolePlacementDiameter / 2, 0],
radius = mountingHoleDia / 2
), %)
|> hole(circle(
center = [0, mountingHolePlacementDiameter / 2],
radius = mountingHoleDia / 2
), %)
|> hole(circle(
center = [-mountingHolePlacementDiameter / 2, 0],
radius = mountingHoleDia / 2
), %)
|> hole(circle(
center = [0, -mountingHolePlacementDiameter / 2],
radius = mountingHoleDia / 2
), %)
|> hole(circle(
center = [0, 0],
radius = pipeDia / 2
), %)
|> extrude(length = baseThickness)
// Plane for top face
topFacePlane = {
plane = {
origin = { x = 0, y = 0, z = baseThickness },
xAxis = { x = 1, y = 0, z = 0 },
yAxis = { x = 0, y = 1, z = 0 },
zAxis = { x = 0, y = 0, z = 1 }
}
}
// Create the extrusion on the top of the flange base
topExtrusion = startSketchOn(topFacePlane, 'end')
|> circle(
center = [0, 0],
radius = topTotalDiameter / 2
)
|> hole(circle(
center = [0, 0],
radius = pipeDia / 2
), %)
|> extrude(length = topTotalThickness)
// Create the extrusion on the bottom of the flange base
bottomExtrusion = startSketchOn("XY")
|> circle(
center = [0, 0],
radius = bottomTotalDiameter / 2
)
|> hole(circle(
center = [0, 0],
radius = pipeDia / 2
), %)
|> extrude(length = -bottomThickness)
// https://www.mcmaster.com/44685K193/

View File

@ -8,7 +8,6 @@
mountingHoleDia = .625
baseDia = 4.625
pipeDia = 1.25
thickness = .625
totalThickness = 0.813
topTotalDiameter = 2.313
bottomThickness = 0.06
@ -16,7 +15,6 @@ bottomTotalDiameter = 2.5
mountingHolePlacementDiameter = 3.5
baseThickness = .625
topTotalThickness = totalThickness - (bottomThickness + baseThickness)
holeLocator = baseDia - 8
nHoles = 4
// Add assertion so nHoles are always greater than 1
@ -42,42 +40,25 @@ flangeBase = startSketchOn('XY')
radius = baseDia / 2
)
|> hole(circles, %)
|> hole(circle(
center = [0, 0],
radius = pipeDia / 2
), %)
|> extrude(length = baseThickness)
// Plane for top face
topFacePlane = {
plane = {
origin = { x = 0, y = 0, z = baseThickness },
xAxis = { x = 1, y = 0, z = 0 },
yAxis = { x = 0, y = 1, z = 0 },
zAxis = { x = 0, y = 0, z = 1 }
}
}
// Create the extrusion on the top of the flange base
topExtrusion = startSketchOn(topFacePlane)
topExtrusion = startSketchOn(flangeBase, 'end')
|> circle(
center = [0, 0],
radius = topTotalDiameter / 2
)
|> hole(circle(
center = [0, 0],
radius = pipeDia / 2
), %)
|> extrude(length = topTotalThickness)
// Create the extrusion on the bottom of the flange base
bottomExtrusion = startSketchOn("XY")
bottomExtrusion = startSketchOn(flangeBase, 'start')
|> circle(
center = [0, 0],
radius = bottomTotalDiameter / 2
)
|> hole(circle(
center = [0, 0],
radius = pipeDia / 2
), %)
|> extrude(length = -bottomThickness)
|> extrude(length = bottomThickness)
// Cut a hole through the entire body
pipeHole = startSketchOn(topExtrusion, 'end')
|> circle(center = [0, 0], radius = pipeDia/2)
|> extrude(%, length = -(topTotalThickness + baseThickness + bottomThickness))

View File

@ -5,8 +5,8 @@
@settings(defaultLengthUnit = in)
// Define constants
lbumps = 5 // number of bumps long
wbumps = 3 // number of bumps wide
lbumps = 10 // number of bumps long
wbumps = 5 // number of bumps wide
pitch = 8.0
clearance = 0.1
bumpDiam = 4.8
@ -25,28 +25,8 @@ wSegments = totalWidth / wbumps
assertGreaterThan(lbumps, 1, "lbumps must be greater than 1")
assertGreaterThan(wbumps, 1, "wbumps must be greater than 1")
// Create the plane for the pegs. This is a hack so that the pegs can be patterned along the face of the lego base.
pegFace = {
plane = {
origin = { x = 0, y = 0, z = height },
xAxis = { x = 1, y = 0, z = 0 },
yAxis = { x = 0, y = 1, z = 0 },
zAxis = { x = 0, y = 0, z = 1 }
}
}
// Create the plane for the tubes underneath the lego. This is a hack so that the tubes can be patterned underneath the lego.
tubeFace = {
plane = {
origin = { x = 0, y = 0, z = height - t },
xAxis = { x = 1, y = 0, z = 0 },
yAxis = { x = 0, y = 1, z = 0 },
zAxis = { x = 0, y = 0, z = 1 }
}
}
// Make the base
s = startSketchOn('XY')
base = startSketchOn('XY')
|> startProfileAt([-totalWidth / 2, -totalLength / 2], %)
|> line(end = [totalWidth, 0])
|> line(end = [0, totalLength])
@ -54,8 +34,8 @@ s = startSketchOn('XY')
|> close()
|> extrude(length = height)
// Sketch and extrude a rectangular shape to create the shell underneath the lego. This is a hack until we have a shell function.
shellExtrude = startSketchOn(s, "start")
// Sketch and extrude a rectangular shape to create the shell underneath the lego. Will replace with shell function when able to call a face created from shell.
shellExtrude = startSketchOn(base, "start")
|> startProfileAt([
-(totalWidth / 2 - t),
-(totalLength / 2 - t)
@ -67,7 +47,7 @@ shellExtrude = startSketchOn(s, "start")
|> extrude(length = -(height - t))
// Create the pegs on the top of the base
peg = startSketchOn(s, 'end')
peg = startSketchOn(base, 'end')
|> circle(
center = [
-(pitch * (wbumps - 1) / 2),
@ -88,7 +68,7 @@ peg = startSketchOn(s, 'end')
|> extrude(length = bumpHeight)
// Create the pegs on the bottom of the base
tubePattern = startSketchOn(tubeFace)
tubePattern = startSketchOn(shellExtrude, 'start')
|> circle(
center = [
-(pitch * (wbumps - 1) / 2 - (pitch / 2)),
@ -106,4 +86,4 @@ tubePattern = startSketchOn(tubeFace)
instances = lbumps - 1,
distance = pitch
)
|> extrude(length = -bumpHeight)
|> extrude(length = bumpHeight)

View File

@ -1,11 +1,4 @@
[
{
"file": "main.kcl",
"pathFromProjectDirectoryToFirstFile": "3d-boaty/main.kcl",
"multipleFiles": true,
"title": "3D Boaty",
"description": "This is a slight remix of Depep1's original 3D Boaty (https://www.printables.com/model/1141963-3d-boaty). This is a tool used for benchmarking 3D FDM printers for bed adhesion, overhangs, bridging and top surface quality. The name of this file is a bit of misnomer, the shape of the object is a typical park bench."
},
{
"file": "main.kcl",
"pathFromProjectDirectoryToFirstFile": "80-20-rail/main.kcl",
@ -27,6 +20,13 @@
"title": "Ball Bearing",
"description": "A ball bearing is a type of rolling-element bearing that uses balls to maintain the separation between the bearing races. The primary purpose of a ball bearing is to reduce rotational friction and support radial and axial loads."
},
{
"file": "main.kcl",
"pathFromProjectDirectoryToFirstFile": "bench/main.kcl",
"multipleFiles": true,
"title": "Bench",
"description": "This is a slight remix of Depep1's original 3D Boaty (https://www.printables.com/model/1141963-3d-boaty). This is a tool used for benchmarking 3D FDM printers for bed adhesion, overhangs, bridging and top surface quality. The name of this file is a bit of misnomer, the shape of the object is a typical park bench."
},
{
"file": "main.kcl",
"pathFromProjectDirectoryToFirstFile": "bracket/main.kcl",
@ -78,18 +78,11 @@
},
{
"file": "main.kcl",
"pathFromProjectDirectoryToFirstFile": "flange-with-patterns/main.kcl",
"pathFromProjectDirectoryToFirstFile": "flange/main.kcl",
"multipleFiles": false,
"title": "Flange",
"description": "A flange is a flat rim, collar, or rib, typically forged or cast, that is used to strengthen an object, guide it, or attach it to another object. Flanges are known for their use in various applications, including piping, plumbing, and mechanical engineering, among others."
},
{
"file": "main.kcl",
"pathFromProjectDirectoryToFirstFile": "flange-xy/main.kcl",
"multipleFiles": false,
"title": "Flange with XY coordinates",
"description": "A flange is a flat rim, collar, or rib, typically forged or cast, that is used to strengthen an object, guide it, or attach it to another object. Flanges are known for their use in various applications, including piping, plumbing, and mechanical engineering, among others."
},
{
"file": "main.kcl",
"pathFromProjectDirectoryToFirstFile": "focusrite-scarlett-mounting-bracket/main.kcl",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 69 KiB

View File

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 KiB

After

Width:  |  Height:  |  Size: 216 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 KiB

After

Width:  |  Height:  |  Size: 113 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

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 it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -226,18 +226,11 @@ pub struct ImportedGeometry {
#[derive(Debug, Clone, Deserialize, Serialize, PartialEq, ts_rs::TS, JsonSchema)]
#[ts(export)]
#[serde(tag = "type", rename_all = "camelCase")]
#[allow(clippy::vec_box)]
pub enum SolidOrImportedGeometry {
Solid(Box<Solid>),
ImportedGeometry(Box<ImportedGeometry>),
}
impl SolidOrImportedGeometry {
pub fn id(&self) -> uuid::Uuid {
match self {
SolidOrImportedGeometry::Solid(s) => s.id,
SolidOrImportedGeometry::ImportedGeometry(s) => s.id,
}
}
SolidSet(Vec<Box<Solid>>),
}
impl From<SolidOrImportedGeometry> for crate::execution::KclValue {
@ -245,6 +238,17 @@ impl From<SolidOrImportedGeometry> for crate::execution::KclValue {
match value {
SolidOrImportedGeometry::Solid(s) => crate::execution::KclValue::Solid { value: s },
SolidOrImportedGeometry::ImportedGeometry(s) => crate::execution::KclValue::ImportedGeometry(*s),
SolidOrImportedGeometry::SolidSet(s) => crate::execution::KclValue::Solids { value: s },
}
}
}
impl SolidOrImportedGeometry {
pub(crate) fn ids(&self) -> Vec<uuid::Uuid> {
match self {
SolidOrImportedGeometry::Solid(s) => vec![s.id],
SolidOrImportedGeometry::ImportedGeometry(s) => vec![s.id],
SolidOrImportedGeometry::SolidSet(s) => s.iter().map(|s| s.id).collect(),
}
}
}

View File

@ -1338,6 +1338,7 @@ impl<'a> FromKclValue<'a> for crate::execution::SolidOrImportedGeometry {
fn from_kcl_val(arg: &'a KclValue) -> Option<Self> {
match arg {
KclValue::Solid { value } => Some(Self::Solid(value.clone())),
KclValue::Solids { value } => Some(Self::SolidSet(value.clone())),
KclValue::ImportedGeometry(value) => Some(Self::ImportedGeometry(Box::new(value.clone()))),
_ => None,
}

View File

@ -24,12 +24,12 @@ pub enum SweepPath {
/// Extrude a sketch along a path.
pub async fn sweep(exec_state: &mut ExecState, args: Args) -> Result<KclValue, KclError> {
let sketch = args.get_unlabeled_kw_arg("sketch")?;
let sketch_set = args.get_unlabeled_kw_arg("sketch_set")?;
let path: SweepPath = args.get_kw_arg("path")?;
let sectional = args.get_kw_arg_opt("sectional")?;
let tolerance = args.get_kw_arg_opt("tolerance")?;
let value = inner_sweep(sketch, path, sectional, tolerance, exec_state, args).await?;
let value = inner_sweep(sketch_set, path, sectional, tolerance, exec_state, args).await?;
Ok(value.into())
}

View File

@ -19,11 +19,11 @@ use crate::{
/// Scale a solid.
pub async fn scale(exec_state: &mut ExecState, args: Args) -> Result<KclValue, KclError> {
let solid = args.get_unlabeled_kw_arg("solid")?;
let solid_set = args.get_unlabeled_kw_arg("solid_set")?;
let scale = args.get_kw_arg("scale")?;
let global = args.get_kw_arg_opt("global")?;
let solid = inner_scale(solid, scale, global, exec_state, args).await?;
let solid = inner_scale(solid_set, scale, global, exec_state, args).await?;
Ok(solid.into())
}
@ -84,58 +84,94 @@ pub async fn scale(exec_state: &mut ExecState, args: Args) -> Result<KclValue, K
/// scale = [1.0, 1.0, 2.5],
/// )
/// ```
///
/// ```
/// // Sweep two sketches along the same path.
///
/// sketch001 = startSketchOn('XY')
/// rectangleSketch = startProfileAt([-200, 23.86], sketch001)
/// |> angledLine([0, 73.47], %, $rectangleSegmentA001)
/// |> angledLine([
/// segAng(rectangleSegmentA001) - 90,
/// 50.61
/// ], %)
/// |> angledLine([
/// segAng(rectangleSegmentA001),
/// -segLen(rectangleSegmentA001)
/// ], %)
/// |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
/// |> close()
///
/// circleSketch = circle(sketch001, center = [200, -30.29], radius = 32.63)
///
/// sketch002 = startSketchOn('YZ')
/// sweepPath = startProfileAt([0, 0], sketch002)
/// |> yLine(length = 231.81)
/// |> tangentialArc({
/// radius = 80,
/// offset = -90,
/// }, %)
/// |> xLine(length = 384.93)
///
/// parts = sweep([rectangleSketch, circleSketch], path = sweepPath)
///
/// // Scale the sweep.
/// scale(parts, scale = [1.0, 1.0, 0.5])
/// ```
#[stdlib {
name = "scale",
feature_tree_operation = false,
keywords = true,
unlabeled_first = true,
args = {
solid = {docs = "The solid to scale."},
solid_set = {docs = "The solid or set of solids to scale."},
scale = {docs = "The scale factor for the x, y, and z axes."},
global = {docs = "If true, the transform is applied in global space. The origin of the model will move. By default, the transform is applied in local sketch axis, therefore the origin will not move."}
}
}]
async fn inner_scale(
solid: SolidOrImportedGeometry,
solid_set: SolidOrImportedGeometry,
scale: [f64; 3],
global: Option<bool>,
exec_state: &mut ExecState,
args: Args,
) -> Result<SolidOrImportedGeometry, KclError> {
let id = exec_state.next_uuid();
for solid_id in solid_set.ids() {
let id = exec_state.next_uuid();
args.batch_modeling_cmd(
id,
ModelingCmd::from(mcmd::SetObjectTransform {
object_id: solid.id(),
transforms: vec![shared::ComponentTransform {
scale: Some(shared::TransformBy::<Point3d<f64>> {
property: Point3d {
x: scale[0],
y: scale[1],
z: scale[2],
},
set: false,
is_local: !global.unwrap_or(false),
}),
translate: None,
rotate_rpy: None,
rotate_angle_axis: None,
}],
}),
)
.await?;
args.batch_modeling_cmd(
id,
ModelingCmd::from(mcmd::SetObjectTransform {
object_id: solid_id,
transforms: vec![shared::ComponentTransform {
scale: Some(shared::TransformBy::<Point3d<f64>> {
property: Point3d {
x: scale[0],
y: scale[1],
z: scale[2],
},
set: false,
is_local: !global.unwrap_or(false),
}),
translate: None,
rotate_rpy: None,
rotate_angle_axis: None,
}],
}),
)
.await?;
}
Ok(solid)
Ok(solid_set)
}
/// Move a solid.
pub async fn translate(exec_state: &mut ExecState, args: Args) -> Result<KclValue, KclError> {
let solid = args.get_unlabeled_kw_arg("solid")?;
let solid_set = args.get_unlabeled_kw_arg("solid_set")?;
let translate = args.get_kw_arg("translate")?;
let global = args.get_kw_arg_opt("global")?;
let solid = inner_translate(solid, translate, global, exec_state, args).await?;
let solid = inner_translate(solid_set, translate, global, exec_state, args).await?;
Ok(solid.into())
}
@ -188,54 +224,90 @@ pub async fn translate(exec_state: &mut ExecState, args: Args) -> Result<KclValu
/// translate = [1.0, 1.0, 2.5],
/// )
/// ```
///
/// ```
/// // Sweep two sketches along the same path.
///
/// sketch001 = startSketchOn('XY')
/// rectangleSketch = startProfileAt([-200, 23.86], sketch001)
/// |> angledLine([0, 73.47], %, $rectangleSegmentA001)
/// |> angledLine([
/// segAng(rectangleSegmentA001) - 90,
/// 50.61
/// ], %)
/// |> angledLine([
/// segAng(rectangleSegmentA001),
/// -segLen(rectangleSegmentA001)
/// ], %)
/// |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
/// |> close()
///
/// circleSketch = circle(sketch001, center = [200, -30.29], radius = 32.63)
///
/// sketch002 = startSketchOn('YZ')
/// sweepPath = startProfileAt([0, 0], sketch002)
/// |> yLine(length = 231.81)
/// |> tangentialArc({
/// radius = 80,
/// offset = -90,
/// }, %)
/// |> xLine(length = 384.93)
///
/// parts = sweep([rectangleSketch, circleSketch], path = sweepPath)
///
/// // Move the sweeps.
/// translate(parts, translate = [1.0, 1.0, 2.5])
/// ```
#[stdlib {
name = "translate",
feature_tree_operation = false,
keywords = true,
unlabeled_first = true,
args = {
solid = {docs = "The solid to move."},
solid_set = {docs = "The solid or set of solids to move."},
translate = {docs = "The amount to move the solid in all three axes."},
global = {docs = "If true, the transform is applied in global space. The origin of the model will move. By default, the transform is applied in local sketch axis, therefore the origin will not move."}
}
}]
async fn inner_translate(
solid: SolidOrImportedGeometry,
solid_set: SolidOrImportedGeometry,
translate: [f64; 3],
global: Option<bool>,
exec_state: &mut ExecState,
args: Args,
) -> Result<SolidOrImportedGeometry, KclError> {
let id = exec_state.next_uuid();
for solid_id in solid_set.ids() {
let id = exec_state.next_uuid();
args.batch_modeling_cmd(
id,
ModelingCmd::from(mcmd::SetObjectTransform {
object_id: solid.id(),
transforms: vec![shared::ComponentTransform {
translate: Some(shared::TransformBy::<Point3d<LengthUnit>> {
property: shared::Point3d {
x: LengthUnit(translate[0]),
y: LengthUnit(translate[1]),
z: LengthUnit(translate[2]),
},
set: false,
is_local: !global.unwrap_or(false),
}),
scale: None,
rotate_rpy: None,
rotate_angle_axis: None,
}],
}),
)
.await?;
args.batch_modeling_cmd(
id,
ModelingCmd::from(mcmd::SetObjectTransform {
object_id: solid_id,
transforms: vec![shared::ComponentTransform {
translate: Some(shared::TransformBy::<Point3d<LengthUnit>> {
property: shared::Point3d {
x: LengthUnit(translate[0]),
y: LengthUnit(translate[1]),
z: LengthUnit(translate[2]),
},
set: false,
is_local: !global.unwrap_or(false),
}),
scale: None,
rotate_rpy: None,
rotate_angle_axis: None,
}],
}),
)
.await?;
}
Ok(solid)
Ok(solid_set)
}
/// Rotate a solid.
pub async fn rotate(exec_state: &mut ExecState, args: Args) -> Result<KclValue, KclError> {
let solid = args.get_unlabeled_kw_arg("solid")?;
let solid_set = args.get_unlabeled_kw_arg("solid_set")?;
let roll = args.get_kw_arg_opt("roll")?;
let pitch = args.get_kw_arg_opt("pitch")?;
let yaw = args.get_kw_arg_opt("yaw")?;
@ -343,7 +415,7 @@ pub async fn rotate(exec_state: &mut ExecState, args: Args) -> Result<KclValue,
}
}
let solid = inner_rotate(solid, roll, pitch, yaw, axis, angle, global, exec_state, args).await?;
let solid = inner_rotate(solid_set, roll, pitch, yaw, axis, angle, global, exec_state, args).await?;
Ok(solid.into())
}
@ -459,13 +531,47 @@ pub async fn rotate(exec_state: &mut ExecState, args: Args) -> Result<KclValue,
/// angle = 90,
/// )
/// ```
///
/// ```
/// // Sweep two sketches along the same path.
///
/// sketch001 = startSketchOn('XY')
/// rectangleSketch = startProfileAt([-200, 23.86], sketch001)
/// |> angledLine([0, 73.47], %, $rectangleSegmentA001)
/// |> angledLine([
/// segAng(rectangleSegmentA001) - 90,
/// 50.61
/// ], %)
/// |> angledLine([
/// segAng(rectangleSegmentA001),
/// -segLen(rectangleSegmentA001)
/// ], %)
/// |> line(endAbsolute = [profileStartX(%), profileStartY(%)])
/// |> close()
///
/// circleSketch = circle(sketch001, center = [200, -30.29], radius = 32.63)
///
/// sketch002 = startSketchOn('YZ')
/// sweepPath = startProfileAt([0, 0], sketch002)
/// |> yLine(length = 231.81)
/// |> tangentialArc({
/// radius = 80,
/// offset = -90,
/// }, %)
/// |> xLine(length = 384.93)
///
/// parts = sweep([rectangleSketch, circleSketch], path = sweepPath)
///
/// // Rotate the sweeps.
/// rotate(parts, axis = [0, 0, 1.0], angle = 90)
/// ```
#[stdlib {
name = "rotate",
feature_tree_operation = false,
keywords = true,
unlabeled_first = true,
args = {
solid = {docs = "The solid to rotate."},
solid_set = {docs = "The solid or set of solids to rotate."},
roll = {docs = "The roll angle in degrees. Must be used with `pitch` and `yaw`. Must be between -360 and 360.", include_in_snippet = true},
pitch = {docs = "The pitch angle in degrees. Must be used with `roll` and `yaw`. Must be between -360 and 360.", include_in_snippet = true},
yaw = {docs = "The yaw angle in degrees. Must be used with `roll` and `pitch`. Must be between -360 and 360.", include_in_snippet = true},
@ -476,7 +582,7 @@ pub async fn rotate(exec_state: &mut ExecState, args: Args) -> Result<KclValue,
}]
#[allow(clippy::too_many_arguments)]
async fn inner_rotate(
solid: SolidOrImportedGeometry,
solid_set: SolidOrImportedGeometry,
roll: Option<f64>,
pitch: Option<f64>,
yaw: Option<f64>,
@ -486,58 +592,60 @@ async fn inner_rotate(
exec_state: &mut ExecState,
args: Args,
) -> Result<SolidOrImportedGeometry, KclError> {
let id = exec_state.next_uuid();
for solid_id in solid_set.ids() {
let id = exec_state.next_uuid();
if let (Some(roll), Some(pitch), Some(yaw)) = (roll, pitch, yaw) {
args.batch_modeling_cmd(
id,
ModelingCmd::from(mcmd::SetObjectTransform {
object_id: solid.id(),
transforms: vec![shared::ComponentTransform {
rotate_rpy: Some(shared::TransformBy::<Point3d<f64>> {
property: shared::Point3d {
x: roll,
y: pitch,
z: yaw,
},
set: false,
is_local: !global.unwrap_or(false),
}),
scale: None,
rotate_angle_axis: None,
translate: None,
}],
}),
)
.await?;
if let (Some(roll), Some(pitch), Some(yaw)) = (roll, pitch, yaw) {
args.batch_modeling_cmd(
id,
ModelingCmd::from(mcmd::SetObjectTransform {
object_id: solid_id,
transforms: vec![shared::ComponentTransform {
rotate_rpy: Some(shared::TransformBy::<Point3d<f64>> {
property: shared::Point3d {
x: roll,
y: pitch,
z: yaw,
},
set: false,
is_local: !global.unwrap_or(false),
}),
scale: None,
rotate_angle_axis: None,
translate: None,
}],
}),
)
.await?;
}
if let (Some(axis), Some(angle)) = (axis, angle) {
args.batch_modeling_cmd(
id,
ModelingCmd::from(mcmd::SetObjectTransform {
object_id: solid_id,
transforms: vec![shared::ComponentTransform {
rotate_angle_axis: Some(shared::TransformBy::<Point4d<f64>> {
property: shared::Point4d {
x: axis[0],
y: axis[1],
z: axis[2],
w: angle,
},
set: false,
is_local: !global.unwrap_or(false),
}),
scale: None,
rotate_rpy: None,
translate: None,
}],
}),
)
.await?;
}
}
if let (Some(axis), Some(angle)) = (axis, angle) {
args.batch_modeling_cmd(
id,
ModelingCmd::from(mcmd::SetObjectTransform {
object_id: solid.id(),
transforms: vec![shared::ComponentTransform {
rotate_angle_axis: Some(shared::TransformBy::<Point4d<f64>> {
property: shared::Point4d {
x: axis[0],
y: axis[1],
z: axis[2],
w: angle,
},
set: false,
is_local: !global.unwrap_or(false),
}),
scale: None,
rotate_rpy: None,
translate: None,
}],
}),
)
.await?;
}
Ok(solid)
Ok(solid_set)
}
#[cfg(test)]

View File

@ -1,197 +1,131 @@
```mermaid
flowchart LR
subgraph path2 [Path]
2["Path<br>[966, 1010, 0]"]
3["Segment<br>[1016, 1060, 0]"]
4["Segment<br>[1066, 1109, 0]"]
5["Segment<br>[1115, 1159, 0]"]
6["Segment<br>[1165, 1172, 0]"]
2["Path<br>[971, 1015, 0]"]
3["Segment<br>[1021, 1065, 0]"]
4["Segment<br>[1071, 1114, 0]"]
5["Segment<br>[1120, 1164, 0]"]
6["Segment<br>[1170, 1177, 0]"]
7[Solid2d]
end
subgraph path8 [Path]
8["Path<br>[1183, 1331, 0]"]
9["Segment<br>[1183, 1331, 0]"]
10[Solid2d]
subgraph path23 [Path]
23["Path<br>[1262, 1406, 0]"]
24["Segment<br>[1262, 1406, 0]"]
25[Solid2d]
end
subgraph path11 [Path]
11["Path<br>[1346, 1491, 0]"]
12["Segment<br>[1346, 1491, 0]"]
13[Solid2d]
subgraph path34 [Path]
34["Path<br>[1706, 1862, 0]"]
35["Segment<br>[1706, 1862, 0]"]
36[Solid2d]
end
subgraph path14 [Path]
14["Path<br>[1506, 1648, 0]"]
15["Segment<br>[1506, 1648, 0]"]
16[Solid2d]
subgraph path44 [Path]
44["Path<br>[2165, 2230, 0]"]
45["Segment<br>[2165, 2230, 0]"]
46[Solid2d]
end
subgraph path17 [Path]
17["Path<br>[1663, 1808, 0]"]
18["Segment<br>[1663, 1808, 0]"]
19[Solid2d]
end
subgraph path20 [Path]
20["Path<br>[1823, 1892, 0]"]
21["Segment<br>[1823, 1892, 0]"]
22[Solid2d]
end
subgraph path39 [Path]
39["Path<br>[2455, 2499, 0]"]
40["Segment<br>[2505, 2549, 0]"]
41["Segment<br>[2555, 2598, 0]"]
42["Segment<br>[2604, 2648, 0]"]
43["Segment<br>[2654, 2661, 0]"]
44[Solid2d]
end
subgraph path45 [Path]
45["Path<br>[2672, 2818, 0]"]
46["Segment<br>[2672, 2818, 0]"]
47[Solid2d]
end
subgraph path48 [Path]
48["Path<br>[2833, 2976, 0]"]
49["Segment<br>[2833, 2976, 0]"]
50[Solid2d]
end
subgraph path51 [Path]
51["Path<br>[2991, 3131, 0]"]
52["Segment<br>[2991, 3131, 0]"]
53[Solid2d]
end
subgraph path54 [Path]
54["Path<br>[3146, 3289, 0]"]
55["Segment<br>[3146, 3289, 0]"]
56[Solid2d]
end
subgraph path57 [Path]
57["Path<br>[3304, 3373, 0]"]
58["Segment<br>[3304, 3373, 0]"]
59[Solid2d]
end
1["Plane<br>[941, 960, 0]"]
23["Sweep Extrusion<br>[1902, 1936, 0]"]
24[Wall]
25[Wall]
26[Wall]
1["Plane<br>[946, 965, 0]"]
8["Sweep Extrusion<br>[1183, 1207, 0]"]
9[Wall]
10[Wall]
11[Wall]
12[Wall]
13["Cap Start"]
14["Cap End"]
15["SweepEdge Opposite"]
16["SweepEdge Adjacent"]
17["SweepEdge Opposite"]
18["SweepEdge Adjacent"]
19["SweepEdge Opposite"]
20["SweepEdge Adjacent"]
21["SweepEdge Opposite"]
22["SweepEdge Adjacent"]
26["Sweep Extrusion<br>[1622, 1651, 0]"]
27[Wall]
28["Cap Start"]
29["Cap End"]
30["SweepEdge Opposite"]
31["SweepEdge Adjacent"]
32["SweepEdge Opposite"]
33["SweepEdge Adjacent"]
34["SweepEdge Opposite"]
35["SweepEdge Adjacent"]
36["SweepEdge Opposite"]
37["SweepEdge Adjacent"]
38["Plane<br>[2217, 2449, 0]"]
60["Sweep Extrusion<br>[3383, 3408, 0]"]
61[Wall]
62[Wall]
63[Wall]
64[Wall]
65["Cap Start"]
66["Cap End"]
67["SweepEdge Opposite"]
68["SweepEdge Adjacent"]
69["SweepEdge Opposite"]
70["SweepEdge Adjacent"]
71["SweepEdge Opposite"]
72["SweepEdge Adjacent"]
73["SweepEdge Opposite"]
74["SweepEdge Adjacent"]
29["SweepEdge Opposite"]
30["SweepEdge Adjacent"]
31["Sweep Extrusion<br>[1622, 1651, 0]"]
32["Sweep Extrusion<br>[1622, 1651, 0]"]
33["Sweep Extrusion<br>[1622, 1651, 0]"]
37["Sweep Extrusion<br>[2077, 2112, 0]"]
38[Wall]
39["SweepEdge Opposite"]
40["SweepEdge Adjacent"]
41["Sweep Extrusion<br>[2077, 2112, 0]"]
42["Sweep Extrusion<br>[2077, 2112, 0]"]
43["Sweep Extrusion<br>[2077, 2112, 0]"]
47["Sweep Extrusion<br>[2236, 2261, 0]"]
48[Wall]
49["SweepEdge Opposite"]
50["SweepEdge Adjacent"]
51["StartSketchOnFace<br>[1224, 1256, 0]"]
52["StartSketchOnFace<br>[1666, 1700, 0]"]
53["StartSketchOnFace<br>[2127, 2159, 0]"]
1 --- 2
1 --- 8
1 --- 11
1 --- 14
1 --- 17
1 --- 20
2 --- 3
2 --- 4
2 --- 5
2 --- 6
2 ---- 23
2 ---- 8
2 --- 7
3 --- 24
3 --- 30
3 --- 31
4 --- 25
4 --- 32
4 --- 33
5 --- 26
5 --- 34
5 --- 35
6 --- 27
6 --- 36
6 --- 37
3 --- 9
3 --- 15
3 --- 16
4 --- 10
4 --- 17
4 --- 18
5 --- 11
5 --- 19
5 --- 20
6 --- 12
6 --- 21
6 --- 22
8 --- 9
8 --- 10
11 --- 12
11 --- 13
14 --- 15
14 --- 16
17 --- 18
17 --- 19
20 --- 21
20 --- 22
8 --- 11
8 --- 12
8 --- 13
8 --- 14
8 --- 15
8 --- 16
8 --- 17
8 --- 18
8 --- 19
8 --- 20
8 --- 21
8 --- 22
13 --- 34
14 --- 23
14 --- 44
23 --- 24
23 ---- 26
23 --- 25
23 --- 26
23 --- 27
23 --- 28
23 --- 29
23 --- 30
23 --- 31
23 --- 32
23 --- 33
23 --- 34
23 --- 35
23 --- 36
23 --- 37
38 --- 39
38 --- 45
38 --- 48
38 --- 51
38 --- 54
38 --- 57
39 --- 40
39 --- 41
39 --- 42
39 --- 43
39 ---- 60
39 --- 44
40 --- 61
40 --- 67
40 --- 68
41 --- 62
41 --- 69
41 --- 70
42 --- 63
42 --- 71
42 --- 72
43 --- 64
43 --- 73
43 --- 74
45 --- 46
45 --- 47
48 --- 49
48 --- 50
51 --- 52
51 --- 53
54 --- 55
54 --- 56
57 --- 58
57 --- 59
60 --- 61
60 --- 62
60 --- 63
60 --- 64
60 --- 65
60 --- 66
60 --- 67
60 --- 68
60 --- 69
60 --- 70
60 --- 71
60 --- 72
60 --- 73
60 --- 74
24 --- 27
24 --- 29
24 --- 30
26 --- 27
26 --- 28
26 --- 29
26 --- 30
34 --- 35
34 ---- 37
34 --- 36
35 --- 38
35 --- 39
35 --- 40
37 --- 38
37 --- 39
37 --- 40
44 --- 45
44 ---- 47
44 --- 46
45 --- 48
45 --- 49
45 --- 50
47 --- 48
47 --- 49
47 --- 50
14 <--x 51
13 <--x 52
14 <--x 53
```

File diff suppressed because one or more lines are too long

View File

@ -11,206 +11,16 @@ description: Operations executed a-parametric-bearing-pillow-block.kcl
"value": "XY"
},
"sourceRange": [
955,
959,
960,
964,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
941,
960,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1183,
1331,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1333,
1334,
0
]
}
},
"name": "hole",
"sourceRange": [
1178,
1335,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1346,
1491,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1493,
1494,
0
]
}
},
"name": "hole",
"sourceRange": [
1341,
1495,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1506,
1648,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1650,
1651,
0
]
}
},
"name": "hole",
"sourceRange": [
1501,
1652,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1663,
1808,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1810,
1811,
0
]
}
},
"name": "hole",
"sourceRange": [
1658,
1812,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1823,
1892,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1894,
1895,
0
]
}
},
"name": "hole",
"sourceRange": [
1818,
1896,
946,
965,
0
],
"type": "StdLibCall",
@ -221,7 +31,7 @@ description: Operations executed a-parametric-bearing-pillow-block.kcl
"length": {
"value": {
"type": "Number",
"value": 0.75,
"value": 1.0,
"ty": {
"type": "Default",
"len": {
@ -233,16 +43,16 @@ description: Operations executed a-parametric-bearing-pillow-block.kcl
}
},
"sourceRange": [
1919,
1935,
1200,
1206,
0
]
}
},
"name": "extrude",
"sourceRange": [
1902,
1936,
1183,
1207,
0
],
"type": "StdLibCall",
@ -254,8 +64,8 @@ description: Operations executed a-parametric-bearing-pillow-block.kcl
}
},
"sourceRange": [
1902,
1936,
1183,
1207,
0
]
}
@ -264,392 +74,33 @@ description: Operations executed a-parametric-bearing-pillow-block.kcl
"labeledArgs": {
"data": {
"value": {
"type": "Object",
"type": "Solid",
"value": {
"plane": {
"type": "Object",
"value": {
"origin": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.75,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"xAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"yAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"zAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
}
}
}
"artifactId": "[uuid]"
}
},
"sourceRange": [
2231,
2448,
1238,
1248,
0
]
},
"tag": {
"value": {
"type": "String",
"value": "end"
},
"sourceRange": [
1250,
1255,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
2217,
2449,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2672,
2818,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2820,
2821,
0
]
}
},
"name": "hole",
"sourceRange": [
2667,
2822,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2833,
2976,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2978,
2979,
0
]
}
},
"name": "hole",
"sourceRange": [
2828,
2980,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2991,
3131,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
3133,
3134,
0
]
}
},
"name": "hole",
"sourceRange": [
2986,
3135,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
3146,
3289,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
3291,
3292,
0
]
}
},
"name": "hole",
"sourceRange": [
3141,
3293,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
3304,
3373,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
3375,
3376,
0
]
}
},
"name": "hole",
"sourceRange": [
3299,
3377,
1224,
1256,
0
],
"type": "StdLibCall",
@ -660,7 +111,7 @@ description: Operations executed a-parametric-bearing-pillow-block.kcl
"length": {
"value": {
"type": "Number",
"value": 0.25,
"value": -0.25,
"ty": {
"type": "Default",
"len": {
@ -672,16 +123,198 @@ description: Operations executed a-parametric-bearing-pillow-block.kcl
}
},
"sourceRange": [
3400,
3407,
1642,
1650,
0
]
}
},
"name": "extrude",
"sourceRange": [
3383,
3408,
1622,
1651,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketches",
"value": [
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
}
]
},
"sourceRange": [
1630,
1631,
0
]
}
},
{
"labeledArgs": {
"data": {
"value": {
"type": "Solid",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1680,
1690,
0
]
},
"tag": {
"value": {
"type": "String",
"value": "start"
},
"sourceRange": [
1692,
1699,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1666,
1700,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": -0.75,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
2094,
2111,
0
]
}
},
"name": "extrude",
"sourceRange": [
2077,
2112,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketches",
"value": [
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
}
]
},
"sourceRange": [
2077,
2112,
0
]
}
},
{
"labeledArgs": {
"data": {
"value": {
"type": "Solid",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2141,
2151,
0
]
},
"tag": {
"value": {
"type": "String",
"value": "end"
},
"sourceRange": [
2153,
2158,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
2127,
2159,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": -1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
2253,
2260,
0
]
}
},
"name": "extrude",
"sourceRange": [
2236,
2261,
0
],
"type": "StdLibCall",
@ -693,8 +326,8 @@ description: Operations executed a-parametric-bearing-pillow-block.kcl
}
},
"sourceRange": [
3383,
3408,
2236,
2261,
0
]
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 69 KiB

View File

@ -1,58 +1,58 @@
```mermaid
flowchart LR
subgraph path2 [Path]
2["Path<br>[920, 1003, 0]"]
3["Segment<br>[920, 1003, 0]"]
2["Path<br>[733, 816, 0]"]
3["Segment<br>[733, 816, 0]"]
4[Solid2d]
end
subgraph path5 [Path]
5["Path<br>[1014, 1081, 0]"]
6["Segment<br>[1014, 1081, 0]"]
5["Path<br>[827, 894, 0]"]
6["Segment<br>[827, 894, 0]"]
7[Solid2d]
end
subgraph path15 [Path]
15["Path<br>[1270, 1326, 0]"]
16["Segment<br>[1332, 1424, 0]"]
17["Segment<br>[1430, 1437, 0]"]
15["Path<br>[1083, 1139, 0]"]
16["Segment<br>[1145, 1237, 0]"]
17["Segment<br>[1243, 1250, 0]"]
18[Solid2d]
end
subgraph path24 [Path]
24["Path<br>[1814, 1947, 0]"]
25["Segment<br>[1953, 2046, 0]"]
26["Segment<br>[2052, 2083, 0]"]
27["Segment<br>[2089, 2117, 0]"]
28["Segment<br>[2123, 2130, 0]"]
24["Path<br>[1627, 1760, 0]"]
25["Segment<br>[1766, 1859, 0]"]
26["Segment<br>[1865, 1896, 0]"]
27["Segment<br>[1902, 1930, 0]"]
28["Segment<br>[1936, 1943, 0]"]
29[Solid2d]
end
subgraph path40 [Path]
40["Path<br>[2471, 2612, 0]"]
41["Segment<br>[2471, 2612, 0]"]
40["Path<br>[2284, 2425, 0]"]
41["Segment<br>[2284, 2425, 0]"]
42[Solid2d]
end
subgraph path50 [Path]
50["Path<br>[2975, 3049, 0]"]
51["Segment<br>[2975, 3049, 0]"]
50["Path<br>[2826, 2900, 0]"]
51["Segment<br>[2826, 2900, 0]"]
52[Solid2d]
end
subgraph path53 [Path]
53["Path<br>[3060, 3155, 0]"]
54["Segment<br>[3060, 3155, 0]"]
53["Path<br>[2911, 3006, 0]"]
54["Segment<br>[2911, 3006, 0]"]
55[Solid2d]
end
1["Plane<br>[888, 914, 0]"]
8["Sweep Extrusion<br>[1136, 1188, 0]"]
1["Plane<br>[677, 726, 0]"]
8["Sweep Extrusion<br>[949, 1001, 0]"]
9[Wall]
10["Cap Start"]
11["Cap End"]
12["SweepEdge Opposite"]
13["SweepEdge Adjacent"]
14["Plane<br>[1245, 1264, 0]"]
19["Sweep Revolve<br>[1519, 1555, 0]"]
14["Plane<br>[1058, 1077, 0]"]
19["Sweep Revolve<br>[1332, 1368, 0]"]
20[Wall]
21[Wall]
22["SweepEdge Adjacent"]
23["Plane<br>[1789, 1808, 0]"]
30["Sweep Revolve<br>[2172, 2208, 0]"]
23["Plane<br>[1602, 1621, 0]"]
30["Sweep Revolve<br>[1985, 2021, 0]"]
31[Wall]
32[Wall]
33[Wall]
@ -61,20 +61,22 @@ flowchart LR
36["SweepEdge Adjacent"]
37["SweepEdge Adjacent"]
38["SweepEdge Adjacent"]
39["Plane<br>[2446, 2465, 0]"]
43["Sweep Revolve<br>[2655, 2712, 0]"]
39["Plane<br>[2259, 2278, 0]"]
43["Sweep Revolve<br>[2468, 2525, 0]"]
44[Wall]
45["Cap Start"]
46["Cap End"]
47["SweepEdge Opposite"]
48["SweepEdge Adjacent"]
49["Plane<br>[2943, 2969, 0]"]
56["Sweep Extrusion<br>[3175, 3228, 0]"]
49["Plane<br>[2770, 2819, 0]"]
56["Sweep Extrusion<br>[3026, 3079, 0]"]
57[Wall]
58["Cap Start"]
59["Cap End"]
60["SweepEdge Opposite"]
61["SweepEdge Adjacent"]
62["StartSketchOnPlane<br>[663, 727, 0]"]
63["StartSketchOnPlane<br>[2756, 2820, 0]"]
1 --- 2
1 --- 5
2 --- 3
@ -158,4 +160,6 @@ flowchart LR
56 --- 59
56 --- 60
56 --- 61
1 <--x 62
49 <--x 63
```

File diff suppressed because it is too large Load Diff

View File

@ -5,198 +5,58 @@ description: Operations executed ball-bearing.kcl
[
{
"labeledArgs": {
"data": {
"offset": {
"value": {
"type": "Object",
"value": {
"plane": {
"type": "Object",
"value": {
"origin": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": -0.1565,
"ty": {
"type": "Unknown"
}
}
}
},
"xAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"yAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"zAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
}
}
}
"type": "Number",
"value": -0.1565,
"ty": {
"type": "Unknown"
}
},
"sourceRange": [
902,
913,
704,
725,
0
]
}
},
"name": "offsetPlane",
"sourceRange": [
677,
726,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "String",
"value": "XY"
},
"sourceRange": [
689,
693,
0
]
}
},
{
"labeledArgs": {
"data": {
"value": {
"type": "Plane",
"artifact_id": "[uuid]"
},
"sourceRange": [
677,
726,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
888,
914,
663,
727,
0
],
"type": "StdLibCall",
@ -212,8 +72,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
1014,
1081,
827,
894,
0
]
},
@ -225,16 +85,16 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
1083,
1084,
896,
897,
0
]
}
},
"name": "hole",
"sourceRange": [
1009,
1085,
822,
898,
0
],
"type": "StdLibCall",
@ -257,16 +117,16 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
1171,
1187,
984,
1000,
0
]
}
},
"name": "extrude",
"sourceRange": [
1136,
1188,
949,
1001,
0
],
"type": "StdLibCall",
@ -278,8 +138,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
1144,
1160,
957,
973,
0
]
}
@ -292,16 +152,16 @@ description: Operations executed ball-bearing.kcl
"value": "XY"
},
"sourceRange": [
1259,
1263,
1072,
1076,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1245,
1264,
1058,
1077,
0
],
"type": "StdLibCall",
@ -320,8 +180,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
1527,
1541,
1340,
1354,
0
]
},
@ -333,16 +193,16 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
1543,
1554,
1356,
1367,
0
]
}
},
"name": "revolve",
"sourceRange": [
1519,
1555,
1332,
1368,
0
],
"type": "StdLibCall",
@ -365,8 +225,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
1600,
1603,
1413,
1416,
0
]
},
@ -416,8 +276,8 @@ description: Operations executed ball-bearing.kcl
]
},
"sourceRange": [
1619,
1628,
1432,
1441,
0
]
},
@ -467,8 +327,8 @@ description: Operations executed ball-bearing.kcl
]
},
"sourceRange": [
1646,
1655,
1459,
1468,
0
]
},
@ -487,8 +347,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
1676,
1682,
1489,
1495,
0
]
},
@ -498,16 +358,16 @@ description: Operations executed ball-bearing.kcl
"value": true
},
"sourceRange": [
1710,
1714,
1523,
1527,
0
]
}
},
"name": "patternCircular3d",
"sourceRange": [
1561,
1721,
1374,
1534,
0
],
"type": "StdLibCall",
@ -519,8 +379,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
1561,
1721,
1374,
1534,
0
]
}
@ -533,16 +393,16 @@ description: Operations executed ball-bearing.kcl
"value": "XY"
},
"sourceRange": [
1803,
1807,
1616,
1620,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1789,
1808,
1602,
1621,
0
],
"type": "StdLibCall",
@ -559,8 +419,8 @@ description: Operations executed ball-bearing.kcl
"unlabeledArg": null,
"labeledArgs": {},
"sourceRange": [
1918,
1936,
1731,
1749,
0
]
},
@ -580,8 +440,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
2180,
2194,
1993,
2007,
0
]
},
@ -593,16 +453,16 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
2196,
2207,
2009,
2020,
0
]
}
},
"name": "revolve",
"sourceRange": [
2172,
2208,
1985,
2021,
0
],
"type": "StdLibCall",
@ -625,8 +485,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
2253,
2256,
2066,
2069,
0
]
},
@ -676,8 +536,8 @@ description: Operations executed ball-bearing.kcl
]
},
"sourceRange": [
2272,
2281,
2085,
2094,
0
]
},
@ -727,8 +587,8 @@ description: Operations executed ball-bearing.kcl
]
},
"sourceRange": [
2299,
2308,
2112,
2121,
0
]
},
@ -747,8 +607,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
2329,
2335,
2142,
2148,
0
]
},
@ -758,16 +618,16 @@ description: Operations executed ball-bearing.kcl
"value": true
},
"sourceRange": [
2363,
2367,
2176,
2180,
0
]
}
},
"name": "patternCircular3d",
"sourceRange": [
2214,
2374,
2027,
2187,
0
],
"type": "StdLibCall",
@ -779,8 +639,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
2214,
2374,
2027,
2187,
0
]
}
@ -793,16 +653,16 @@ description: Operations executed ball-bearing.kcl
"value": "XZ"
},
"sourceRange": [
2460,
2464,
2273,
2277,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
2446,
2465,
2259,
2278,
0
],
"type": "StdLibCall",
@ -828,8 +688,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
2663,
2699,
2476,
2512,
0
]
},
@ -841,16 +701,16 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
2701,
2711,
2514,
2524,
0
]
}
},
"name": "revolve",
"sourceRange": [
2655,
2712,
2468,
2525,
0
],
"type": "StdLibCall",
@ -873,8 +733,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
2757,
2760,
2570,
2573,
0
]
},
@ -924,8 +784,8 @@ description: Operations executed ball-bearing.kcl
]
},
"sourceRange": [
2776,
2785,
2589,
2598,
0
]
},
@ -975,8 +835,8 @@ description: Operations executed ball-bearing.kcl
]
},
"sourceRange": [
2803,
2812,
2616,
2625,
0
]
},
@ -995,8 +855,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
2833,
2839,
2646,
2652,
0
]
},
@ -1006,16 +866,16 @@ description: Operations executed ball-bearing.kcl
"value": true
},
"sourceRange": [
2867,
2871,
2680,
2684,
0
]
}
},
"name": "patternCircular3d",
"sourceRange": [
2718,
2878,
2531,
2691,
0
],
"type": "StdLibCall",
@ -1027,8 +887,44 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
2718,
2878,
2531,
2691,
0
]
}
},
{
"labeledArgs": {
"offset": {
"value": {
"type": "Number",
"value": -0.1565,
"ty": {
"type": "Unknown"
}
},
"sourceRange": [
2797,
2818,
0
]
}
},
"name": "offsetPlane",
"sourceRange": [
2770,
2819,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "String",
"value": "XY"
},
"sourceRange": [
2782,
2786,
0
]
}
@ -1037,196 +933,20 @@ description: Operations executed ball-bearing.kcl
"labeledArgs": {
"data": {
"value": {
"type": "Object",
"value": {
"plane": {
"type": "Object",
"value": {
"origin": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": -0.1565,
"ty": {
"type": "Unknown"
}
}
}
},
"xAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"yAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"zAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
}
}
}
}
"type": "Plane",
"artifact_id": "[uuid]"
},
"sourceRange": [
2957,
2968,
2770,
2819,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
2943,
2969,
2756,
2820,
0
],
"type": "StdLibCall",
@ -1242,8 +962,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
3060,
3155,
2911,
3006,
0
]
},
@ -1255,16 +975,16 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
3157,
3158,
3008,
3009,
0
]
}
},
"name": "hole",
"sourceRange": [
3055,
3159,
2906,
3010,
0
],
"type": "StdLibCall",
@ -1287,16 +1007,16 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
3211,
3227,
3062,
3078,
0
]
}
},
"name": "extrude",
"sourceRange": [
3175,
3228,
3026,
3079,
0
],
"type": "StdLibCall",
@ -1308,8 +1028,8 @@ description: Operations executed ball-bearing.kcl
}
},
"sourceRange": [
3183,
3200,
3034,
3051,
0
]
}

View File

@ -1,6 +1,6 @@
---
source: kcl-lib/src/simulation_tests.rs
description: Artifact commands 3d-boaty.kcl
description: Artifact commands bench.kcl
---
[
{
@ -2390,8 +2390,8 @@ description: Artifact commands 3d-boaty.kcl
{
"cmdId": "[uuid]",
"range": [
822,
866,
825,
869,
0
],
"command": {
@ -2419,8 +2419,8 @@ description: Artifact commands 3d-boaty.kcl
{
"cmdId": "[uuid]",
"range": [
822,
866,
825,
869,
0
],
"command": {
@ -4713,8 +4713,8 @@ description: Artifact commands 3d-boaty.kcl
{
"cmdId": "[uuid]",
"range": [
876,
919,
879,
922,
0
],
"command": {
@ -4742,8 +4742,8 @@ description: Artifact commands 3d-boaty.kcl
{
"cmdId": "[uuid]",
"range": [
876,
919,
879,
922,
0
],
"command": {
@ -7036,8 +7036,8 @@ description: Artifact commands 3d-boaty.kcl
{
"cmdId": "[uuid]",
"range": [
978,
1022,
981,
1025,
0
],
"command": {
@ -7065,8 +7065,8 @@ description: Artifact commands 3d-boaty.kcl
{
"cmdId": "[uuid]",
"range": [
978,
1022,
981,
1025,
0
],
"command": {
@ -8071,8 +8071,8 @@ description: Artifact commands 3d-boaty.kcl
{
"cmdId": "[uuid]",
"range": [
1073,
1140,
1076,
1143,
0
],
"command": {
@ -8100,8 +8100,8 @@ description: Artifact commands 3d-boaty.kcl
{
"cmdId": "[uuid]",
"range": [
1073,
1140,
1076,
1143,
0
],
"command": {
@ -9102,8 +9102,8 @@ description: Artifact commands 3d-boaty.kcl
{
"cmdId": "[uuid]",
"range": [
1210,
1277,
1213,
1280,
0
],
"command": {
@ -9131,8 +9131,8 @@ description: Artifact commands 3d-boaty.kcl
{
"cmdId": "[uuid]",
"range": [
1210,
1277,
1213,
1280,
0
],
"command": {

View File

@ -1,6 +1,6 @@
---
source: kcl-lib/src/simulation_tests.rs
description: Artifact graph flowchart 3d-boaty.kcl
description: Artifact graph flowchart bench.kcl
extension: md
snapshot_kind: binary
---

View File

@ -360,7 +360,7 @@ flowchart LR
172["SweepEdge Adjacent"]
173["SweepEdge Opposite"]
174["SweepEdge Adjacent"]
175["Plane<br>[822, 866, 0]"]
175["Plane<br>[825, 869, 0]"]
199["Sweep Extrusion<br>[1379, 1417, 3]"]
200[Wall]
201[Wall]
@ -487,7 +487,7 @@ flowchart LR
345["SweepEdge Adjacent"]
346["SweepEdge Opposite"]
347["SweepEdge Adjacent"]
348["Plane<br>[876, 919, 0]"]
348["Plane<br>[879, 922, 0]"]
372["Sweep Extrusion<br>[1379, 1417, 3]"]
373[Wall]
374[Wall]
@ -614,7 +614,7 @@ flowchart LR
518["SweepEdge Adjacent"]
519["SweepEdge Opposite"]
520["SweepEdge Adjacent"]
521["Plane<br>[978, 1022, 0]"]
521["Plane<br>[981, 1025, 0]"]
532["Sweep Extrusion<br>[1949, 1973, 3]"]
533[Wall]
534[Wall]
@ -657,7 +657,7 @@ flowchart LR
581["SweepEdge Adjacent"]
582["SweepEdge Opposite"]
583["SweepEdge Adjacent"]
584["Plane<br>[1073, 1140, 0]"]
584["Plane<br>[1076, 1143, 0]"]
594["Sweep Extrusion<br>[2523, 2547, 3]"]
595[Wall]
596[Wall]
@ -681,7 +681,7 @@ flowchart LR
614["SweepEdge Adjacent"]
615["Sweep Extrusion<br>[2523, 2547, 3]"]
616["Sweep Extrusion<br>[2523, 2547, 3]"]
617["Plane<br>[1210, 1277, 0]"]
617["Plane<br>[1213, 1280, 0]"]
627["Sweep Extrusion<br>[3047, 3071, 3]"]
628[Wall]
629[Wall]

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
---
source: kcl-lib/src/simulation_tests.rs
description: Operations executed 3d-boaty.kcl
description: Operations executed bench.kcl
---
[
{
@ -14,8 +14,8 @@ description: Operations executed 3d-boaty.kcl
"unlabeledArg": null,
"labeledArgs": {},
"sourceRange": [
800,
813,
803,
816,
0
]
},
@ -313,16 +313,16 @@ description: Operations executed 3d-boaty.kcl
}
},
"sourceRange": [
850,
865,
853,
868,
0
]
}
},
"name": "offsetPlane",
"sourceRange": [
822,
866,
825,
869,
0
],
"type": "StdLibCall",
@ -332,8 +332,8 @@ description: Operations executed 3d-boaty.kcl
"value": "-YZ"
},
"sourceRange": [
834,
839,
837,
842,
0
]
}
@ -349,8 +349,8 @@ description: Operations executed 3d-boaty.kcl
"unlabeledArg": null,
"labeledArgs": {},
"sourceRange": [
814,
867,
817,
870,
0
]
},
@ -648,16 +648,16 @@ description: Operations executed 3d-boaty.kcl
}
},
"sourceRange": [
903,
918,
906,
921,
0
]
}
},
"name": "offsetPlane",
"sourceRange": [
876,
919,
879,
922,
0
],
"type": "StdLibCall",
@ -667,8 +667,8 @@ description: Operations executed 3d-boaty.kcl
"value": "YZ"
},
"sourceRange": [
888,
892,
891,
895,
0
]
}
@ -684,8 +684,8 @@ description: Operations executed 3d-boaty.kcl
"unlabeledArg": null,
"labeledArgs": {},
"sourceRange": [
868,
920,
871,
923,
0
]
},
@ -983,16 +983,16 @@ description: Operations executed 3d-boaty.kcl
}
},
"sourceRange": [
1005,
1021,
1008,
1024,
0
]
}
},
"name": "offsetPlane",
"sourceRange": [
978,
1022,
981,
1025,
0
],
"type": "StdLibCall",
@ -1002,8 +1002,8 @@ description: Operations executed 3d-boaty.kcl
"value": "YZ"
},
"sourceRange": [
990,
994,
993,
997,
0
]
}
@ -1019,8 +1019,8 @@ description: Operations executed 3d-boaty.kcl
"unlabeledArg": null,
"labeledArgs": {},
"sourceRange": [
968,
1036,
971,
1039,
0
]
},
@ -1210,16 +1210,16 @@ description: Operations executed 3d-boaty.kcl
}
},
"sourceRange": [
1100,
1139,
1103,
1142,
0
]
}
},
"name": "offsetPlane",
"sourceRange": [
1073,
1140,
1076,
1143,
0
],
"type": "StdLibCall",
@ -1229,8 +1229,8 @@ description: Operations executed 3d-boaty.kcl
"value": "YZ"
},
"sourceRange": [
1085,
1089,
1088,
1092,
0
]
}
@ -1246,8 +1246,8 @@ description: Operations executed 3d-boaty.kcl
"unlabeledArg": null,
"labeledArgs": {},
"sourceRange": [
1063,
1173,
1066,
1176,
0
]
},
@ -1359,16 +1359,16 @@ description: Operations executed 3d-boaty.kcl
}
},
"sourceRange": [
1237,
1276,
1240,
1279,
0
]
}
},
"name": "offsetPlane",
"sourceRange": [
1210,
1277,
1213,
1280,
0
],
"type": "StdLibCall",
@ -1378,8 +1378,8 @@ description: Operations executed 3d-boaty.kcl
"value": "YZ"
},
"sourceRange": [
1222,
1226,
1225,
1229,
0
]
}
@ -1395,8 +1395,8 @@ description: Operations executed 3d-boaty.kcl
"unlabeledArg": null,
"labeledArgs": {},
"sourceRange": [
1200,
1310,
1203,
1313,
0
]
},
@ -1505,8 +1505,8 @@ description: Operations executed 3d-boaty.kcl
"unlabeledArg": null,
"labeledArgs": {},
"sourceRange": [
1336,
1367,
1339,
1370,
0
]
},
@ -1723,8 +1723,8 @@ description: Operations executed 3d-boaty.kcl
"unlabeledArg": null,
"labeledArgs": {},
"sourceRange": [
1368,
1400,
1371,
1403,
0
]
},

View File

@ -1,6 +1,6 @@
---
source: kcl-lib/src/simulation_tests.rs
description: Variables in memory after executing 3d-boaty.kcl
description: Variables in memory after executing bench.kcl
---
{
"armRest": {

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

File diff suppressed because it is too large Load Diff

View File

@ -1,228 +1,142 @@
```mermaid
flowchart LR
subgraph path2 [Path]
2["Path<br>[1171, 1196, 0]"]
3["Segment<br>[1202, 1261, 0]"]
4["Segment<br>[1267, 1305, 0]"]
5["Segment<br>[1311, 1355, 0]"]
6["Segment<br>[1361, 1368, 0]"]
7[Solid2d]
end
subgraph path8 [Path]
8["Path<br>[1379, 1458, 0]"]
9["Segment<br>[1379, 1458, 0]"]
2["Path<br>[1086, 1111, 0]"]
3["Segment<br>[1117, 1170, 0]"]
4["Segment<br>[1176, 1215, 0]"]
5["Segment<br>[1221, 1263, 0]"]
6["Segment<br>[1269, 1310, 0]"]
7["Segment<br>[1316, 1355, 0]"]
8["Segment<br>[1361, 1431, 0]"]
9["Segment<br>[1437, 1444, 0]"]
10[Solid2d]
end
subgraph path11 [Path]
11["Path<br>[1473, 1576, 0]"]
12["Segment<br>[1473, 1576, 0]"]
13[Solid2d]
subgraph path38 [Path]
38["Path<br>[1906, 1981, 0]"]
39["Segment<br>[1906, 1981, 0]"]
40[Solid2d]
end
subgraph path14 [Path]
14["Path<br>[1591, 1678, 0]"]
15["Segment<br>[1591, 1678, 0]"]
16[Solid2d]
subgraph path48 [Path]
48["Path<br>[2240, 2312, 0]"]
49["Segment<br>[2240, 2312, 0]"]
50[Solid2d]
end
subgraph path17 [Path]
17["Path<br>[1693, 1788, 0]"]
18["Segment<br>[1693, 1788, 0]"]
19[Solid2d]
end
subgraph path36 [Path]
36["Path<br>[2119, 2144, 0]"]
37["Segment<br>[2150, 2176, 0]"]
38["Segment<br>[2182, 2286, 0]"]
39["Segment<br>[2292, 2318, 0]"]
40["Segment<br>[2324, 2416, 0]"]
end
subgraph path57 [Path]
57["Path<br>[2837, 2874, 0]"]
58["Segment<br>[2880, 2902, 0]"]
59["Segment<br>[2908, 2952, 0]"]
60["Segment<br>[2958, 2997, 0]"]
61["Segment<br>[3003, 3010, 0]"]
62[Solid2d]
end
subgraph path63 [Path]
63["Path<br>[3021, 3103, 0]"]
64["Segment<br>[3021, 3103, 0]"]
65[Solid2d]
end
subgraph path66 [Path]
66["Path<br>[3118, 3200, 0]"]
67["Segment<br>[3118, 3200, 0]"]
68[Solid2d]
end
1["Plane<br>[1146, 1165, 0]"]
20["Sweep Extrusion<br>[1851, 1897, 0]"]
21[Wall]
22[Wall]
23[Wall]
24[Wall]
25["Cap Start"]
26["Cap End"]
27["SweepEdge Opposite"]
28["SweepEdge Adjacent"]
29["SweepEdge Opposite"]
30["SweepEdge Adjacent"]
31["SweepEdge Opposite"]
32["SweepEdge Adjacent"]
33["SweepEdge Opposite"]
34["SweepEdge Adjacent"]
35["Plane<br>[2094, 2113, 0]"]
41["Sweep Extrusion<br>[2453, 2491, 0]"]
1["Plane<br>[1061, 1080, 0]"]
11["Sweep Extrusion<br>[1450, 1476, 0]"]
12[Wall]
13[Wall]
14[Wall]
15[Wall]
16[Wall]
17[Wall]
18["Cap Start"]
19["Cap End"]
20["SweepEdge Opposite"]
21["SweepEdge Adjacent"]
22["SweepEdge Opposite"]
23["SweepEdge Adjacent"]
24["SweepEdge Opposite"]
25["SweepEdge Adjacent"]
26["SweepEdge Opposite"]
27["SweepEdge Adjacent"]
28["SweepEdge Opposite"]
29["SweepEdge Adjacent"]
30["SweepEdge Opposite"]
31["SweepEdge Adjacent"]
32["EdgeCut Fillet<br>[1482, 1573, 0]"]
33["EdgeCut Fillet<br>[1579, 1667, 0]"]
34["EdgeCut Fillet<br>[1673, 1761, 0]"]
35["EdgeCut Fillet<br>[1673, 1761, 0]"]
36["EdgeCut Fillet<br>[1767, 1855, 0]"]
37["EdgeCut Fillet<br>[1767, 1855, 0]"]
41["Sweep Extrusion<br>[2154, 2189, 0]"]
42[Wall]
43[Wall]
44[Wall]
45[Wall]
46["Cap Start"]
47["Cap End"]
48["SweepEdge Opposite"]
49["SweepEdge Adjacent"]
50["SweepEdge Opposite"]
51["SweepEdge Adjacent"]
52["SweepEdge Opposite"]
53["SweepEdge Adjacent"]
54["SweepEdge Opposite"]
55["SweepEdge Adjacent"]
56["Plane<br>[2805, 2831, 0]"]
69["Sweep Extrusion<br>[3253, 3300, 0]"]
70[Wall]
71[Wall]
72[Wall]
73[Wall]
74["Cap Start"]
75["Cap End"]
76["SweepEdge Opposite"]
77["SweepEdge Adjacent"]
78["SweepEdge Opposite"]
79["SweepEdge Adjacent"]
80["SweepEdge Opposite"]
81["SweepEdge Adjacent"]
82["SweepEdge Opposite"]
83["SweepEdge Adjacent"]
84["EdgeCut Fillet<br>[1903, 2052, 0]"]
85["EdgeCut Fillet<br>[1903, 2052, 0]"]
86["EdgeCut Fillet<br>[3306, 3455, 0]"]
87["EdgeCut Fillet<br>[3306, 3455, 0]"]
43["SweepEdge Opposite"]
44["SweepEdge Adjacent"]
45["Sweep Extrusion<br>[2154, 2189, 0]"]
46["Sweep Extrusion<br>[2154, 2189, 0]"]
47["Sweep Extrusion<br>[2154, 2189, 0]"]
51["Sweep Extrusion<br>[2400, 2435, 0]"]
52[Wall]
53["SweepEdge Opposite"]
54["SweepEdge Adjacent"]
55["Sweep Extrusion<br>[2400, 2435, 0]"]
56["StartSketchOnFace<br>[1869, 1900, 0]"]
57["StartSketchOnFace<br>[2203, 2234, 0]"]
1 --- 2
1 --- 8
1 --- 11
1 --- 14
1 --- 17
2 --- 3
2 --- 4
2 --- 5
2 --- 6
2 ---- 20
2 --- 7
2 --- 8
2 --- 9
2 ---- 11
2 --- 10
3 --- 12
3 --- 20
3 --- 21
3 --- 27
3 --- 28
4 --- 13
4 --- 22
4 --- 29
4 --- 30
5 --- 23
5 --- 31
5 --- 32
6 --- 24
6 --- 33
6 --- 34
8 --- 9
8 --- 10
4 --- 23
4 --- 34
5 --- 14
5 --- 24
5 --- 25
6 --- 15
6 --- 26
6 --- 27
7 --- 16
7 --- 28
7 --- 29
7 --- 36
8 --- 17
8 --- 30
8 --- 31
11 --- 12
11 --- 13
14 --- 15
14 --- 16
17 --- 18
17 --- 19
20 --- 21
20 --- 22
20 --- 23
20 --- 24
20 --- 25
20 --- 26
20 --- 27
20 --- 28
20 --- 29
20 --- 30
20 --- 31
20 --- 32
20 --- 33
20 --- 34
35 --- 36
36 --- 37
36 --- 38
36 --- 39
36 --- 40
36 ---- 41
37 --- 42
37 --- 48
37 --- 49
38 --- 43
38 --- 50
38 --- 51
11 --- 14
11 --- 15
11 --- 16
11 --- 17
11 --- 18
11 --- 19
11 --- 20
11 --- 21
11 --- 22
11 --- 23
11 --- 24
11 --- 25
11 --- 26
11 --- 27
11 --- 28
11 --- 29
11 --- 30
11 --- 31
14 --- 38
15 --- 48
25 <--x 32
31 <--x 33
22 <--x 35
28 <--x 37
38 --- 39
38 ---- 41
38 --- 40
39 --- 42
39 --- 43
39 --- 44
39 --- 52
39 --- 53
40 --- 45
40 --- 54
40 --- 55
41 --- 42
41 --- 43
41 --- 44
41 --- 45
41 --- 46
41 --- 47
41 --- 48
41 --- 49
41 --- 50
41 --- 51
41 --- 52
41 --- 53
41 --- 54
41 --- 55
56 --- 57
56 --- 63
56 --- 66
57 --- 58
57 --- 59
57 --- 60
57 --- 61
57 ---- 69
57 --- 62
58 --- 73
58 --- 82
58 --- 83
59 --- 72
59 --- 80
59 --- 81
60 --- 71
60 --- 78
60 --- 79
61 --- 70
61 --- 76
61 --- 77
63 --- 64
63 --- 65
66 --- 67
66 --- 68
69 --- 70
69 --- 71
69 --- 72
69 --- 73
69 --- 74
69 --- 75
69 --- 76
69 --- 77
69 --- 78
69 --- 79
69 --- 80
69 --- 81
69 --- 82
69 --- 83
28 <--x 84
30 <--x 85
81 <--x 86
79 <--x 87
48 --- 49
48 ---- 51
48 --- 50
49 --- 52
49 --- 53
49 --- 54
51 --- 52
51 --- 53
51 --- 54
14 <--x 56
15 <--x 57
```

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -8,19 +8,19 @@ description: Operations executed bracket.kcl
"data": {
"value": {
"type": "String",
"value": "XY"
"value": "XZ"
},
"sourceRange": [
1160,
1164,
1075,
1079,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1146,
1165,
1061,
1080,
0
],
"type": "StdLibCall",
@ -28,213 +28,246 @@ description: Operations executed bracket.kcl
},
{
"labeledArgs": {
"holeSketch": {
"length": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
"type": "Number",
"value": 6.0,
"ty": {
"type": "Default",
"len": {
"type": "Mm"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1379,
1458,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1460,
1461,
1470,
1475,
0
]
}
},
"name": "hole",
"name": "extrude",
"sourceRange": [
1374,
1462,
1450,
1476,
0
],
"type": "StdLibCall",
"unlabeledArg": null
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1458,
1459,
0
]
}
},
{
"labeledArgs": {
"holeSketch": {
"radius": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
"type": "Number",
"value": 0.601324026261472,
"ty": {
"type": "Unknown"
}
},
"sourceRange": [
1473,
1576,
1506,
1521,
0
]
},
"sketch": {
"tags": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
"type": "Array",
"value": [
{
"type": "Uuid",
"value": "[uuid]"
}
]
},
"sourceRange": [
1578,
1579,
1537,
1565,
0
]
}
},
"name": "hole",
"name": "fillet",
"sourceRange": [
1468,
1580,
1482,
1573,
0
],
"type": "StdLibCall",
"unlabeledArg": null
"unlabeledArg": {
"value": {
"type": "Solid",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1482,
1573,
0
]
}
},
{
"labeledArgs": {
"holeSketch": {
"radius": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
"type": "Number",
"value": 0.25,
"ty": {
"type": "Default",
"len": {
"type": "Mm"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1591,
1678,
1603,
1615,
0
]
},
"sketch": {
"tags": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
"type": "Array",
"value": [
{
"type": "Uuid",
"value": "[uuid]"
}
]
},
"sourceRange": [
1680,
1681,
1631,
1659,
0
]
}
},
"name": "hole",
"name": "fillet",
"sourceRange": [
1586,
1682,
1579,
1667,
0
],
"type": "StdLibCall",
"unlabeledArg": null
"unlabeledArg": {
"value": {
"type": "Solid",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1579,
1667,
0
]
}
},
{
"labeledArgs": {
"holeSketch": {
"radius": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
"type": "Number",
"value": 0.25,
"ty": {
"type": "Default",
"len": {
"type": "Mm"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1693,
1788,
1696,
1708,
0
]
},
"sketch": {
"tags": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
"type": "Array",
"value": [
{
"type": "TagIdentifier",
"value": "seg02",
"artifact_id": "[uuid]"
},
{
"type": "Uuid",
"value": "[uuid]"
}
]
},
"sourceRange": [
1723,
1754,
0
]
}
},
"name": "fillet",
"sourceRange": [
1673,
1761,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Solid",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1673,
1761,
0
]
}
},
{
"labeledArgs": {
"radius": {
"value": {
"type": "Number",
"value": 0.25,
"ty": {
"type": "Default",
"len": {
"type": "Mm"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1790,
1791,
0
]
}
},
"name": "hole",
"sourceRange": [
1688,
1792,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": 0.35132402626147197,
"ty": {
"type": "Unknown"
}
},
"sourceRange": [
1887,
1896,
0
]
}
},
"name": "extrude",
"sourceRange": [
1851,
1897,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1859,
1876,
0
]
}
},
{
"labeledArgs": {
"radius": {
"value": {
"type": "Number",
"value": 0.25,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1927,
1942,
1802,
0
]
},
@ -243,8 +276,9 @@ description: Operations executed bracket.kcl
"type": "Array",
"value": [
{
"type": "Uuid",
"value": "[uuid]"
"type": "TagIdentifier",
"value": "seg05",
"artifact_id": "[uuid]"
},
{
"type": "Uuid",
@ -253,16 +287,16 @@ description: Operations executed bracket.kcl
]
},
"sourceRange": [
1958,
2045,
1817,
1848,
0
]
}
},
"name": "fillet",
"sourceRange": [
1903,
2052,
1767,
1855,
0
],
"type": "StdLibCall",
@ -274,8 +308,8 @@ description: Operations executed bracket.kcl
}
},
"sourceRange": [
1903,
2052,
1767,
1855,
0
]
}
@ -284,20 +318,34 @@ description: Operations executed bracket.kcl
"labeledArgs": {
"data": {
"value": {
"type": "String",
"value": "XZ"
"type": "Solid",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2108,
2112,
1883,
1892,
0
]
},
"tag": {
"value": {
"type": "TagIdentifier",
"value": "seg03",
"artifact_id": "[uuid]"
},
"sourceRange": [
1894,
1899,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
2094,
2113,
1869,
1900,
0
],
"type": "StdLibCall",
@ -308,424 +356,126 @@ description: Operations executed bracket.kcl
"length": {
"value": {
"type": "Number",
"value": -6.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
2484,
2490,
0
]
}
},
"name": "extrude",
"sourceRange": [
2453,
2491,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2461,
2473,
0
]
}
},
{
"labeledArgs": {
"data": {
"value": {
"type": "Object",
"value": {
"plane": {
"type": "Object",
"value": {
"origin": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": -0.375,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"xAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"yAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"zAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
}
}
}
}
},
"sourceRange": [
2819,
2830,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
2805,
2831,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
3021,
3103,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
3105,
3106,
0
]
}
},
"name": "hole",
"sourceRange": [
3016,
3107,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
3118,
3200,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
3202,
3203,
0
]
}
},
"name": "hole",
"sourceRange": [
3113,
3204,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": -0.35132402626147197,
"value": -0.361324026261472,
"ty": {
"type": "Unknown"
}
},
"sourceRange": [
3289,
3299,
2174,
2188,
0
]
}
},
"name": "extrude",
"sourceRange": [
3253,
3300,
2154,
2189,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
"type": "Sketches",
"value": [
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
}
]
},
"sourceRange": [
3261,
3278,
2162,
2163,
0
]
}
},
{
"labeledArgs": {
"radius": {
"data": {
"value": {
"type": "Number",
"value": 0.25,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
"type": "Solid",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
3330,
3345,
2217,
2226,
0
]
},
"tags": {
"tag": {
"value": {
"type": "Array",
"value": [
{
"type": "Uuid",
"value": "[uuid]"
},
{
"type": "Uuid",
"value": "[uuid]"
}
]
"type": "TagIdentifier",
"value": "seg04",
"artifact_id": "[uuid]"
},
"sourceRange": [
3361,
3448,
2228,
2233,
0
]
}
},
"name": "fillet",
"name": "startSketchOn",
"sourceRange": [
3306,
3455,
2203,
2234,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": -0.45132402626147194,
"ty": {
"type": "Unknown"
}
},
"sourceRange": [
2420,
2434,
0
]
}
},
"name": "extrude",
"sourceRange": [
2400,
2435,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Solid",
"value": {
"artifactId": "[uuid]"
}
"type": "Sketches",
"value": [
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
}
]
},
"sourceRange": [
3306,
3455,
2408,
2409,
0
]
}

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

After

Width:  |  Height:  |  Size: 60 KiB

View File

@ -128,39 +128,13 @@ description: Result of parsing car-wheel-assembly.kcl
"type": "ImportStatement"
},
{
"end": 351,
"expression": {
"end": 351,
"name": "carRotor",
"start": 343,
"type": "Identifier",
"type": "Identifier"
},
"start": 343,
"type": "ExpressionStatement",
"type": "ExpressionStatement"
},
{
"end": 360,
"expression": {
"end": 360,
"name": "carWheel",
"start": 352,
"type": "Identifier",
"type": "Identifier"
},
"start": 352,
"type": "ExpressionStatement",
"type": "ExpressionStatement"
},
{
"end": 524,
"end": 391,
"expression": {
"body": [
{
"end": 367,
"name": "lugNut",
"start": 361,
"end": 351,
"name": "carRotor",
"start": 343,
"type": "Identifier",
"type": "Identifier"
},
@ -169,15 +143,114 @@ description: Result of parsing car-wheel-assembly.kcl
{
"type": "LabeledArg",
"label": {
"end": 407,
"name": "arcDegrees",
"start": 397,
"end": 376,
"name": "translate",
"start": 367,
"type": "Identifier"
},
"arg": {
"end": 413,
"elements": [
{
"end": 381,
"raw": "0",
"start": 380,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 386,
"raw": "0.5",
"start": 383,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.5,
"suffix": "None"
}
},
{
"end": 389,
"raw": "0",
"start": 388,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 390,
"start": 379,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 366,
"name": "translate",
"start": 357,
"type": "Identifier"
},
"end": 391,
"start": 357,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 391,
"start": 343,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 343,
"type": "ExpressionStatement",
"type": "ExpressionStatement"
},
{
"end": 400,
"expression": {
"end": 400,
"name": "carWheel",
"start": 392,
"type": "Identifier",
"type": "Identifier"
},
"start": 392,
"type": "ExpressionStatement",
"type": "ExpressionStatement"
},
{
"end": 564,
"expression": {
"body": [
{
"end": 407,
"name": "lugNut",
"start": 401,
"type": "Identifier",
"type": "Identifier"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 447,
"name": "arcDegrees",
"start": 437,
"type": "Identifier"
},
"arg": {
"end": 453,
"raw": "360",
"start": 410,
"start": 450,
"type": "Literal",
"type": "Literal",
"value": {
@ -189,17 +262,17 @@ description: Result of parsing car-wheel-assembly.kcl
{
"type": "LabeledArg",
"label": {
"end": 424,
"end": 464,
"name": "axis",
"start": 420,
"start": 460,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 429,
"end": 469,
"raw": "0",
"start": 428,
"start": 468,
"type": "Literal",
"type": "Literal",
"value": {
@ -208,9 +281,9 @@ description: Result of parsing car-wheel-assembly.kcl
}
},
{
"end": 432,
"end": 472,
"raw": "1",
"start": 431,
"start": 471,
"type": "Literal",
"type": "Literal",
"value": {
@ -219,9 +292,9 @@ description: Result of parsing car-wheel-assembly.kcl
}
},
{
"end": 435,
"end": 475,
"raw": "0",
"start": 434,
"start": 474,
"type": "Literal",
"type": "Literal",
"value": {
@ -230,8 +303,8 @@ description: Result of parsing car-wheel-assembly.kcl
}
}
],
"end": 436,
"start": 427,
"end": 476,
"start": 467,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
@ -239,17 +312,17 @@ description: Result of parsing car-wheel-assembly.kcl
{
"type": "LabeledArg",
"label": {
"end": 449,
"end": 489,
"name": "center",
"start": 443,
"start": 483,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 454,
"end": 494,
"raw": "0",
"start": 453,
"start": 493,
"type": "Literal",
"type": "Literal",
"value": {
@ -258,9 +331,9 @@ description: Result of parsing car-wheel-assembly.kcl
}
},
{
"end": 457,
"end": 497,
"raw": "0",
"start": 456,
"start": 496,
"type": "Literal",
"type": "Literal",
"value": {
@ -269,9 +342,9 @@ description: Result of parsing car-wheel-assembly.kcl
}
},
{
"end": 460,
"end": 500,
"raw": "0",
"start": 459,
"start": 499,
"type": "Literal",
"type": "Literal",
"value": {
@ -280,8 +353,8 @@ description: Result of parsing car-wheel-assembly.kcl
}
}
],
"end": 461,
"start": 452,
"end": 501,
"start": 492,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
@ -289,15 +362,15 @@ description: Result of parsing car-wheel-assembly.kcl
{
"type": "LabeledArg",
"label": {
"end": 477,
"end": 517,
"name": "instances",
"start": 468,
"start": 508,
"type": "Identifier"
},
"arg": {
"end": 488,
"end": 528,
"name": "lugCount",
"start": 480,
"start": 520,
"type": "Identifier",
"type": "Identifier"
}
@ -305,15 +378,15 @@ description: Result of parsing car-wheel-assembly.kcl
{
"type": "LabeledArg",
"label": {
"end": 511,
"end": 551,
"name": "rotateDuplicates",
"start": 495,
"start": 535,
"type": "Identifier"
},
"arg": {
"end": 519,
"end": 559,
"raw": "false",
"start": 514,
"start": 554,
"type": "Literal",
"type": "Literal",
"value": false
@ -321,55 +394,128 @@ description: Result of parsing car-wheel-assembly.kcl
}
],
"callee": {
"end": 390,
"end": 430,
"name": "patternCircular3d",
"start": 373,
"start": 413,
"type": "Identifier"
},
"end": 524,
"start": 373,
"end": 564,
"start": 413,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 524,
"start": 361,
"end": 564,
"start": 401,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 361,
"start": 401,
"type": "ExpressionStatement",
"type": "ExpressionStatement"
},
{
"end": 537,
"end": 617,
"expression": {
"end": 537,
"name": "brakeCaliper",
"start": 525,
"type": "Identifier",
"type": "Identifier"
"body": [
{
"end": 577,
"name": "brakeCaliper",
"start": 565,
"type": "Identifier",
"type": "Identifier"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 602,
"name": "translate",
"start": 593,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 607,
"raw": "0",
"start": 606,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 612,
"raw": "0.5",
"start": 609,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.5,
"suffix": "None"
}
},
{
"end": 615,
"raw": "0",
"start": 614,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 616,
"start": 605,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 592,
"name": "translate",
"start": 583,
"type": "Identifier"
},
"end": 617,
"start": 583,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 617,
"start": 565,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 525,
"start": 565,
"type": "ExpressionStatement",
"type": "ExpressionStatement"
},
{
"end": 545,
"end": 625,
"expression": {
"end": 545,
"end": 625,
"name": "carTire",
"start": 538,
"start": 618,
"type": "Identifier",
"type": "Identifier"
},
"start": 538,
"start": 618,
"type": "ExpressionStatement",
"type": "ExpressionStatement"
}
],
"end": 546,
"end": 626,
"innerAttrs": [
{
"end": 127,

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 KiB

After

Width:  |  Height:  |  Size: 216 KiB

View File

@ -1,6 +0,0 @@
---
source: kcl/src/simulation_tests.rs
description: Artifact graph flowchart flange-with-patterns.kcl
extension: md
snapshot_kind: binary
---

View File

@ -1,108 +0,0 @@
```mermaid
flowchart LR
subgraph path2 [Path]
2["Path<br>[894, 1000, 0]"]
3["Segment<br>[894, 1000, 0]"]
4[Solid2d]
end
subgraph path6 [Path]
6["Path<br>[1238, 1304, 0]"]
7["Segment<br>[1238, 1304, 0]"]
8[Solid2d]
end
subgraph path9 [Path]
9["Path<br>[1337, 1403, 0]"]
10["Segment<br>[1337, 1403, 0]"]
11[Solid2d]
end
subgraph path19 [Path]
19["Path<br>[1766, 1841, 0]"]
20["Segment<br>[1766, 1841, 0]"]
21[Solid2d]
end
subgraph path22 [Path]
22["Path<br>[1852, 1918, 0]"]
23["Segment<br>[1852, 1918, 0]"]
24[Solid2d]
end
subgraph path32 [Path]
32["Path<br>[2065, 2143, 0]"]
33["Segment<br>[2065, 2143, 0]"]
34[Solid2d]
end
subgraph path35 [Path]
35["Path<br>[2154, 2220, 0]"]
36["Segment<br>[2154, 2220, 0]"]
37[Solid2d]
end
1["Plane<br>[869, 888, 0]"]
5["Plane<br>[1213, 1232, 0]"]
12["Sweep Extrusion<br>[1413, 1444, 0]"]
13[Wall]
14["Cap Start"]
15["Cap End"]
16["SweepEdge Opposite"]
17["SweepEdge Adjacent"]
18["Plane<br>[1733, 1760, 0]"]
25["Sweep Extrusion<br>[1928, 1963, 0]"]
26[Wall]
27["Cap Start"]
28["Cap End"]
29["SweepEdge Opposite"]
30["SweepEdge Adjacent"]
31["Plane<br>[2040, 2059, 0]"]
38["Sweep Extrusion<br>[2230, 2264, 0]"]
39[Wall]
40["Cap Start"]
41["Cap End"]
42["SweepEdge Opposite"]
43["SweepEdge Adjacent"]
1 --- 2
2 --- 3
2 --- 4
5 --- 6
5 --- 9
6 --- 7
6 ---- 12
6 --- 8
7 --- 13
7 --- 16
7 --- 17
9 --- 10
9 --- 11
12 --- 13
12 --- 14
12 --- 15
12 --- 16
12 --- 17
18 --- 19
18 --- 22
19 --- 20
19 ---- 25
19 --- 21
20 --- 26
20 --- 29
20 --- 30
22 --- 23
22 --- 24
25 --- 26
25 --- 27
25 --- 28
25 --- 29
25 --- 30
31 --- 32
31 --- 35
32 --- 33
32 ---- 38
32 --- 34
33 --- 39
33 --- 42
33 --- 43
35 --- 36
35 --- 37
38 --- 39
38 --- 40
38 --- 41
38 --- 42
38 --- 43
```

File diff suppressed because it is too large Load Diff

View File

@ -1,467 +0,0 @@
ISO-10303-21;
HEADER;
FILE_DESCRIPTION((('zoo.dev export')), '2;1');
FILE_NAME('dump.step', '2021-01-01T00:00:00+00:00', ('Author unknown'), ('Organization unknown'), 'zoo.dev beta', 'zoo.dev', 'Authorization unknown');
FILE_SCHEMA(('AP203_CONFIGURATION_CONTROLLED_3D_DESIGN_OF_MECHANICAL_PARTS_AND_ASSEMBLIES_MIM_LF'));
ENDSEC;
DATA;
#1 = (
LENGTH_UNIT()
NAMED_UNIT(*)
SI_UNIT($, .METRE.)
);
#2 = UNCERTAINTY_MEASURE_WITH_UNIT(0.00001, #1, 'DISTANCE_ACCURACY_VALUE', $);
#3 = (
GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#2))
GLOBAL_UNIT_ASSIGNED_CONTEXT((#1))
REPRESENTATION_CONTEXT('', '3D')
);
#4 = CARTESIAN_POINT('NONE', (0.03175, -0.001524, -0));
#5 = VERTEX_POINT('NONE', #4);
#6 = CARTESIAN_POINT('NONE', (0.03175, 0, -0));
#7 = VERTEX_POINT('NONE', #6);
#8 = CARTESIAN_POINT('NONE', (0.015875, -0.001524, 0.000000000000000003888253587292846));
#9 = VERTEX_POINT('NONE', #8);
#10 = CARTESIAN_POINT('NONE', (0.015875, 0, 0.000000000000000003888253587292846));
#11 = VERTEX_POINT('NONE', #10);
#12 = CARTESIAN_POINT('NONE', (0.0293751, 0.015875, -0));
#13 = VERTEX_POINT('NONE', #12);
#14 = CARTESIAN_POINT('NONE', (0.0293751, 0.019126199999999996, -0));
#15 = VERTEX_POINT('NONE', #14);
#16 = CARTESIAN_POINT('NONE', (0.015875, 0.015875, 0.000000000000000003888253587292846));
#17 = VERTEX_POINT('NONE', #16);
#18 = CARTESIAN_POINT('NONE', (0.015875, 0.019126199999999996, 0.000000000000000003888253587292846));
#19 = VERTEX_POINT('NONE', #18);
#20 = CARTESIAN_POINT('NONE', (0.0587375, 0, -0));
#21 = VERTEX_POINT('NONE', #20);
#22 = CARTESIAN_POINT('NONE', (0.0587375, 0.015875, -0));
#23 = VERTEX_POINT('NONE', #22);
#24 = CARTESIAN_POINT('NONE', (0.0523875, 0, 0.000000000000000001944126793646423));
#25 = VERTEX_POINT('NONE', #24);
#26 = CARTESIAN_POINT('NONE', (0.0523875, 0.015875, 0.000000000000000001944126793646423));
#27 = VERTEX_POINT('NONE', #26);
#28 = CARTESIAN_POINT('NONE', (0.0000000000000000051519360031630214, 0, -0.0523875));
#29 = VERTEX_POINT('NONE', #28);
#30 = CARTESIAN_POINT('NONE', (0.0000000000000000051519360031630214, 0.015875, -0.0523875));
#31 = VERTEX_POINT('NONE', #30);
#32 = CARTESIAN_POINT('NONE', (-0.0523875, 0, -0.00000000000000000835974521267962));
#33 = VERTEX_POINT('NONE', #32);
#34 = CARTESIAN_POINT('NONE', (-0.0523875, 0.015875, -0.00000000000000000835974521267962));
#35 = VERTEX_POINT('NONE', #34);
#36 = CARTESIAN_POINT('NONE', (-0.000000000000000009623427628549794, 0, 0.0523875));
#37 = VERTEX_POINT('NONE', #36);
#38 = CARTESIAN_POINT('NONE', (-0.000000000000000009623427628549794, 0.015875, 0.0523875));
#39 = VERTEX_POINT('NONE', #38);
#40 = CARTESIAN_POINT('NONE', (0.015875, 0, 0.000000000000000003888253587292846));
#41 = VERTEX_POINT('NONE', #40);
#42 = CARTESIAN_POINT('NONE', (0.015875, 0.015875, 0.000000000000000003888253587292846));
#43 = VERTEX_POINT('NONE', #42);
#44 = DIRECTION('NONE', (1, 0, -0));
#45 = DIRECTION('NONE', (0, 1, 0));
#46 = CARTESIAN_POINT('NONE', (-0, -0.001524, 0));
#47 = AXIS2_PLACEMENT_3D('NONE', #46, #45, #44);
#48 = CIRCLE('NONE', #47, 0.03175);
#49 = DIRECTION('NONE', (0, 1, 0));
#50 = VECTOR('NONE', #49, 1);
#51 = CARTESIAN_POINT('NONE', (0.03175, -0.001524, -0));
#52 = LINE('NONE', #51, #50);
#53 = DIRECTION('NONE', (1, 0, -0));
#54 = DIRECTION('NONE', (0, 1, 0));
#55 = CARTESIAN_POINT('NONE', (-0, 0, 0));
#56 = AXIS2_PLACEMENT_3D('NONE', #55, #54, #53);
#57 = CIRCLE('NONE', #56, 0.03175);
#58 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#59 = DIRECTION('NONE', (0, -1, 0));
#60 = CARTESIAN_POINT('NONE', (0, -0.001524, -0));
#61 = AXIS2_PLACEMENT_3D('NONE', #60, #59, #58);
#62 = CIRCLE('NONE', #61, 0.015875);
#63 = DIRECTION('NONE', (0, 1, 0));
#64 = VECTOR('NONE', #63, 1);
#65 = CARTESIAN_POINT('NONE', (0.015875, -0.001524, 0.000000000000000003888253587292846));
#66 = LINE('NONE', #65, #64);
#67 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#68 = DIRECTION('NONE', (0, -1, 0));
#69 = CARTESIAN_POINT('NONE', (0, -0, -0));
#70 = AXIS2_PLACEMENT_3D('NONE', #69, #68, #67);
#71 = CIRCLE('NONE', #70, 0.015875);
#72 = DIRECTION('NONE', (1, 0, -0));
#73 = DIRECTION('NONE', (0, 1, 0));
#74 = CARTESIAN_POINT('NONE', (-0, 0.015875, 0));
#75 = AXIS2_PLACEMENT_3D('NONE', #74, #73, #72);
#76 = CIRCLE('NONE', #75, 0.0293751);
#77 = DIRECTION('NONE', (0, 1, 0));
#78 = VECTOR('NONE', #77, 1);
#79 = CARTESIAN_POINT('NONE', (0.0293751, 0.015875, -0));
#80 = LINE('NONE', #79, #78);
#81 = DIRECTION('NONE', (1, 0, -0));
#82 = DIRECTION('NONE', (0, 1, 0));
#83 = CARTESIAN_POINT('NONE', (-0, 0.019126199999999996, 0));
#84 = AXIS2_PLACEMENT_3D('NONE', #83, #82, #81);
#85 = CIRCLE('NONE', #84, 0.0293751);
#86 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#87 = DIRECTION('NONE', (0, -1, 0));
#88 = CARTESIAN_POINT('NONE', (0, 0.015875, -0));
#89 = AXIS2_PLACEMENT_3D('NONE', #88, #87, #86);
#90 = CIRCLE('NONE', #89, 0.015875);
#91 = DIRECTION('NONE', (0, 1, 0));
#92 = VECTOR('NONE', #91, 1);
#93 = CARTESIAN_POINT('NONE', (0.015875, 0.015875, 0.000000000000000003888253587292846));
#94 = LINE('NONE', #93, #92);
#95 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#96 = DIRECTION('NONE', (0, -1, 0));
#97 = CARTESIAN_POINT('NONE', (0, 0.019126199999999996, -0));
#98 = AXIS2_PLACEMENT_3D('NONE', #97, #96, #95);
#99 = CIRCLE('NONE', #98, 0.015875);
#100 = DIRECTION('NONE', (1, 0, -0));
#101 = DIRECTION('NONE', (0, 1, 0));
#102 = CARTESIAN_POINT('NONE', (-0, 0, 0));
#103 = AXIS2_PLACEMENT_3D('NONE', #102, #101, #100);
#104 = CIRCLE('NONE', #103, 0.0587375);
#105 = DIRECTION('NONE', (0, 1, 0));
#106 = VECTOR('NONE', #105, 1);
#107 = CARTESIAN_POINT('NONE', (0.0587375, 0, -0));
#108 = LINE('NONE', #107, #106);
#109 = DIRECTION('NONE', (1, 0, -0));
#110 = DIRECTION('NONE', (0, 1, 0));
#111 = CARTESIAN_POINT('NONE', (-0, 0.015875, 0));
#112 = AXIS2_PLACEMENT_3D('NONE', #111, #110, #109);
#113 = CIRCLE('NONE', #112, 0.0587375);
#114 = DIRECTION('NONE', (1, 0, -0.000000000000000388052796742256));
#115 = DIRECTION('NONE', (0, -1, 0));
#116 = CARTESIAN_POINT('NONE', (0.044449999999999996, -0, 0.000000000000000005024295867788081));
#117 = AXIS2_PLACEMENT_3D('NONE', #116, #115, #114);
#118 = CIRCLE('NONE', #117, 0.0079375);
#119 = DIRECTION('NONE', (0, 1, 0));
#120 = VECTOR('NONE', #119, 1);
#121 = CARTESIAN_POINT('NONE', (0.0523875, 0, 0.000000000000000001944126793646423));
#122 = LINE('NONE', #121, #120);
#123 = DIRECTION('NONE', (1, 0, -0.000000000000000388052796742256));
#124 = DIRECTION('NONE', (0, -1, 0));
#125 = CARTESIAN_POINT('NONE', (0.044449999999999996, 0.015875, 0.000000000000000005024295867788081));
#126 = AXIS2_PLACEMENT_3D('NONE', #125, #124, #123);
#127 = CIRCLE('NONE', #126, 0.0079375);
#128 = DIRECTION('NONE', (0.000000000000000016080646976370378, 0, -1));
#129 = DIRECTION('NONE', (0, -1, 0));
#130 = CARTESIAN_POINT('NONE', (0.000000000000000005024295867788082, -0, -0.044449999999999996));
#131 = AXIS2_PLACEMENT_3D('NONE', #130, #129, #128);
#132 = CIRCLE('NONE', #131, 0.0079375);
#133 = DIRECTION('NONE', (0, 1, 0));
#134 = VECTOR('NONE', #133, 1);
#135 = CARTESIAN_POINT('NONE', (0.0000000000000000051519360031630214, 0, -0.0523875));
#136 = LINE('NONE', #135, #134);
#137 = DIRECTION('NONE', (0.000000000000000016080646976370378, 0, -1));
#138 = DIRECTION('NONE', (0, -1, 0));
#139 = CARTESIAN_POINT('NONE', (0.000000000000000005024295867788082, 0.015875, -0.044449999999999996));
#140 = AXIS2_PLACEMENT_3D('NONE', #139, #138, #137);
#141 = CIRCLE('NONE', #140, 0.0079375);
#142 = DIRECTION('NONE', (-1, 0, 0.00000000000000021276806587672974));
#143 = DIRECTION('NONE', (-0, -1, 0));
#144 = CARTESIAN_POINT('NONE', (-0.04444999999999999, -0, -0.000000000000000010048591735576163));
#145 = AXIS2_PLACEMENT_3D('NONE', #144, #143, #142);
#146 = CIRCLE('NONE', #145, 0.007937500000000007);
#147 = DIRECTION('NONE', (0, 1, 0));
#148 = VECTOR('NONE', #147, 1);
#149 = CARTESIAN_POINT('NONE', (-0.0523875, 0, -0.00000000000000000835974521267962));
#150 = LINE('NONE', #149, #148);
#151 = DIRECTION('NONE', (-1, 0, 0.00000000000000021276806587672974));
#152 = DIRECTION('NONE', (-0, -1, 0));
#153 = CARTESIAN_POINT('NONE', (-0.04444999999999999, 0.015875, -0.000000000000000010048591735576163));
#154 = AXIS2_PLACEMENT_3D('NONE', #153, #152, #151);
#155 = CIRCLE('NONE', #154, 0.007937500000000007);
#156 = DIRECTION('NONE', (0.000000000000000053563981987573816, 0, 1));
#157 = DIRECTION('NONE', (0, -1, 0));
#158 = CARTESIAN_POINT('NONE', (-0.000000000000000010048591735576162, -0, 0.04444999999999999));
#159 = AXIS2_PLACEMENT_3D('NONE', #158, #157, #156);
#160 = CIRCLE('NONE', #159, 0.007937500000000007);
#161 = DIRECTION('NONE', (0, 1, 0));
#162 = VECTOR('NONE', #161, 1);
#163 = CARTESIAN_POINT('NONE', (-0.000000000000000009623427628549794, 0, 0.0523875));
#164 = LINE('NONE', #163, #162);
#165 = DIRECTION('NONE', (0.000000000000000053563981987573816, 0, 1));
#166 = DIRECTION('NONE', (0, -1, 0));
#167 = CARTESIAN_POINT('NONE', (-0.000000000000000010048591735576162, 0.015875, 0.04444999999999999));
#168 = AXIS2_PLACEMENT_3D('NONE', #167, #166, #165);
#169 = CIRCLE('NONE', #168, 0.007937500000000007);
#170 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#171 = DIRECTION('NONE', (0, -1, 0));
#172 = CARTESIAN_POINT('NONE', (0, -0, -0));
#173 = AXIS2_PLACEMENT_3D('NONE', #172, #171, #170);
#174 = CIRCLE('NONE', #173, 0.015875);
#175 = DIRECTION('NONE', (0, 1, 0));
#176 = VECTOR('NONE', #175, 1);
#177 = CARTESIAN_POINT('NONE', (0.015875, 0, 0.000000000000000003888253587292846));
#178 = LINE('NONE', #177, #176);
#179 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#180 = DIRECTION('NONE', (0, -1, 0));
#181 = CARTESIAN_POINT('NONE', (0, 0.015875, -0));
#182 = AXIS2_PLACEMENT_3D('NONE', #181, #180, #179);
#183 = CIRCLE('NONE', #182, 0.015875);
#184 = EDGE_CURVE('NONE', #5, #5, #48, .T.);
#185 = EDGE_CURVE('NONE', #5, #7, #52, .T.);
#186 = EDGE_CURVE('NONE', #7, #7, #57, .T.);
#187 = EDGE_CURVE('NONE', #9, #9, #62, .T.);
#188 = EDGE_CURVE('NONE', #9, #11, #66, .T.);
#189 = EDGE_CURVE('NONE', #11, #11, #71, .T.);
#190 = EDGE_CURVE('NONE', #13, #13, #76, .T.);
#191 = EDGE_CURVE('NONE', #13, #15, #80, .T.);
#192 = EDGE_CURVE('NONE', #15, #15, #85, .T.);
#193 = EDGE_CURVE('NONE', #17, #17, #90, .T.);
#194 = EDGE_CURVE('NONE', #17, #19, #94, .T.);
#195 = EDGE_CURVE('NONE', #19, #19, #99, .T.);
#196 = EDGE_CURVE('NONE', #21, #21, #104, .T.);
#197 = EDGE_CURVE('NONE', #21, #23, #108, .T.);
#198 = EDGE_CURVE('NONE', #23, #23, #113, .T.);
#199 = EDGE_CURVE('NONE', #25, #25, #118, .T.);
#200 = EDGE_CURVE('NONE', #25, #27, #122, .T.);
#201 = EDGE_CURVE('NONE', #27, #27, #127, .T.);
#202 = EDGE_CURVE('NONE', #29, #29, #132, .T.);
#203 = EDGE_CURVE('NONE', #29, #31, #136, .T.);
#204 = EDGE_CURVE('NONE', #31, #31, #141, .T.);
#205 = EDGE_CURVE('NONE', #33, #33, #146, .T.);
#206 = EDGE_CURVE('NONE', #33, #35, #150, .T.);
#207 = EDGE_CURVE('NONE', #35, #35, #155, .T.);
#208 = EDGE_CURVE('NONE', #37, #37, #160, .T.);
#209 = EDGE_CURVE('NONE', #37, #39, #164, .T.);
#210 = EDGE_CURVE('NONE', #39, #39, #169, .T.);
#211 = EDGE_CURVE('NONE', #41, #41, #174, .T.);
#212 = EDGE_CURVE('NONE', #41, #43, #178, .T.);
#213 = EDGE_CURVE('NONE', #43, #43, #183, .T.);
#214 = CARTESIAN_POINT('NONE', (-0, -0.000762, 0));
#215 = DIRECTION('NONE', (0, 1, 0));
#216 = DIRECTION('NONE', (1, 0, -0));
#217 = AXIS2_PLACEMENT_3D('NONE', #214, #215, #216);
#218 = CYLINDRICAL_SURFACE('NONE', #217, 0.03175);
#219 = CARTESIAN_POINT('NONE', (0, -0.000762, -0));
#220 = DIRECTION('NONE', (0, -1, 0));
#221 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#222 = AXIS2_PLACEMENT_3D('NONE', #219, #220, #221);
#223 = CYLINDRICAL_SURFACE('NONE', #222, 0.015875);
#224 = CARTESIAN_POINT('NONE', (0, -0.001524, -0));
#225 = DIRECTION('NONE', (0, 1, 0));
#226 = AXIS2_PLACEMENT_3D('NONE', #224, #225, $);
#227 = PLANE('NONE', #226);
#228 = CARTESIAN_POINT('NONE', (0, 0, -0));
#229 = DIRECTION('NONE', (0, 1, 0));
#230 = AXIS2_PLACEMENT_3D('NONE', #228, #229, $);
#231 = PLANE('NONE', #230);
#232 = CARTESIAN_POINT('NONE', (-0, 0.017500599999999998, 0));
#233 = DIRECTION('NONE', (0, 1, 0));
#234 = DIRECTION('NONE', (1, 0, -0));
#235 = AXIS2_PLACEMENT_3D('NONE', #232, #233, #234);
#236 = CYLINDRICAL_SURFACE('NONE', #235, 0.0293751);
#237 = CARTESIAN_POINT('NONE', (0, 0.017500599999999998, -0));
#238 = DIRECTION('NONE', (0, -1, 0));
#239 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#240 = AXIS2_PLACEMENT_3D('NONE', #237, #238, #239);
#241 = CYLINDRICAL_SURFACE('NONE', #240, 0.015875);
#242 = CARTESIAN_POINT('NONE', (0, 0.015875, -0));
#243 = DIRECTION('NONE', (0, 1, 0));
#244 = AXIS2_PLACEMENT_3D('NONE', #242, #243, $);
#245 = PLANE('NONE', #244);
#246 = CARTESIAN_POINT('NONE', (0, 0.019126199999999996, -0));
#247 = DIRECTION('NONE', (0, 1, 0));
#248 = AXIS2_PLACEMENT_3D('NONE', #246, #247, $);
#249 = PLANE('NONE', #248);
#250 = CARTESIAN_POINT('NONE', (-0, 0.0079375, 0));
#251 = DIRECTION('NONE', (0, 1, 0));
#252 = DIRECTION('NONE', (1, 0, -0));
#253 = AXIS2_PLACEMENT_3D('NONE', #250, #251, #252);
#254 = CYLINDRICAL_SURFACE('NONE', #253, 0.0587375);
#255 = CARTESIAN_POINT('NONE', (0.044449999999999996, 0.0079375, 0.000000000000000005024295867788081));
#256 = DIRECTION('NONE', (0, -1, 0));
#257 = DIRECTION('NONE', (1, 0, -0.000000000000000388052796742256));
#258 = AXIS2_PLACEMENT_3D('NONE', #255, #256, #257);
#259 = CYLINDRICAL_SURFACE('NONE', #258, 0.0079375);
#260 = CARTESIAN_POINT('NONE', (0.000000000000000005024295867788082, 0.0079375, -0.044449999999999996));
#261 = DIRECTION('NONE', (0, -1, 0));
#262 = DIRECTION('NONE', (0.000000000000000016080646976370378, 0, -1));
#263 = AXIS2_PLACEMENT_3D('NONE', #260, #261, #262);
#264 = CYLINDRICAL_SURFACE('NONE', #263, 0.0079375);
#265 = CARTESIAN_POINT('NONE', (-0.04444999999999999, 0.0079375, -0.000000000000000010048591735576163));
#266 = DIRECTION('NONE', (-0, -1, 0));
#267 = DIRECTION('NONE', (-1, 0, 0.00000000000000021276806587672974));
#268 = AXIS2_PLACEMENT_3D('NONE', #265, #266, #267);
#269 = CYLINDRICAL_SURFACE('NONE', #268, 0.007937500000000007);
#270 = CARTESIAN_POINT('NONE', (-0.000000000000000010048591735576162, 0.0079375, 0.04444999999999999));
#271 = DIRECTION('NONE', (0, -1, 0));
#272 = DIRECTION('NONE', (0.000000000000000053563981987573816, 0, 1));
#273 = AXIS2_PLACEMENT_3D('NONE', #270, #271, #272);
#274 = CYLINDRICAL_SURFACE('NONE', #273, 0.007937500000000007);
#275 = CARTESIAN_POINT('NONE', (0, 0.0079375, -0));
#276 = DIRECTION('NONE', (0, -1, 0));
#277 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#278 = AXIS2_PLACEMENT_3D('NONE', #275, #276, #277);
#279 = CYLINDRICAL_SURFACE('NONE', #278, 0.015875);
#280 = CARTESIAN_POINT('NONE', (0, 0, -0));
#281 = DIRECTION('NONE', (0, 1, 0));
#282 = AXIS2_PLACEMENT_3D('NONE', #280, #281, $);
#283 = PLANE('NONE', #282);
#284 = CARTESIAN_POINT('NONE', (0, 0.015875, -0));
#285 = DIRECTION('NONE', (0, 1, 0));
#286 = AXIS2_PLACEMENT_3D('NONE', #284, #285, $);
#287 = PLANE('NONE', #286);
#288 = ORIENTED_EDGE('NONE', *, *, #184, .T.);
#289 = ORIENTED_EDGE('NONE', *, *, #186, .F.);
#290 = EDGE_LOOP('NONE', (#288));
#291 = FACE_BOUND('NONE', #290, .T.);
#292 = EDGE_LOOP('NONE', (#289));
#293 = FACE_BOUND('NONE', #292, .T.);
#294 = ADVANCED_FACE('NONE', (#291, #293), #218, .T.);
#295 = ORIENTED_EDGE('NONE', *, *, #187, .T.);
#296 = ORIENTED_EDGE('NONE', *, *, #189, .F.);
#297 = EDGE_LOOP('NONE', (#295));
#298 = FACE_BOUND('NONE', #297, .T.);
#299 = EDGE_LOOP('NONE', (#296));
#300 = FACE_BOUND('NONE', #299, .T.);
#301 = ADVANCED_FACE('NONE', (#298, #300), #223, .F.);
#302 = ORIENTED_EDGE('NONE', *, *, #184, .F.);
#303 = ORIENTED_EDGE('NONE', *, *, #187, .F.);
#304 = EDGE_LOOP('NONE', (#302));
#305 = FACE_BOUND('NONE', #304, .T.);
#306 = EDGE_LOOP('NONE', (#303));
#307 = FACE_BOUND('NONE', #306, .T.);
#308 = ADVANCED_FACE('NONE', (#305, #307), #227, .F.);
#309 = ORIENTED_EDGE('NONE', *, *, #186, .T.);
#310 = ORIENTED_EDGE('NONE', *, *, #189, .T.);
#311 = EDGE_LOOP('NONE', (#309));
#312 = FACE_BOUND('NONE', #311, .T.);
#313 = EDGE_LOOP('NONE', (#310));
#314 = FACE_BOUND('NONE', #313, .T.);
#315 = ADVANCED_FACE('NONE', (#312, #314), #231, .T.);
#316 = ORIENTED_EDGE('NONE', *, *, #190, .T.);
#317 = ORIENTED_EDGE('NONE', *, *, #192, .F.);
#318 = EDGE_LOOP('NONE', (#316));
#319 = FACE_BOUND('NONE', #318, .T.);
#320 = EDGE_LOOP('NONE', (#317));
#321 = FACE_BOUND('NONE', #320, .T.);
#322 = ADVANCED_FACE('NONE', (#319, #321), #236, .T.);
#323 = ORIENTED_EDGE('NONE', *, *, #193, .T.);
#324 = ORIENTED_EDGE('NONE', *, *, #195, .F.);
#325 = EDGE_LOOP('NONE', (#323));
#326 = FACE_BOUND('NONE', #325, .T.);
#327 = EDGE_LOOP('NONE', (#324));
#328 = FACE_BOUND('NONE', #327, .T.);
#329 = ADVANCED_FACE('NONE', (#326, #328), #241, .F.);
#330 = ORIENTED_EDGE('NONE', *, *, #190, .F.);
#331 = ORIENTED_EDGE('NONE', *, *, #193, .F.);
#332 = EDGE_LOOP('NONE', (#330));
#333 = FACE_BOUND('NONE', #332, .T.);
#334 = EDGE_LOOP('NONE', (#331));
#335 = FACE_BOUND('NONE', #334, .T.);
#336 = ADVANCED_FACE('NONE', (#333, #335), #245, .F.);
#337 = ORIENTED_EDGE('NONE', *, *, #192, .T.);
#338 = ORIENTED_EDGE('NONE', *, *, #195, .T.);
#339 = EDGE_LOOP('NONE', (#337));
#340 = FACE_BOUND('NONE', #339, .T.);
#341 = EDGE_LOOP('NONE', (#338));
#342 = FACE_BOUND('NONE', #341, .T.);
#343 = ADVANCED_FACE('NONE', (#340, #342), #249, .T.);
#344 = ORIENTED_EDGE('NONE', *, *, #196, .T.);
#345 = ORIENTED_EDGE('NONE', *, *, #198, .F.);
#346 = EDGE_LOOP('NONE', (#344));
#347 = FACE_BOUND('NONE', #346, .T.);
#348 = EDGE_LOOP('NONE', (#345));
#349 = FACE_BOUND('NONE', #348, .T.);
#350 = ADVANCED_FACE('NONE', (#347, #349), #254, .T.);
#351 = ORIENTED_EDGE('NONE', *, *, #199, .T.);
#352 = ORIENTED_EDGE('NONE', *, *, #201, .F.);
#353 = EDGE_LOOP('NONE', (#351));
#354 = FACE_BOUND('NONE', #353, .T.);
#355 = EDGE_LOOP('NONE', (#352));
#356 = FACE_BOUND('NONE', #355, .T.);
#357 = ADVANCED_FACE('NONE', (#354, #356), #259, .F.);
#358 = ORIENTED_EDGE('NONE', *, *, #202, .T.);
#359 = ORIENTED_EDGE('NONE', *, *, #204, .F.);
#360 = EDGE_LOOP('NONE', (#358));
#361 = FACE_BOUND('NONE', #360, .T.);
#362 = EDGE_LOOP('NONE', (#359));
#363 = FACE_BOUND('NONE', #362, .T.);
#364 = ADVANCED_FACE('NONE', (#361, #363), #264, .F.);
#365 = ORIENTED_EDGE('NONE', *, *, #205, .T.);
#366 = ORIENTED_EDGE('NONE', *, *, #207, .F.);
#367 = EDGE_LOOP('NONE', (#365));
#368 = FACE_BOUND('NONE', #367, .T.);
#369 = EDGE_LOOP('NONE', (#366));
#370 = FACE_BOUND('NONE', #369, .T.);
#371 = ADVANCED_FACE('NONE', (#368, #370), #269, .F.);
#372 = ORIENTED_EDGE('NONE', *, *, #208, .T.);
#373 = ORIENTED_EDGE('NONE', *, *, #210, .F.);
#374 = EDGE_LOOP('NONE', (#372));
#375 = FACE_BOUND('NONE', #374, .T.);
#376 = EDGE_LOOP('NONE', (#373));
#377 = FACE_BOUND('NONE', #376, .T.);
#378 = ADVANCED_FACE('NONE', (#375, #377), #274, .F.);
#379 = ORIENTED_EDGE('NONE', *, *, #211, .T.);
#380 = ORIENTED_EDGE('NONE', *, *, #213, .F.);
#381 = EDGE_LOOP('NONE', (#379));
#382 = FACE_BOUND('NONE', #381, .T.);
#383 = EDGE_LOOP('NONE', (#380));
#384 = FACE_BOUND('NONE', #383, .T.);
#385 = ADVANCED_FACE('NONE', (#382, #384), #279, .F.);
#386 = ORIENTED_EDGE('NONE', *, *, #196, .F.);
#387 = ORIENTED_EDGE('NONE', *, *, #199, .F.);
#388 = ORIENTED_EDGE('NONE', *, *, #202, .F.);
#389 = ORIENTED_EDGE('NONE', *, *, #205, .F.);
#390 = ORIENTED_EDGE('NONE', *, *, #208, .F.);
#391 = ORIENTED_EDGE('NONE', *, *, #211, .F.);
#392 = EDGE_LOOP('NONE', (#386));
#393 = FACE_BOUND('NONE', #392, .T.);
#394 = EDGE_LOOP('NONE', (#387));
#395 = FACE_BOUND('NONE', #394, .T.);
#396 = EDGE_LOOP('NONE', (#388));
#397 = FACE_BOUND('NONE', #396, .T.);
#398 = EDGE_LOOP('NONE', (#389));
#399 = FACE_BOUND('NONE', #398, .T.);
#400 = EDGE_LOOP('NONE', (#390));
#401 = FACE_BOUND('NONE', #400, .T.);
#402 = EDGE_LOOP('NONE', (#391));
#403 = FACE_BOUND('NONE', #402, .T.);
#404 = ADVANCED_FACE('NONE', (#393, #395, #397, #399, #401, #403), #283, .F.);
#405 = ORIENTED_EDGE('NONE', *, *, #198, .T.);
#406 = ORIENTED_EDGE('NONE', *, *, #201, .T.);
#407 = ORIENTED_EDGE('NONE', *, *, #204, .T.);
#408 = ORIENTED_EDGE('NONE', *, *, #207, .T.);
#409 = ORIENTED_EDGE('NONE', *, *, #210, .T.);
#410 = ORIENTED_EDGE('NONE', *, *, #213, .T.);
#411 = EDGE_LOOP('NONE', (#405));
#412 = FACE_BOUND('NONE', #411, .T.);
#413 = EDGE_LOOP('NONE', (#406));
#414 = FACE_BOUND('NONE', #413, .T.);
#415 = EDGE_LOOP('NONE', (#407));
#416 = FACE_BOUND('NONE', #415, .T.);
#417 = EDGE_LOOP('NONE', (#408));
#418 = FACE_BOUND('NONE', #417, .T.);
#419 = EDGE_LOOP('NONE', (#409));
#420 = FACE_BOUND('NONE', #419, .T.);
#421 = EDGE_LOOP('NONE', (#410));
#422 = FACE_BOUND('NONE', #421, .T.);
#423 = ADVANCED_FACE('NONE', (#412, #414, #416, #418, #420, #422), #287, .T.);
#424 = CLOSED_SHELL('NONE', (#294, #301, #308, #315));
#425 = CLOSED_SHELL('NONE', (#322, #329, #336, #343));
#426 = CLOSED_SHELL('NONE', (#350, #357, #364, #371, #378, #385, #404, #423));
#427 = MANIFOLD_SOLID_BREP('NONE', #424);
#428 = MANIFOLD_SOLID_BREP('NONE', #425);
#429 = MANIFOLD_SOLID_BREP('NONE', #426);
#430 = APPLICATION_CONTEXT('configuration controlled 3D design of mechanical parts and assemblies');
#431 = PRODUCT_DEFINITION_CONTEXT('part definition', #430, 'design');
#432 = PRODUCT('UNIDENTIFIED_PRODUCT', 'NONE', $, ());
#433 = PRODUCT_DEFINITION_FORMATION('', $, #432);
#434 = PRODUCT_DEFINITION('design', $, #433, #431);
#435 = PRODUCT_DEFINITION_SHAPE('NONE', $, #434);
#436 = ADVANCED_BREP_SHAPE_REPRESENTATION('NONE', (#429), #3);
#437 = SHAPE_DEFINITION_REPRESENTATION(#435, #436);
#438 = PRODUCT('UNIDENTIFIED_PRODUCT', 'NONE', $, ());
#439 = PRODUCT_DEFINITION_FORMATION('', $, #438);
#440 = PRODUCT_DEFINITION('design', $, #439, #431);
#441 = PRODUCT_DEFINITION_SHAPE('NONE', $, #440);
#442 = ADVANCED_BREP_SHAPE_REPRESENTATION('NONE', (#428), #3);
#443 = SHAPE_DEFINITION_REPRESENTATION(#441, #442);
#444 = PRODUCT('UNIDENTIFIED_PRODUCT', 'NONE', $, ());
#445 = PRODUCT_DEFINITION_FORMATION('', $, #444);
#446 = PRODUCT_DEFINITION('design', $, #445, #431);
#447 = PRODUCT_DEFINITION_SHAPE('NONE', $, #446);
#448 = ADVANCED_BREP_SHAPE_REPRESENTATION('NONE', (#427), #3);
#449 = SHAPE_DEFINITION_REPRESENTATION(#447, #448);
ENDSEC;
END-ISO-10303-21;

View File

@ -1,575 +0,0 @@
---
source: kcl-lib/src/simulation_tests.rs
description: Operations executed flange-with-patterns.kcl
---
[
{
"labeledArgs": {
"data": {
"value": {
"type": "String",
"value": "XY"
},
"sourceRange": [
883,
887,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
869,
888,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"data": {
"value": {
"type": "String",
"value": "XY"
},
"sourceRange": [
1227,
1231,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1213,
1232,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketches",
"value": [
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
}
]
},
"sourceRange": [
1315,
1322,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1324,
1325,
0
]
}
},
"name": "hole",
"sourceRange": [
1310,
1326,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1337,
1403,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1405,
1406,
0
]
}
},
"name": "hole",
"sourceRange": [
1332,
1407,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": 0.625,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1430,
1443,
0
]
}
},
"name": "extrude",
"sourceRange": [
1413,
1444,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1413,
1444,
0
]
}
},
{
"labeledArgs": {
"data": {
"value": {
"type": "Object",
"value": {
"plane": {
"type": "Object",
"value": {
"origin": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.625,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"xAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"yAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"zAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
}
}
}
}
},
"sourceRange": [
1747,
1759,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1733,
1760,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1852,
1918,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1920,
1921,
0
]
}
},
"name": "hole",
"sourceRange": [
1847,
1922,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": 0.1279999999999999,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1945,
1962,
0
]
}
},
"name": "extrude",
"sourceRange": [
1928,
1963,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1928,
1963,
0
]
}
},
{
"labeledArgs": {
"data": {
"value": {
"type": "String",
"value": "XY"
},
"sourceRange": [
2054,
2058,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
2040,
2059,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2154,
2220,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2222,
2223,
0
]
}
},
"name": "hole",
"sourceRange": [
2149,
2224,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": -0.06,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
2247,
2263,
0
]
}
},
"name": "extrude",
"sourceRange": [
2230,
2264,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2230,
2264,
0
]
}
}
]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +0,0 @@
---
source: kcl/src/simulation_tests.rs
description: Artifact graph flowchart flange-xy.kcl
extension: md
snapshot_kind: binary
---

View File

@ -1,131 +0,0 @@
```mermaid
flowchart LR
subgraph path2 [Path]
2["Path<br>[916, 982, 0]"]
3["Segment<br>[916, 982, 0]"]
4[Solid2d]
end
subgraph path5 [Path]
5["Path<br>[993, 1099, 0]"]
6["Segment<br>[993, 1099, 0]"]
7[Solid2d]
end
subgraph path8 [Path]
8["Path<br>[1114, 1220, 0]"]
9["Segment<br>[1114, 1220, 0]"]
10[Solid2d]
end
subgraph path11 [Path]
11["Path<br>[1235, 1342, 0]"]
12["Segment<br>[1235, 1342, 0]"]
13[Solid2d]
end
subgraph path14 [Path]
14["Path<br>[1357, 1464, 0]"]
15["Segment<br>[1357, 1464, 0]"]
16[Solid2d]
end
subgraph path17 [Path]
17["Path<br>[1479, 1545, 0]"]
18["Segment<br>[1479, 1545, 0]"]
19[Solid2d]
end
subgraph path27 [Path]
27["Path<br>[1915, 1990, 0]"]
28["Segment<br>[1915, 1990, 0]"]
29[Solid2d]
end
subgraph path30 [Path]
30["Path<br>[2001, 2067, 0]"]
31["Segment<br>[2001, 2067, 0]"]
32[Solid2d]
end
subgraph path40 [Path]
40["Path<br>[2214, 2292, 0]"]
41["Segment<br>[2214, 2292, 0]"]
42[Solid2d]
end
subgraph path43 [Path]
43["Path<br>[2303, 2369, 0]"]
44["Segment<br>[2303, 2369, 0]"]
45[Solid2d]
end
1["Plane<br>[891, 910, 0]"]
20["Sweep Extrusion<br>[1555, 1586, 0]"]
21[Wall]
22["Cap Start"]
23["Cap End"]
24["SweepEdge Opposite"]
25["SweepEdge Adjacent"]
26["Plane<br>[1875, 1909, 0]"]
33["Sweep Extrusion<br>[2077, 2112, 0]"]
34[Wall]
35["Cap Start"]
36["Cap End"]
37["SweepEdge Opposite"]
38["SweepEdge Adjacent"]
39["Plane<br>[2189, 2208, 0]"]
46["Sweep Extrusion<br>[2379, 2413, 0]"]
47[Wall]
48["Cap Start"]
49["Cap End"]
50["SweepEdge Opposite"]
51["SweepEdge Adjacent"]
1 --- 2
1 --- 5
1 --- 8
1 --- 11
1 --- 14
1 --- 17
2 --- 3
2 ---- 20
2 --- 4
3 --- 21
3 --- 24
3 --- 25
5 --- 6
5 --- 7
8 --- 9
8 --- 10
11 --- 12
11 --- 13
14 --- 15
14 --- 16
17 --- 18
17 --- 19
20 --- 21
20 --- 22
20 --- 23
20 --- 24
20 --- 25
26 --- 27
26 --- 30
27 --- 28
27 ---- 33
27 --- 29
28 --- 34
28 --- 37
28 --- 38
30 --- 31
30 --- 32
33 --- 34
33 --- 35
33 --- 36
33 --- 37
33 --- 38
39 --- 40
39 --- 43
40 --- 41
40 ---- 46
40 --- 42
41 --- 47
41 --- 50
41 --- 51
43 --- 44
43 --- 45
46 --- 47
46 --- 48
46 --- 49
46 --- 50
46 --- 51
```

File diff suppressed because it is too large Load Diff

View File

@ -1,467 +0,0 @@
ISO-10303-21;
HEADER;
FILE_DESCRIPTION((('zoo.dev export')), '2;1');
FILE_NAME('dump.step', '2021-01-01T00:00:00+00:00', ('Author unknown'), ('Organization unknown'), 'zoo.dev beta', 'zoo.dev', 'Authorization unknown');
FILE_SCHEMA(('AP203_CONFIGURATION_CONTROLLED_3D_DESIGN_OF_MECHANICAL_PARTS_AND_ASSEMBLIES_MIM_LF'));
ENDSEC;
DATA;
#1 = (
LENGTH_UNIT()
NAMED_UNIT(*)
SI_UNIT($, .METRE.)
);
#2 = UNCERTAINTY_MEASURE_WITH_UNIT(0.00001, #1, 'DISTANCE_ACCURACY_VALUE', $);
#3 = (
GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#2))
GLOBAL_UNIT_ASSIGNED_CONTEXT((#1))
REPRESENTATION_CONTEXT('', '3D')
);
#4 = CARTESIAN_POINT('NONE', (0.03175, -0.001524, -0));
#5 = VERTEX_POINT('NONE', #4);
#6 = CARTESIAN_POINT('NONE', (0.03175, 0, -0));
#7 = VERTEX_POINT('NONE', #6);
#8 = CARTESIAN_POINT('NONE', (0.015875, -0.001524, 0.000000000000000003888253587292846));
#9 = VERTEX_POINT('NONE', #8);
#10 = CARTESIAN_POINT('NONE', (0.015875, 0, 0.000000000000000003888253587292846));
#11 = VERTEX_POINT('NONE', #10);
#12 = CARTESIAN_POINT('NONE', (0.0293751, 0.015875, -0));
#13 = VERTEX_POINT('NONE', #12);
#14 = CARTESIAN_POINT('NONE', (0.0293751, 0.019126199999999996, -0));
#15 = VERTEX_POINT('NONE', #14);
#16 = CARTESIAN_POINT('NONE', (0.015875, 0.015875, 0.000000000000000003888253587292846));
#17 = VERTEX_POINT('NONE', #16);
#18 = CARTESIAN_POINT('NONE', (0.015875, 0.019126199999999996, 0.000000000000000003888253587292846));
#19 = VERTEX_POINT('NONE', #18);
#20 = CARTESIAN_POINT('NONE', (0.0587375, 0, -0));
#21 = VERTEX_POINT('NONE', #20);
#22 = CARTESIAN_POINT('NONE', (0.0587375, 0.015875, -0));
#23 = VERTEX_POINT('NONE', #22);
#24 = CARTESIAN_POINT('NONE', (0.0523875, 0, 0.000000000000000001944126793646423));
#25 = VERTEX_POINT('NONE', #24);
#26 = CARTESIAN_POINT('NONE', (0.0523875, 0.015875, 0.000000000000000001944126793646423));
#27 = VERTEX_POINT('NONE', #26);
#28 = CARTESIAN_POINT('NONE', (0.0079375, 0, -0.044449999999999996));
#29 = VERTEX_POINT('NONE', #28);
#30 = CARTESIAN_POINT('NONE', (0.0079375, 0.015875, -0.044449999999999996));
#31 = VERTEX_POINT('NONE', #30);
#32 = CARTESIAN_POINT('NONE', (-0.036512499999999996, 0, 0.000000000000000001944126793646423));
#33 = VERTEX_POINT('NONE', #32);
#34 = CARTESIAN_POINT('NONE', (-0.036512499999999996, 0.015875, 0.000000000000000001944126793646423));
#35 = VERTEX_POINT('NONE', #34);
#36 = CARTESIAN_POINT('NONE', (0.0079375, 0, 0.044449999999999996));
#37 = VERTEX_POINT('NONE', #36);
#38 = CARTESIAN_POINT('NONE', (0.0079375, 0.015875, 0.044449999999999996));
#39 = VERTEX_POINT('NONE', #38);
#40 = CARTESIAN_POINT('NONE', (0.015875, 0, 0.000000000000000003888253587292846));
#41 = VERTEX_POINT('NONE', #40);
#42 = CARTESIAN_POINT('NONE', (0.015875, 0.015875, 0.000000000000000003888253587292846));
#43 = VERTEX_POINT('NONE', #42);
#44 = DIRECTION('NONE', (1, 0, -0));
#45 = DIRECTION('NONE', (0, 1, 0));
#46 = CARTESIAN_POINT('NONE', (-0, -0.001524, 0));
#47 = AXIS2_PLACEMENT_3D('NONE', #46, #45, #44);
#48 = CIRCLE('NONE', #47, 0.03175);
#49 = DIRECTION('NONE', (0, 1, 0));
#50 = VECTOR('NONE', #49, 1);
#51 = CARTESIAN_POINT('NONE', (0.03175, -0.001524, -0));
#52 = LINE('NONE', #51, #50);
#53 = DIRECTION('NONE', (1, 0, -0));
#54 = DIRECTION('NONE', (0, 1, 0));
#55 = CARTESIAN_POINT('NONE', (-0, 0, 0));
#56 = AXIS2_PLACEMENT_3D('NONE', #55, #54, #53);
#57 = CIRCLE('NONE', #56, 0.03175);
#58 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#59 = DIRECTION('NONE', (0, -1, 0));
#60 = CARTESIAN_POINT('NONE', (0, -0.001524, -0));
#61 = AXIS2_PLACEMENT_3D('NONE', #60, #59, #58);
#62 = CIRCLE('NONE', #61, 0.015875);
#63 = DIRECTION('NONE', (0, 1, 0));
#64 = VECTOR('NONE', #63, 1);
#65 = CARTESIAN_POINT('NONE', (0.015875, -0.001524, 0.000000000000000003888253587292846));
#66 = LINE('NONE', #65, #64);
#67 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#68 = DIRECTION('NONE', (0, -1, 0));
#69 = CARTESIAN_POINT('NONE', (0, -0, -0));
#70 = AXIS2_PLACEMENT_3D('NONE', #69, #68, #67);
#71 = CIRCLE('NONE', #70, 0.015875);
#72 = DIRECTION('NONE', (1, 0, -0));
#73 = DIRECTION('NONE', (0, 1, 0));
#74 = CARTESIAN_POINT('NONE', (-0, 0.015875, 0));
#75 = AXIS2_PLACEMENT_3D('NONE', #74, #73, #72);
#76 = CIRCLE('NONE', #75, 0.0293751);
#77 = DIRECTION('NONE', (0, 1, 0));
#78 = VECTOR('NONE', #77, 1);
#79 = CARTESIAN_POINT('NONE', (0.0293751, 0.015875, -0));
#80 = LINE('NONE', #79, #78);
#81 = DIRECTION('NONE', (1, 0, -0));
#82 = DIRECTION('NONE', (0, 1, 0));
#83 = CARTESIAN_POINT('NONE', (-0, 0.019126199999999996, 0));
#84 = AXIS2_PLACEMENT_3D('NONE', #83, #82, #81);
#85 = CIRCLE('NONE', #84, 0.0293751);
#86 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#87 = DIRECTION('NONE', (0, -1, 0));
#88 = CARTESIAN_POINT('NONE', (0, 0.015875, -0));
#89 = AXIS2_PLACEMENT_3D('NONE', #88, #87, #86);
#90 = CIRCLE('NONE', #89, 0.015875);
#91 = DIRECTION('NONE', (0, 1, 0));
#92 = VECTOR('NONE', #91, 1);
#93 = CARTESIAN_POINT('NONE', (0.015875, 0.015875, 0.000000000000000003888253587292846));
#94 = LINE('NONE', #93, #92);
#95 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#96 = DIRECTION('NONE', (0, -1, 0));
#97 = CARTESIAN_POINT('NONE', (0, 0.019126199999999996, -0));
#98 = AXIS2_PLACEMENT_3D('NONE', #97, #96, #95);
#99 = CIRCLE('NONE', #98, 0.015875);
#100 = DIRECTION('NONE', (1, 0, -0));
#101 = DIRECTION('NONE', (0, 1, 0));
#102 = CARTESIAN_POINT('NONE', (-0, 0, 0));
#103 = AXIS2_PLACEMENT_3D('NONE', #102, #101, #100);
#104 = CIRCLE('NONE', #103, 0.0587375);
#105 = DIRECTION('NONE', (0, 1, 0));
#106 = VECTOR('NONE', #105, 1);
#107 = CARTESIAN_POINT('NONE', (0.0587375, 0, -0));
#108 = LINE('NONE', #107, #106);
#109 = DIRECTION('NONE', (1, 0, -0));
#110 = DIRECTION('NONE', (0, 1, 0));
#111 = CARTESIAN_POINT('NONE', (-0, 0.015875, 0));
#112 = AXIS2_PLACEMENT_3D('NONE', #111, #110, #109);
#113 = CIRCLE('NONE', #112, 0.0587375);
#114 = DIRECTION('NONE', (1, 0, -0.000000000000000388052796742256));
#115 = DIRECTION('NONE', (0, -1, 0));
#116 = CARTESIAN_POINT('NONE', (0.044449999999999996, -0, 0.000000000000000005024295867788081));
#117 = AXIS2_PLACEMENT_3D('NONE', #116, #115, #114);
#118 = CIRCLE('NONE', #117, 0.0079375);
#119 = DIRECTION('NONE', (0, 1, 0));
#120 = VECTOR('NONE', #119, 1);
#121 = CARTESIAN_POINT('NONE', (0.0523875, 0, 0.000000000000000001944126793646423));
#122 = LINE('NONE', #121, #120);
#123 = DIRECTION('NONE', (1, 0, -0.000000000000000388052796742256));
#124 = DIRECTION('NONE', (0, -1, 0));
#125 = CARTESIAN_POINT('NONE', (0.044449999999999996, 0.015875, 0.000000000000000005024295867788081));
#126 = AXIS2_PLACEMENT_3D('NONE', #125, #124, #123);
#127 = CIRCLE('NONE', #126, 0.0079375);
#128 = DIRECTION('NONE', (1, 0, -0));
#129 = DIRECTION('NONE', (0, -1, 0));
#130 = CARTESIAN_POINT('NONE', (0.0000000000000000025121479338940404, -0, -0.044449999999999996));
#131 = AXIS2_PLACEMENT_3D('NONE', #130, #129, #128);
#132 = CIRCLE('NONE', #131, 0.007937499999999997);
#133 = DIRECTION('NONE', (0, 1, 0));
#134 = VECTOR('NONE', #133, 1);
#135 = CARTESIAN_POINT('NONE', (0.0079375, 0, -0.044449999999999996));
#136 = LINE('NONE', #135, #134);
#137 = DIRECTION('NONE', (1, 0, -0));
#138 = DIRECTION('NONE', (0, -1, 0));
#139 = CARTESIAN_POINT('NONE', (0.0000000000000000025121479338940404, 0.015875, -0.044449999999999996));
#140 = AXIS2_PLACEMENT_3D('NONE', #139, #138, #137);
#141 = CIRCLE('NONE', #140, 0.007937499999999997);
#142 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#143 = DIRECTION('NONE', (0, -1, 0));
#144 = CARTESIAN_POINT('NONE', (-0.044449999999999996, -0, -0));
#145 = AXIS2_PLACEMENT_3D('NONE', #144, #143, #142);
#146 = CIRCLE('NONE', #145, 0.0079375);
#147 = DIRECTION('NONE', (0, 1, 0));
#148 = VECTOR('NONE', #147, 1);
#149 = CARTESIAN_POINT('NONE', (-0.036512499999999996, 0, 0.000000000000000001944126793646423));
#150 = LINE('NONE', #149, #148);
#151 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#152 = DIRECTION('NONE', (0, -1, 0));
#153 = CARTESIAN_POINT('NONE', (-0.044449999999999996, 0.015875, -0));
#154 = AXIS2_PLACEMENT_3D('NONE', #153, #152, #151);
#155 = CIRCLE('NONE', #154, 0.0079375);
#156 = DIRECTION('NONE', (1, 0, -0));
#157 = DIRECTION('NONE', (0, -1, 0));
#158 = CARTESIAN_POINT('NONE', (-0.000000000000000005024295867788081, -0, 0.044449999999999996));
#159 = AXIS2_PLACEMENT_3D('NONE', #158, #157, #156);
#160 = CIRCLE('NONE', #159, 0.007937500000000005);
#161 = DIRECTION('NONE', (0, 1, 0));
#162 = VECTOR('NONE', #161, 1);
#163 = CARTESIAN_POINT('NONE', (0.0079375, 0, 0.044449999999999996));
#164 = LINE('NONE', #163, #162);
#165 = DIRECTION('NONE', (1, 0, -0));
#166 = DIRECTION('NONE', (0, -1, 0));
#167 = CARTESIAN_POINT('NONE', (-0.000000000000000005024295867788081, 0.015875, 0.044449999999999996));
#168 = AXIS2_PLACEMENT_3D('NONE', #167, #166, #165);
#169 = CIRCLE('NONE', #168, 0.007937500000000005);
#170 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#171 = DIRECTION('NONE', (0, -1, 0));
#172 = CARTESIAN_POINT('NONE', (0, -0, -0));
#173 = AXIS2_PLACEMENT_3D('NONE', #172, #171, #170);
#174 = CIRCLE('NONE', #173, 0.015875);
#175 = DIRECTION('NONE', (0, 1, 0));
#176 = VECTOR('NONE', #175, 1);
#177 = CARTESIAN_POINT('NONE', (0.015875, 0, 0.000000000000000003888253587292846));
#178 = LINE('NONE', #177, #176);
#179 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#180 = DIRECTION('NONE', (0, -1, 0));
#181 = CARTESIAN_POINT('NONE', (0, 0.015875, -0));
#182 = AXIS2_PLACEMENT_3D('NONE', #181, #180, #179);
#183 = CIRCLE('NONE', #182, 0.015875);
#184 = EDGE_CURVE('NONE', #5, #5, #48, .T.);
#185 = EDGE_CURVE('NONE', #5, #7, #52, .T.);
#186 = EDGE_CURVE('NONE', #7, #7, #57, .T.);
#187 = EDGE_CURVE('NONE', #9, #9, #62, .T.);
#188 = EDGE_CURVE('NONE', #9, #11, #66, .T.);
#189 = EDGE_CURVE('NONE', #11, #11, #71, .T.);
#190 = EDGE_CURVE('NONE', #13, #13, #76, .T.);
#191 = EDGE_CURVE('NONE', #13, #15, #80, .T.);
#192 = EDGE_CURVE('NONE', #15, #15, #85, .T.);
#193 = EDGE_CURVE('NONE', #17, #17, #90, .T.);
#194 = EDGE_CURVE('NONE', #17, #19, #94, .T.);
#195 = EDGE_CURVE('NONE', #19, #19, #99, .T.);
#196 = EDGE_CURVE('NONE', #21, #21, #104, .T.);
#197 = EDGE_CURVE('NONE', #21, #23, #108, .T.);
#198 = EDGE_CURVE('NONE', #23, #23, #113, .T.);
#199 = EDGE_CURVE('NONE', #25, #25, #118, .T.);
#200 = EDGE_CURVE('NONE', #25, #27, #122, .T.);
#201 = EDGE_CURVE('NONE', #27, #27, #127, .T.);
#202 = EDGE_CURVE('NONE', #29, #29, #132, .T.);
#203 = EDGE_CURVE('NONE', #29, #31, #136, .T.);
#204 = EDGE_CURVE('NONE', #31, #31, #141, .T.);
#205 = EDGE_CURVE('NONE', #33, #33, #146, .T.);
#206 = EDGE_CURVE('NONE', #33, #35, #150, .T.);
#207 = EDGE_CURVE('NONE', #35, #35, #155, .T.);
#208 = EDGE_CURVE('NONE', #37, #37, #160, .T.);
#209 = EDGE_CURVE('NONE', #37, #39, #164, .T.);
#210 = EDGE_CURVE('NONE', #39, #39, #169, .T.);
#211 = EDGE_CURVE('NONE', #41, #41, #174, .T.);
#212 = EDGE_CURVE('NONE', #41, #43, #178, .T.);
#213 = EDGE_CURVE('NONE', #43, #43, #183, .T.);
#214 = CARTESIAN_POINT('NONE', (-0, -0.000762, 0));
#215 = DIRECTION('NONE', (0, 1, 0));
#216 = DIRECTION('NONE', (1, 0, -0));
#217 = AXIS2_PLACEMENT_3D('NONE', #214, #215, #216);
#218 = CYLINDRICAL_SURFACE('NONE', #217, 0.03175);
#219 = CARTESIAN_POINT('NONE', (0, -0.000762, -0));
#220 = DIRECTION('NONE', (0, -1, 0));
#221 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#222 = AXIS2_PLACEMENT_3D('NONE', #219, #220, #221);
#223 = CYLINDRICAL_SURFACE('NONE', #222, 0.015875);
#224 = CARTESIAN_POINT('NONE', (0, -0.001524, -0));
#225 = DIRECTION('NONE', (0, 1, 0));
#226 = AXIS2_PLACEMENT_3D('NONE', #224, #225, $);
#227 = PLANE('NONE', #226);
#228 = CARTESIAN_POINT('NONE', (0, 0, -0));
#229 = DIRECTION('NONE', (0, 1, 0));
#230 = AXIS2_PLACEMENT_3D('NONE', #228, #229, $);
#231 = PLANE('NONE', #230);
#232 = CARTESIAN_POINT('NONE', (-0, 0.017500599999999998, 0));
#233 = DIRECTION('NONE', (0, 1, 0));
#234 = DIRECTION('NONE', (1, 0, -0));
#235 = AXIS2_PLACEMENT_3D('NONE', #232, #233, #234);
#236 = CYLINDRICAL_SURFACE('NONE', #235, 0.0293751);
#237 = CARTESIAN_POINT('NONE', (0, 0.017500599999999998, -0));
#238 = DIRECTION('NONE', (0, -1, 0));
#239 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#240 = AXIS2_PLACEMENT_3D('NONE', #237, #238, #239);
#241 = CYLINDRICAL_SURFACE('NONE', #240, 0.015875);
#242 = CARTESIAN_POINT('NONE', (0, 0.015875, -0));
#243 = DIRECTION('NONE', (0, 1, 0));
#244 = AXIS2_PLACEMENT_3D('NONE', #242, #243, $);
#245 = PLANE('NONE', #244);
#246 = CARTESIAN_POINT('NONE', (0, 0.019126199999999996, -0));
#247 = DIRECTION('NONE', (0, 1, 0));
#248 = AXIS2_PLACEMENT_3D('NONE', #246, #247, $);
#249 = PLANE('NONE', #248);
#250 = CARTESIAN_POINT('NONE', (-0, 0.0079375, 0));
#251 = DIRECTION('NONE', (0, 1, 0));
#252 = DIRECTION('NONE', (1, 0, -0));
#253 = AXIS2_PLACEMENT_3D('NONE', #250, #251, #252);
#254 = CYLINDRICAL_SURFACE('NONE', #253, 0.0587375);
#255 = CARTESIAN_POINT('NONE', (0.044449999999999996, 0.0079375, 0.000000000000000005024295867788081));
#256 = DIRECTION('NONE', (0, -1, 0));
#257 = DIRECTION('NONE', (1, 0, -0.000000000000000388052796742256));
#258 = AXIS2_PLACEMENT_3D('NONE', #255, #256, #257);
#259 = CYLINDRICAL_SURFACE('NONE', #258, 0.0079375);
#260 = CARTESIAN_POINT('NONE', (0.0000000000000000025121479338940404, 0.0079375, -0.044449999999999996));
#261 = DIRECTION('NONE', (0, -1, 0));
#262 = DIRECTION('NONE', (1, 0, -0));
#263 = AXIS2_PLACEMENT_3D('NONE', #260, #261, #262);
#264 = CYLINDRICAL_SURFACE('NONE', #263, 0.007937499999999997);
#265 = CARTESIAN_POINT('NONE', (-0.044449999999999996, 0.0079375, -0));
#266 = DIRECTION('NONE', (0, -1, 0));
#267 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#268 = AXIS2_PLACEMENT_3D('NONE', #265, #266, #267);
#269 = CYLINDRICAL_SURFACE('NONE', #268, 0.0079375);
#270 = CARTESIAN_POINT('NONE', (-0.000000000000000005024295867788081, 0.0079375, 0.044449999999999996));
#271 = DIRECTION('NONE', (0, -1, 0));
#272 = DIRECTION('NONE', (1, 0, -0));
#273 = AXIS2_PLACEMENT_3D('NONE', #270, #271, #272);
#274 = CYLINDRICAL_SURFACE('NONE', #273, 0.007937500000000005);
#275 = CARTESIAN_POINT('NONE', (0, 0.0079375, -0));
#276 = DIRECTION('NONE', (0, -1, 0));
#277 = DIRECTION('NONE', (1, 0, 0.00000000000000024492935982947064));
#278 = AXIS2_PLACEMENT_3D('NONE', #275, #276, #277);
#279 = CYLINDRICAL_SURFACE('NONE', #278, 0.015875);
#280 = CARTESIAN_POINT('NONE', (0, 0, -0));
#281 = DIRECTION('NONE', (0, 1, 0));
#282 = AXIS2_PLACEMENT_3D('NONE', #280, #281, $);
#283 = PLANE('NONE', #282);
#284 = CARTESIAN_POINT('NONE', (0, 0.015875, -0));
#285 = DIRECTION('NONE', (0, 1, 0));
#286 = AXIS2_PLACEMENT_3D('NONE', #284, #285, $);
#287 = PLANE('NONE', #286);
#288 = ORIENTED_EDGE('NONE', *, *, #184, .T.);
#289 = ORIENTED_EDGE('NONE', *, *, #186, .F.);
#290 = EDGE_LOOP('NONE', (#288));
#291 = FACE_BOUND('NONE', #290, .T.);
#292 = EDGE_LOOP('NONE', (#289));
#293 = FACE_BOUND('NONE', #292, .T.);
#294 = ADVANCED_FACE('NONE', (#291, #293), #218, .T.);
#295 = ORIENTED_EDGE('NONE', *, *, #187, .T.);
#296 = ORIENTED_EDGE('NONE', *, *, #189, .F.);
#297 = EDGE_LOOP('NONE', (#295));
#298 = FACE_BOUND('NONE', #297, .T.);
#299 = EDGE_LOOP('NONE', (#296));
#300 = FACE_BOUND('NONE', #299, .T.);
#301 = ADVANCED_FACE('NONE', (#298, #300), #223, .F.);
#302 = ORIENTED_EDGE('NONE', *, *, #184, .F.);
#303 = ORIENTED_EDGE('NONE', *, *, #187, .F.);
#304 = EDGE_LOOP('NONE', (#302));
#305 = FACE_BOUND('NONE', #304, .T.);
#306 = EDGE_LOOP('NONE', (#303));
#307 = FACE_BOUND('NONE', #306, .T.);
#308 = ADVANCED_FACE('NONE', (#305, #307), #227, .F.);
#309 = ORIENTED_EDGE('NONE', *, *, #186, .T.);
#310 = ORIENTED_EDGE('NONE', *, *, #189, .T.);
#311 = EDGE_LOOP('NONE', (#309));
#312 = FACE_BOUND('NONE', #311, .T.);
#313 = EDGE_LOOP('NONE', (#310));
#314 = FACE_BOUND('NONE', #313, .T.);
#315 = ADVANCED_FACE('NONE', (#312, #314), #231, .T.);
#316 = ORIENTED_EDGE('NONE', *, *, #190, .T.);
#317 = ORIENTED_EDGE('NONE', *, *, #192, .F.);
#318 = EDGE_LOOP('NONE', (#316));
#319 = FACE_BOUND('NONE', #318, .T.);
#320 = EDGE_LOOP('NONE', (#317));
#321 = FACE_BOUND('NONE', #320, .T.);
#322 = ADVANCED_FACE('NONE', (#319, #321), #236, .T.);
#323 = ORIENTED_EDGE('NONE', *, *, #193, .T.);
#324 = ORIENTED_EDGE('NONE', *, *, #195, .F.);
#325 = EDGE_LOOP('NONE', (#323));
#326 = FACE_BOUND('NONE', #325, .T.);
#327 = EDGE_LOOP('NONE', (#324));
#328 = FACE_BOUND('NONE', #327, .T.);
#329 = ADVANCED_FACE('NONE', (#326, #328), #241, .F.);
#330 = ORIENTED_EDGE('NONE', *, *, #190, .F.);
#331 = ORIENTED_EDGE('NONE', *, *, #193, .F.);
#332 = EDGE_LOOP('NONE', (#330));
#333 = FACE_BOUND('NONE', #332, .T.);
#334 = EDGE_LOOP('NONE', (#331));
#335 = FACE_BOUND('NONE', #334, .T.);
#336 = ADVANCED_FACE('NONE', (#333, #335), #245, .F.);
#337 = ORIENTED_EDGE('NONE', *, *, #192, .T.);
#338 = ORIENTED_EDGE('NONE', *, *, #195, .T.);
#339 = EDGE_LOOP('NONE', (#337));
#340 = FACE_BOUND('NONE', #339, .T.);
#341 = EDGE_LOOP('NONE', (#338));
#342 = FACE_BOUND('NONE', #341, .T.);
#343 = ADVANCED_FACE('NONE', (#340, #342), #249, .T.);
#344 = ORIENTED_EDGE('NONE', *, *, #196, .T.);
#345 = ORIENTED_EDGE('NONE', *, *, #198, .F.);
#346 = EDGE_LOOP('NONE', (#344));
#347 = FACE_BOUND('NONE', #346, .T.);
#348 = EDGE_LOOP('NONE', (#345));
#349 = FACE_BOUND('NONE', #348, .T.);
#350 = ADVANCED_FACE('NONE', (#347, #349), #254, .T.);
#351 = ORIENTED_EDGE('NONE', *, *, #199, .T.);
#352 = ORIENTED_EDGE('NONE', *, *, #201, .F.);
#353 = EDGE_LOOP('NONE', (#351));
#354 = FACE_BOUND('NONE', #353, .T.);
#355 = EDGE_LOOP('NONE', (#352));
#356 = FACE_BOUND('NONE', #355, .T.);
#357 = ADVANCED_FACE('NONE', (#354, #356), #259, .F.);
#358 = ORIENTED_EDGE('NONE', *, *, #202, .T.);
#359 = ORIENTED_EDGE('NONE', *, *, #204, .F.);
#360 = EDGE_LOOP('NONE', (#358));
#361 = FACE_BOUND('NONE', #360, .T.);
#362 = EDGE_LOOP('NONE', (#359));
#363 = FACE_BOUND('NONE', #362, .T.);
#364 = ADVANCED_FACE('NONE', (#361, #363), #264, .F.);
#365 = ORIENTED_EDGE('NONE', *, *, #205, .T.);
#366 = ORIENTED_EDGE('NONE', *, *, #207, .F.);
#367 = EDGE_LOOP('NONE', (#365));
#368 = FACE_BOUND('NONE', #367, .T.);
#369 = EDGE_LOOP('NONE', (#366));
#370 = FACE_BOUND('NONE', #369, .T.);
#371 = ADVANCED_FACE('NONE', (#368, #370), #269, .F.);
#372 = ORIENTED_EDGE('NONE', *, *, #208, .T.);
#373 = ORIENTED_EDGE('NONE', *, *, #210, .F.);
#374 = EDGE_LOOP('NONE', (#372));
#375 = FACE_BOUND('NONE', #374, .T.);
#376 = EDGE_LOOP('NONE', (#373));
#377 = FACE_BOUND('NONE', #376, .T.);
#378 = ADVANCED_FACE('NONE', (#375, #377), #274, .F.);
#379 = ORIENTED_EDGE('NONE', *, *, #211, .T.);
#380 = ORIENTED_EDGE('NONE', *, *, #213, .F.);
#381 = EDGE_LOOP('NONE', (#379));
#382 = FACE_BOUND('NONE', #381, .T.);
#383 = EDGE_LOOP('NONE', (#380));
#384 = FACE_BOUND('NONE', #383, .T.);
#385 = ADVANCED_FACE('NONE', (#382, #384), #279, .F.);
#386 = ORIENTED_EDGE('NONE', *, *, #196, .F.);
#387 = ORIENTED_EDGE('NONE', *, *, #199, .F.);
#388 = ORIENTED_EDGE('NONE', *, *, #202, .F.);
#389 = ORIENTED_EDGE('NONE', *, *, #205, .F.);
#390 = ORIENTED_EDGE('NONE', *, *, #208, .F.);
#391 = ORIENTED_EDGE('NONE', *, *, #211, .F.);
#392 = EDGE_LOOP('NONE', (#386));
#393 = FACE_BOUND('NONE', #392, .T.);
#394 = EDGE_LOOP('NONE', (#387));
#395 = FACE_BOUND('NONE', #394, .T.);
#396 = EDGE_LOOP('NONE', (#388));
#397 = FACE_BOUND('NONE', #396, .T.);
#398 = EDGE_LOOP('NONE', (#389));
#399 = FACE_BOUND('NONE', #398, .T.);
#400 = EDGE_LOOP('NONE', (#390));
#401 = FACE_BOUND('NONE', #400, .T.);
#402 = EDGE_LOOP('NONE', (#391));
#403 = FACE_BOUND('NONE', #402, .T.);
#404 = ADVANCED_FACE('NONE', (#393, #395, #397, #399, #401, #403), #283, .F.);
#405 = ORIENTED_EDGE('NONE', *, *, #198, .T.);
#406 = ORIENTED_EDGE('NONE', *, *, #201, .T.);
#407 = ORIENTED_EDGE('NONE', *, *, #204, .T.);
#408 = ORIENTED_EDGE('NONE', *, *, #207, .T.);
#409 = ORIENTED_EDGE('NONE', *, *, #210, .T.);
#410 = ORIENTED_EDGE('NONE', *, *, #213, .T.);
#411 = EDGE_LOOP('NONE', (#405));
#412 = FACE_BOUND('NONE', #411, .T.);
#413 = EDGE_LOOP('NONE', (#406));
#414 = FACE_BOUND('NONE', #413, .T.);
#415 = EDGE_LOOP('NONE', (#407));
#416 = FACE_BOUND('NONE', #415, .T.);
#417 = EDGE_LOOP('NONE', (#408));
#418 = FACE_BOUND('NONE', #417, .T.);
#419 = EDGE_LOOP('NONE', (#409));
#420 = FACE_BOUND('NONE', #419, .T.);
#421 = EDGE_LOOP('NONE', (#410));
#422 = FACE_BOUND('NONE', #421, .T.);
#423 = ADVANCED_FACE('NONE', (#412, #414, #416, #418, #420, #422), #287, .T.);
#424 = CLOSED_SHELL('NONE', (#294, #301, #308, #315));
#425 = CLOSED_SHELL('NONE', (#322, #329, #336, #343));
#426 = CLOSED_SHELL('NONE', (#350, #357, #364, #371, #378, #385, #404, #423));
#427 = MANIFOLD_SOLID_BREP('NONE', #424);
#428 = MANIFOLD_SOLID_BREP('NONE', #425);
#429 = MANIFOLD_SOLID_BREP('NONE', #426);
#430 = APPLICATION_CONTEXT('configuration controlled 3D design of mechanical parts and assemblies');
#431 = PRODUCT_DEFINITION_CONTEXT('part definition', #430, 'design');
#432 = PRODUCT('UNIDENTIFIED_PRODUCT', 'NONE', $, ());
#433 = PRODUCT_DEFINITION_FORMATION('', $, #432);
#434 = PRODUCT_DEFINITION('design', $, #433, #431);
#435 = PRODUCT_DEFINITION_SHAPE('NONE', $, #434);
#436 = ADVANCED_BREP_SHAPE_REPRESENTATION('NONE', (#429), #3);
#437 = SHAPE_DEFINITION_REPRESENTATION(#435, #436);
#438 = PRODUCT('UNIDENTIFIED_PRODUCT', 'NONE', $, ());
#439 = PRODUCT_DEFINITION_FORMATION('', $, #438);
#440 = PRODUCT_DEFINITION('design', $, #439, #431);
#441 = PRODUCT_DEFINITION_SHAPE('NONE', $, #440);
#442 = ADVANCED_BREP_SHAPE_REPRESENTATION('NONE', (#428), #3);
#443 = SHAPE_DEFINITION_REPRESENTATION(#441, #442);
#444 = PRODUCT('UNIDENTIFIED_PRODUCT', 'NONE', $, ());
#445 = PRODUCT_DEFINITION_FORMATION('', $, #444);
#446 = PRODUCT_DEFINITION('design', $, #445, #431);
#447 = PRODUCT_DEFINITION_SHAPE('NONE', $, #446);
#448 = ADVANCED_BREP_SHAPE_REPRESENTATION('NONE', (#427), #3);
#449 = SHAPE_DEFINITION_REPRESENTATION(#447, #448);
ENDSEC;
END-ISO-10303-21;

View File

@ -1,666 +0,0 @@
---
source: kcl-lib/src/simulation_tests.rs
description: Operations executed flange-xy.kcl
---
[
{
"labeledArgs": {
"data": {
"value": {
"type": "String",
"value": "XY"
},
"sourceRange": [
905,
909,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
891,
910,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
993,
1099,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1101,
1102,
0
]
}
},
"name": "hole",
"sourceRange": [
988,
1103,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1114,
1220,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1222,
1223,
0
]
}
},
"name": "hole",
"sourceRange": [
1109,
1224,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1235,
1342,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1344,
1345,
0
]
}
},
"name": "hole",
"sourceRange": [
1230,
1346,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1357,
1464,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1466,
1467,
0
]
}
},
"name": "hole",
"sourceRange": [
1352,
1468,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1479,
1545,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1547,
1548,
0
]
}
},
"name": "hole",
"sourceRange": [
1474,
1549,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": 0.625,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1572,
1585,
0
]
}
},
"name": "extrude",
"sourceRange": [
1555,
1586,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1555,
1586,
0
]
}
},
{
"labeledArgs": {
"data": {
"value": {
"type": "Object",
"value": {
"plane": {
"type": "Object",
"value": {
"origin": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.625,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"xAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"yAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"zAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
}
}
}
}
},
"sourceRange": [
1889,
1901,
0
]
},
"tag": {
"value": {
"type": "String",
"value": "end"
},
"sourceRange": [
1903,
1908,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1875,
1909,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2001,
2067,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2069,
2070,
0
]
}
},
"name": "hole",
"sourceRange": [
1996,
2071,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": 0.1279999999999999,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
2094,
2111,
0
]
}
},
"name": "extrude",
"sourceRange": [
2077,
2112,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2077,
2112,
0
]
}
},
{
"labeledArgs": {
"data": {
"value": {
"type": "String",
"value": "XY"
},
"sourceRange": [
2203,
2207,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
2189,
2208,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2303,
2369,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2371,
2372,
0
]
}
},
"name": "hole",
"sourceRange": [
2298,
2373,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": -0.06,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
2396,
2412,
0
]
}
},
"name": "extrude",
"sourceRange": [
2379,
2413,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
2379,
2413,
0
]
}
}
]

View File

@ -1,715 +0,0 @@
---
source: kcl-lib/src/simulation_tests.rs
description: Variables in memory after executing flange-xy.kcl
---
{
"baseDia": {
"type": "Number",
"value": 4.625,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"baseThickness": {
"type": "Number",
"value": 0.625,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"bottomExtrusion": {
"type": "Solid",
"value": {
"type": "Solid",
"id": "[uuid]",
"artifactId": "[uuid]",
"value": [
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
2214,
2292,
0
],
"tag": null,
"type": "extrudeArc"
}
],
"sketch": {
"type": "Sketch",
"id": "[uuid]",
"paths": [
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
2214,
2292,
0
]
},
"ccw": true,
"center": [
0.0,
0.0
],
"from": [
1.25,
0.0
],
"radius": 1.25,
"tag": null,
"to": [
1.25,
0.0
],
"type": "Circle",
"units": {
"type": "Inches"
}
}
],
"on": {
"type": "plane",
"id": "[uuid]",
"artifactId": "[uuid]",
"value": "XY",
"origin": {
"x": 0.0,
"y": 0.0,
"z": 0.0
},
"xAxis": {
"x": 1.0,
"y": 0.0,
"z": 0.0
},
"yAxis": {
"x": 0.0,
"y": 1.0,
"z": 0.0
},
"zAxis": {
"x": 0.0,
"y": 0.0,
"z": 1.0
},
"units": {
"type": "Inches"
}
},
"start": {
"from": [
1.25,
0.0
],
"to": [
1.25,
0.0
],
"units": {
"type": "Inches"
},
"tag": null,
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
2214,
2292,
0
]
}
},
"artifactId": "[uuid]",
"originalId": "[uuid]",
"units": {
"type": "Inches"
}
},
"height": -0.06,
"startCapId": "[uuid]",
"endCapId": "[uuid]",
"units": {
"type": "Inches"
}
}
},
"bottomThickness": {
"type": "Number",
"value": 0.06,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"bottomTotalDiameter": {
"type": "Number",
"value": 2.5,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"flangeBase": {
"type": "Solid",
"value": {
"type": "Solid",
"id": "[uuid]",
"artifactId": "[uuid]",
"value": [
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
916,
982,
0
],
"tag": null,
"type": "extrudeArc"
}
],
"sketch": {
"type": "Sketch",
"id": "[uuid]",
"paths": [
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
916,
982,
0
]
},
"ccw": true,
"center": [
0.0,
0.0
],
"from": [
2.3125,
0.0
],
"radius": 2.3125,
"tag": null,
"to": [
2.3125,
0.0
],
"type": "Circle",
"units": {
"type": "Inches"
}
}
],
"on": {
"type": "plane",
"id": "[uuid]",
"artifactId": "[uuid]",
"value": "XY",
"origin": {
"x": 0.0,
"y": 0.0,
"z": 0.0
},
"xAxis": {
"x": 1.0,
"y": 0.0,
"z": 0.0
},
"yAxis": {
"x": 0.0,
"y": 1.0,
"z": 0.0
},
"zAxis": {
"x": 0.0,
"y": 0.0,
"z": 1.0
},
"units": {
"type": "Inches"
}
},
"start": {
"from": [
2.3125,
0.0
],
"to": [
2.3125,
0.0
],
"units": {
"type": "Inches"
},
"tag": null,
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
916,
982,
0
]
}
},
"artifactId": "[uuid]",
"originalId": "[uuid]",
"units": {
"type": "Inches"
}
},
"height": 0.625,
"startCapId": "[uuid]",
"endCapId": "[uuid]",
"units": {
"type": "Inches"
}
}
},
"holeLocator": {
"type": "Number",
"value": -3.375,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"mountingHoleDia": {
"type": "Number",
"value": 0.625,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"mountingHolePlacementDiameter": {
"type": "Number",
"value": 3.5,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"nHoles": {
"type": "Number",
"value": 4.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"pipeDia": {
"type": "Number",
"value": 1.25,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"thickness": {
"type": "Number",
"value": 0.625,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"topExtrusion": {
"type": "Solid",
"value": {
"type": "Solid",
"id": "[uuid]",
"artifactId": "[uuid]",
"value": [
{
"faceId": "[uuid]",
"id": "[uuid]",
"sourceRange": [
1915,
1990,
0
],
"tag": null,
"type": "extrudeArc"
}
],
"sketch": {
"type": "Sketch",
"id": "[uuid]",
"paths": [
{
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
1915,
1990,
0
]
},
"ccw": true,
"center": [
0.0,
0.0
],
"from": [
1.1565,
0.0
],
"radius": 1.1565,
"tag": null,
"to": [
1.1565,
0.0
],
"type": "Circle",
"units": {
"type": "Inches"
}
}
],
"on": {
"type": "plane",
"id": "[uuid]",
"artifactId": "[uuid]",
"value": "Custom",
"origin": {
"x": 0.0,
"y": 0.0,
"z": 0.625
},
"xAxis": {
"x": 1.0,
"y": 0.0,
"z": 0.0
},
"yAxis": {
"x": 0.0,
"y": 1.0,
"z": 0.0
},
"zAxis": {
"x": 0.0,
"y": 0.0,
"z": 1.0
},
"units": {
"type": "Inches"
}
},
"start": {
"from": [
1.1565,
0.0
],
"to": [
1.1565,
0.0
],
"units": {
"type": "Inches"
},
"tag": null,
"__geoMeta": {
"id": "[uuid]",
"sourceRange": [
1915,
1990,
0
]
}
},
"artifactId": "[uuid]",
"originalId": "[uuid]",
"units": {
"type": "Inches"
}
},
"height": 0.1279999999999999,
"startCapId": "[uuid]",
"endCapId": "[uuid]",
"units": {
"type": "Inches"
}
}
},
"topFacePlane": {
"type": "Object",
"value": {
"plane": {
"type": "Object",
"value": {
"origin": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.625,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"xAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"yAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"zAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
}
}
}
}
},
"topTotalDiameter": {
"type": "Number",
"value": 2.313,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"topTotalThickness": {
"type": "Number",
"value": 0.128,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"totalThickness": {
"type": "Number",
"value": 0.813,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

View File

@ -0,0 +1,6 @@
---
source: kcl-lib/src/simulation_tests.rs
description: Artifact graph flowchart flange.kcl
extension: md
snapshot_kind: binary
---

View File

@ -0,0 +1,103 @@
```mermaid
flowchart LR
subgraph path2 [Path]
2["Path<br>[851, 957, 0]"]
3["Segment<br>[851, 957, 0]"]
4[Solid2d]
end
subgraph path6 [Path]
6["Path<br>[1195, 1261, 0]"]
7["Segment<br>[1195, 1261, 0]"]
8[Solid2d]
end
subgraph path15 [Path]
15["Path<br>[1429, 1504, 0]"]
16["Segment<br>[1429, 1504, 0]"]
17[Solid2d]
end
subgraph path23 [Path]
23["Path<br>[1662, 1740, 0]"]
24["Segment<br>[1662, 1740, 0]"]
25[Solid2d]
end
subgraph path31 [Path]
31["Path<br>[1870, 1913, 0]"]
32["Segment<br>[1870, 1913, 0]"]
33[Solid2d]
end
1["Plane<br>[826, 845, 0]"]
5["Plane<br>[1170, 1189, 0]"]
9["Sweep Extrusion<br>[1289, 1320, 0]"]
10[Wall]
11["Cap Start"]
12["Cap End"]
13["SweepEdge Opposite"]
14["SweepEdge Adjacent"]
18["Sweep Extrusion<br>[1510, 1545, 0]"]
19[Wall]
20["Cap End"]
21["SweepEdge Opposite"]
22["SweepEdge Adjacent"]
26["Sweep Extrusion<br>[1746, 1779, 0]"]
27[Wall]
28["Cap End"]
29["SweepEdge Opposite"]
30["SweepEdge Adjacent"]
34["Sweep Extrusion<br>[1919, 1994, 0]"]
35[Wall]
36["SweepEdge Opposite"]
37["SweepEdge Adjacent"]
38["StartSketchOnFace<br>[1391, 1423, 0]"]
39["StartSketchOnFace<br>[1622, 1656, 0]"]
40["StartSketchOnFace<br>[1830, 1864, 0]"]
1 --- 2
2 --- 3
2 --- 4
5 --- 6
6 --- 7
6 ---- 9
6 --- 8
7 --- 10
7 --- 13
7 --- 14
9 --- 10
9 --- 11
9 --- 12
9 --- 13
9 --- 14
11 --- 23
12 --- 15
15 --- 16
15 ---- 18
15 --- 17
16 --- 19
16 --- 21
16 --- 22
18 --- 19
18 --- 20
18 --- 21
18 --- 22
20 --- 31
23 --- 24
23 ---- 26
23 --- 25
24 --- 27
24 --- 29
24 --- 30
26 --- 27
26 --- 28
26 --- 29
26 --- 30
31 --- 32
31 ---- 34
31 --- 33
32 --- 35
32 --- 36
32 --- 37
34 --- 35
34 --- 36
34 --- 37
12 <--x 38
11 <--x 39
20 <--x 40
```

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,385 @@
---
source: kcl-lib/src/simulation_tests.rs
description: Operations executed flange.kcl
---
[
{
"labeledArgs": {
"data": {
"value": {
"type": "String",
"value": "XY"
},
"sourceRange": [
840,
844,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
826,
845,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"data": {
"value": {
"type": "String",
"value": "XY"
},
"sourceRange": [
1184,
1188,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1170,
1189,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"holeSketch": {
"value": {
"type": "Sketches",
"value": [
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
}
]
},
"sourceRange": [
1272,
1279,
0
]
},
"sketch": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1281,
1282,
0
]
}
},
"name": "hole",
"sourceRange": [
1267,
1283,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": 0.625,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1306,
1319,
0
]
}
},
"name": "extrude",
"sourceRange": [
1289,
1320,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1289,
1320,
0
]
}
},
{
"labeledArgs": {
"data": {
"value": {
"type": "Solid",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1405,
1415,
0
]
},
"tag": {
"value": {
"type": "String",
"value": "end"
},
"sourceRange": [
1417,
1422,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1391,
1423,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": 0.1279999999999999,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1527,
1544,
0
]
}
},
"name": "extrude",
"sourceRange": [
1510,
1545,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1510,
1545,
0
]
}
},
{
"labeledArgs": {
"data": {
"value": {
"type": "Solid",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1636,
1646,
0
]
},
"tag": {
"value": {
"type": "String",
"value": "start"
},
"sourceRange": [
1648,
1655,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1622,
1656,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": 0.06,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1763,
1778,
0
]
}
},
"name": "extrude",
"sourceRange": [
1746,
1779,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1746,
1779,
0
]
}
},
{
"labeledArgs": {
"data": {
"value": {
"type": "Solid",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1844,
1856,
0
]
},
"tag": {
"value": {
"type": "String",
"value": "end"
},
"sourceRange": [
1858,
1863,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1830,
1864,
0
],
"type": "StdLibCall",
"unlabeledArg": null
},
{
"labeledArgs": {
"length": {
"value": {
"type": "Number",
"value": -0.813,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"sourceRange": [
1939,
1992,
0
]
}
},
"name": "extrude",
"sourceRange": [
1919,
1994,
0
],
"type": "StdLibCall",
"unlabeledArg": {
"value": {
"type": "Sketch",
"value": {
"artifactId": "[uuid]"
}
},
"sourceRange": [
1927,
1928,
0
]
}
}
]

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

File diff suppressed because it is too large Load Diff

View File

@ -1,33 +1,33 @@
```mermaid
flowchart LR
subgraph path2 [Path]
2["Path<br>[1606, 1660, 0]"]
3["Segment<br>[1666, 1693, 0]"]
4["Segment<br>[1699, 1727, 0]"]
5["Segment<br>[1733, 1761, 0]"]
6["Segment<br>[1767, 1774, 0]"]
2["Path<br>[995, 1049, 0]"]
3["Segment<br>[1055, 1082, 0]"]
4["Segment<br>[1088, 1116, 0]"]
5["Segment<br>[1122, 1150, 0]"]
6["Segment<br>[1156, 1163, 0]"]
7[Solid2d]
end
subgraph path23 [Path]
23["Path<br>[1982, 2069, 0]"]
24["Segment<br>[2075, 2112, 0]"]
25["Segment<br>[2118, 2156, 0]"]
26["Segment<br>[2162, 2202, 0]"]
27["Segment<br>[2208, 2215, 0]"]
23["Path<br>[1405, 1492, 0]"]
24["Segment<br>[1498, 1535, 0]"]
25["Segment<br>[1541, 1579, 0]"]
26["Segment<br>[1585, 1625, 0]"]
27["Segment<br>[1631, 1638, 0]"]
28[Solid2d]
end
subgraph path43 [Path]
43["Path<br>[2331, 2477, 0]"]
44["Segment<br>[2331, 2477, 0]"]
43["Path<br>[1757, 1903, 0]"]
44["Segment<br>[1757, 1903, 0]"]
45[Solid2d]
end
subgraph path66 [Path]
66["Path<br>[2805, 2979, 0]"]
67["Segment<br>[2805, 2979, 0]"]
68[Solid2d]
subgraph path100 [Path]
100["Path<br>[2244, 2418, 0]"]
101["Segment<br>[2244, 2418, 0]"]
102[Solid2d]
end
1["Plane<br>[1581, 1600, 0]"]
8["Sweep Extrusion<br>[1780, 1804, 0]"]
1["Plane<br>[970, 989, 0]"]
8["Sweep Extrusion<br>[1169, 1193, 0]"]
9[Wall]
10[Wall]
11[Wall]
@ -42,7 +42,7 @@ flowchart LR
20["SweepEdge Adjacent"]
21["SweepEdge Opposite"]
22["SweepEdge Adjacent"]
29["Sweep Extrusion<br>[2221, 2252, 0]"]
29["Sweep Extrusion<br>[1644, 1675, 0]"]
30[Wall]
31[Wall]
32[Wall]
@ -56,41 +56,103 @@ flowchart LR
40["SweepEdge Adjacent"]
41["SweepEdge Opposite"]
42["SweepEdge Adjacent"]
46["Sweep Extrusion<br>[2687, 2715, 0]"]
46["Sweep Extrusion<br>[2113, 2141, 0]"]
47[Wall]
48["Cap End"]
49["SweepEdge Opposite"]
50["SweepEdge Adjacent"]
51["Sweep Extrusion<br>[2687, 2715, 0]"]
52["Sweep Extrusion<br>[2687, 2715, 0]"]
53["Sweep Extrusion<br>[2687, 2715, 0]"]
54["Sweep Extrusion<br>[2687, 2715, 0]"]
55["Sweep Extrusion<br>[2687, 2715, 0]"]
56["Sweep Extrusion<br>[2687, 2715, 0]"]
57["Sweep Extrusion<br>[2687, 2715, 0]"]
58["Sweep Extrusion<br>[2687, 2715, 0]"]
59["Sweep Extrusion<br>[2687, 2715, 0]"]
60["Sweep Extrusion<br>[2687, 2715, 0]"]
61["Sweep Extrusion<br>[2687, 2715, 0]"]
62["Sweep Extrusion<br>[2687, 2715, 0]"]
63["Sweep Extrusion<br>[2687, 2715, 0]"]
64["Sweep Extrusion<br>[2687, 2715, 0]"]
65["Plane<br>[2776, 2799, 0]"]
69["Sweep Extrusion<br>[3197, 3226, 0]"]
70[Wall]
71["Cap Start"]
72["Cap End"]
73["SweepEdge Opposite"]
74["SweepEdge Adjacent"]
75["Sweep Extrusion<br>[3197, 3226, 0]"]
76["Sweep Extrusion<br>[3197, 3226, 0]"]
77["Sweep Extrusion<br>[3197, 3226, 0]"]
78["Sweep Extrusion<br>[3197, 3226, 0]"]
79["Sweep Extrusion<br>[3197, 3226, 0]"]
80["Sweep Extrusion<br>[3197, 3226, 0]"]
81["Sweep Extrusion<br>[3197, 3226, 0]"]
82["StartSketchOnFace<br>[1951, 1976, 0]"]
83["StartSketchOnFace<br>[2302, 2325, 0]"]
51["Sweep Extrusion<br>[2113, 2141, 0]"]
52["Sweep Extrusion<br>[2113, 2141, 0]"]
53["Sweep Extrusion<br>[2113, 2141, 0]"]
54["Sweep Extrusion<br>[2113, 2141, 0]"]
55["Sweep Extrusion<br>[2113, 2141, 0]"]
56["Sweep Extrusion<br>[2113, 2141, 0]"]
57["Sweep Extrusion<br>[2113, 2141, 0]"]
58["Sweep Extrusion<br>[2113, 2141, 0]"]
59["Sweep Extrusion<br>[2113, 2141, 0]"]
60["Sweep Extrusion<br>[2113, 2141, 0]"]
61["Sweep Extrusion<br>[2113, 2141, 0]"]
62["Sweep Extrusion<br>[2113, 2141, 0]"]
63["Sweep Extrusion<br>[2113, 2141, 0]"]
64["Sweep Extrusion<br>[2113, 2141, 0]"]
65["Sweep Extrusion<br>[2113, 2141, 0]"]
66["Sweep Extrusion<br>[2113, 2141, 0]"]
67["Sweep Extrusion<br>[2113, 2141, 0]"]
68["Sweep Extrusion<br>[2113, 2141, 0]"]
69["Sweep Extrusion<br>[2113, 2141, 0]"]
70["Sweep Extrusion<br>[2113, 2141, 0]"]
71["Sweep Extrusion<br>[2113, 2141, 0]"]
72["Sweep Extrusion<br>[2113, 2141, 0]"]
73["Sweep Extrusion<br>[2113, 2141, 0]"]
74["Sweep Extrusion<br>[2113, 2141, 0]"]
75["Sweep Extrusion<br>[2113, 2141, 0]"]
76["Sweep Extrusion<br>[2113, 2141, 0]"]
77["Sweep Extrusion<br>[2113, 2141, 0]"]
78["Sweep Extrusion<br>[2113, 2141, 0]"]
79["Sweep Extrusion<br>[2113, 2141, 0]"]
80["Sweep Extrusion<br>[2113, 2141, 0]"]
81["Sweep Extrusion<br>[2113, 2141, 0]"]
82["Sweep Extrusion<br>[2113, 2141, 0]"]
83["Sweep Extrusion<br>[2113, 2141, 0]"]
84["Sweep Extrusion<br>[2113, 2141, 0]"]
85["Sweep Extrusion<br>[2113, 2141, 0]"]
86["Sweep Extrusion<br>[2113, 2141, 0]"]
87["Sweep Extrusion<br>[2113, 2141, 0]"]
88["Sweep Extrusion<br>[2113, 2141, 0]"]
89["Sweep Extrusion<br>[2113, 2141, 0]"]
90["Sweep Extrusion<br>[2113, 2141, 0]"]
91["Sweep Extrusion<br>[2113, 2141, 0]"]
92["Sweep Extrusion<br>[2113, 2141, 0]"]
93["Sweep Extrusion<br>[2113, 2141, 0]"]
94["Sweep Extrusion<br>[2113, 2141, 0]"]
95["Sweep Extrusion<br>[2113, 2141, 0]"]
96["Sweep Extrusion<br>[2113, 2141, 0]"]
97["Sweep Extrusion<br>[2113, 2141, 0]"]
98["Sweep Extrusion<br>[2113, 2141, 0]"]
99["Sweep Extrusion<br>[2113, 2141, 0]"]
103["Sweep Extrusion<br>[2636, 2664, 0]"]
104[Wall]
105["Cap End"]
106["SweepEdge Opposite"]
107["SweepEdge Adjacent"]
108["Sweep Extrusion<br>[2636, 2664, 0]"]
109["Sweep Extrusion<br>[2636, 2664, 0]"]
110["Sweep Extrusion<br>[2636, 2664, 0]"]
111["Sweep Extrusion<br>[2636, 2664, 0]"]
112["Sweep Extrusion<br>[2636, 2664, 0]"]
113["Sweep Extrusion<br>[2636, 2664, 0]"]
114["Sweep Extrusion<br>[2636, 2664, 0]"]
115["Sweep Extrusion<br>[2636, 2664, 0]"]
116["Sweep Extrusion<br>[2636, 2664, 0]"]
117["Sweep Extrusion<br>[2636, 2664, 0]"]
118["Sweep Extrusion<br>[2636, 2664, 0]"]
119["Sweep Extrusion<br>[2636, 2664, 0]"]
120["Sweep Extrusion<br>[2636, 2664, 0]"]
121["Sweep Extrusion<br>[2636, 2664, 0]"]
122["Sweep Extrusion<br>[2636, 2664, 0]"]
123["Sweep Extrusion<br>[2636, 2664, 0]"]
124["Sweep Extrusion<br>[2636, 2664, 0]"]
125["Sweep Extrusion<br>[2636, 2664, 0]"]
126["Sweep Extrusion<br>[2636, 2664, 0]"]
127["Sweep Extrusion<br>[2636, 2664, 0]"]
128["Sweep Extrusion<br>[2636, 2664, 0]"]
129["Sweep Extrusion<br>[2636, 2664, 0]"]
130["Sweep Extrusion<br>[2636, 2664, 0]"]
131["Sweep Extrusion<br>[2636, 2664, 0]"]
132["Sweep Extrusion<br>[2636, 2664, 0]"]
133["Sweep Extrusion<br>[2636, 2664, 0]"]
134["Sweep Extrusion<br>[2636, 2664, 0]"]
135["Sweep Extrusion<br>[2636, 2664, 0]"]
136["Sweep Extrusion<br>[2636, 2664, 0]"]
137["Sweep Extrusion<br>[2636, 2664, 0]"]
138["Sweep Extrusion<br>[2636, 2664, 0]"]
139["Sweep Extrusion<br>[2636, 2664, 0]"]
140["Sweep Extrusion<br>[2636, 2664, 0]"]
141["Sweep Extrusion<br>[2636, 2664, 0]"]
142["Sweep Extrusion<br>[2636, 2664, 0]"]
143["StartSketchOnFace<br>[1371, 1399, 0]"]
144["StartSketchOnFace<br>[1725, 1751, 0]"]
145["StartSketchOnFace<br>[2202, 2238, 0]"]
1 --- 2
2 --- 3
2 --- 4
@ -157,6 +219,7 @@ flowchart LR
29 --- 40
29 --- 41
29 --- 42
34 --- 100
43 --- 44
43 ---- 46
43 --- 45
@ -167,18 +230,17 @@ flowchart LR
46 --- 48
46 --- 49
46 --- 50
65 --- 66
66 --- 67
66 ---- 69
66 --- 68
67 --- 70
67 --- 73
67 --- 74
69 --- 70
69 --- 71
69 --- 72
69 --- 73
69 --- 74
13 <--x 82
14 <--x 83
100 --- 101
100 ---- 103
100 --- 102
101 --- 104
101 --- 106
101 --- 107
103 --- 104
103 --- 105
103 --- 106
103 --- 107
13 <--x 143
14 <--x 144
34 <--x 145
```

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -11,16 +11,16 @@ description: Operations executed lego.kcl
"value": "XY"
},
"sourceRange": [
1595,
1599,
984,
988,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1581,
1600,
970,
989,
0
],
"type": "StdLibCall",
@ -43,16 +43,16 @@ description: Operations executed lego.kcl
}
},
"sourceRange": [
1797,
1803,
1186,
1192,
0
]
}
},
"name": "extrude",
"sourceRange": [
1780,
1804,
1169,
1193,
0
],
"type": "StdLibCall",
@ -64,8 +64,8 @@ description: Operations executed lego.kcl
}
},
"sourceRange": [
1780,
1804,
1169,
1193,
0
]
}
@ -80,8 +80,8 @@ description: Operations executed lego.kcl
}
},
"sourceRange": [
1965,
1966,
1385,
1389,
0
]
},
@ -91,16 +91,16 @@ description: Operations executed lego.kcl
"value": "start"
},
"sourceRange": [
1968,
1975,
1391,
1398,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
1951,
1976,
1371,
1399,
0
],
"type": "StdLibCall",
@ -117,16 +117,16 @@ description: Operations executed lego.kcl
}
},
"sourceRange": [
2238,
2250,
1661,
1673,
0
]
}
},
"name": "extrude",
"sourceRange": [
2221,
2252,
1644,
1675,
0
],
"type": "StdLibCall",
@ -138,8 +138,8 @@ description: Operations executed lego.kcl
}
},
"sourceRange": [
2221,
2252,
1644,
1675,
0
]
}
@ -154,8 +154,8 @@ description: Operations executed lego.kcl
}
},
"sourceRange": [
2316,
2317,
1739,
1743,
0
]
},
@ -165,16 +165,16 @@ description: Operations executed lego.kcl
"value": "end"
},
"sourceRange": [
2319,
2324,
1745,
1750,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
2302,
2325,
1725,
1751,
0
],
"type": "StdLibCall",
@ -197,16 +197,16 @@ description: Operations executed lego.kcl
}
},
"sourceRange": [
2704,
2714,
2130,
2140,
0
]
}
},
"name": "extrude",
"sourceRange": [
2687,
2715,
2113,
2141,
0
],
"type": "StdLibCall",
@ -214,6 +214,111 @@ description: Operations executed lego.kcl
"value": {
"type": "Sketches",
"value": [
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
@ -262,8 +367,8 @@ description: Operations executed lego.kcl
]
},
"sourceRange": [
2687,
2715,
2113,
2141,
0
]
}
@ -272,196 +377,33 @@ description: Operations executed lego.kcl
"labeledArgs": {
"data": {
"value": {
"type": "Object",
"type": "Solid",
"value": {
"plane": {
"type": "Object",
"value": {
"origin": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 1.7000000000000002,
"ty": {
"type": "Unknown"
}
}
}
},
"xAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"yAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
},
"zAxis": {
"type": "Object",
"value": {
"x": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"y": {
"type": "Number",
"value": 0.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
},
"z": {
"type": "Number",
"value": 1.0,
"ty": {
"type": "Default",
"len": {
"type": "Inches"
},
"angle": {
"type": "Degrees"
}
}
}
}
}
}
}
"artifactId": "[uuid]"
}
},
"sourceRange": [
2790,
2798,
2216,
2228,
0
]
},
"tag": {
"value": {
"type": "String",
"value": "start"
},
"sourceRange": [
2230,
2237,
0
]
}
},
"name": "startSketchOn",
"sourceRange": [
2776,
2799,
2202,
2238,
0
],
"type": "StdLibCall",
@ -472,7 +414,7 @@ description: Operations executed lego.kcl
"length": {
"value": {
"type": "Number",
"value": -1.8,
"value": 1.8,
"ty": {
"type": "Default",
"len": {
@ -484,16 +426,16 @@ description: Operations executed lego.kcl
}
},
"sourceRange": [
3214,
3225,
2653,
2663,
0
]
}
},
"name": "extrude",
"sourceRange": [
3197,
3226,
2636,
2664,
0
],
"type": "StdLibCall",
@ -501,6 +443,90 @@ description: Operations executed lego.kcl
"value": {
"type": "Sketches",
"value": [
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
{
"artifactId": "[uuid]"
},
@ -528,8 +554,8 @@ description: Operations executed lego.kcl
]
},
"sourceRange": [
3197,
3226,
2636,
2664,
0
]
}

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 KiB

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Some files were not shown because too many files have changed in this diff Show More