diff --git a/.github/workflows/check-exampleKcl.yml b/.github/workflows/check-exampleKcl.yml index 60ec6418c..de3863b66 100644 --- a/.github/workflows/check-exampleKcl.yml +++ b/.github/workflows/check-exampleKcl.yml @@ -5,6 +5,7 @@ on: types: [opened, synchronize] paths: - 'src/lib/exampleKcl.ts' + - 'public/kcl-samples/bracket/main.kcl' permissions: contents: read @@ -22,11 +23,11 @@ jobs: uses: actions/github-script@v7 with: script: | - const message = '`src/lib/exampleKcl.ts` has been updated in this PR, please review and update the `src/routes/onboarding`, if needed.'; + const message = '`public/kcl-samples/bracket/main.kcl` or `src/lib/exampleKcl.ts` has been updated in this PR, please review and update the `src/routes/onboarding`, if needed.'; const issue_number = context.payload.pull_request.number; const owner = context.repo.owner; const repo = context.repo.repo; - + const { data: comments } = await github.rest.issues.listComments({ owner, repo, @@ -43,4 +44,4 @@ jobs: issue_number, body: message, }); - } \ No newline at end of file + } diff --git a/e2e/playwright/code-pane-and-errors.spec.ts b/e2e/playwright/code-pane-and-errors.spec.ts index 76585cbe4..3a66167a5 100644 --- a/e2e/playwright/code-pane-and-errors.spec.ts +++ b/e2e/playwright/code-pane-and-errors.spec.ts @@ -1,4 +1,4 @@ -import { bracket } from '@src/lib/exampleKcl' +import { bracket } from '@e2e/playwright/fixtures/bracket' import fsp from 'fs/promises' import { join } from 'path' diff --git a/e2e/playwright/fixtures/bracket.ts b/e2e/playwright/fixtures/bracket.ts new file mode 100644 index 000000000..d17bd431f --- /dev/null +++ b/e2e/playwright/fixtures/bracket.ts @@ -0,0 +1,16 @@ +import fs from 'fs' +import path from 'path' + +export const bracket = fs.readFileSync( + path.resolve( + __dirname, + '..', + '..', + '..', + 'public', + 'kcl-samples', + 'bracket', + 'main.kcl' + ), + 'utf8' +) diff --git a/e2e/playwright/onboarding-tests.spec.ts b/e2e/playwright/onboarding-tests.spec.ts index 63963431b..1e397c1ea 100644 --- a/e2e/playwright/onboarding-tests.spec.ts +++ b/e2e/playwright/onboarding-tests.spec.ts @@ -1,4 +1,4 @@ -import { bracket } from '@src/lib/exampleKcl' +import { bracket } from '@e2e/playwright/fixtures/bracket' import { onboardingPaths } from '@src/routes/Onboarding/paths' import fsp from 'fs/promises' import { join } from 'path' @@ -15,6 +15,7 @@ import { executorInputPath, getUtils, orRunWhenFullSuiteEnabled, + runningOnWindows, settingsToToml, } from '@e2e/playwright/test-utils' import { expect, test } from '@e2e/playwright/zoo-test' @@ -279,6 +280,9 @@ test.describe('Onboarding tests', () => { if (!tronApp) { fail() } + if (runningOnWindows()) { + test.fixme(orRunWhenFullSuiteEnabled()) + } await tronApp.cleanProjectDir({ app: { onboarding_status: '/parametric-modeling', diff --git a/e2e/playwright/regression-tests.spec.ts b/e2e/playwright/regression-tests.spec.ts index d713e5cbc..c5deb4b9c 100644 --- a/e2e/playwright/regression-tests.spec.ts +++ b/e2e/playwright/regression-tests.spec.ts @@ -1,5 +1,5 @@ +import { bracket } from '@e2e/playwright/fixtures/bracket' import type { Page } from '@playwright/test' -import { bracket } from '@src/lib/exampleKcl' import { reportRejection } from '@src/lib/trap' import * as fsp from 'fs/promises' import path from 'path' diff --git a/e2e/playwright/testing-samples-loading.spec.ts b/e2e/playwright/testing-samples-loading.spec.ts index affbf289a..4b54d117c 100644 --- a/e2e/playwright/testing-samples-loading.spec.ts +++ b/e2e/playwright/testing-samples-loading.spec.ts @@ -1,9 +1,13 @@ +import { bracket } from '@e2e/playwright/fixtures/bracket' import { FILE_EXT } from '@src/lib/constants' -import { bracket } from '@src/lib/exampleKcl' import * as fsp from 'fs/promises' import { join } from 'path' -import { getUtils } from '@e2e/playwright/test-utils' +import { + getUtils, + orRunWhenFullSuiteEnabled, + runningOnWindows, +} from '@e2e/playwright/test-utils' import { expect, test } from '@e2e/playwright/zoo-test' test.describe('Testing in-app sample loading', () => { @@ -80,6 +84,9 @@ test.describe('Testing in-app sample loading', () => { 'Desktop: should create new file by default, optionally overwrite', { tag: '@electron' }, async ({ editor, context, page, scene, cmdBar }, testInfo) => { + if (runningOnWindows()) { + test.fixme(orRunWhenFullSuiteEnabled()) + } const { dir } = await context.folderSetupFn(async (dir) => { const bracketDir = join(dir, 'bracket') await fsp.mkdir(bracketDir, { recursive: true }) diff --git a/package.json b/package.json index 764cee28d..e5790c23f 100644 --- a/package.json +++ b/package.json @@ -147,6 +147,7 @@ "importOrder": [ "", "^@rust/(.*)$", + "^@public/(.*)$", "^@e2e/(.*)$", "^@src/(.*)$", "^[./]" diff --git a/public/kcl-samples/bracket/main.kcl b/public/kcl-samples/bracket/main.kcl index 60cf0a172..b8e3c56b0 100644 --- a/public/kcl-samples/bracket/main.kcl +++ b/public/kcl-samples/bracket/main.kcl @@ -1,47 +1,84 @@ // 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. -// Define constants +// Set units +@settings(defaultLengthUnit = in) + +// Define parameters sigmaAllow = 35000 // psi (6061-T6 aluminum) -width = 6 // inch +width = 5.0 p = 300 // Force on shelf - lbs -factorOfSafety = 1.2 // FOS of 1.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) +fos = 1.2 // Factor of safety of 1.2 +shelfMountLength = 5.0 +wallMountLength = 2.25 +shelfDepth = 12 // Shelf is 12 inches deep from the wall +shelfMountingHoleDiameter = .50 +wallMountingHoleDiameter = .625 +// Calculated parameters +moment = shelfDepth * p // assume the force is applied at the end of the shelf +thickness = sqrt(moment * fos * 6 / (sigmaAllow * width)) // required thickness for two brackets to hold up the shelf +bendRadius = 0.25 +extBendRadius = bendRadius + thickness +filletRadius = .5 +shelfMountingHolePlacementOffset = shelfMountingHoleDiameter * 1.5 +wallMountingHolePlacementOffset = wallMountingHoleDiameter * 1.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) +// Add checks to ensure bracket is possible. These make sure that there is adequate distance between holes and edges. +assertGreaterThanOrEq(wallMountLength, wallMountingHoleDiameter * 3, "Holes not possible. Either decrease hole diameter or increase wallMountLength") +assertGreaterThanOrEq(shelfMountLength, shelfMountingHoleDiameter * 5.5, "wallMountLength must be longer for hole sizes to work. Either decrease mounting hole diameters or increase shelfMountLength") +assertGreaterThanOrEq(width, shelfMountingHoleDiameter * 5.5, "Holes not possible. Either decrease hole diameter or increase width") +assertGreaterThanOrEq(width, wallMountingHoleDiameter * 5.5, "Holes not possible. Either decrease hole diameter or increase width") - -filletRadius = .25 -extFilletRadius = filletRadius + thickness -mountingHoleDiameter = 0.5 - -sketch001 = startSketchOn(XZ) +// Create the body of the bracket +bracketBody = startSketchOn(XZ) |> startProfileAt([0, 0], %) - |> xLine(length = shelfMountL - thickness, tag = $seg01) + |> xLine(length = shelfMountLength - thickness, tag = $seg01) |> yLine(length = thickness, tag = $seg02) - |> xLine(length = -shelfMountL, tag = $seg03) - |> yLine(length = -wallMountL, tag = $seg04) + |> xLine(length = -shelfMountLength, tag = $seg03) + |> yLine(length = -wallMountLength, tag = $seg04) |> xLine(length = thickness, tag = $seg05) |> line(endAbsolute = [profileStartX(%), profileStartY(%)], tag = $seg06) |> close() |> extrude(%, length = width) - |> fillet(radius = extFilletRadius, tags = [getNextAdjacentEdge(seg03)]) - |> fillet(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]) +// Add mounting holes to mount to the shelf +shelfMountingHoles = startSketchOn(bracketBody, seg03) + |> circle( + center = [ + -(bendRadius + shelfMountingHolePlacementOffset), + shelfMountingHolePlacementOffset + ], + radius = shelfMountingHoleDiameter / 2, + ) + |> patternLinear2d(instances = 2, distance = -(extBendRadius + shelfMountingHolePlacementOffset) + shelfMountLength - shelfMountingHolePlacementOffset, axis = [-1, 0]) + |> patternLinear2d(instances = 2, distance = width - (shelfMountingHolePlacementOffset * 2), 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]) +// Add mounting holes to mount to the wall +wallMountingHoles = startSketchOn(bracketBody, seg04) + |> circle( + center = [ + wallMountLength - wallMountingHolePlacementOffset - bendRadius, + wallMountingHolePlacementOffset + ], + radius = wallMountingHoleDiameter / 2, + ) + |> patternLinear2d(instances = 2, distance = width - (wallMountingHolePlacementOffset * 2), axis = [0, 1]) |> extrude(%, length = -thickness - 0.1) + +// Apply bends +fillet(bracketBody, radius = extBendRadius, tags = [getNextAdjacentEdge(seg03)]) +fillet(bracketBody, radius = bendRadius, tags = [getNextAdjacentEdge(seg06)]) + +// Apply corner fillets +fillet( + bracketBody, + radius = filletRadius, + tags = [ + seg02, + getOppositeEdge(seg02), + seg05, + getOppositeEdge(seg05) + ], +) diff --git a/rust/kcl-lib/tests/kcl_samples/bracket/artifact_commands.snap b/rust/kcl-lib/tests/kcl_samples/bracket/artifact_commands.snap index d0b470633..c1b11d009 100644 --- a/rust/kcl-lib/tests/kcl_samples/bracket/artifact_commands.snap +++ b/rust/kcl-lib/tests/kcl_samples/bracket/artifact_commands.snap @@ -29,6 +29,14 @@ description: Artifact commands bracket.kcl "hidden": true } }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "set_scene_units", + "unit": "in" + } + }, { "cmdId": "[uuid]", "range": [], @@ -106,7 +114,7 @@ description: Artifact commands bracket.kcl "segment": { "type": "line", "end": { - "x": 4.6487, + "x": 4.6151, "y": 0.0, "z": 0.0 }, @@ -124,7 +132,7 @@ description: Artifact commands bracket.kcl "type": "line", "end": { "x": 0.0, - "y": 0.3513, + "y": 0.3849, "z": 0.0 }, "relative": true @@ -158,7 +166,7 @@ description: Artifact commands bracket.kcl "type": "line", "end": { "x": 0.0, - "y": -2.0, + "y": -2.25, "z": 0.0 }, "relative": true @@ -174,7 +182,7 @@ description: Artifact commands bracket.kcl "segment": { "type": "line", "end": { - "x": 0.3513, + "x": 0.3849, "y": 0.0, "z": 0.0 }, @@ -229,7 +237,7 @@ description: Artifact commands bracket.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": 6.0, + "distance": 5.0, "faces": null, "opposite": "None" } @@ -378,118 +386,6 @@ description: Artifact commands bracket.kcl "face_id": "[uuid]" } }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_next_adjacent_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_get_opposite_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "face_id": "[uuid]" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.601324026261472, - "tolerance": 0.0000001, - "cut_type": "fillet" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.25, - "tolerance": 0.0000001, - "cut_type": "fillet" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.25, - "tolerance": 0.0000001, - "cut_type": "fillet" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.25, - "tolerance": 0.0000001, - "cut_type": "fillet" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.25, - "tolerance": 0.0000001, - "cut_type": "fillet" - } - }, - { - "cmdId": "[uuid]", - "range": [], - "command": { - "type": "solid3d_fillet_edge", - "object_id": "[uuid]", - "edge_id": "[uuid]", - "radius": 0.25, - "tolerance": 0.0000001, - "cut_type": "fillet" - } - }, { "cmdId": "[uuid]", "range": [], @@ -516,8 +412,8 @@ description: Artifact commands bracket.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": -1.0, - "y": 1.0, + "x": -0.75, + "y": 0.75, "z": 0.0 } } @@ -538,8 +434,8 @@ description: Artifact commands bracket.kcl "segment": { "type": "arc", "center": { - "x": -1.25, - "y": 1.0 + "x": -1.0, + "y": 0.75 }, "radius": 0.25, "start": { @@ -573,7 +469,7 @@ description: Artifact commands bracket.kcl [ { "translate": { - "x": -2.5, + "x": -2.8651438116461088, "y": 0.0, "z": 0.0 }, @@ -614,7 +510,7 @@ description: Artifact commands bracket.kcl { "translate": { "x": 0.0, - "y": 4.0, + "y": 3.5, "z": 0.0 }, "scale": { @@ -654,7 +550,7 @@ description: Artifact commands bracket.kcl { "translate": { "x": 0.0, - "y": 4.0, + "y": 3.5, "z": 0.0 }, "scale": { @@ -700,7 +596,7 @@ description: Artifact commands bracket.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": -0.361324026261472, + "distance": -0.39485618835389114, "faces": null, "opposite": "None" } @@ -767,7 +663,7 @@ description: Artifact commands bracket.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": -0.361324026261472, + "distance": -0.39485618835389114, "faces": null, "opposite": "None" } @@ -834,7 +730,7 @@ description: Artifact commands bracket.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": -0.361324026261472, + "distance": -0.39485618835389114, "faces": null, "opposite": "None" } @@ -901,7 +797,7 @@ description: Artifact commands bracket.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": -0.361324026261472, + "distance": -0.39485618835389114, "faces": null, "opposite": "None" } @@ -976,8 +872,8 @@ description: Artifact commands bracket.kcl "type": "move_path_pen", "path": "[uuid]", "to": { - "x": 1.25, - "y": -1.0, + "x": 1.375, + "y": 0.9375, "z": 0.0 } } @@ -998,10 +894,10 @@ description: Artifact commands bracket.kcl "segment": { "type": "arc", "center": { - "x": 1.0, - "y": -1.0 + "x": 1.0625, + "y": 0.9375 }, - "radius": 0.25, + "radius": 0.3125, "start": { "unit": "degrees", "value": 0.0 @@ -1033,8 +929,8 @@ description: Artifact commands bracket.kcl [ { "translate": { - "x": 4.0, - "y": 0.0, + "x": 0.0, + "y": 3.125, "z": 0.0 }, "scale": { @@ -1080,7 +976,7 @@ description: Artifact commands bracket.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": -0.45132402626147194, + "distance": -0.4848561883538911, "faces": null, "opposite": "None" } @@ -1147,7 +1043,7 @@ description: Artifact commands bracket.kcl "command": { "type": "extrude", "target": "[uuid]", - "distance": -0.45132402626147194, + "distance": -0.4848561883538911, "faces": null, "opposite": "None" } @@ -1195,5 +1091,117 @@ description: Artifact commands bracket.kcl "edge_id": "[uuid]", "face_id": "[uuid]" } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_next_adjacent_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_get_opposite_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "face_id": "[uuid]" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.6348561883538911, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.25, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.5, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.5, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.5, + "tolerance": 0.0000001, + "cut_type": "fillet" + } + }, + { + "cmdId": "[uuid]", + "range": [], + "command": { + "type": "solid3d_fillet_edge", + "object_id": "[uuid]", + "edge_id": "[uuid]", + "radius": 0.5, + "tolerance": 0.0000001, + "cut_type": "fillet" + } } ] diff --git a/rust/kcl-lib/tests/kcl_samples/bracket/artifact_graph_flowchart.snap.md b/rust/kcl-lib/tests/kcl_samples/bracket/artifact_graph_flowchart.snap.md index 9e5dd2358..de1cd13b3 100644 --- a/rust/kcl-lib/tests/kcl_samples/bracket/artifact_graph_flowchart.snap.md +++ b/rust/kcl-lib/tests/kcl_samples/bracket/artifact_graph_flowchart.snap.md @@ -1,28 +1,28 @@ ```mermaid flowchart LR subgraph path2 [Path] - 2["Path
[1085, 1110, 0]"] - 3["Segment
[1116, 1169, 0]"] - 4["Segment
[1175, 1214, 0]"] - 5["Segment
[1220, 1262, 0]"] - 6["Segment
[1268, 1309, 0]"] - 7["Segment
[1315, 1354, 0]"] - 8["Segment
[1360, 1430, 0]"] - 9["Segment
[1436, 1443, 0]"] + 2["Path
[2001, 2026, 0]"] + 3["Segment
[2032, 2090, 0]"] + 4["Segment
[2096, 2135, 0]"] + 5["Segment
[2141, 2188, 0]"] + 6["Segment
[2194, 2240, 0]"] + 7["Segment
[2246, 2285, 0]"] + 8["Segment
[2291, 2361, 0]"] + 9["Segment
[2367, 2374, 0]"] 10[Solid2d] end - subgraph path38 [Path] - 38["Path
[1823, 1885, 0]"] - 39["Segment
[1823, 1885, 0]"] - 40[Solid2d] + subgraph path32 [Path] + 32["Path
[2512, 2702, 0]"] + 33["Segment
[2512, 2702, 0]"] + 34[Solid2d] end - subgraph path48 [Path] - 48["Path
[2112, 2171, 0]"] - 49["Segment
[2112, 2171, 0]"] - 50[Solid2d] + subgraph path42 [Path] + 42["Path
[3129, 3331, 0]"] + 43["Segment
[3129, 3331, 0]"] + 44[Solid2d] end - 1["Plane
[1062, 1079, 0]"] - 11["Sweep Extrusion
[1449, 1475, 0]"] + 1["Plane
[1978, 1995, 0]"] + 11["Sweep Extrusion
[2380, 2406, 0]"] 12[Wall] 13[Wall] 14[Wall] @@ -43,26 +43,26 @@ flowchart LR 29["SweepEdge Adjacent"] 30["SweepEdge Opposite"] 31["SweepEdge Adjacent"] - 32["EdgeCut Fillet
[1481, 1550, 0]"] - 33["EdgeCut Fillet
[1556, 1622, 0]"] - 34["EdgeCut Fillet
[1628, 1697, 0]"] - 35["EdgeCut Fillet
[1628, 1697, 0]"] - 36["EdgeCut Fillet
[1703, 1772, 0]"] - 37["EdgeCut Fillet
[1703, 1772, 0]"] - 41["Sweep Extrusion
[2024, 2061, 0]"] - 42[Wall] - 43["SweepEdge Opposite"] - 44["SweepEdge Adjacent"] - 45["Sweep Extrusion
[2024, 2061, 0]"] - 46["Sweep Extrusion
[2024, 2061, 0]"] - 47["Sweep Extrusion
[2024, 2061, 0]"] - 51["Sweep Extrusion
[2242, 2279, 0]"] - 52[Wall] - 53["SweepEdge Opposite"] - 54["SweepEdge Adjacent"] - 55["Sweep Extrusion
[2242, 2279, 0]"] - 56["StartSketchOnFace
[1786, 1817, 0]"] - 57["StartSketchOnFace
[2075, 2106, 0]"] + 35["Sweep Extrusion
[2988, 3025, 0]"] + 36[Wall] + 37["SweepEdge Opposite"] + 38["SweepEdge Adjacent"] + 39["Sweep Extrusion
[2988, 3025, 0]"] + 40["Sweep Extrusion
[2988, 3025, 0]"] + 41["Sweep Extrusion
[2988, 3025, 0]"] + 45["Sweep Extrusion
[3446, 3483, 0]"] + 46[Wall] + 47["SweepEdge Opposite"] + 48["SweepEdge Adjacent"] + 49["Sweep Extrusion
[3446, 3483, 0]"] + 50["EdgeCut Fillet
[3500, 3580, 0]"] + 51["EdgeCut Fillet
[3581, 3658, 0]"] + 52["EdgeCut Fillet
[3684, 3826, 0]"] + 53["EdgeCut Fillet
[3684, 3826, 0]"] + 54["EdgeCut Fillet
[3684, 3826, 0]"] + 55["EdgeCut Fillet
[3684, 3826, 0]"] + 56["StartSketchOnFace
[2473, 2506, 0]"] + 57["StartSketchOnFace
[3090, 3123, 0]"] 1 --- 2 2 --- 3 2 --- 4 @@ -79,7 +79,7 @@ flowchart LR 4 --- 13 4 --- 22 4 --- 23 - 4 --- 34 + 4 --- 52 5 --- 14 5 --- 24 5 --- 25 @@ -89,7 +89,7 @@ flowchart LR 7 --- 16 7 --- 28 7 --- 29 - 7 --- 36 + 7 --- 54 8 --- 17 8 --- 30 8 --- 31 @@ -113,30 +113,30 @@ flowchart LR 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 - 41 --- 42 - 41 --- 43 - 41 --- 44 - 48 --- 49 - 48 ---- 51 - 48 --- 50 - 49 --- 52 - 49 --- 53 - 49 --- 54 - 51 --- 52 - 51 --- 53 - 51 --- 54 + 14 --- 32 + 15 --- 42 + 32 --- 33 + 32 ---- 35 + 32 --- 34 + 33 --- 36 + 33 --- 37 + 33 --- 38 + 35 --- 36 + 35 --- 37 + 35 --- 38 + 42 --- 43 + 42 ---- 45 + 42 --- 44 + 43 --- 46 + 43 --- 47 + 43 --- 48 + 45 --- 46 + 45 --- 47 + 45 --- 48 + 25 <--x 50 + 31 <--x 51 + 22 <--x 53 + 28 <--x 55 14 <--x 56 15 <--x 57 ``` diff --git a/rust/kcl-lib/tests/kcl_samples/bracket/ast.snap b/rust/kcl-lib/tests/kcl_samples/bracket/ast.snap index 623e8ddcc..70676d210 100644 --- a/rust/kcl-lib/tests/kcl_samples/bracket/ast.snap +++ b/rust/kcl-lib/tests/kcl_samples/bracket/ast.snap @@ -35,11 +35,7 @@ description: Result of parsing bracket.kcl "end": 0, "kind": "const", "preComments": [ - "// 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.", - "", - "", - "// Define constants" + "// Define parameters" ], "start": 0, "type": "VariableDeclaration", @@ -60,12 +56,12 @@ description: Result of parsing bracket.kcl "init": { "commentStart": 0, "end": 0, - "raw": "6", + "raw": "5.0", "start": 0, "type": "Literal", "type": "Literal", "value": { - "value": 6.0, + "value": 5.0, "suffix": "None" } }, @@ -119,7 +115,7 @@ description: Result of parsing bracket.kcl "id": { "commentStart": 0, "end": 0, - "name": "factorOfSafety", + "name": "fos", "start": 0, "type": "Identifier" }, @@ -152,14 +148,14 @@ description: Result of parsing bracket.kcl "id": { "commentStart": 0, "end": 0, - "name": "shelfMountL", + "name": "shelfMountLength", "start": 0, "type": "Identifier" }, "init": { "commentStart": 0, "end": 0, - "raw": "5", + "raw": "5.0", "start": 0, "type": "Literal", "type": "Literal", @@ -185,19 +181,19 @@ description: Result of parsing bracket.kcl "id": { "commentStart": 0, "end": 0, - "name": "wallMountL", + "name": "wallMountLength", "start": 0, "type": "Identifier" }, "init": { "commentStart": 0, "end": 0, - "raw": "2", + "raw": "2.25", "start": 0, "type": "Literal", "type": "Literal", "value": { - "value": 2.0, + "value": 2.25, "suffix": "None" } }, @@ -243,6 +239,72 @@ description: Result of parsing bracket.kcl "type": "VariableDeclaration", "type": "VariableDeclaration" }, + { + "commentStart": 0, + "declaration": { + "commentStart": 0, + "end": 0, + "id": { + "commentStart": 0, + "end": 0, + "name": "shelfMountingHoleDiameter", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 0, + "end": 0, + "raw": ".50", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.5, + "suffix": "None" + } + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 0, + "declaration": { + "commentStart": 0, + "end": 0, + "id": { + "commentStart": 0, + "end": 0, + "name": "wallMountingHoleDiameter", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 0, + "end": 0, + "raw": ".625", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 0.625, + "suffix": "None" + } + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, { "commentStart": 0, "declaration": { @@ -300,6 +362,11 @@ description: Result of parsing bracket.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Calculated parameters" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" @@ -351,7 +418,7 @@ description: Result of parsing bracket.kcl "name": { "commentStart": 0, "end": 0, - "name": "factorOfSafety", + "name": "fos", "start": 0, "type": "Identifier" }, @@ -453,9 +520,6 @@ description: Result of parsing bracket.kcl }, "end": 0, "kind": "const", - "preComments": [ - "// Calculate required thickness of bracket" - ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" @@ -468,14 +532,14 @@ description: Result of parsing bracket.kcl "id": { "commentStart": 0, "end": 0, - "name": "filletRadius", + "name": "bendRadius", "start": 0, "type": "Identifier" }, "init": { "commentStart": 0, "end": 0, - "raw": ".25", + "raw": "0.25", "start": 0, "type": "Literal", "type": "Literal", @@ -501,7 +565,7 @@ description: Result of parsing bracket.kcl "id": { "commentStart": 0, "end": 0, - "name": "extFilletRadius", + "name": "extBendRadius", "start": 0, "type": "Identifier" }, @@ -515,7 +579,7 @@ description: Result of parsing bracket.kcl "name": { "commentStart": 0, "end": 0, - "name": "filletRadius", + "name": "bendRadius", "start": 0, "type": "Identifier" }, @@ -562,14 +626,14 @@ description: Result of parsing bracket.kcl "id": { "commentStart": 0, "end": 0, - "name": "mountingHoleDiameter", + "name": "filletRadius", "start": 0, "type": "Identifier" }, "init": { "commentStart": 0, "end": 0, - "raw": "0.5", + "raw": ".5", "start": 0, "type": "Literal", "type": "Literal", @@ -595,7 +659,494 @@ description: Result of parsing bracket.kcl "id": { "commentStart": 0, "end": 0, - "name": "sketch001", + "name": "shelfMountingHolePlacementOffset", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 0, + "end": 0, + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "shelfMountingHoleDiameter", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "*", + "right": { + "commentStart": 0, + "end": 0, + "raw": "1.5", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.5, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 0, + "declaration": { + "commentStart": 0, + "end": 0, + "id": { + "commentStart": 0, + "end": 0, + "name": "wallMountingHolePlacementOffset", + "start": 0, + "type": "Identifier" + }, + "init": { + "commentStart": 0, + "end": 0, + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "wallMountingHoleDiameter", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "*", + "right": { + "commentStart": 0, + "end": 0, + "raw": "1.5", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.5, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "start": 0, + "type": "VariableDeclarator" + }, + "end": 0, + "kind": "const", + "start": 0, + "type": "VariableDeclaration", + "type": "VariableDeclaration" + }, + { + "commentStart": 0, + "end": 0, + "expression": { + "arguments": [ + { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "wallMountLength", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + { + "commentStart": 0, + "end": 0, + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "wallMountingHoleDiameter", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "*", + "right": { + "commentStart": 0, + "end": 0, + "raw": "3", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 3.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 0, + "end": 0, + "raw": "\"Holes not possible. Either decrease hole diameter or increase wallMountLength\"", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": "Holes not possible. Either decrease hole diameter or increase wallMountLength" + } + ], + "callee": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "assertGreaterThanOrEq", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name" + }, + "commentStart": 0, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "preComments": [ + "", + "", + "// Add checks to ensure bracket is possible. These make sure that there is adequate distance between holes and edges." + ], + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 0, + "end": 0, + "expression": { + "arguments": [ + { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "shelfMountLength", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + { + "commentStart": 0, + "end": 0, + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "shelfMountingHoleDiameter", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "*", + "right": { + "commentStart": 0, + "end": 0, + "raw": "5.5", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 5.5, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 0, + "end": 0, + "raw": "\"wallMountLength must be longer for hole sizes to work. Either decrease mounting hole diameters or increase shelfMountLength\"", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": "wallMountLength must be longer for hole sizes to work. Either decrease mounting hole diameters or increase shelfMountLength" + } + ], + "callee": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "assertGreaterThanOrEq", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name" + }, + "commentStart": 0, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 0, + "end": 0, + "expression": { + "arguments": [ + { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "width", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + { + "commentStart": 0, + "end": 0, + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "shelfMountingHoleDiameter", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "*", + "right": { + "commentStart": 0, + "end": 0, + "raw": "5.5", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 5.5, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 0, + "end": 0, + "raw": "\"Holes not possible. Either decrease hole diameter or increase width\"", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": "Holes not possible. Either decrease hole diameter or increase width" + } + ], + "callee": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "assertGreaterThanOrEq", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name" + }, + "commentStart": 0, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 0, + "end": 0, + "expression": { + "arguments": [ + { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "width", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + { + "commentStart": 0, + "end": 0, + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "wallMountingHoleDiameter", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "*", + "right": { + "commentStart": 0, + "end": 0, + "raw": "5.5", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 5.5, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "commentStart": 0, + "end": 0, + "raw": "\"Holes not possible. Either decrease hole diameter or increase width\"", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": "Holes not possible. Either decrease hole diameter or increase width" + } + ], + "callee": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "assertGreaterThanOrEq", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name" + }, + "commentStart": 0, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 0, + "declaration": { + "commentStart": 0, + "end": 0, + "id": { + "commentStart": 0, + "end": 0, + "name": "bracketBody", "start": 0, "type": "Identifier" }, @@ -726,7 +1277,7 @@ description: Result of parsing bracket.kcl "name": { "commentStart": 0, "end": 0, - "name": "shelfMountL", + "name": "shelfMountLength", "start": 0, "type": "Identifier" }, @@ -886,7 +1437,7 @@ description: Result of parsing bracket.kcl "name": { "commentStart": 0, "end": 0, - "name": "shelfMountL", + "name": "shelfMountLength", "start": 0, "type": "Identifier" }, @@ -963,7 +1514,7 @@ description: Result of parsing bracket.kcl "name": { "commentStart": 0, "end": 0, - "name": "wallMountL", + "name": "wallMountLength", "start": 0, "type": "Identifier" }, @@ -1293,482 +1844,28 @@ description: Result of parsing bracket.kcl "type": "PipeSubstitution", "type": "PipeSubstitution" } - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 0, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "extFilletRadius", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name", - "type": "Name" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 0, - "end": 0, - "name": "tags", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 0, - "elements": [ - { - "arguments": [ - { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "seg03", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name", - "type": "Name" - } - ], - "callee": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "getNextAdjacentEdge", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name" - }, - "commentStart": 0, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "fillet", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name" - }, - "commentStart": 0, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 0, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "filletRadius", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name", - "type": "Name" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 0, - "end": 0, - "name": "tags", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 0, - "elements": [ - { - "arguments": [ - { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "seg06", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name", - "type": "Name" - } - ], - "callee": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "getNextAdjacentEdge", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name" - }, - "commentStart": 0, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "fillet", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name" - }, - "commentStart": 0, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 0, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "filletRadius", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name", - "type": "Name" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 0, - "end": 0, - "name": "tags", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 0, - "elements": [ - { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "seg02", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name", - "type": "Name" - }, - { - "arguments": [ - { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "seg02", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name", - "type": "Name" - } - ], - "callee": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "getOppositeEdge", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name" - }, - "commentStart": 0, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "fillet", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name" - }, - "commentStart": 0, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null - }, - { - "arguments": [ - { - "type": "LabeledArg", - "label": { - "commentStart": 0, - "end": 0, - "name": "radius", - "start": 0, - "type": "Identifier" - }, - "arg": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "filletRadius", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name", - "type": "Name" - } - }, - { - "type": "LabeledArg", - "label": { - "commentStart": 0, - "end": 0, - "name": "tags", - "start": 0, - "type": "Identifier" - }, - "arg": { - "commentStart": 0, - "elements": [ - { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "seg05", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name", - "type": "Name" - }, - { - "arguments": [ - { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "seg05", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name", - "type": "Name" - } - ], - "callee": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "getOppositeEdge", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name" - }, - "commentStart": 0, - "end": 0, - "start": 0, - "type": "CallExpression", - "type": "CallExpression" - } - ], - "end": 0, - "start": 0, - "type": "ArrayExpression", - "type": "ArrayExpression" - } - } - ], - "callee": { - "abs_path": false, - "commentStart": 0, - "end": 0, - "name": { - "commentStart": 0, - "end": 0, - "name": "fillet", - "start": 0, - "type": "Identifier" - }, - "path": [], - "start": 0, - "type": "Name" - }, - "commentStart": 0, - "end": 0, - "start": 0, - "type": "CallExpressionKw", - "type": "CallExpressionKw", - "unlabeled": null } ], "commentStart": 0, "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "9": [ + { + "commentStart": 0, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "Add mounting holes to mount to the shelf", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, "start": 0, "type": "PipeExpression", "type": "PipeExpression" @@ -1778,6 +1875,11 @@ description: Result of parsing bracket.kcl }, "end": 0, "kind": "const", + "preComments": [ + "", + "", + "// Create the body of the bracket" + ], "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" @@ -1790,7 +1892,7 @@ description: Result of parsing bracket.kcl "id": { "commentStart": 0, "end": 0, - "name": "sketch002", + "name": "shelfMountingHoles", "start": 0, "type": "Identifier" }, @@ -1805,7 +1907,7 @@ description: Result of parsing bracket.kcl "name": { "commentStart": 0, "end": 0, - "name": "sketch001", + "name": "bracketBody", "start": 0, "type": "Identifier" }, @@ -1870,14 +1972,42 @@ description: Result of parsing bracket.kcl "argument": { "commentStart": 0, "end": 0, - "raw": "1.25", + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "bendRadius", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "+", + "right": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "shelfMountingHolePlacementOffset", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.25, - "suffix": "None" - } + "type": "BinaryExpression", + "type": "BinaryExpression" }, "commentStart": 0, "end": 0, @@ -1887,16 +2017,20 @@ description: Result of parsing bracket.kcl "type": "UnaryExpression" }, { + "abs_path": false, "commentStart": 0, "end": 0, - "raw": "1", + "name": { + "commentStart": 0, + "end": 0, + "name": "shelfMountingHolePlacementOffset", + "start": 0, + "type": "Identifier" + }, + "path": [], "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } + "type": "Name", + "type": "Name" } ], "end": 0, @@ -1924,7 +2058,7 @@ description: Result of parsing bracket.kcl "name": { "commentStart": 0, "end": 0, - "name": "mountingHoleDiameter", + "name": "shelfMountingHoleDiameter", "start": 0, "type": "Identifier" }, @@ -2010,14 +2144,98 @@ description: Result of parsing bracket.kcl "arg": { "commentStart": 0, "end": 0, - "raw": "2.5", + "left": { + "commentStart": 0, + "end": 0, + "left": { + "argument": { + "commentStart": 0, + "end": 0, + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "extBendRadius", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "+", + "right": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "shelfMountingHolePlacementOffset", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "commentStart": 0, + "end": 0, + "operator": "-", + "start": 0, + "type": "UnaryExpression", + "type": "UnaryExpression" + }, + "operator": "+", + "right": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "shelfMountLength", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + "operator": "-", + "right": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "shelfMountingHolePlacementOffset", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 2.5, - "suffix": "None" - } + "type": "BinaryExpression", + "type": "BinaryExpression" } }, { @@ -2130,14 +2348,62 @@ description: Result of parsing bracket.kcl "arg": { "commentStart": 0, "end": 0, - "raw": "4", + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "width", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "-", + "right": { + "commentStart": 0, + "end": 0, + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "shelfMountingHolePlacementOffset", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "*", + "right": { + "commentStart": 0, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 4.0, - "suffix": "None" - } + "type": "BinaryExpression", + "type": "BinaryExpression" } }, { @@ -2294,6 +2560,24 @@ description: Result of parsing bracket.kcl ], "commentStart": 0, "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "4": [ + { + "commentStart": 0, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "Add mounting holes to mount to the wall", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, "start": 0, "type": "PipeExpression", "type": "PipeExpression" @@ -2315,7 +2599,7 @@ description: Result of parsing bracket.kcl "id": { "commentStart": 0, "end": 0, - "name": "sketch003", + "name": "wallMountingHoles", "start": 0, "type": "Identifier" }, @@ -2330,7 +2614,7 @@ description: Result of parsing bracket.kcl "name": { "commentStart": 0, "end": 0, - "name": "sketch001", + "name": "bracketBody", "start": 0, "type": "Identifier" }, @@ -2394,34 +2678,82 @@ description: Result of parsing bracket.kcl { "commentStart": 0, "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, - { - "argument": { + "left": { "commentStart": 0, "end": 0, - "raw": "1", + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "wallMountLength", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "-", + "right": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "wallMountingHolePlacementOffset", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } + "type": "BinaryExpression", + "type": "BinaryExpression" }, + "operator": "-", + "right": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "bendRadius", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, + { + "abs_path": false, "commentStart": 0, "end": 0, - "operator": "-", + "name": { + "commentStart": 0, + "end": 0, + "name": "wallMountingHolePlacementOffset", + "start": 0, + "type": "Identifier" + }, + "path": [], "start": 0, - "type": "UnaryExpression", - "type": "UnaryExpression" + "type": "Name", + "type": "Name" } ], "end": 0, @@ -2449,7 +2781,7 @@ description: Result of parsing bracket.kcl "name": { "commentStart": 0, "end": 0, - "name": "mountingHoleDiameter", + "name": "wallMountingHoleDiameter", "start": 0, "type": "Identifier" }, @@ -2535,14 +2867,62 @@ description: Result of parsing bracket.kcl "arg": { "commentStart": 0, "end": 0, - "raw": "4", + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "width", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "-", + "right": { + "commentStart": 0, + "end": 0, + "left": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "wallMountingHolePlacementOffset", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + "operator": "*", + "right": { + "commentStart": 0, + "end": 0, + "raw": "2", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 2.0, + "suffix": "None" + } + }, + "start": 0, + "type": "BinaryExpression", + "type": "BinaryExpression" + }, "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 4.0, - "suffix": "None" - } + "type": "BinaryExpression", + "type": "BinaryExpression" } }, { @@ -2557,18 +2937,6 @@ description: Result of parsing bracket.kcl "arg": { "commentStart": 0, "elements": [ - { - "commentStart": 0, - "end": 0, - "raw": "1", - "start": 0, - "type": "Literal", - "type": "Literal", - "value": { - "value": 1.0, - "suffix": "None" - } - }, { "commentStart": 0, "end": 0, @@ -2580,6 +2948,18 @@ description: Result of parsing bracket.kcl "value": 0.0, "suffix": "None" } + }, + { + "commentStart": 0, + "end": 0, + "raw": "1", + "start": 0, + "type": "Literal", + "type": "Literal", + "value": { + "value": 1.0, + "suffix": "None" + } } ], "end": 0, @@ -2699,6 +3079,24 @@ description: Result of parsing bracket.kcl ], "commentStart": 0, "end": 0, + "nonCodeMeta": { + "nonCodeNodes": { + "3": [ + { + "commentStart": 0, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLineBlockComment", + "value": "Apply bends", + "style": "line" + } + } + ] + }, + "startNodes": [] + }, "start": 0, "type": "PipeExpression", "type": "PipeExpression" @@ -2711,10 +3109,536 @@ description: Result of parsing bracket.kcl "start": 0, "type": "VariableDeclaration", "type": "VariableDeclaration" + }, + { + "commentStart": 0, + "end": 0, + "expression": { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 0, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "arg": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "extBendRadius", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 0, + "end": 0, + "name": "tags", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 0, + "elements": [ + { + "arguments": [ + { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "seg03", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + } + ], + "callee": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "getNextAdjacentEdge", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name" + }, + "commentStart": 0, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "fillet", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name" + }, + "commentStart": 0, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "bracketBody", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + } + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 0, + "end": 0, + "expression": { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 0, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "arg": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "bendRadius", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 0, + "end": 0, + "name": "tags", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 0, + "elements": [ + { + "arguments": [ + { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "seg06", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + } + ], + "callee": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "getNextAdjacentEdge", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name" + }, + "commentStart": 0, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "fillet", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name" + }, + "commentStart": 0, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "bracketBody", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + } + }, + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" + }, + { + "commentStart": 0, + "end": 0, + "expression": { + "arguments": [ + { + "type": "LabeledArg", + "label": { + "commentStart": 0, + "end": 0, + "name": "radius", + "start": 0, + "type": "Identifier" + }, + "arg": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "filletRadius", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + } + }, + { + "type": "LabeledArg", + "label": { + "commentStart": 0, + "end": 0, + "name": "tags", + "start": 0, + "type": "Identifier" + }, + "arg": { + "commentStart": 0, + "elements": [ + { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "seg02", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + { + "arguments": [ + { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "seg02", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + } + ], + "callee": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "getOppositeEdge", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name" + }, + "commentStart": 0, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + }, + { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "seg05", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + }, + { + "arguments": [ + { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "seg05", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + } + ], + "callee": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "getOppositeEdge", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name" + }, + "commentStart": 0, + "end": 0, + "start": 0, + "type": "CallExpression", + "type": "CallExpression" + } + ], + "end": 0, + "start": 0, + "type": "ArrayExpression", + "type": "ArrayExpression" + } + } + ], + "callee": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "fillet", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name" + }, + "commentStart": 0, + "end": 0, + "start": 0, + "type": "CallExpressionKw", + "type": "CallExpressionKw", + "unlabeled": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "bracketBody", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + } + }, + "preComments": [ + "", + "", + "// Apply corner fillets" + ], + "start": 0, + "type": "ExpressionStatement", + "type": "ExpressionStatement" } ], "commentStart": 0, "end": 0, + "innerAttrs": [ + { + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "settings", + "start": 0, + "type": "Identifier" + }, + "preComments": [ + "// 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" + ], + "properties": [ + { + "commentStart": 0, + "end": 0, + "key": { + "commentStart": 0, + "end": 0, + "name": "defaultLengthUnit", + "start": 0, + "type": "Identifier" + }, + "start": 0, + "type": "ObjectProperty", + "value": { + "abs_path": false, + "commentStart": 0, + "end": 0, + "name": { + "commentStart": 0, + "end": 0, + "name": "in", + "start": 0, + "type": "Identifier" + }, + "path": [], + "start": 0, + "type": "Name", + "type": "Name" + } + } + ], + "start": 0, + "type": "Annotation" + } + ], "nonCodeMeta": { "nonCodeNodes": { "0": [ @@ -2730,19 +3654,6 @@ description: Result of parsing bracket.kcl } } ], - "1": [ - { - "commentStart": 0, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "inlineComment", - "value": "inch", - "style": "line" - } - } - ], "2": [ { "commentStart": 0, @@ -2764,33 +3675,7 @@ description: Result of parsing bracket.kcl "type": "NonCodeNode", "value": { "type": "inlineComment", - "value": "FOS of 1.2", - "style": "line" - } - } - ], - "4": [ - { - "commentStart": 0, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "inlineComment", - "value": "inches", - "style": "line" - } - } - ], - "5": [ - { - "commentStart": 0, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "inlineComment", - "value": "inches", + "value": "Factor of safety of 1.2", "style": "line" } } @@ -2803,12 +3688,12 @@ description: Result of parsing bracket.kcl "type": "NonCodeNode", "value": { "type": "inlineComment", - "value": "Shelf is 12 inches in depth from the wall", + "value": "Shelf is 12 inches deep from the wall", "style": "line" } } ], - "7": [ + "9": [ { "commentStart": 0, "end": 0, @@ -2816,21 +3701,12 @@ description: Result of parsing bracket.kcl "type": "NonCodeNode", "value": { "type": "inlineComment", - "value": "assume the force is applied at the end of the shelf to be conservative (lb-in)", + "value": "assume the force is applied at the end of the shelf", "style": "line" } - }, - { - "commentStart": 0, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } } ], - "8": [ + "10": [ { "commentStart": 0, "end": 0, @@ -2838,55 +3714,23 @@ description: Result of parsing bracket.kcl "type": "NonCodeNode", "value": { "type": "inlineComment", - "value": "this is the calculation of two brackets holding up the shelf (inches)", + "value": "required thickness for two brackets to hold up the shelf", "style": "line" } - }, - { - "commentStart": 0, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - } - ], - "11": [ - { - "commentStart": 0, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - } - ], - "12": [ - { - "commentStart": 0, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } - } - ], - "13": [ - { - "commentStart": 0, - "end": 0, - "start": 0, - "type": "NonCodeNode", - "value": { - "type": "newLine" - } } ] }, - "startNodes": [] + "startNodes": [ + { + "commentStart": 0, + "end": 0, + "start": 0, + "type": "NonCodeNode", + "value": { + "type": "newLine" + } + } + ] }, "start": 0 } diff --git a/rust/kcl-lib/tests/kcl_samples/bracket/ops.snap b/rust/kcl-lib/tests/kcl_samples/bracket/ops.snap index 36d9da380..b0862683b 100644 --- a/rust/kcl-lib/tests/kcl_samples/bracket/ops.snap +++ b/rust/kcl-lib/tests/kcl_samples/bracket/ops.snap @@ -23,11 +23,11 @@ description: Operations executed bracket.kcl "length": { "value": { "type": "Number", - "value": 6.0, + "value": 5.0, "ty": { "type": "Default", "len": { - "type": "Mm" + "type": "Inches" }, "angle": { "type": "Degrees" @@ -50,186 +50,6 @@ description: Operations executed bracket.kcl "sourceRange": [] } }, - { - "labeledArgs": { - "radius": { - "value": { - "type": "Number", - "value": 0.601324026261472, - "ty": { - "type": "Unknown" - } - }, - "sourceRange": [] - }, - "tags": { - "value": { - "type": "Array", - "value": [ - { - "type": "Uuid", - "value": "[uuid]" - } - ] - }, - "sourceRange": [] - } - }, - "name": "fillet", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Solid", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "labeledArgs": { - "radius": { - "value": { - "type": "Number", - "value": 0.25, - "ty": { - "type": "Default", - "len": { - "type": "Mm" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "tags": { - "value": { - "type": "Array", - "value": [ - { - "type": "Uuid", - "value": "[uuid]" - } - ] - }, - "sourceRange": [] - } - }, - "name": "fillet", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Solid", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "labeledArgs": { - "radius": { - "value": { - "type": "Number", - "value": 0.25, - "ty": { - "type": "Default", - "len": { - "type": "Mm" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "tags": { - "value": { - "type": "Array", - "value": [ - { - "type": "TagIdentifier", - "value": "seg02", - "artifact_id": "[uuid]" - }, - { - "type": "Uuid", - "value": "[uuid]" - } - ] - }, - "sourceRange": [] - } - }, - "name": "fillet", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Solid", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, - { - "labeledArgs": { - "radius": { - "value": { - "type": "Number", - "value": 0.25, - "ty": { - "type": "Default", - "len": { - "type": "Mm" - }, - "angle": { - "type": "Degrees" - } - } - }, - "sourceRange": [] - }, - "tags": { - "value": { - "type": "Array", - "value": [ - { - "type": "TagIdentifier", - "value": "seg05", - "artifact_id": "[uuid]" - }, - { - "type": "Uuid", - "value": "[uuid]" - } - ] - }, - "sourceRange": [] - } - }, - "name": "fillet", - "sourceRange": [], - "type": "StdLibCall", - "unlabeledArg": { - "value": { - "type": "Solid", - "value": { - "artifactId": "[uuid]" - } - }, - "sourceRange": [] - } - }, { "labeledArgs": { "data": { @@ -260,7 +80,7 @@ description: Operations executed bracket.kcl "length": { "value": { "type": "Number", - "value": -0.361324026261472, + "value": -0.39485618835389114, "ty": { "type": "Unknown" } @@ -334,7 +154,7 @@ description: Operations executed bracket.kcl "length": { "value": { "type": "Number", - "value": -0.45132402626147194, + "value": -0.4848561883538911, "ty": { "type": "Unknown" } @@ -365,5 +185,145 @@ description: Operations executed bracket.kcl }, "sourceRange": [] } + }, + { + "labeledArgs": { + "radius": { + "value": { + "type": "Number", + "value": 0.6348561883538911, + "ty": { + "type": "Unknown" + } + }, + "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "Uuid", + "value": "[uuid]" + } + ] + }, + "sourceRange": [] + } + }, + "name": "fillet", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "radius": { + "value": { + "type": "Number", + "value": 0.25, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "Uuid", + "value": "[uuid]" + } + ] + }, + "sourceRange": [] + } + }, + "name": "fillet", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } + }, + { + "labeledArgs": { + "radius": { + "value": { + "type": "Number", + "value": 0.5, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "sourceRange": [] + }, + "tags": { + "value": { + "type": "Array", + "value": [ + { + "type": "TagIdentifier", + "value": "seg02", + "artifact_id": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + }, + { + "type": "TagIdentifier", + "value": "seg05", + "artifact_id": "[uuid]" + }, + { + "type": "Uuid", + "value": "[uuid]" + } + ] + }, + "sourceRange": [] + } + }, + "name": "fillet", + "sourceRange": [], + "type": "StdLibCall", + "unlabeledArg": { + "value": { + "type": "Solid", + "value": { + "artifactId": "[uuid]" + } + }, + "sourceRange": [] + } } ] diff --git a/rust/kcl-lib/tests/kcl_samples/bracket/program_memory.snap b/rust/kcl-lib/tests/kcl_samples/bracket/program_memory.snap index c1852f33d..39ba66236 100644 --- a/rust/kcl-lib/tests/kcl_samples/bracket/program_memory.snap +++ b/rust/kcl-lib/tests/kcl_samples/bracket/program_memory.snap @@ -3,33 +3,393 @@ source: kcl-lib/src/simulation_tests.rs description: Variables in memory after executing bracket.kcl --- { - "extFilletRadius": { + "bendRadius": { "type": "Number", - "value": 0.6013, - "ty": { - "type": "Unknown" - } - }, - "factorOfSafety": { - "type": "Number", - "value": 1.2, + "value": 0.25, "ty": { "type": "Default", "len": { - "type": "Mm" + "type": "Inches" }, "angle": { "type": "Degrees" } } }, + "bracketBody": { + "type": "Solid", + "value": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + 4.6151, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.0 + ], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 4.6151, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.3849 + ], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + -0.3849, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + 0.3849 + ], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + -0.3849, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + -1.8651 + ], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "to": [ + 0.0, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + -1.8651 + ], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "XZ", + "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": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + }, + "seg05": { + "type": "TagIdentifier", + "value": "seg05" + }, + "seg06": { + "type": "TagIdentifier", + "value": "seg06" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 5.0, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "units": { + "type": "Inches" + } + } + }, + "extBendRadius": { + "type": "Number", + "value": 0.6349, + "ty": { + "type": "Unknown" + } + }, "filletRadius": { "type": "Number", - "value": 0.25, + "value": 0.5, "ty": { "type": "Default", "len": { - "type": "Mm" + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "fos": { + "type": "Number", + "value": 1.2, + "ty": { + "type": "Default", + "len": { + "type": "Inches" }, "angle": { "type": "Degrees" @@ -42,20 +402,7 @@ description: Variables in memory after executing bracket.kcl "ty": { "type": "Default", "len": { - "type": "Mm" - }, - "angle": { - "type": "Degrees" - } - } - }, - "mountingHoleDiameter": { - "type": "Number", - "value": 0.5, - "ty": { - "type": "Default", - "len": { - "type": "Mm" + "type": "Inches" }, "angle": { "type": "Degrees" @@ -68,7 +415,7 @@ description: Variables in memory after executing bracket.kcl "ty": { "type": "Default", "len": { - "type": "Mm" + "type": "Inches" }, "angle": { "type": "Degrees" @@ -111,3401 +458,2798 @@ description: Variables in memory after executing bracket.kcl "ty": { "type": "Default", "len": { - "type": "Mm" + "type": "Inches" }, "angle": { "type": "Degrees" } } }, - "shelfMountL": { + "shelfMountLength": { "type": "Number", "value": 5.0, "ty": { "type": "Default", "len": { - "type": "Mm" + "type": "Inches" }, "angle": { "type": "Degrees" } } }, + "shelfMountingHoleDiameter": { + "type": "Number", + "value": 0.5, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "shelfMountingHolePlacementOffset": { + "type": "Number", + "value": 0.75, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "shelfMountingHoles": { + "type": "HomArray", + "value": [ + { + "type": "Solid", + "value": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": null, + "type": "extrudeArc" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "ccw": true, + "center": [ + -1.0, + 0.75 + ], + "from": [ + -0.75, + 0.75 + ], + "radius": 0.25, + "tag": null, + "to": [ + -0.75, + 0.75 + ], + "type": "Circle", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "face", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "seg03", + "xAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "solid": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + 4.6151, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.0 + ], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 4.6151, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.3849 + ], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + -0.3849, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + 0.3849 + ], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + -0.3849, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + -1.8651 + ], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "to": [ + 0.0, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + -1.8651 + ], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "XZ", + "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": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + }, + "seg05": { + "type": "TagIdentifier", + "value": "seg05" + }, + "seg06": { + "type": "TagIdentifier", + "value": "seg06" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 5.0, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + -0.75, + 0.75 + ], + "to": [ + -0.75, + 0.75 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": -0.39485618835389114, + "startCapId": null, + "endCapId": null, + "units": { + "type": "Inches" + } + } + }, + { + "type": "Solid", + "value": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": null, + "type": "extrudeArc" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "ccw": true, + "center": [ + -1.0, + 0.75 + ], + "from": [ + -0.75, + 0.75 + ], + "radius": 0.25, + "tag": null, + "to": [ + -0.75, + 0.75 + ], + "type": "Circle", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "face", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "seg03", + "xAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "solid": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + 4.6151, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.0 + ], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 4.6151, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.3849 + ], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + -0.3849, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + 0.3849 + ], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + -0.3849, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + -1.8651 + ], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "to": [ + 0.0, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + -1.8651 + ], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "XZ", + "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": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + }, + "seg05": { + "type": "TagIdentifier", + "value": "seg05" + }, + "seg06": { + "type": "TagIdentifier", + "value": "seg06" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 5.0, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + -0.75, + 0.75 + ], + "to": [ + -0.75, + 0.75 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": -0.39485618835389114, + "startCapId": null, + "endCapId": null, + "units": { + "type": "Inches" + } + } + }, + { + "type": "Solid", + "value": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": null, + "type": "extrudeArc" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "ccw": true, + "center": [ + -1.0, + 0.75 + ], + "from": [ + -0.75, + 0.75 + ], + "radius": 0.25, + "tag": null, + "to": [ + -0.75, + 0.75 + ], + "type": "Circle", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "face", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "seg03", + "xAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "solid": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + 4.6151, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.0 + ], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 4.6151, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.3849 + ], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + -0.3849, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + 0.3849 + ], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + -0.3849, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + -1.8651 + ], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "to": [ + 0.0, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + -1.8651 + ], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "XZ", + "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": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + }, + "seg05": { + "type": "TagIdentifier", + "value": "seg05" + }, + "seg06": { + "type": "TagIdentifier", + "value": "seg06" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 5.0, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + -0.75, + 0.75 + ], + "to": [ + -0.75, + 0.75 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": -0.39485618835389114, + "startCapId": null, + "endCapId": null, + "units": { + "type": "Inches" + } + } + }, + { + "type": "Solid", + "value": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": null, + "type": "extrudeArc" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "ccw": true, + "center": [ + -1.0, + 0.75 + ], + "from": [ + -0.75, + 0.75 + ], + "radius": 0.25, + "tag": null, + "to": [ + -0.75, + 0.75 + ], + "type": "Circle", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "face", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "seg03", + "xAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "solid": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + 4.6151, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.0 + ], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 4.6151, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.3849 + ], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + -0.3849, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + 0.3849 + ], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + -0.3849, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + -1.8651 + ], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "to": [ + 0.0, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + -1.8651 + ], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "XZ", + "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": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + }, + "seg05": { + "type": "TagIdentifier", + "value": "seg05" + }, + "seg06": { + "type": "TagIdentifier", + "value": "seg06" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 5.0, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + -0.75, + 0.75 + ], + "to": [ + -0.75, + 0.75 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": -0.39485618835389114, + "startCapId": null, + "endCapId": null, + "units": { + "type": "Inches" + } + } + } + ] + }, "sigmaAllow": { "type": "Number", "value": 35000.0, "ty": { "type": "Default", "len": { - "type": "Mm" + "type": "Inches" }, "angle": { "type": "Degrees" } } }, - "sketch001": { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "to": [ - 4.6487, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.0 - ], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "to": [ - 4.6487, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.3513 - ], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "to": [ - -0.3513, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - 0.3513 - ], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "to": [ - -0.3513, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - -1.6487 - ], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "to": [ - -0.0, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.0, - -1.6487 - ], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": null, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "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": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - 0.0, - 0.0 - ], - "to": [ - 0.0, - 0.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "tags": { - "seg01": { - "type": "TagIdentifier", - "value": "seg01" - }, - "seg02": { - "type": "TagIdentifier", - "value": "seg02" - }, - "seg03": { - "type": "TagIdentifier", - "value": "seg03" - }, - "seg04": { - "type": "TagIdentifier", - "value": "seg04" - }, - "seg05": { - "type": "TagIdentifier", - "value": "seg05" - }, - "seg06": { - "type": "TagIdentifier", - "value": "seg06" - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": 6.0, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "edgeCuts": [ - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.601324026261472, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - } - ], - "units": { - "type": "Mm" - } - } - }, - "sketch002": { - "type": "HomArray", - "value": [ - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -1.25, - 1.0 - ], - "from": [ - -1.0, - 1.0 - ], - "radius": 0.25, - "tag": null, - "to": [ - -1.0, - 1.0 - ], - "type": "Circle", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "seg03", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "to": [ - 4.6487, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.0 - ], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "to": [ - 4.6487, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.3513 - ], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "to": [ - -0.3513, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - 0.3513 - ], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "to": [ - -0.3513, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - -1.6487 - ], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "to": [ - -0.0, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.0, - -1.6487 - ], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": null, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "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": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - 0.0, - 0.0 - ], - "to": [ - 0.0, - 0.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "tags": { - "seg01": { - "type": "TagIdentifier", - "value": "seg01" - }, - "seg02": { - "type": "TagIdentifier", - "value": "seg02" - }, - "seg03": { - "type": "TagIdentifier", - "value": "seg03" - }, - "seg04": { - "type": "TagIdentifier", - "value": "seg04" - }, - "seg05": { - "type": "TagIdentifier", - "value": "seg05" - }, - "seg06": { - "type": "TagIdentifier", - "value": "seg06" - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": 6.0, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "edgeCuts": [ - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.601324026261472, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - } - ], - "units": { - "type": "Mm" - } - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - -1.0, - 1.0 - ], - "to": [ - -1.0, - 1.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": -0.361324026261472, - "startCapId": null, - "endCapId": null, - "units": { - "type": "Mm" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -1.25, - 1.0 - ], - "from": [ - -1.0, - 1.0 - ], - "radius": 0.25, - "tag": null, - "to": [ - -1.0, - 1.0 - ], - "type": "Circle", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "seg03", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "to": [ - 4.6487, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.0 - ], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "to": [ - 4.6487, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.3513 - ], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "to": [ - -0.3513, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - 0.3513 - ], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "to": [ - -0.3513, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - -1.6487 - ], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "to": [ - -0.0, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.0, - -1.6487 - ], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": null, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "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": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - 0.0, - 0.0 - ], - "to": [ - 0.0, - 0.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "tags": { - "seg01": { - "type": "TagIdentifier", - "value": "seg01" - }, - "seg02": { - "type": "TagIdentifier", - "value": "seg02" - }, - "seg03": { - "type": "TagIdentifier", - "value": "seg03" - }, - "seg04": { - "type": "TagIdentifier", - "value": "seg04" - }, - "seg05": { - "type": "TagIdentifier", - "value": "seg05" - }, - "seg06": { - "type": "TagIdentifier", - "value": "seg06" - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": 6.0, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "edgeCuts": [ - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.601324026261472, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - } - ], - "units": { - "type": "Mm" - } - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - -1.0, - 1.0 - ], - "to": [ - -1.0, - 1.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": -0.361324026261472, - "startCapId": null, - "endCapId": null, - "units": { - "type": "Mm" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -1.25, - 1.0 - ], - "from": [ - -1.0, - 1.0 - ], - "radius": 0.25, - "tag": null, - "to": [ - -1.0, - 1.0 - ], - "type": "Circle", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "seg03", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "to": [ - 4.6487, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.0 - ], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "to": [ - 4.6487, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.3513 - ], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "to": [ - -0.3513, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - 0.3513 - ], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "to": [ - -0.3513, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - -1.6487 - ], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "to": [ - -0.0, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.0, - -1.6487 - ], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": null, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "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": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - 0.0, - 0.0 - ], - "to": [ - 0.0, - 0.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "tags": { - "seg01": { - "type": "TagIdentifier", - "value": "seg01" - }, - "seg02": { - "type": "TagIdentifier", - "value": "seg02" - }, - "seg03": { - "type": "TagIdentifier", - "value": "seg03" - }, - "seg04": { - "type": "TagIdentifier", - "value": "seg04" - }, - "seg05": { - "type": "TagIdentifier", - "value": "seg05" - }, - "seg06": { - "type": "TagIdentifier", - "value": "seg06" - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": 6.0, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "edgeCuts": [ - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.601324026261472, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - } - ], - "units": { - "type": "Mm" - } - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - -1.0, - 1.0 - ], - "to": [ - -1.0, - 1.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": -0.361324026261472, - "startCapId": null, - "endCapId": null, - "units": { - "type": "Mm" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - -1.25, - 1.0 - ], - "from": [ - -1.0, - 1.0 - ], - "radius": 0.25, - "tag": null, - "to": [ - -1.0, - 1.0 - ], - "type": "Circle", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "seg03", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "to": [ - 4.6487, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.0 - ], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "to": [ - 4.6487, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.3513 - ], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "to": [ - -0.3513, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - 0.3513 - ], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "to": [ - -0.3513, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - -1.6487 - ], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "to": [ - -0.0, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.0, - -1.6487 - ], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": null, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "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": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - 0.0, - 0.0 - ], - "to": [ - 0.0, - 0.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "tags": { - "seg01": { - "type": "TagIdentifier", - "value": "seg01" - }, - "seg02": { - "type": "TagIdentifier", - "value": "seg02" - }, - "seg03": { - "type": "TagIdentifier", - "value": "seg03" - }, - "seg04": { - "type": "TagIdentifier", - "value": "seg04" - }, - "seg05": { - "type": "TagIdentifier", - "value": "seg05" - }, - "seg06": { - "type": "TagIdentifier", - "value": "seg06" - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": 6.0, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "edgeCuts": [ - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.601324026261472, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - } - ], - "units": { - "type": "Mm" - } - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - -1.0, - 1.0 - ], - "to": [ - -1.0, - 1.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": -0.361324026261472, - "startCapId": null, - "endCapId": null, - "units": { - "type": "Mm" - } - } - } - ] - }, - "sketch003": { - "type": "HomArray", - "value": [ - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 1.0, - -1.0 - ], - "from": [ - 1.25, - -1.0 - ], - "radius": 0.25, - "tag": null, - "to": [ - 1.25, - -1.0 - ], - "type": "Circle", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "seg04", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "to": [ - 4.6487, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.0 - ], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "to": [ - 4.6487, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.3513 - ], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "to": [ - -0.3513, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - 0.3513 - ], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "to": [ - -0.3513, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - -1.6487 - ], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "to": [ - -0.0, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.0, - -1.6487 - ], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": null, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "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": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - 0.0, - 0.0 - ], - "to": [ - 0.0, - 0.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "tags": { - "seg01": { - "type": "TagIdentifier", - "value": "seg01" - }, - "seg02": { - "type": "TagIdentifier", - "value": "seg02" - }, - "seg03": { - "type": "TagIdentifier", - "value": "seg03" - }, - "seg04": { - "type": "TagIdentifier", - "value": "seg04" - }, - "seg05": { - "type": "TagIdentifier", - "value": "seg05" - }, - "seg06": { - "type": "TagIdentifier", - "value": "seg06" - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": 6.0, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "edgeCuts": [ - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.601324026261472, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - } - ], - "units": { - "type": "Mm" - } - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - 1.25, - -1.0 - ], - "to": [ - 1.25, - -1.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": -0.45132402626147194, - "startCapId": null, - "endCapId": null, - "units": { - "type": "Mm" - } - } - }, - { - "type": "Solid", - "value": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": null, - "type": "extrudeArc" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "ccw": true, - "center": [ - 1.0, - -1.0 - ], - "from": [ - 1.25, - -1.0 - ], - "radius": 0.25, - "tag": null, - "to": [ - 1.25, - -1.0 - ], - "type": "Circle", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "face", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "seg04", - "xAxis": { - "x": 1.0, - "y": 0.0, - "z": 0.0 - }, - "yAxis": { - "x": 0.0, - "y": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "solid": { - "type": "Solid", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": [ - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "type": "extrudePlane" - }, - { - "faceId": "[uuid]", - "id": "[uuid]", - "sourceRange": [], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "type": "extrudePlane" - } - ], - "sketch": { - "type": "Sketch", - "id": "[uuid]", - "paths": [ - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": { - "commentStart": 1162, - "end": 1168, - "start": 1162, - "type": "TagDeclarator", - "value": "seg01" - }, - "to": [ - 4.6487, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.0 - ], - "tag": { - "commentStart": 1207, - "end": 1213, - "start": 1207, - "type": "TagDeclarator", - "value": "seg02" - }, - "to": [ - 4.6487, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 4.6487, - 0.3513 - ], - "tag": { - "commentStart": 1255, - "end": 1261, - "start": 1255, - "type": "TagDeclarator", - "value": "seg03" - }, - "to": [ - -0.3513, - 0.3513 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - 0.3513 - ], - "tag": { - "commentStart": 1302, - "end": 1308, - "start": 1302, - "type": "TagDeclarator", - "value": "seg04" - }, - "to": [ - -0.3513, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.3513, - -1.6487 - ], - "tag": { - "commentStart": 1347, - "end": 1353, - "start": 1347, - "type": "TagDeclarator", - "value": "seg05" - }, - "to": [ - -0.0, - -1.6487 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - -0.0, - -1.6487 - ], - "tag": { - "commentStart": 1423, - "end": 1429, - "start": 1423, - "type": "TagDeclarator", - "value": "seg06" - }, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - }, - { - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - }, - "from": [ - 0.0, - 0.0 - ], - "tag": null, - "to": [ - 0.0, - 0.0 - ], - "type": "ToPoint", - "units": { - "type": "Mm" - } - } - ], - "on": { - "type": "plane", - "id": "[uuid]", - "artifactId": "[uuid]", - "value": "XZ", - "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": 0.0, - "z": 1.0 - }, - "zAxis": { - "x": 0.0, - "y": -1.0, - "z": 0.0 - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - 0.0, - 0.0 - ], - "to": [ - 0.0, - 0.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "tags": { - "seg01": { - "type": "TagIdentifier", - "value": "seg01" - }, - "seg02": { - "type": "TagIdentifier", - "value": "seg02" - }, - "seg03": { - "type": "TagIdentifier", - "value": "seg03" - }, - "seg04": { - "type": "TagIdentifier", - "value": "seg04" - }, - "seg05": { - "type": "TagIdentifier", - "value": "seg05" - }, - "seg06": { - "type": "TagIdentifier", - "value": "seg06" - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": 6.0, - "startCapId": "[uuid]", - "endCapId": "[uuid]", - "edgeCuts": [ - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.601324026261472, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - }, - { - "type": "fillet", - "id": "[uuid]", - "radius": 0.25, - "edgeId": "[uuid]", - "tag": null - } - ], - "units": { - "type": "Mm" - } - }, - "units": { - "type": "Mm" - } - }, - "start": { - "from": [ - 1.25, - -1.0 - ], - "to": [ - 1.25, - -1.0 - ], - "units": { - "type": "Mm" - }, - "tag": null, - "__geoMeta": { - "id": "[uuid]", - "sourceRange": [] - } - }, - "artifactId": "[uuid]", - "originalId": "[uuid]", - "units": { - "type": "Mm" - } - }, - "height": -0.45132402626147194, - "startCapId": null, - "endCapId": null, - "units": { - "type": "Mm" - } - } - } - ] - }, "thickness": { "type": "Number", - "value": 0.3513, + "value": 0.3849, "ty": { "type": "Unknown" } }, - "wallMountL": { + "wallMountLength": { "type": "Number", - "value": 2.0, + "value": 2.25, "ty": { "type": "Default", "len": { - "type": "Mm" + "type": "Inches" }, "angle": { "type": "Degrees" } } }, - "width": { + "wallMountingHoleDiameter": { "type": "Number", - "value": 6.0, + "value": 0.625, "ty": { "type": "Default", "len": { - "type": "Mm" + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "wallMountingHolePlacementOffset": { + "type": "Number", + "value": 0.9375, + "ty": { + "type": "Default", + "len": { + "type": "Inches" + }, + "angle": { + "type": "Degrees" + } + } + }, + "wallMountingHoles": { + "type": "HomArray", + "value": [ + { + "type": "Solid", + "value": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": null, + "type": "extrudeArc" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "ccw": true, + "center": [ + 1.0625, + 0.9375 + ], + "from": [ + 1.375, + 0.9375 + ], + "radius": 0.3125, + "tag": null, + "to": [ + 1.375, + 0.9375 + ], + "type": "Circle", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "face", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "seg04", + "xAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "solid": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + 4.6151, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.0 + ], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 4.6151, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.3849 + ], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + -0.3849, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + 0.3849 + ], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + -0.3849, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + -1.8651 + ], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "to": [ + 0.0, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + -1.8651 + ], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "XZ", + "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": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + }, + "seg05": { + "type": "TagIdentifier", + "value": "seg05" + }, + "seg06": { + "type": "TagIdentifier", + "value": "seg06" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 5.0, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 1.375, + 0.9375 + ], + "to": [ + 1.375, + 0.9375 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": -0.4848561883538911, + "startCapId": null, + "endCapId": null, + "units": { + "type": "Inches" + } + } + }, + { + "type": "Solid", + "value": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": null, + "type": "extrudeArc" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "ccw": true, + "center": [ + 1.0625, + 0.9375 + ], + "from": [ + 1.375, + 0.9375 + ], + "radius": 0.3125, + "tag": null, + "to": [ + 1.375, + 0.9375 + ], + "type": "Circle", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "face", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "seg04", + "xAxis": { + "x": 1.0, + "y": 0.0, + "z": 0.0 + }, + "yAxis": { + "x": 0.0, + "y": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "solid": { + "type": "Solid", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": [ + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "type": "extrudePlane" + }, + { + "faceId": "[uuid]", + "id": "[uuid]", + "sourceRange": [], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "type": "extrudePlane" + } + ], + "sketch": { + "type": "Sketch", + "id": "[uuid]", + "paths": [ + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": { + "commentStart": 2083, + "end": 2089, + "start": 2083, + "type": "TagDeclarator", + "value": "seg01" + }, + "to": [ + 4.6151, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.0 + ], + "tag": { + "commentStart": 2128, + "end": 2134, + "start": 2128, + "type": "TagDeclarator", + "value": "seg02" + }, + "to": [ + 4.6151, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 4.6151, + 0.3849 + ], + "tag": { + "commentStart": 2181, + "end": 2187, + "start": 2181, + "type": "TagDeclarator", + "value": "seg03" + }, + "to": [ + -0.3849, + 0.3849 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + 0.3849 + ], + "tag": { + "commentStart": 2233, + "end": 2239, + "start": 2233, + "type": "TagDeclarator", + "value": "seg04" + }, + "to": [ + -0.3849, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + -0.3849, + -1.8651 + ], + "tag": { + "commentStart": 2278, + "end": 2284, + "start": 2278, + "type": "TagDeclarator", + "value": "seg05" + }, + "to": [ + 0.0, + -1.8651 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + -1.8651 + ], + "tag": { + "commentStart": 2354, + "end": 2360, + "start": 2354, + "type": "TagDeclarator", + "value": "seg06" + }, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + }, + { + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + }, + "from": [ + 0.0, + 0.0 + ], + "tag": null, + "to": [ + 0.0, + 0.0 + ], + "type": "ToPoint", + "units": { + "type": "Inches" + } + } + ], + "on": { + "type": "plane", + "id": "[uuid]", + "artifactId": "[uuid]", + "value": "XZ", + "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": 0.0, + "z": 1.0 + }, + "zAxis": { + "x": 0.0, + "y": -1.0, + "z": 0.0 + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 0.0, + 0.0 + ], + "to": [ + 0.0, + 0.0 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "tags": { + "seg01": { + "type": "TagIdentifier", + "value": "seg01" + }, + "seg02": { + "type": "TagIdentifier", + "value": "seg02" + }, + "seg03": { + "type": "TagIdentifier", + "value": "seg03" + }, + "seg04": { + "type": "TagIdentifier", + "value": "seg04" + }, + "seg05": { + "type": "TagIdentifier", + "value": "seg05" + }, + "seg06": { + "type": "TagIdentifier", + "value": "seg06" + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": 5.0, + "startCapId": "[uuid]", + "endCapId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "units": { + "type": "Inches" + } + }, + "start": { + "from": [ + 1.375, + 0.9375 + ], + "to": [ + 1.375, + 0.9375 + ], + "units": { + "type": "Inches" + }, + "tag": null, + "__geoMeta": { + "id": "[uuid]", + "sourceRange": [] + } + }, + "artifactId": "[uuid]", + "originalId": "[uuid]", + "units": { + "type": "Inches" + } + }, + "height": -0.4848561883538911, + "startCapId": null, + "endCapId": null, + "units": { + "type": "Inches" + } + } + } + ] + }, + "width": { + "type": "Number", + "value": 5.0, + "ty": { + "type": "Default", + "len": { + "type": "Inches" }, "angle": { "type": "Degrees" diff --git a/rust/kcl-lib/tests/kcl_samples/bracket/rendered_model.png b/rust/kcl-lib/tests/kcl_samples/bracket/rendered_model.png index 9623aaddf..cbb37657c 100644 Binary files a/rust/kcl-lib/tests/kcl_samples/bracket/rendered_model.png and b/rust/kcl-lib/tests/kcl_samples/bracket/rendered_model.png differ diff --git a/src/lib/exampleKcl.ts b/src/lib/exampleKcl.ts index ec92a48fb..762431317 100644 --- a/src/lib/exampleKcl.ts +++ b/src/lib/exampleKcl.ts @@ -1,53 +1,6 @@ -export const bracket = `// 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. +import bracket from '@public/kcl-samples/bracket/main.kcl?raw' - -// Define constants -sigmaAllow = 35000 // psi (6061-T6 aluminum) -width = 6 // inch -p = 300 // Force on shelf - lbs -factorOfSafety = 1.2 // FOS of 1.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) - -// 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 - -sketch001 = startSketchOn(XZ) - |> startProfileAt([0, 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() - -extrude001 = extrude(sketch001, length = width) - |> fillet(radius = extFilletRadius, tags = [getNextAdjacentEdge(seg03)]) - |> fillet(radius = filletRadius, tags = [getNextAdjacentEdge(seg06)]) - |> fillet(radius = filletRadius, tags = [seg02, getOppositeEdge(seg02)]) - |> fillet(radius = filletRadius, tags = [seg05, getOppositeEdge(seg05)]) - -sketch002 = startSketchOn(extrude001, 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]) - -extrude002 = extrude(sketch002, length = -thickness - .01) - -sketch003 = startSketchOn(extrude002, seg04) - |> circle(center = [1, -1], radius = mountingHoleDiameter / 2) - |> patternLinear2d(instances = 2, distance = 4, axis = [1, 0]) - -extrude003 = extrude(sketch003, length = -thickness - 0.1) -` +export { bracket } /** * @throws Error if the search text is not found in the example code. @@ -70,7 +23,6 @@ function findLineInExampleCode({ } return lineNumber } - export const bracketWidthConstantLine = findLineInExampleCode({ searchText: 'width =', }) diff --git a/tsconfig.json b/tsconfig.json index d379580d9..aa8aaa0a0 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -11,6 +11,7 @@ "@rust/*": ["./rust/*"], "@e2e/*": ["./e2e/*"], "@src/*": ["./src/*"], + "@public/*": ["./public/*"], "@root/*": ["./*"] }, "types": [ diff --git a/vite.config.ts b/vite.config.ts index beef0bbb4..ba923f83e 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -65,6 +65,7 @@ const config = defineConfig({ '@rust': '/rust', '@e2e': '/e2e', '@src': '/src', + '@public': '/public', '@root': '/', }, },