Compare commits
20 Commits
kcl-71
...
remove-ext
Author | SHA1 | Date | |
---|---|---|---|
448403d4fa | |||
f6e26e0bab | |||
f6b3a55cbf | |||
74939e5cd6 | |||
9906c9947a | |||
48d6a21f0a | |||
dd6a980915 | |||
2516df3a39 | |||
52125f0566 | |||
e489222b6a | |||
d93a57d7bf | |||
d34aea345b | |||
0b6102b0ac | |||
9e0873ed84 | |||
8587eb5fea | |||
b898c27e74 | |||
3026866a16 | |||
92fc294eae | |||
21e967ea7f | |||
3f00e7186c |
55
.github/workflows/build-apps.yml
vendored
55
.github/workflows/build-apps.yml
vendored
@ -123,18 +123,6 @@ jobs:
|
||||
- id: export_notes
|
||||
run: echo "notes=`cat release-notes.md`" >> "$GITHUB_OUTPUT"
|
||||
|
||||
- name: Prepare electron-builder.yml file for updater test
|
||||
if: ${{ env.IS_RELEASE == 'true' }}
|
||||
run: |
|
||||
yq -i '.publish[0].url = "https://dl.zoo.dev/releases/modeling-app/updater-test"' electron-builder.yml
|
||||
|
||||
- uses: actions/upload-artifact@v4
|
||||
if: ${{ env.IS_RELEASE == 'true' }}
|
||||
with:
|
||||
name: prepared-files-updater-test
|
||||
path: |
|
||||
electron-builder.yml
|
||||
|
||||
|
||||
build-apps:
|
||||
needs: [prepare-files]
|
||||
@ -259,49 +247,6 @@ jobs:
|
||||
|
||||
# TODO: add the 'Build for Mac TestFlight (nightly)' stage back
|
||||
|
||||
# The steps below are for updater-test builds, only on release
|
||||
|
||||
- uses: actions/download-artifact@v4
|
||||
if: ${{ env.IS_RELEASE == 'true' }}
|
||||
name: prepared-files-updater-test
|
||||
|
||||
- name: Copy updated electron-builder.yml file for updater test
|
||||
if: ${{ env.IS_RELEASE == 'true' }}
|
||||
run: |
|
||||
ls -R prepared-files-updater-test
|
||||
cp prepared-files-updater-test/electron-builder.yml electron-builder.yml
|
||||
|
||||
- name: Build the app (updater-test)
|
||||
if: ${{ env.IS_RELEASE == 'true' }}
|
||||
env:
|
||||
APPLE_ID: ${{ secrets.APPLE_ID }}
|
||||
APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }}
|
||||
APPLE_APP_SPECIFIC_PASSWORD: ${{ secrets.APPLE_PASSWORD }}
|
||||
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
|
||||
CSC_LINK: ${{ secrets.APPLE_CERTIFICATE }}
|
||||
CSC_KEY_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }}
|
||||
CSC_KEYCHAIN: ${{ secrets.APPLE_SIGNING_IDENTITY }}
|
||||
WINDOWS_CERTIFICATE_THUMBPRINT: ${{ secrets.WINDOWS_CERTIFICATE_THUMBPRINT }}
|
||||
run: npm run tronb:package:prod
|
||||
|
||||
- uses: actions/upload-artifact@v4
|
||||
if: ${{ env.IS_RELEASE == 'true' }}
|
||||
with:
|
||||
name: updater-test-arm64-${{ matrix.platform }}
|
||||
path: |
|
||||
out/*-arm64-win.exe
|
||||
out/*-arm64-mac.dmg
|
||||
out/*-arm64-linux.AppImage
|
||||
|
||||
- uses: actions/upload-artifact@v4
|
||||
if: ${{ env.IS_RELEASE == 'true' }}
|
||||
with:
|
||||
name: updater-test-x64-${{ matrix.platform }}
|
||||
path: |
|
||||
out/*-x64-win.exe
|
||||
out/*-x64-mac.dmg
|
||||
out/*-x86_64-linux.AppImage
|
||||
|
||||
|
||||
upload-apps-release:
|
||||
runs-on: ubuntu-22.04
|
||||
|
@ -130,7 +130,7 @@ git tag $VERSION
|
||||
git push origin --tags
|
||||
```
|
||||
|
||||
This will trigger the `build-apps` workflow, set the version, build & sign the apps, and generate release files as well as updater-test artifacts.
|
||||
This will trigger the `build-apps` workflow, set the version, build & sign the apps, and generate release files.
|
||||
|
||||
The workflow should be listed right away [in this list](https://github.com/KittyCAD/modeling-app/actions/workflows/build-apps.yml?query=event%3Apush)).
|
||||
|
||||
@ -142,13 +142,10 @@ The release builds can be found under the `out-{arch}-{platform}` zip files, at
|
||||
|
||||
Manually test against this [list](https://github.com/KittyCAD/modeling-app/issues/3588) across Windows, MacOS, Linux and posting results as comments in the issue.
|
||||
|
||||
##### Updater-test builds
|
||||
|
||||
The other `build-apps` output in the release `build-apps` workflow (triggered by 2.) is `updater-test-{arch}-{platform}`. It's a semi-automated process: for macOS, Windows, and Linux, download the corresponding updater-test artifact file, install the app, run it, expect an updater prompt to a dummy v0.255.255, install it and check that the app comes back at that version.
|
||||
|
||||
The only difference with these builds is that they point to a different update location on the release bucket, with this dummy v0.255.255 always available. This helps ensuring that the version we release will be able to update to the next one available.
|
||||
|
||||
If the prompt doesn't show up, start the app in command line to grab the electron-updater logs. This is likely an issue with the current build that needs addressing (or the updater-test location in the storage bucket).
|
||||
A prompt should show up asking for a downgrade to the last release version. Running through that at the end of testing
|
||||
and making sure the current release candidate has the ability to be updated to what electron-updater points to is critical,
|
||||
but what is actually being downloaded and installed isn't.
|
||||
If the prompt doesn't show up, start the app in command line to grab the electron-updater logs. This is likely an issue with the current build that needs addressing.
|
||||
|
||||
```
|
||||
# Windows (PowerShell)
|
||||
|
16
docs/kcl-std/consts/std-sweep-SKETCH_PLANE.md
Normal file
16
docs/kcl-std/consts/std-sweep-SKETCH_PLANE.md
Normal file
@ -0,0 +1,16 @@
|
||||
---
|
||||
title: "sweep::SKETCH_PLANE"
|
||||
subtitle: "Constant in std::sweep"
|
||||
excerpt: "Local/relative to a position centered within the plane being sketched on"
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Local/relative to a position centered within the plane being sketched on
|
||||
|
||||
```kcl
|
||||
sweep::SKETCH_PLANE: string = 'sketchPlane'
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
16
docs/kcl-std/consts/std-sweep-TRAJECTORY.md
Normal file
16
docs/kcl-std/consts/std-sweep-TRAJECTORY.md
Normal file
@ -0,0 +1,16 @@
|
||||
---
|
||||
title: "sweep::TRAJECTORY"
|
||||
subtitle: "Constant in std::sweep"
|
||||
excerpt: "Local/relative to the trajectory curve"
|
||||
layout: manual
|
||||
---
|
||||
|
||||
Local/relative to the trajectory curve
|
||||
|
||||
```kcl
|
||||
sweep::TRAJECTORY: string = 'trajectoryCurve'
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -128,6 +128,9 @@ layout: manual
|
||||
* [`E`](/docs/kcl-std/consts/std-math-E)
|
||||
* [`PI`](/docs/kcl-std/consts/std-math-PI)
|
||||
* [`TAU`](/docs/kcl-std/consts/std-math-TAU)
|
||||
* [**std::sweep**](/docs/kcl-std/modules/std-sweep)
|
||||
* [`sweep::SKETCH_PLANE`](/docs/kcl-std/consts/std-sweep-SKETCH_PLANE)
|
||||
* [`sweep::TRAJECTORY`](/docs/kcl-std/consts/std-sweep-TRAJECTORY)
|
||||
* [**std::turns**](/docs/kcl-std/modules/std-turns)
|
||||
* [`turns::HALF_TURN`](/docs/kcl-std/consts/std-turns-HALF_TURN)
|
||||
* [`turns::QUARTER_TURN`](/docs/kcl-std/consts/std-turns-QUARTER_TURN)
|
||||
|
17
docs/kcl-std/modules/std-sweep.md
Normal file
17
docs/kcl-std/modules/std-sweep.md
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
title: "sweep"
|
||||
subtitle: "Module in std"
|
||||
excerpt: ""
|
||||
layout: manual
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
## Functions and constants
|
||||
|
||||
* [`sweep::SKETCH_PLANE`](/docs/kcl-std/consts/std-sweep-SKETCH_PLANE)
|
||||
* [`sweep::TRAJECTORY`](/docs/kcl-std/consts/std-sweep-TRAJECTORY)
|
||||
|
@ -19,6 +19,7 @@ You might also want the [KCL language reference](/docs/kcl-lang) or the [KCL gui
|
||||
* [`math`](/docs/kcl-std/modules/std-math)
|
||||
* [`sketch`](/docs/kcl-std/modules/std-sketch)
|
||||
* [`solid`](/docs/kcl-std/modules/std-solid)
|
||||
* [`sweep::sweep`](/docs/kcl-std/modules/std-sweep)
|
||||
* [`transform`](/docs/kcl-std/modules/std-transform)
|
||||
* [`turns::turns`](/docs/kcl-std/modules/std-turns)
|
||||
* [`types`](/docs/kcl-std/modules/std-types)
|
||||
|
@ -134,8 +134,6 @@ extrude001 = extrude(sketch001, length = 5)`
|
||||
await page.setBodyDimensions({ width: 1200, height: 500 })
|
||||
await homePage.goToModelingScene()
|
||||
|
||||
await page.waitForTimeout(1000)
|
||||
|
||||
// Ensure badge is present
|
||||
const codePaneButtonHolder = page.locator('#code-button-holder')
|
||||
await expect(codePaneButtonHolder).toContainText('notification', {
|
||||
@ -183,7 +181,7 @@ extrude001 = extrude(sketch001, length = 5)`
|
||||
await page.setBodyDimensions({ width: 1200, height: 500 })
|
||||
await homePage.goToModelingScene()
|
||||
|
||||
await scene.settled(cmdBar)
|
||||
// await scene.settled(cmdBar)
|
||||
|
||||
// Ensure badge is present
|
||||
const codePaneButtonHolder = page.locator('#code-button-holder')
|
||||
|
@ -65,7 +65,9 @@ test(
|
||||
await expect(engineErrorToastMessage).not.toBeVisible()
|
||||
|
||||
const successToastMessage = page.getByText(`Exported successfully`)
|
||||
await expect(successToastMessage).toBeVisible()
|
||||
await page.waitForTimeout(1_000)
|
||||
const count = await successToastMessage.count()
|
||||
await expect(count).toBeGreaterThanOrEqual(1)
|
||||
|
||||
// Check for the exported file
|
||||
const firstFileFullPath = path.resolve(
|
||||
@ -134,7 +136,9 @@ test(
|
||||
await expect(engineErrorToastMessage).not.toBeVisible()
|
||||
|
||||
const successToastMessage = page.getByText(`Exported successfully`)
|
||||
await expect(successToastMessage).toBeVisible()
|
||||
await page.waitForTimeout(1_000)
|
||||
const count = await successToastMessage.count()
|
||||
await expect(count).toBeGreaterThanOrEqual(1)
|
||||
await expect(exportingToastMessage).not.toBeVisible()
|
||||
|
||||
// Check for the exported file=
|
||||
|
@ -1533,7 +1533,6 @@ sketch001 = startSketchOn(XZ)
|
||||
await homePage.goToModelingScene()
|
||||
|
||||
await scene.connectionEstablished()
|
||||
await scene.settled(cmdBar)
|
||||
|
||||
await scene.expectPixelColor(
|
||||
TEST_COLORS.DARK_MODE_BKGD,
|
||||
|
@ -267,75 +267,6 @@ test.describe('when using the file tree to', () => {
|
||||
})
|
||||
}
|
||||
)
|
||||
|
||||
test(
|
||||
'loading small file, then large, then back to small',
|
||||
{
|
||||
tag: '@electron',
|
||||
},
|
||||
async ({ page }, testInfo) => {
|
||||
const {
|
||||
panesOpen,
|
||||
pasteCodeInEditor,
|
||||
createNewFile,
|
||||
openDebugPanel,
|
||||
closeDebugPanel,
|
||||
expectCmdLog,
|
||||
} = await getUtils(page, test)
|
||||
|
||||
await page.setViewportSize({ width: 1200, height: 500 })
|
||||
page.on('console', console.log)
|
||||
|
||||
await panesOpen(['files', 'code'])
|
||||
await createProject({ name: 'project-000', page })
|
||||
|
||||
// Create a small file
|
||||
const kclCube = await fsp.readFile(
|
||||
'rust/kcl-lib/e2e/executor/inputs/cube.kcl',
|
||||
'utf-8'
|
||||
)
|
||||
// pasted into main.kcl
|
||||
await pasteCodeInEditor(kclCube)
|
||||
|
||||
// Create a large lego file
|
||||
await createNewFile('lego')
|
||||
const legoFile = page.getByRole('listitem').filter({
|
||||
has: page.getByRole('button', { name: 'lego.kcl' }),
|
||||
})
|
||||
await expect(legoFile).toBeVisible({ timeout: 60_000 })
|
||||
await legoFile.click()
|
||||
const kclLego = await fsp.readFile(
|
||||
'rust/kcl-lib/e2e/executor/inputs/lego.kcl',
|
||||
'utf-8'
|
||||
)
|
||||
await pasteCodeInEditor(kclLego)
|
||||
const mainFile = page.getByRole('listitem').filter({
|
||||
has: page.getByRole('button', { name: 'main.kcl' }),
|
||||
})
|
||||
|
||||
// Open settings and enable the debug panel
|
||||
await page
|
||||
.getByRole('link', {
|
||||
name: 'settings Settings',
|
||||
})
|
||||
.click()
|
||||
await page.locator('#showDebugPanel').getByText('OffOn').click()
|
||||
await page.getByTestId('settings-close-button').click()
|
||||
|
||||
await test.step('swap between small and large files', async () => {
|
||||
await openDebugPanel()
|
||||
// Previously created a file so we need to start back at main.kcl
|
||||
await mainFile.click()
|
||||
await expectCmdLog('[data-message-type="execution-done"]', 60_000)
|
||||
// Click the large file
|
||||
await legoFile.click()
|
||||
// Once it is building, click back to the smaller file
|
||||
await mainFile.click()
|
||||
await expectCmdLog('[data-message-type="execution-done"]', 60_000)
|
||||
await closeDebugPanel()
|
||||
})
|
||||
}
|
||||
)
|
||||
})
|
||||
|
||||
test.describe('Renaming in the file tree', () => {
|
||||
|
@ -1931,50 +1931,37 @@ sketch002 = startSketchOn(XZ)
|
||||
})
|
||||
})
|
||||
|
||||
test(`Sweep point-and-click failing validation`, async ({
|
||||
test(`Sweep point-and-click helix`, async ({
|
||||
context,
|
||||
page,
|
||||
homePage,
|
||||
scene,
|
||||
editor,
|
||||
toolbar,
|
||||
cmdBar,
|
||||
}) => {
|
||||
const initialCode = `@settings(defaultLengthUnit = in)
|
||||
sketch001 = startSketchOn(YZ)
|
||||
|> circle(
|
||||
center = [0, 0],
|
||||
radius = 500
|
||||
)
|
||||
sketch002 = startSketchOn(XZ)
|
||||
|> startProfile(at = [0, 0])
|
||||
|> xLine(length = -500)
|
||||
|> line(endAbsolute = [-2000, 500])
|
||||
`
|
||||
const circleCode = `circle(sketch001, center = [0, -1], radius = .1)`
|
||||
const initialCode = `helix001 = helix(
|
||||
axis = X,
|
||||
radius = 1,
|
||||
length = 10,
|
||||
revolutions = 10,
|
||||
angleStart = 0,
|
||||
ccw = false,
|
||||
)
|
||||
sketch001 = startSketchOn(XZ)
|
||||
profile001 = ${circleCode}`
|
||||
const sweepDeclaration = 'sweep001 = sweep(profile001, path = helix001)'
|
||||
|
||||
await context.addInitScript((initialCode) => {
|
||||
localStorage.setItem('persistCode', initialCode)
|
||||
}, initialCode)
|
||||
await page.setBodyDimensions({ width: 1000, height: 500 })
|
||||
await homePage.goToModelingScene()
|
||||
await scene.settled(cmdBar)
|
||||
|
||||
// One dumb hardcoded screen pixel value
|
||||
const testPoint = { x: 700, y: 250 }
|
||||
const [clickOnSketch1] = scene.makeMouseHelpers(testPoint.x, testPoint.y)
|
||||
const [clickOnSketch2] = scene.makeMouseHelpers(
|
||||
testPoint.x - 50,
|
||||
testPoint.y
|
||||
)
|
||||
|
||||
await test.step(`Look for sketch001`, async () => {
|
||||
await toolbar.closePane('code')
|
||||
await scene.expectPixelColor([53, 53, 53], testPoint, 15)
|
||||
})
|
||||
|
||||
await test.step(`Go through the command bar flow and fail validation with a toast`, async () => {
|
||||
await test.step(`Add sweep through the command bar flow`, async () => {
|
||||
await toolbar.openPane('feature-tree')
|
||||
await toolbar.sweepButton.click()
|
||||
await expect
|
||||
.poll(() => page.getByText('Please select one').count())
|
||||
.toBe(1)
|
||||
await cmdBar.expectState({
|
||||
commandName: 'Sweep',
|
||||
currentArgKey: 'sketches',
|
||||
@ -1987,7 +1974,8 @@ sketch002 = startSketchOn(XZ)
|
||||
highlightedHeaderArg: 'sketches',
|
||||
stage: 'arguments',
|
||||
})
|
||||
await clickOnSketch1()
|
||||
await editor.scrollToText(circleCode)
|
||||
await page.getByText(circleCode).click()
|
||||
await cmdBar.progressCmdBar()
|
||||
await cmdBar.expectState({
|
||||
commandName: 'Sweep',
|
||||
@ -2001,11 +1989,39 @@ sketch002 = startSketchOn(XZ)
|
||||
highlightedHeaderArg: 'path',
|
||||
stage: 'arguments',
|
||||
})
|
||||
await clickOnSketch2()
|
||||
const helix = await toolbar.getFeatureTreeOperation('Helix', 0)
|
||||
await helix.click()
|
||||
await cmdBar.expectState({
|
||||
commandName: 'Sweep',
|
||||
currentArgKey: 'path',
|
||||
currentArgValue: '',
|
||||
headerArguments: {
|
||||
Sectional: '',
|
||||
Sketches: '1 face',
|
||||
Path: '',
|
||||
},
|
||||
highlightedHeaderArg: 'path',
|
||||
stage: 'arguments',
|
||||
})
|
||||
await cmdBar.progressCmdBar()
|
||||
await expect(
|
||||
page.getByText('Unable to sweep with the current selection. Reason:')
|
||||
).toBeVisible()
|
||||
await cmdBar.expectState({
|
||||
commandName: 'Sweep',
|
||||
headerArguments: {
|
||||
Sketches: '1 face',
|
||||
Path: '1 helix',
|
||||
Sectional: '',
|
||||
},
|
||||
stage: 'review',
|
||||
})
|
||||
await cmdBar.progressCmdBar()
|
||||
await editor.expectEditor.toContain(sweepDeclaration)
|
||||
})
|
||||
|
||||
await test.step('Delete sweep via feature tree selection', async () => {
|
||||
const sweep = await toolbar.getFeatureTreeOperation('Sweep', 0)
|
||||
await sweep.click()
|
||||
await page.keyboard.press('Delete')
|
||||
await editor.expectEditor.not.toContain(sweepDeclaration)
|
||||
})
|
||||
})
|
||||
|
||||
@ -3627,67 +3643,6 @@ profile001 = startProfile(sketch001, at = [-20, 20])
|
||||
})
|
||||
})
|
||||
|
||||
test(`Shell dry-run validation rejects sweeps`, async ({
|
||||
context,
|
||||
page,
|
||||
homePage,
|
||||
scene,
|
||||
editor,
|
||||
toolbar,
|
||||
cmdBar,
|
||||
}) => {
|
||||
const initialCode = `sketch001 = startSketchOn(YZ)
|
||||
|> circle(
|
||||
center = [0, 0],
|
||||
radius = 500
|
||||
)
|
||||
sketch002 = startSketchOn(XZ)
|
||||
|> startProfile(at = [0, 0])
|
||||
|> xLine(length = -2000)
|
||||
sweep001 = sweep(sketch001, path = sketch002)
|
||||
`
|
||||
await context.addInitScript((initialCode) => {
|
||||
localStorage.setItem('persistCode', initialCode)
|
||||
}, initialCode)
|
||||
await page.setBodyDimensions({ width: 1000, height: 500 })
|
||||
await homePage.goToModelingScene()
|
||||
await scene.settled(cmdBar)
|
||||
|
||||
// One dumb hardcoded screen pixel value
|
||||
const testPoint = { x: 500, y: 250 }
|
||||
const [clickOnSweep] = scene.makeMouseHelpers(testPoint.x, testPoint.y)
|
||||
|
||||
await test.step(`Confirm sweep exists`, async () => {
|
||||
await toolbar.closePane('code')
|
||||
await scene.expectPixelColor([231, 231, 231], testPoint, 15)
|
||||
})
|
||||
|
||||
await test.step(`Go through the Shell flow and fail validation with a toast`, async () => {
|
||||
await toolbar.shellButton.click()
|
||||
await expect
|
||||
.poll(() => page.getByText('Please select one').count())
|
||||
.toBe(1)
|
||||
await cmdBar.expectState({
|
||||
stage: 'arguments',
|
||||
currentArgKey: 'selection',
|
||||
currentArgValue: '',
|
||||
headerArguments: {
|
||||
Selection: '',
|
||||
Thickness: '',
|
||||
},
|
||||
highlightedHeaderArg: 'selection',
|
||||
commandName: 'Shell',
|
||||
})
|
||||
await clickOnSweep()
|
||||
await page.waitForTimeout(500)
|
||||
await cmdBar.progressCmdBar()
|
||||
await expect(
|
||||
page.getByText('Unable to shell with the current selection. Reason:')
|
||||
).toBeVisible()
|
||||
await page.waitForTimeout(1000)
|
||||
})
|
||||
})
|
||||
|
||||
test.describe('Revolve point and click workflows', () => {
|
||||
test('Base case workflow, auto spam continue in command bar', async ({
|
||||
context,
|
||||
@ -4943,4 +4898,34 @@ path001 = startProfile(sketch001, at = [0, 0])
|
||||
)
|
||||
})
|
||||
})
|
||||
|
||||
test(`Point and click codemods can't run on KCL errors`, async ({
|
||||
context,
|
||||
page,
|
||||
homePage,
|
||||
scene,
|
||||
editor,
|
||||
toolbar,
|
||||
cmdBar,
|
||||
}) => {
|
||||
const badCode = `sketch001 = startSketchOn(XZ)
|
||||
profile001 = circle(sketch001, center = [0, 0], radius = 1)
|
||||
extrude001 = extrude(profile001 length = 1)`
|
||||
await context.addInitScript((initialCode) => {
|
||||
localStorage.setItem('persistCode', initialCode)
|
||||
}, badCode)
|
||||
await page.setBodyDimensions({ width: 1000, height: 500 })
|
||||
await homePage.goToModelingScene()
|
||||
await scene.connectionEstablished()
|
||||
|
||||
await test.step(`Start Sketch is disabled`, async () => {
|
||||
await expect(toolbar.startSketchBtn).not.toBeEnabled()
|
||||
await editor.expectEditor.toContain(badCode, { shouldNormalise: true })
|
||||
})
|
||||
|
||||
await test.step(`Helix is disabled`, async () => {
|
||||
await expect(toolbar.helixButton).not.toBeEnabled()
|
||||
await editor.expectEditor.toContain(badCode, { shouldNormalise: true })
|
||||
})
|
||||
})
|
||||
})
|
||||
|
@ -19,11 +19,12 @@ test.describe('Regression tests', () => {
|
||||
context,
|
||||
page,
|
||||
homePage,
|
||||
scene,
|
||||
}) => {
|
||||
// because the model has `line([0,0]..` it is valid code, but the model is invalid
|
||||
// regression test for https://github.com/KittyCAD/modeling-app/issues/3251
|
||||
// Since the bad model also found as issue with the artifact graph, which in tern blocked the editor diognostics
|
||||
const u = await getUtils(page)
|
||||
// const u = await getUtils(page)
|
||||
await context.addInitScript(async () => {
|
||||
localStorage.setItem(
|
||||
'persistCode',
|
||||
@ -40,7 +41,8 @@ test.describe('Regression tests', () => {
|
||||
await page.setBodyDimensions({ width: 1000, height: 500 })
|
||||
|
||||
await homePage.goToModelingScene()
|
||||
await u.waitForPageLoad()
|
||||
await scene.connectionEstablished()
|
||||
// await u.waitForPageLoad()
|
||||
|
||||
// error in guter
|
||||
await expect(page.locator('.cm-lint-marker-error')).toBeVisible()
|
||||
@ -188,8 +190,8 @@ extrude001 = extrude(sketch001, length = 50)
|
||||
page.locator('.pretty-json-container >> text=myVar:"67')
|
||||
).toBeVisible()
|
||||
})
|
||||
test('ProgramMemory can be serialised', async ({ page, homePage }) => {
|
||||
const u = await getUtils(page)
|
||||
test('ProgramMemory can be serialised', async ({ page, homePage, scene }) => {
|
||||
// const u = await getUtils(page)
|
||||
await page.addInitScript(async () => {
|
||||
localStorage.setItem(
|
||||
'persistCode',
|
||||
@ -214,11 +216,12 @@ extrude001 = extrude(sketch001, length = 50)
|
||||
// Listen for all console events and push the message text to an array
|
||||
page.on('console', (message) => messages.push(message.text()))
|
||||
await homePage.goToModelingScene()
|
||||
await u.waitForPageLoad()
|
||||
// await u.waitForPageLoad()
|
||||
await scene.connectionEstablished()
|
||||
|
||||
// wait for execution done
|
||||
await u.openDebugPanel()
|
||||
await u.expectCmdLog('[data-message-type="execution-done"]')
|
||||
// await u.openDebugPanel()
|
||||
// await u.expectCmdLog('[data-message-type="execution-done"]')
|
||||
|
||||
const forbiddenMessages = ['cannot serialize tagged newtype variant']
|
||||
forbiddenMessages.forEach((forbiddenMessage) => {
|
||||
@ -232,6 +235,7 @@ extrude001 = extrude(sketch001, length = 50)
|
||||
context,
|
||||
page,
|
||||
homePage,
|
||||
scene,
|
||||
}) => {
|
||||
const u = await getUtils(page)
|
||||
// const PUR = 400 / 37.5 //pixeltoUnitRatio
|
||||
@ -250,11 +254,10 @@ extrude001 = extrude(sketch001, length = 50)
|
||||
shell(exampleSketch, faces = ['end'], thickness = 0.25)`
|
||||
)
|
||||
})
|
||||
await homePage.goToModelingScene()
|
||||
await scene.connectionEstablished()
|
||||
|
||||
await expect(async () => {
|
||||
await homePage.goToModelingScene()
|
||||
await u.waitForPageLoad()
|
||||
|
||||
// error in guter
|
||||
await expect(page.locator('.cm-lint-marker-error')).toBeVisible({
|
||||
timeout: 1_000,
|
||||
@ -455,12 +458,10 @@ extrude002 = extrude(profile002, length = 150)
|
||||
|
||||
// Click the stl.
|
||||
await expect(stlOption).toBeVisible()
|
||||
|
||||
await page.keyboard.press('Enter')
|
||||
|
||||
// Click the checkbox
|
||||
await expect(submitButton).toBeVisible()
|
||||
|
||||
await page.keyboard.press('Enter')
|
||||
|
||||
// Find the toast.
|
||||
@ -468,11 +469,13 @@ extrude002 = extrude(profile002, length = 150)
|
||||
await expect(exportingToastMessage).toBeVisible()
|
||||
|
||||
// Expect it to succeed.
|
||||
await expect(exportingToastMessage).not.toBeVisible({ timeout: 15_000 })
|
||||
await expect(exportingToastMessage).not.toBeVisible()
|
||||
await expect(engineErrorToastMessage).not.toBeVisible()
|
||||
|
||||
const successToastMessage = page.getByText(`Exported successfully`)
|
||||
await expect(successToastMessage).toBeVisible()
|
||||
await page.waitForTimeout(1_000)
|
||||
const count = await successToastMessage.count()
|
||||
await expect(count).toBeGreaterThanOrEqual(1)
|
||||
}
|
||||
)
|
||||
// We updated this test such that you can have multiple exports going at once.
|
||||
|
@ -1365,18 +1365,18 @@ solid001 = subtract([extrude001], tools = [extrude002])
|
||||
await page.addInitScript(async () => {
|
||||
localStorage.setItem(
|
||||
'persistCode',
|
||||
`fn in2mm = (inches) => {
|
||||
`fn in2mm(@inches) {
|
||||
return inches * 25.4
|
||||
}
|
||||
|
||||
const railTop = in2mm(.748)
|
||||
const railSide = in2mm(.024)
|
||||
const railBaseWidth = in2mm(.612)
|
||||
const railWideWidth = in2mm(.835)
|
||||
const railBaseLength = in2mm(.200)
|
||||
const railClampable = in2mm(.200)
|
||||
railTop = in2mm(.748)
|
||||
railSide = in2mm(.024)
|
||||
railBaseWidth = in2mm(.612)
|
||||
railWideWidth = in2mm(.835)
|
||||
railBaseLength = in2mm(.200)
|
||||
railClampable = in2mm(.200)
|
||||
|
||||
const rail = startSketchOn(XZ)
|
||||
rail = startSketchOn(XZ)
|
||||
|> startProfile(at = [-railTop / 2, railClampable + railBaseLength])
|
||||
|> line(endAbsolute = [
|
||||
railTop / 2,
|
||||
@ -3540,7 +3540,6 @@ profile001 = startProfile(sketch001, at = [127.56, 179.02])
|
||||
|
||||
await homePage.openProject('multi-file-sketch-test')
|
||||
await scene.connectionEstablished()
|
||||
await scene.settled(cmdBar)
|
||||
|
||||
await u.closeDebugPanel()
|
||||
|
||||
@ -3555,9 +3554,6 @@ profile001 = startProfile(sketch001, at = [127.56, 179.02])
|
||||
|
||||
await toolbar.openFile('error.kcl')
|
||||
|
||||
// Ensure filetree is populated
|
||||
await scene.settled(cmdBar)
|
||||
|
||||
await expect(
|
||||
toolbar.featureTreePane.getByRole('button', { name: 'Sketch' })
|
||||
).toHaveCount(0)
|
||||
|
@ -766,7 +766,7 @@ test.describe('Grid visibility', { tag: '@snapshot' }, () => {
|
||||
})
|
||||
})
|
||||
|
||||
test('theme persists', async ({ page, context }) => {
|
||||
test('theme persists', async ({ page, context, homePage }) => {
|
||||
const u = await getUtils(page)
|
||||
await context.addInitScript(async () => {
|
||||
localStorage.setItem(
|
||||
@ -784,7 +784,7 @@ test('theme persists', async ({ page, context }) => {
|
||||
|
||||
await page.setViewportSize({ width: 1200, height: 500 })
|
||||
|
||||
await u.waitForAuthSkipAppStart()
|
||||
await homePage.goToModelingScene()
|
||||
await page.waitForTimeout(500)
|
||||
|
||||
// await page.getByRole('link', { name: 'Settings Settings (tooltip)' }).click()
|
||||
@ -812,7 +812,7 @@ test('theme persists', async ({ page, context }) => {
|
||||
// Disconnect and reconnect to check the theme persists through a reload
|
||||
|
||||
// Expect the network to be down
|
||||
await expect(networkToggle).toContainText('Offline')
|
||||
await expect(networkToggle).toContainText('Problem')
|
||||
|
||||
// simulate network up
|
||||
await u.emulateNetworkConditions({
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 47 KiB |
@ -1,19 +1,22 @@
|
||||
import type { EngineCommand } from '@src/lang/std/artifactGraph'
|
||||
import { uuidv4 } from '@src/lib/utils'
|
||||
|
||||
import { commonPoints, getUtils } from '@e2e/playwright/test-utils'
|
||||
import {
|
||||
commonPoints,
|
||||
getUtils,
|
||||
TEST_COLORS,
|
||||
circleMove,
|
||||
} from '@e2e/playwright/test-utils'
|
||||
import { expect, test } from '@e2e/playwright/zoo-test'
|
||||
|
||||
test.describe(
|
||||
'Test network and connection issues',
|
||||
{
|
||||
tag: ['@macos', '@windows'],
|
||||
},
|
||||
() => {
|
||||
test.describe('Test network related behaviors', () => {
|
||||
test(
|
||||
'simulate network down and network little widget',
|
||||
{ tag: '@skipLocalEngine' },
|
||||
async ({ page, homePage }) => {
|
||||
const networkToggleConnectedText = page.getByText('Connected')
|
||||
const networkToggleWeakText = page.getByText('Network health (Weak)')
|
||||
|
||||
const u = await getUtils(page)
|
||||
await page.setBodyDimensions({ width: 1200, height: 500 })
|
||||
|
||||
@ -34,7 +37,9 @@ test.describe(
|
||||
await expect(networkPopover).not.toBeVisible()
|
||||
|
||||
// (First check) Expect the network to be up
|
||||
await expect(networkToggle).toContainText('Connected')
|
||||
await expect(
|
||||
networkToggleConnectedText.or(networkToggleWeakText)
|
||||
).toBeVisible()
|
||||
|
||||
// Click the network widget
|
||||
await networkWidget.click()
|
||||
@ -82,7 +87,9 @@ test.describe(
|
||||
).not.toBeDisabled({ timeout: 15000 })
|
||||
|
||||
// (Second check) expect the network to be up
|
||||
await expect(networkToggle).toContainText('Connected')
|
||||
await expect(
|
||||
networkToggleConnectedText.or(networkToggleWeakText)
|
||||
).toBeVisible()
|
||||
}
|
||||
)
|
||||
|
||||
@ -91,6 +98,8 @@ test.describe(
|
||||
{ tag: '@skipLocalEngine' },
|
||||
async ({ page, homePage, toolbar, scene, cmdBar }) => {
|
||||
const networkToggle = page.getByTestId('network-toggle')
|
||||
const networkToggleConnectedText = page.getByText('Connected')
|
||||
const networkToggleWeakText = page.getByText('Network health (Weak)')
|
||||
|
||||
const u = await getUtils(page)
|
||||
await page.setBodyDimensions({ width: 1200, height: 500 })
|
||||
@ -109,7 +118,7 @@ test.describe(
|
||||
await page.mouse.click(700, 200)
|
||||
|
||||
await expect(page.locator('.cm-content')).toHaveText(
|
||||
`sketch001 = startSketchOn(XZ)`
|
||||
`@settings(defaultLengthUnit = in)sketch001 = startSketchOn(XZ)`
|
||||
)
|
||||
await u.closeDebugPanel()
|
||||
|
||||
@ -118,7 +127,7 @@ test.describe(
|
||||
const startXPx = 600
|
||||
await page.mouse.click(startXPx + PUR * 10, 500 - PUR * 10)
|
||||
await expect(page.locator('.cm-content')).toHaveText(
|
||||
`sketch001 = startSketchOn(XZ)profile001 = startProfile(sketch001, at = ${commonPoints.startAt})`
|
||||
`@settings(defaultLengthUnit = in)sketch001 = startSketchOn(XZ)profile001 = startProfile(sketch001, at = ${commonPoints.startAt})`
|
||||
)
|
||||
await page.waitForTimeout(100)
|
||||
|
||||
@ -127,11 +136,14 @@ test.describe(
|
||||
|
||||
await expect(
|
||||
page.locator('.cm-content')
|
||||
).toHaveText(`sketch001 = startSketchOn(XZ)profile001 = startProfile(sketch001, at = ${commonPoints.startAt})
|
||||
).toHaveText(`@settings(defaultLengthUnit = in)sketch001 = startSketchOn(XZ)profile001 = startProfile(sketch001, at = ${commonPoints.startAt})
|
||||
|> xLine(length = ${commonPoints.num1})`)
|
||||
|
||||
// Expect the network to be up
|
||||
await expect(networkToggle).toContainText('Connected')
|
||||
await networkToggle.hover()
|
||||
await expect(
|
||||
networkToggleConnectedText.or(networkToggleWeakText)
|
||||
).toBeVisible()
|
||||
|
||||
// simulate network down
|
||||
await u.emulateNetworkConditions({
|
||||
@ -143,6 +155,7 @@ test.describe(
|
||||
})
|
||||
|
||||
// Expect the network to be down
|
||||
await networkToggle.hover()
|
||||
await expect(networkToggle).toContainText('Problem')
|
||||
|
||||
// Ensure we are not in sketch mode
|
||||
@ -168,7 +181,11 @@ test.describe(
|
||||
).not.toBeDisabled({ timeout: 15000 })
|
||||
|
||||
// Expect the network to be up
|
||||
await expect(networkToggle).toContainText('Connected')
|
||||
await networkToggle.hover()
|
||||
await expect(
|
||||
networkToggleConnectedText.or(networkToggleWeakText)
|
||||
).toBeVisible()
|
||||
|
||||
await scene.settled(cmdBar)
|
||||
|
||||
// Click off the code pane.
|
||||
@ -183,9 +200,7 @@ test.describe(
|
||||
await toolbar.editSketch()
|
||||
|
||||
// Click the line tool
|
||||
await page
|
||||
.getByRole('button', { name: 'line Line', exact: true })
|
||||
.click()
|
||||
await page.getByRole('button', { name: 'line Line', exact: true }).click()
|
||||
|
||||
await page.waitForTimeout(150)
|
||||
|
||||
@ -219,7 +234,10 @@ test.describe(
|
||||
await page.mouse.click(startXPx + PUR * 20, 500 - PUR * 20)
|
||||
await expect
|
||||
.poll(u.normalisedEditorCode)
|
||||
.toBe(`sketch001 = startSketchOn(XZ)
|
||||
.toBe(`@settings(defaultLengthUnit = in)
|
||||
|
||||
|
||||
sketch001 = startSketchOn(XZ)
|
||||
profile001 = startProfile(sketch001, at = [12.34, -12.34])
|
||||
|> xLine(length = 12.34)
|
||||
|> line(end = [-12.34, 12.34])
|
||||
@ -230,7 +248,10 @@ profile001 = startProfile(sketch001, at = [12.34, -12.34])
|
||||
|
||||
await expect
|
||||
.poll(u.normalisedEditorCode)
|
||||
.toBe(`sketch001 = startSketchOn(XZ)
|
||||
.toBe(`@settings(defaultLengthUnit = in)
|
||||
|
||||
|
||||
sketch001 = startSketchOn(XZ)
|
||||
profile001 = startProfile(sketch001, at = [12.34, -12.34])
|
||||
|> xLine(length = 12.34)
|
||||
|> line(end = [-12.34, 12.34])
|
||||
@ -255,5 +276,88 @@ profile001 = startProfile(sketch001, at = [12.34, -12.34])
|
||||
).not.toBeVisible()
|
||||
}
|
||||
)
|
||||
|
||||
test(
|
||||
'Paused stream freezes view frame, unpause reconnect is seamless to user',
|
||||
{ tag: ['@electron', '@skipLocalEngine'] },
|
||||
async ({ page, homePage, scene, cmdBar, toolbar, tronApp }) => {
|
||||
const networkToggle = page.getByTestId('network-toggle')
|
||||
const networkToggleConnectedText = page.getByText('Connected')
|
||||
const networkToggleWeakText = page.getByText('Network health (Weak)')
|
||||
|
||||
if (!tronApp) {
|
||||
fail()
|
||||
}
|
||||
)
|
||||
|
||||
await tronApp.cleanProjectDir({
|
||||
app: {
|
||||
stream_idle_mode: 5000,
|
||||
},
|
||||
})
|
||||
|
||||
await page.addInitScript(async () => {
|
||||
localStorage.setItem(
|
||||
'persistCode',
|
||||
`sketch001 = startSketchOn(XY)
|
||||
profile001 = startProfile(sketch001, at = [0.0, 0.0])
|
||||
|> line(end = [10.0, 0])
|
||||
|> line(end = [0, 10.0])
|
||||
|> close()`
|
||||
)
|
||||
})
|
||||
|
||||
const dim = { width: 1200, height: 500 }
|
||||
await page.setBodyDimensions(dim)
|
||||
|
||||
await test.step('Go to modeling scene', async () => {
|
||||
await homePage.goToModelingScene()
|
||||
await scene.settled(cmdBar)
|
||||
})
|
||||
|
||||
await test.step('Verify pausing behavior', async () => {
|
||||
// Wait 5s + 1s to pause.
|
||||
await page.waitForTimeout(6000)
|
||||
|
||||
// We should now be paused. To the user, it should appear we're still
|
||||
// connected.
|
||||
await networkToggle.hover()
|
||||
await expect(
|
||||
networkToggleConnectedText.or(networkToggleWeakText)
|
||||
).toBeVisible()
|
||||
|
||||
const center = {
|
||||
x: dim.width / 2,
|
||||
y: dim.height / 2,
|
||||
}
|
||||
|
||||
let probe = { x: 0, y: 0 }
|
||||
|
||||
// ... and the model's still visibly there
|
||||
probe.x = center.x + dim.width / 100
|
||||
probe.y = center.y
|
||||
await scene.expectPixelColor(TEST_COLORS.GREY, probe, 15)
|
||||
probe = { ...center }
|
||||
|
||||
// Now move the mouse around to unpause!
|
||||
await circleMove(page, probe.x, probe.y, 20, 10)
|
||||
|
||||
// ONCE AGAIN! Check the view area hasn't changed at all.
|
||||
// Check the pixel a couple times as it reconnects.
|
||||
// NOTE: Remember, idle behavior is still on at this point -
|
||||
// if this test takes longer than 5s shit WILL go south!
|
||||
probe.x = center.x + dim.width / 100
|
||||
probe.y = center.y
|
||||
await scene.expectPixelColor(TEST_COLORS.GREY, probe, 15)
|
||||
await page.waitForTimeout(1000)
|
||||
await scene.expectPixelColor(TEST_COLORS.GREY, probe, 15)
|
||||
probe = { ...center }
|
||||
|
||||
// Ensure we're still connected
|
||||
await networkToggle.hover()
|
||||
await expect(
|
||||
networkToggleConnectedText.or(networkToggleWeakText)
|
||||
).toBeVisible()
|
||||
})
|
||||
}
|
||||
)
|
||||
})
|
||||
|
@ -44,6 +44,8 @@ export const lowerRightMasks = (page: Page) => [
|
||||
export type TestColor = [number, number, number]
|
||||
export const TEST_COLORS: { [key: string]: TestColor } = {
|
||||
WHITE: [249, 249, 249],
|
||||
OFFWHITE: [237, 237, 237],
|
||||
GREY: [142, 142, 142],
|
||||
YELLOW: [255, 255, 0],
|
||||
BLUE: [0, 0, 255],
|
||||
DARK_MODE_BKGD: [27, 27, 27],
|
||||
|
20
rust/Cargo.lock
generated
20
rust/Cargo.lock
generated
@ -1815,7 +1815,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "kcl-bumper"
|
||||
version = "0.1.71"
|
||||
version = "0.1.73"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"clap",
|
||||
@ -1826,7 +1826,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "kcl-derive-docs"
|
||||
version = "0.1.71"
|
||||
version = "0.1.73"
|
||||
dependencies = [
|
||||
"Inflector",
|
||||
"anyhow",
|
||||
@ -1845,7 +1845,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "kcl-directory-test-macro"
|
||||
version = "0.1.71"
|
||||
version = "0.1.73"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
@ -1854,7 +1854,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "kcl-language-server"
|
||||
version = "0.2.71"
|
||||
version = "0.2.73"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"clap",
|
||||
@ -1875,7 +1875,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "kcl-language-server-release"
|
||||
version = "0.1.71"
|
||||
version = "0.1.73"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"clap",
|
||||
@ -1895,7 +1895,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "kcl-lib"
|
||||
version = "0.2.71"
|
||||
version = "0.2.73"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"approx 0.5.1",
|
||||
@ -1971,7 +1971,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "kcl-python-bindings"
|
||||
version = "0.3.71"
|
||||
version = "0.3.73"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"kcl-lib",
|
||||
@ -1986,7 +1986,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "kcl-test-server"
|
||||
version = "0.1.71"
|
||||
version = "0.1.73"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"hyper 0.14.32",
|
||||
@ -1999,7 +1999,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "kcl-to-core"
|
||||
version = "0.1.71"
|
||||
version = "0.1.73"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"async-trait",
|
||||
@ -2013,7 +2013,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "kcl-wasm-lib"
|
||||
version = "0.1.71"
|
||||
version = "0.1.73"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"bson",
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
[package]
|
||||
name = "kcl-bumper"
|
||||
version = "0.1.71"
|
||||
version = "0.1.73"
|
||||
edition = "2021"
|
||||
repository = "https://github.com/KittyCAD/modeling-api"
|
||||
rust-version = "1.76"
|
||||
|
@ -1,7 +1,7 @@
|
||||
[package]
|
||||
name = "kcl-derive-docs"
|
||||
description = "A tool for generating documentation from Rust derive macros"
|
||||
version = "0.1.71"
|
||||
version = "0.1.73"
|
||||
edition = "2021"
|
||||
license = "MIT"
|
||||
repository = "https://github.com/KittyCAD/modeling-app"
|
||||
|
@ -1,7 +1,7 @@
|
||||
[package]
|
||||
name = "kcl-directory-test-macro"
|
||||
description = "A tool for generating tests from a directory of kcl files"
|
||||
version = "0.1.71"
|
||||
version = "0.1.73"
|
||||
edition = "2021"
|
||||
license = "MIT"
|
||||
repository = "https://github.com/KittyCAD/modeling-app"
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "kcl-language-server-release"
|
||||
version = "0.1.71"
|
||||
version = "0.1.73"
|
||||
edition = "2021"
|
||||
authors = ["KittyCAD Inc <kcl@kittycad.io>"]
|
||||
publish = false
|
||||
|
@ -2,7 +2,7 @@
|
||||
name = "kcl-language-server"
|
||||
description = "A language server for KCL."
|
||||
authors = ["KittyCAD Inc <kcl@kittycad.io>"]
|
||||
version = "0.2.71"
|
||||
version = "0.2.73"
|
||||
edition = "2021"
|
||||
license = "MIT"
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
@ -1,7 +1,7 @@
|
||||
[package]
|
||||
name = "kcl-lib"
|
||||
description = "KittyCAD Language implementation and tools"
|
||||
version = "0.2.71"
|
||||
version = "0.2.73"
|
||||
edition = "2021"
|
||||
license = "MIT"
|
||||
repository = "https://github.com/KittyCAD/modeling-app"
|
||||
|
@ -259,18 +259,23 @@ extrude(profile001, length = 100)"#
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn kcl_test_cache_add_line_preserves_artifact_commands() {
|
||||
let code = r#"sketch001 = startSketchOn(XY)
|
||||
|> startProfile(at = [5.5229, 5.25217])
|
||||
|> line(end = [10.50433, -1.19122])
|
||||
|> line(end = [8.01362, -5.48731])
|
||||
|> line(end = [-1.02877, -6.76825])
|
||||
|> line(end = [-11.53311, 2.81559])
|
||||
profile001 = startProfile(sketch001, at = [5.5, 5.25])
|
||||
|> line(end = [10.5, -1.19])
|
||||
|> line(end = [8, -5.5])
|
||||
|> line(end = [-1.02, -6.76])
|
||||
|> line(end = [-11.5, 2.8])
|
||||
|> close()
|
||||
plane001 = offsetPlane(XY, offset = 20)
|
||||
"#;
|
||||
// Use a new statement; don't extend the prior pipeline. This allows us to
|
||||
// detect a prefix.
|
||||
let code_with_extrude = code.to_owned()
|
||||
+ r#"
|
||||
extrude(sketch001, length = 4)
|
||||
profile002 = startProfile(plane001, at = [0, 0])
|
||||
|> line(end = [0, 10])
|
||||
|> line(end = [10, 0])
|
||||
|> close()
|
||||
extrude001 = extrude(profile001, length = 4)
|
||||
"#;
|
||||
|
||||
let result = cache_test(
|
||||
@ -305,6 +310,24 @@ extrude(sketch001, length = 4)
|
||||
first.artifact_graph.len(),
|
||||
second.artifact_graph.len()
|
||||
);
|
||||
// Make sure we have NodePaths referring to the old code.
|
||||
let graph = &second.artifact_graph;
|
||||
assert!(!graph.is_empty());
|
||||
for artifact in graph.values() {
|
||||
assert!(!artifact.code_ref().map(|c| c.node_path.is_empty()).unwrap_or(false));
|
||||
assert!(
|
||||
!artifact
|
||||
.face_code_ref()
|
||||
// TODO: This fails, but it shouldn't.
|
||||
// .map(|c| c.node_path.is_empty())
|
||||
// Allowing the NodePath to be empty if the SourceRange is [0,
|
||||
// 0] as a more lenient check.
|
||||
.map(|c| !c.range.is_synthetic() && c.node_path.is_empty())
|
||||
.unwrap_or(false),
|
||||
"artifact={:?}",
|
||||
artifact
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 33 KiB |
Binary file not shown.
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
@ -788,6 +788,7 @@ impl ArgData {
|
||||
Some("Axis2d | Edge") | Some("Axis3d | Edge") => Some((index, format!(r#"{label}${{{index}:X}}"#))),
|
||||
Some("Edge") => Some((index, format!(r#"{label}${{{index}:tag_or_edge_fn}}"#))),
|
||||
Some("[Edge; 1+]") => Some((index, format!(r#"{label}[${{{index}:tag_or_edge_fn}}]"#))),
|
||||
Some("Plane") => Some((index, format!(r#"{label}${{{}:XY}}"#, index))),
|
||||
|
||||
Some("string") => Some((index, format!(r#"{label}${{{}:"string"}}"#, index))),
|
||||
Some("bool") => Some((index, format!(r#"{label}${{{}:false}}"#, index))),
|
||||
|
@ -1167,6 +1167,16 @@ mod tests {
|
||||
assert_eq!(snippet, r#"clone(${0:part001})"#);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn get_autocomplete_snippet_offset_plane() {
|
||||
let data = kcl_doc::walk_prelude();
|
||||
let DocData::Fn(offset_plane_fn) = data.find_by_name("offsetPlane").unwrap() else {
|
||||
panic!();
|
||||
};
|
||||
let snippet = offset_plane_fn.to_autocomplete_snippet();
|
||||
assert_eq!(snippet, r#"offsetPlane(${0:XY}, offset = ${1:3.14})"#);
|
||||
}
|
||||
|
||||
// We want to test the snippets we compile at lsp start.
|
||||
#[test]
|
||||
fn get_all_stdlib_autocomplete_snippets() {
|
||||
|
@ -115,7 +115,7 @@ where
|
||||
seq.end()
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, PartialEq, Eq, ts_rs::TS)]
|
||||
#[derive(Debug, Clone, Default, Serialize, PartialEq, Eq, ts_rs::TS)]
|
||||
#[ts(export_to = "Artifact.ts")]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct CodeRef {
|
||||
@ -396,7 +396,6 @@ pub enum Artifact {
|
||||
Cap(Cap),
|
||||
SweepEdge(SweepEdge),
|
||||
EdgeCut(EdgeCut),
|
||||
#[expect(unused)]
|
||||
EdgeCutEdge(EdgeCutEdge),
|
||||
Helix(Helix),
|
||||
}
|
||||
@ -550,8 +549,9 @@ impl Artifact {
|
||||
}
|
||||
}
|
||||
|
||||
#[expect(dead_code)]
|
||||
pub(crate) fn code_ref(&self) -> Option<&CodeRef> {
|
||||
/// The [`CodeRef`] for the artifact itself. See also
|
||||
/// [`Self::face_code_ref`].
|
||||
pub fn code_ref(&self) -> Option<&CodeRef> {
|
||||
match self {
|
||||
Artifact::CompositeSolid(a) => Some(&a.code_ref),
|
||||
Artifact::Plane(a) => Some(&a.code_ref),
|
||||
@ -570,6 +570,24 @@ impl Artifact {
|
||||
}
|
||||
}
|
||||
|
||||
/// The [`CodeRef`] referring to the face artifact that it's on, not the
|
||||
/// artifact itself.
|
||||
pub fn face_code_ref(&self) -> Option<&CodeRef> {
|
||||
match self {
|
||||
Artifact::CompositeSolid(_)
|
||||
| Artifact::Plane(_)
|
||||
| Artifact::Path(_)
|
||||
| Artifact::Segment(_)
|
||||
| Artifact::Solid2d(_)
|
||||
| Artifact::StartSketchOnFace(_)
|
||||
| Artifact::StartSketchOnPlane(_)
|
||||
| Artifact::Sweep(_) => None,
|
||||
Artifact::Wall(a) => Some(&a.face_code_ref),
|
||||
Artifact::Cap(a) => Some(&a.face_code_ref),
|
||||
Artifact::SweepEdge(_) | Artifact::EdgeCut(_) | Artifact::EdgeCutEdge(_) | Artifact::Helix(_) => None,
|
||||
}
|
||||
}
|
||||
|
||||
/// Merge the new artifact into self. If it can't because it's a different
|
||||
/// type, return the new artifact which should be used as a replacement.
|
||||
fn merge(&mut self, new: Artifact) -> Option<Artifact> {
|
||||
@ -704,6 +722,19 @@ impl ArtifactGraph {
|
||||
self.map.len()
|
||||
}
|
||||
|
||||
pub fn is_empty(&self) -> bool {
|
||||
self.map.is_empty()
|
||||
}
|
||||
|
||||
pub fn values(&self) -> impl Iterator<Item = &Artifact> {
|
||||
self.map.values()
|
||||
}
|
||||
|
||||
/// Consume the artifact graph and return the map of artifacts.
|
||||
fn into_map(self) -> IndexMap<ArtifactId, Artifact> {
|
||||
self.map
|
||||
}
|
||||
|
||||
/// Used to make the mermaid tests deterministic.
|
||||
#[cfg(test)]
|
||||
pub(crate) fn sort(&mut self) {
|
||||
@ -712,17 +743,29 @@ impl ArtifactGraph {
|
||||
}
|
||||
}
|
||||
|
||||
/// Build the artifact graph from the artifact commands and the responses. The
|
||||
/// initial graph is the graph cached from a previous execution. NodePaths of
|
||||
/// `exec_artifacts` are filled in from the AST.
|
||||
pub(super) fn build_artifact_graph(
|
||||
artifact_commands: &[ArtifactCommand],
|
||||
responses: &IndexMap<Uuid, WebSocketResponse>,
|
||||
ast: &Node<Program>,
|
||||
exec_artifacts: &IndexMap<ArtifactId, Artifact>,
|
||||
exec_artifacts: &mut IndexMap<ArtifactId, Artifact>,
|
||||
initial_graph: ArtifactGraph,
|
||||
) -> Result<ArtifactGraph, KclError> {
|
||||
let mut map = IndexMap::new();
|
||||
let mut map = initial_graph.into_map();
|
||||
|
||||
let mut path_to_plane_id_map = FnvHashMap::default();
|
||||
let mut current_plane_id = None;
|
||||
|
||||
// Fill in NodePaths for artifacts that were added directly to the map
|
||||
// during execution.
|
||||
for exec_artifact in exec_artifacts.values_mut() {
|
||||
// Note: We only have access to the new AST. So if these artifacts
|
||||
// somehow came from cached AST, this won't fill in anything.
|
||||
fill_in_node_paths(exec_artifact, ast);
|
||||
}
|
||||
|
||||
for artifact_command in artifact_commands {
|
||||
if let ModelingCmd::EnableSketchMode(EnableSketchMode { entity_id, .. }) = artifact_command.command {
|
||||
current_plane_id = Some(entity_id);
|
||||
@ -762,6 +805,24 @@ pub(super) fn build_artifact_graph(
|
||||
Ok(ArtifactGraph { map })
|
||||
}
|
||||
|
||||
/// These may have been created with placeholder `CodeRef`s because we didn't
|
||||
/// have the entire AST available. Now we fill them in.
|
||||
fn fill_in_node_paths(artifact: &mut Artifact, program: &Node<Program>) {
|
||||
match artifact {
|
||||
Artifact::StartSketchOnFace(face) => {
|
||||
if face.code_ref.node_path.is_empty() {
|
||||
face.code_ref.node_path = NodePath::from_range(program, face.code_ref.range).unwrap_or_default();
|
||||
}
|
||||
}
|
||||
Artifact::StartSketchOnPlane(plane) => {
|
||||
if plane.code_ref.node_path.is_empty() {
|
||||
plane.code_ref.node_path = NodePath::from_range(program, plane.code_ref.range).unwrap_or_default();
|
||||
}
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
|
||||
/// Flatten the responses into a map of command IDs to modeling command
|
||||
/// responses. The raw responses from the engine contain batches.
|
||||
fn flatten_modeling_command_responses(
|
||||
@ -846,6 +907,12 @@ fn artifacts_to_update(
|
||||
ast: &Node<Program>,
|
||||
exec_artifacts: &IndexMap<ArtifactId, Artifact>,
|
||||
) -> Result<Vec<Artifact>, KclError> {
|
||||
let uuid = artifact_command.cmd_id;
|
||||
let Some(response) = responses.get(&uuid) else {
|
||||
// Response not found or not successful.
|
||||
return Ok(Vec::new());
|
||||
};
|
||||
|
||||
// TODO: Build path-to-node from artifact_command source range. Right now,
|
||||
// we're serializing an empty array, and the TS wrapper fills it in with the
|
||||
// correct value based on NodePath.
|
||||
@ -858,14 +925,7 @@ fn artifacts_to_update(
|
||||
path_to_node,
|
||||
};
|
||||
|
||||
let uuid = artifact_command.cmd_id;
|
||||
let id = ArtifactId::new(uuid);
|
||||
|
||||
let Some(response) = responses.get(&uuid) else {
|
||||
// Response not found or not successful.
|
||||
return Ok(Vec::new());
|
||||
};
|
||||
|
||||
let cmd = &artifact_command.command;
|
||||
|
||||
match cmd {
|
||||
@ -1100,16 +1160,19 @@ fn artifacts_to_update(
|
||||
let extra_artifact = exec_artifacts.values().find(|a| {
|
||||
if let Artifact::StartSketchOnFace(s) = a {
|
||||
s.face_id == face_id
|
||||
} else if let Artifact::StartSketchOnPlane(s) = a {
|
||||
s.plane_id == face_id
|
||||
} else {
|
||||
false
|
||||
}
|
||||
});
|
||||
let sketch_on_face_source_range = extra_artifact
|
||||
let sketch_on_face_code_ref = extra_artifact
|
||||
.and_then(|a| match a {
|
||||
Artifact::StartSketchOnFace(s) => Some(s.code_ref.range),
|
||||
// TODO: If we didn't find it, it's probably a bug.
|
||||
Artifact::StartSketchOnFace(s) => Some(s.code_ref.clone()),
|
||||
Artifact::StartSketchOnPlane(s) => Some(s.code_ref.clone()),
|
||||
_ => None,
|
||||
})
|
||||
// TODO: If we didn't find it, it's probably a bug.
|
||||
.unwrap_or_default();
|
||||
|
||||
return_arr.push(Artifact::Wall(Wall {
|
||||
@ -1118,11 +1181,7 @@ fn artifacts_to_update(
|
||||
edge_cut_edge_ids: Vec::new(),
|
||||
sweep_id: path_sweep_id,
|
||||
path_ids: Vec::new(),
|
||||
face_code_ref: CodeRef {
|
||||
range: sketch_on_face_source_range,
|
||||
node_path: NodePath::from_range(ast, sketch_on_face_source_range).unwrap_or_default(),
|
||||
path_to_node: Vec::new(),
|
||||
},
|
||||
face_code_ref: sketch_on_face_code_ref,
|
||||
cmd_id: artifact_command.cmd_id,
|
||||
}));
|
||||
let mut new_seg = seg.clone();
|
||||
@ -1155,15 +1214,19 @@ fn artifacts_to_update(
|
||||
let extra_artifact = exec_artifacts.values().find(|a| {
|
||||
if let Artifact::StartSketchOnFace(s) = a {
|
||||
s.face_id == face_id
|
||||
} else if let Artifact::StartSketchOnPlane(s) = a {
|
||||
s.plane_id == face_id
|
||||
} else {
|
||||
false
|
||||
}
|
||||
});
|
||||
let sketch_on_face_source_range = extra_artifact
|
||||
let sketch_on_face_code_ref = extra_artifact
|
||||
.and_then(|a| match a {
|
||||
Artifact::StartSketchOnFace(s) => Some(s.code_ref.range),
|
||||
Artifact::StartSketchOnFace(s) => Some(s.code_ref.clone()),
|
||||
Artifact::StartSketchOnPlane(s) => Some(s.code_ref.clone()),
|
||||
_ => None,
|
||||
})
|
||||
// TODO: If we didn't find it, it's probably a bug.
|
||||
.unwrap_or_default();
|
||||
return_arr.push(Artifact::Cap(Cap {
|
||||
id: face_id,
|
||||
@ -1171,11 +1234,7 @@ fn artifacts_to_update(
|
||||
edge_cut_edge_ids: Vec::new(),
|
||||
sweep_id: path_sweep_id,
|
||||
path_ids: Vec::new(),
|
||||
face_code_ref: CodeRef {
|
||||
range: sketch_on_face_source_range,
|
||||
node_path: NodePath::from_range(ast, sketch_on_face_source_range).unwrap_or_default(),
|
||||
path_to_node: Vec::new(),
|
||||
},
|
||||
face_code_ref: sketch_on_face_code_ref,
|
||||
cmd_id: artifact_command.cmd_id,
|
||||
}));
|
||||
let Some(Artifact::Sweep(sweep)) = artifacts.get(&path_sweep_id) else {
|
||||
|
@ -298,13 +298,19 @@ impl ArtifactGraph {
|
||||
let range = code_ref.range;
|
||||
[range.start(), range.end(), range.module_id().as_usize()]
|
||||
}
|
||||
fn node_path_display<W: Write>(output: &mut W, prefix: &str, code_ref: &CodeRef) -> std::fmt::Result {
|
||||
fn node_path_display<W: Write>(
|
||||
output: &mut W,
|
||||
prefix: &str,
|
||||
label: Option<&str>,
|
||||
code_ref: &CodeRef,
|
||||
) -> std::fmt::Result {
|
||||
// %% is a mermaid comment. Prefix is increased one level since it's
|
||||
// a child of the line above it.
|
||||
let label = label.unwrap_or("");
|
||||
if code_ref.node_path.is_empty() {
|
||||
return writeln!(output, "{prefix} %% Missing NodePath");
|
||||
return writeln!(output, "{prefix} %% {label}Missing NodePath");
|
||||
}
|
||||
writeln!(output, "{prefix} %% {:?}", code_ref.node_path.steps)
|
||||
writeln!(output, "{prefix} %% {label}{:?}", code_ref.node_path.steps)
|
||||
}
|
||||
|
||||
match artifact {
|
||||
@ -315,7 +321,7 @@ impl ArtifactGraph {
|
||||
composite_solid.sub_type,
|
||||
code_ref_display(&composite_solid.code_ref)
|
||||
)?;
|
||||
node_path_display(output, prefix, &composite_solid.code_ref)?;
|
||||
node_path_display(output, prefix, None, &composite_solid.code_ref)?;
|
||||
}
|
||||
Artifact::Plane(plane) => {
|
||||
writeln!(
|
||||
@ -323,7 +329,7 @@ impl ArtifactGraph {
|
||||
"{prefix}{id}[\"Plane<br>{:?}\"]",
|
||||
code_ref_display(&plane.code_ref)
|
||||
)?;
|
||||
node_path_display(output, prefix, &plane.code_ref)?;
|
||||
node_path_display(output, prefix, None, &plane.code_ref)?;
|
||||
}
|
||||
Artifact::Path(path) => {
|
||||
writeln!(
|
||||
@ -331,7 +337,7 @@ impl ArtifactGraph {
|
||||
"{prefix}{id}[\"Path<br>{:?}\"]",
|
||||
code_ref_display(&path.code_ref)
|
||||
)?;
|
||||
node_path_display(output, prefix, &path.code_ref)?;
|
||||
node_path_display(output, prefix, None, &path.code_ref)?;
|
||||
}
|
||||
Artifact::Segment(segment) => {
|
||||
writeln!(
|
||||
@ -339,7 +345,7 @@ impl ArtifactGraph {
|
||||
"{prefix}{id}[\"Segment<br>{:?}\"]",
|
||||
code_ref_display(&segment.code_ref)
|
||||
)?;
|
||||
node_path_display(output, prefix, &segment.code_ref)?;
|
||||
node_path_display(output, prefix, None, &segment.code_ref)?;
|
||||
}
|
||||
Artifact::Solid2d(_solid2d) => {
|
||||
writeln!(output, "{prefix}{}[Solid2d]", id)?;
|
||||
@ -350,7 +356,7 @@ impl ArtifactGraph {
|
||||
"{prefix}{id}[\"StartSketchOnFace<br>{:?}\"]",
|
||||
code_ref_display(code_ref)
|
||||
)?;
|
||||
node_path_display(output, prefix, code_ref)?;
|
||||
node_path_display(output, prefix, None, code_ref)?;
|
||||
}
|
||||
Artifact::StartSketchOnPlane(StartSketchOnPlane { code_ref, .. }) => {
|
||||
writeln!(
|
||||
@ -358,7 +364,7 @@ impl ArtifactGraph {
|
||||
"{prefix}{id}[\"StartSketchOnPlane<br>{:?}\"]",
|
||||
code_ref_display(code_ref)
|
||||
)?;
|
||||
node_path_display(output, prefix, code_ref)?;
|
||||
node_path_display(output, prefix, None, code_ref)?;
|
||||
}
|
||||
Artifact::Sweep(sweep) => {
|
||||
writeln!(
|
||||
@ -367,13 +373,15 @@ impl ArtifactGraph {
|
||||
sweep.sub_type,
|
||||
code_ref_display(&sweep.code_ref)
|
||||
)?;
|
||||
node_path_display(output, prefix, &sweep.code_ref)?;
|
||||
node_path_display(output, prefix, None, &sweep.code_ref)?;
|
||||
}
|
||||
Artifact::Wall(_wall) => {
|
||||
Artifact::Wall(wall) => {
|
||||
writeln!(output, "{prefix}{id}[Wall]")?;
|
||||
node_path_display(output, prefix, Some("face_code_ref="), &wall.face_code_ref)?;
|
||||
}
|
||||
Artifact::Cap(cap) => {
|
||||
writeln!(output, "{prefix}{id}[\"Cap {:?}\"]", cap.sub_type)?;
|
||||
node_path_display(output, prefix, Some("face_code_ref="), &cap.face_code_ref)?;
|
||||
}
|
||||
Artifact::SweepEdge(sweep_edge) => {
|
||||
writeln!(output, "{prefix}{id}[\"SweepEdge {:?}\"]", sweep_edge.sub_type)?;
|
||||
@ -385,7 +393,7 @@ impl ArtifactGraph {
|
||||
edge_cut.sub_type,
|
||||
code_ref_display(&edge_cut.code_ref)
|
||||
)?;
|
||||
node_path_display(output, prefix, &edge_cut.code_ref)?;
|
||||
node_path_display(output, prefix, None, &edge_cut.code_ref)?;
|
||||
}
|
||||
Artifact::EdgeCutEdge(_edge_cut_edge) => {
|
||||
writeln!(output, "{prefix}{id}[EdgeCutEdge]")?;
|
||||
@ -396,7 +404,7 @@ impl ArtifactGraph {
|
||||
"{prefix}{id}[\"Helix<br>{:?}\"]",
|
||||
code_ref_display(&helix.code_ref)
|
||||
)?;
|
||||
node_path_display(output, prefix, &helix.code_ref)?;
|
||||
node_path_display(output, prefix, None, &helix.code_ref)?;
|
||||
}
|
||||
}
|
||||
Ok(())
|
||||
|
@ -736,21 +736,35 @@ fn apply_ascription(
|
||||
let ty = RuntimeType::from_parsed(ty.inner.clone(), exec_state, value.into())
|
||||
.map_err(|e| KclError::Semantic(e.into()))?;
|
||||
|
||||
if let KclValue::Number { value, meta, .. } = value {
|
||||
let mut value = value.clone();
|
||||
|
||||
// If the number has unknown units but the user is explicitly specifying them, treat the value as having had it's units erased,
|
||||
// rather than forcing the user to explicitly erase them.
|
||||
KclValue::Number {
|
||||
if let KclValue::Number { value: n, meta, .. } = &value {
|
||||
if let RuntimeType::Primitive(PrimitiveType::Number(num)) = &ty {
|
||||
if num.is_fully_specified() {
|
||||
value = KclValue::Number {
|
||||
ty: NumericType::Any,
|
||||
value: *value,
|
||||
value: *n,
|
||||
meta: meta.clone(),
|
||||
};
|
||||
}
|
||||
.coerce(&ty, exec_state)
|
||||
}
|
||||
}
|
||||
|
||||
value.coerce(&ty, exec_state).map_err(|_| {
|
||||
let suggestion = if ty == RuntimeType::length() {
|
||||
", you might try coercing to a fully specified numeric type such as `number(mm)`"
|
||||
} else if ty == RuntimeType::angle() {
|
||||
", you might try coercing to a fully specified numeric type such as `number(deg)`"
|
||||
} else {
|
||||
value.coerce(&ty, exec_state)
|
||||
}
|
||||
.map_err(|_| {
|
||||
""
|
||||
};
|
||||
KclError::Semantic(KclErrorDetails {
|
||||
message: format!("could not coerce {} value to type {}", value.human_friendly_type(), ty),
|
||||
message: format!(
|
||||
"could not coerce {} value to type {ty}{suggestion}",
|
||||
value.human_friendly_type()
|
||||
),
|
||||
source_ranges: vec![source_range],
|
||||
})
|
||||
})
|
||||
@ -2767,4 +2781,29 @@ startSketchOn(XY)
|
||||
// Make sure we get a useful error message and not an engine error.
|
||||
assert!(e.message().contains("sqrt"), "Error message: '{}'", e.message());
|
||||
}
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn coerce_unknown_to_length() {
|
||||
let ast = r#"x = 2mm * 2mm
|
||||
y = x: number(Length)"#;
|
||||
let e = parse_execute(ast).await.unwrap_err();
|
||||
assert!(
|
||||
e.message().contains("could not coerce"),
|
||||
"Error message: '{}'",
|
||||
e.message()
|
||||
);
|
||||
|
||||
let ast = r#"x = 2mm
|
||||
y = x: number(Length)"#;
|
||||
let result = parse_execute(ast).await.unwrap();
|
||||
let mem = result.exec_state.stack();
|
||||
let num = mem
|
||||
.memory
|
||||
.get_from("y", result.mem_env, SourceRange::default(), 0)
|
||||
.unwrap()
|
||||
.as_ty_f64()
|
||||
.unwrap();
|
||||
assert_eq!(num.n, 2.0);
|
||||
assert_eq!(num.ty, NumericType::mm());
|
||||
}
|
||||
}
|
||||
|
@ -426,14 +426,14 @@ impl ExecutorContext {
|
||||
}
|
||||
|
||||
#[cfg(not(target_arch = "wasm32"))]
|
||||
pub async fn new_mock() -> Self {
|
||||
pub async fn new_mock(settings: Option<ExecutorSettings>) -> Self {
|
||||
ExecutorContext {
|
||||
engine: Arc::new(Box::new(
|
||||
crate::engine::conn_mock::EngineConnection::new().await.unwrap(),
|
||||
)),
|
||||
fs: Arc::new(FileManager::new()),
|
||||
stdlib: Arc::new(StdLib::new()),
|
||||
settings: Default::default(),
|
||||
settings: settings.unwrap_or_default(),
|
||||
context_type: ContextType::Mock,
|
||||
}
|
||||
}
|
||||
@ -1155,23 +1155,24 @@ impl ExecutorContext {
|
||||
|
||||
#[cfg(feature = "artifact-graph")]
|
||||
{
|
||||
// Move the artifact commands and responses to simplify cache management
|
||||
// and error creation.
|
||||
exec_state
|
||||
.global
|
||||
.artifact_commands
|
||||
.extend(self.engine.take_artifact_commands().await);
|
||||
exec_state
|
||||
.global
|
||||
.artifact_responses
|
||||
.extend(self.engine.take_responses().await);
|
||||
let new_commands = self.engine.take_artifact_commands().await;
|
||||
let new_responses = self.engine.take_responses().await;
|
||||
let initial_graph = exec_state.global.artifact_graph.clone();
|
||||
|
||||
// Build the artifact graph.
|
||||
match build_artifact_graph(
|
||||
&exec_state.global.artifact_commands,
|
||||
&exec_state.global.artifact_responses,
|
||||
let graph_result = build_artifact_graph(
|
||||
&new_commands,
|
||||
&new_responses,
|
||||
program,
|
||||
&exec_state.global.artifacts,
|
||||
) {
|
||||
&mut exec_state.global.artifacts,
|
||||
initial_graph,
|
||||
);
|
||||
// Move the artifact commands and responses into ExecState to
|
||||
// simplify cache management and error creation.
|
||||
exec_state.global.artifact_commands.extend(new_commands);
|
||||
exec_state.global.artifact_responses.extend(new_responses);
|
||||
|
||||
match graph_result {
|
||||
Ok(artifact_graph) => {
|
||||
exec_state.global.artifact_graph = artifact_graph;
|
||||
exec_result.map(|(_, env_ref, _)| env_ref)
|
||||
@ -2232,7 +2233,7 @@ w = f() + f()
|
||||
let result = ctx.run_with_caching(program).await.unwrap();
|
||||
assert_eq!(result.variables.get("x").unwrap().as_f64().unwrap(), 2.0);
|
||||
|
||||
let ctx2 = ExecutorContext::new_mock().await;
|
||||
let ctx2 = ExecutorContext::new_mock(None).await;
|
||||
let program2 = crate::Program::parse_no_errs("z = x + 1").unwrap();
|
||||
let result = ctx2.run_mock(program2, true).await.unwrap();
|
||||
assert_eq!(result.variables.get("z").unwrap().as_f64().unwrap(), 3.0);
|
||||
|
@ -664,6 +664,17 @@ impl NumericType {
|
||||
)
|
||||
}
|
||||
|
||||
pub fn is_fully_specified(&self) -> bool {
|
||||
!matches!(
|
||||
self,
|
||||
NumericType::Unknown
|
||||
| NumericType::Known(UnitType::Angle(UnitAngle::Unknown))
|
||||
| NumericType::Known(UnitType::Length(UnitLen::Unknown))
|
||||
| NumericType::Any
|
||||
| NumericType::Default { .. }
|
||||
)
|
||||
}
|
||||
|
||||
fn example_ty(&self) -> Option<String> {
|
||||
match self {
|
||||
Self::Known(t) if !self.is_unknown() => Some(t.to_string()),
|
||||
@ -1460,7 +1471,7 @@ mod test {
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn coerce_idempotent() {
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock().await);
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock(None).await);
|
||||
let values = values(&mut exec_state);
|
||||
for v in &values {
|
||||
// Identity subtype
|
||||
@ -1550,7 +1561,7 @@ mod test {
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn coerce_none() {
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock().await);
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock(None).await);
|
||||
let none = KclValue::KclNone {
|
||||
value: crate::parsing::ast::types::KclNone::new(),
|
||||
meta: Vec::new(),
|
||||
@ -1608,7 +1619,7 @@ mod test {
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn coerce_record() {
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock().await);
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock(None).await);
|
||||
|
||||
let obj0 = KclValue::Object {
|
||||
value: HashMap::new(),
|
||||
@ -1690,7 +1701,7 @@ mod test {
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn coerce_array() {
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock().await);
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock(None).await);
|
||||
|
||||
let hom_arr = KclValue::HomArray {
|
||||
value: vec![
|
||||
@ -1843,7 +1854,7 @@ mod test {
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn coerce_union() {
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock().await);
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock(None).await);
|
||||
|
||||
// Subtyping smaller unions
|
||||
assert!(RuntimeType::Union(vec![]).subtype(&RuntimeType::Union(vec![
|
||||
@ -1894,7 +1905,7 @@ mod test {
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn coerce_axes() {
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock().await);
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock(None).await);
|
||||
|
||||
// Subtyping
|
||||
assert!(RuntimeType::Primitive(PrimitiveType::Axis2d).subtype(&RuntimeType::Primitive(PrimitiveType::Axis2d)));
|
||||
@ -2009,7 +2020,7 @@ mod test {
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn coerce_numeric() {
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock().await);
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock(None).await);
|
||||
|
||||
let count = KclValue::Number {
|
||||
value: 1.0,
|
||||
@ -2237,7 +2248,7 @@ d = cos(30)
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn coerce_nested_array() {
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock().await);
|
||||
let mut exec_state = ExecState::new(&crate::ExecutorContext::new_mock(None).await);
|
||||
|
||||
let mixed1 = KclValue::HomArray {
|
||||
value: vec![
|
||||
|
@ -4316,3 +4316,64 @@ sketch001 = startSketchOn(XY)
|
||||
}]
|
||||
);
|
||||
}
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn test_kcl_lsp_diagnostic_compilation_warnings() {
|
||||
let server = kcl_lsp_server(false).await.unwrap();
|
||||
|
||||
// Send open file.
|
||||
server
|
||||
.did_open(tower_lsp::lsp_types::DidOpenTextDocumentParams {
|
||||
text_document: tower_lsp::lsp_types::TextDocumentItem {
|
||||
uri: "file:///test.kcl".try_into().unwrap(),
|
||||
language_id: "kcl".to_string(),
|
||||
version: 1,
|
||||
text: r#"foo = 42
|
||||
@settings(defaultLengthUnit = mm)"#
|
||||
.to_string(),
|
||||
},
|
||||
})
|
||||
.await;
|
||||
|
||||
// Send diagnostics request.
|
||||
let diagnostics = server
|
||||
.diagnostic(tower_lsp::lsp_types::DocumentDiagnosticParams {
|
||||
text_document: tower_lsp::lsp_types::TextDocumentIdentifier {
|
||||
uri: "file:///test.kcl".try_into().unwrap(),
|
||||
},
|
||||
partial_result_params: Default::default(),
|
||||
work_done_progress_params: Default::default(),
|
||||
identifier: None,
|
||||
previous_result_id: None,
|
||||
})
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
// Check the diagnostics.
|
||||
if let tower_lsp::lsp_types::DocumentDiagnosticReportResult::Report(diagnostics) = diagnostics {
|
||||
if let tower_lsp::lsp_types::DocumentDiagnosticReport::Full(diagnostics) = diagnostics {
|
||||
assert_eq!(diagnostics.full_document_diagnostic_report.items.len(), 1);
|
||||
assert_eq!(
|
||||
diagnostics.full_document_diagnostic_report.items[0],
|
||||
tower_lsp::lsp_types::Diagnostic {
|
||||
range: tower_lsp::lsp_types::Range {
|
||||
start: tower_lsp::lsp_types::Position { line: 0, character: 8 },
|
||||
end: tower_lsp::lsp_types::Position { line: 1, character: 33 },
|
||||
},
|
||||
severity: Some(tower_lsp::lsp_types::DiagnosticSeverity::WARNING),
|
||||
code: None,
|
||||
source: Some("kcl".to_string()),
|
||||
message: "Named attributes should appear before any declarations or expressions.\n\nBecause named attributes apply to the whole function or module, including code written before them, it can be confusing for readers to not have these attributes at the top of code blocks.".to_string(),
|
||||
related_information: None,
|
||||
tags: None,
|
||||
data: None,
|
||||
code_description: None,
|
||||
}
|
||||
);
|
||||
} else {
|
||||
panic!("Expected full diagnostics");
|
||||
}
|
||||
} else {
|
||||
panic!("Expected diagnostics");
|
||||
}
|
||||
}
|
||||
|
@ -96,6 +96,7 @@ pub(crate) fn read_std(mod_name: &str) -> Option<&'static str> {
|
||||
"solid" => Some(include_str!("../std/solid.kcl")),
|
||||
"units" => Some(include_str!("../std/units.kcl")),
|
||||
"array" => Some(include_str!("../std/array.kcl")),
|
||||
"sweep" => Some(include_str!("../std/sweep.kcl")),
|
||||
"transform" => Some(include_str!("../std/transform.kcl")),
|
||||
_ => None,
|
||||
}
|
||||
|
@ -314,7 +314,7 @@ fn assert_common_snapshots(
|
||||
// Change the snapshot suffix so that it is rendered as a Markdown file
|
||||
// in GitHub.
|
||||
// Ignore the cpu cooler for now because its being a little bitch.
|
||||
if test.name == "cpu_cooler" {
|
||||
if test.name != "cpu-cooler" {
|
||||
insta::assert_binary_snapshot!("artifact_graph_flowchart.md", flowchart.as_bytes().to_owned());
|
||||
}
|
||||
})
|
||||
@ -2748,7 +2748,6 @@ mod import_mesh_clone {
|
||||
|
||||
/// Test that KCL is executed correctly.
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
#[ignore = "turn on when katie fixes the mesh import"]
|
||||
async fn kcl_test_execute() {
|
||||
super::execute(TEST_NAME, true).await
|
||||
}
|
||||
|
@ -102,7 +102,7 @@ impl TyF64 {
|
||||
t => unreachable!("expected length, found {t:?}"),
|
||||
};
|
||||
|
||||
assert_ne!(len, UnitLen::Unknown);
|
||||
debug_assert_ne!(len, UnitLen::Unknown);
|
||||
|
||||
len.adjust_to(self.n, units).0
|
||||
}
|
||||
@ -114,7 +114,7 @@ impl TyF64 {
|
||||
_ => unreachable!(),
|
||||
};
|
||||
|
||||
assert_ne!(angle, UnitAngle::Unknown);
|
||||
debug_assert_ne!(angle, UnitAngle::Unknown);
|
||||
|
||||
angle.adjust_to(self.n, UnitAngle::Degrees).0
|
||||
}
|
||||
@ -126,7 +126,7 @@ impl TyF64 {
|
||||
_ => unreachable!(),
|
||||
};
|
||||
|
||||
assert_ne!(angle, UnitAngle::Unknown);
|
||||
debug_assert_ne!(angle, UnitAngle::Unknown);
|
||||
|
||||
angle.adjust_to(self.n, UnitAngle::Radians).0
|
||||
}
|
||||
|
@ -674,7 +674,7 @@ mod tests {
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn test_array_to_point3d() {
|
||||
let mut exec_state = ExecState::new(&ExecutorContext::new_mock().await);
|
||||
let mut exec_state = ExecState::new(&ExecutorContext::new_mock(None).await);
|
||||
let input = KclValue::HomArray {
|
||||
value: vec![
|
||||
KclValue::Number {
|
||||
@ -706,7 +706,7 @@ mod tests {
|
||||
|
||||
#[tokio::test(flavor = "multi_thread")]
|
||||
async fn test_tuple_to_point3d() {
|
||||
let mut exec_state = ExecState::new(&ExecutorContext::new_mock().await);
|
||||
let mut exec_state = ExecState::new(&ExecutorContext::new_mock(None).await);
|
||||
let input = KclValue::Tuple {
|
||||
value: vec![
|
||||
KclValue::Number {
|
||||
|
@ -267,7 +267,7 @@ import \"a.kcl\"
|
||||
);
|
||||
modules.insert("b.kcl".to_owned(), into_module_info(b));
|
||||
|
||||
let ctx = ExecutorContext::new_mock().await;
|
||||
let ctx = ExecutorContext::new_mock(None).await;
|
||||
let order = import_graph(&modules, &ctx).unwrap();
|
||||
assert_eq!(vec![vec!["a.kcl".to_owned()], vec!["b.kcl".to_owned()]], order);
|
||||
}
|
||||
@ -290,7 +290,7 @@ x = 1
|
||||
);
|
||||
modules.insert("b.kcl".to_owned(), into_module_info(b));
|
||||
|
||||
let ctx = ExecutorContext::new_mock().await;
|
||||
let ctx = ExecutorContext::new_mock(None).await;
|
||||
let order = import_graph(&modules, &ctx).unwrap();
|
||||
assert_eq!(vec![vec!["a.kcl".to_owned(), "b.kcl".to_owned()]], order);
|
||||
}
|
||||
@ -316,7 +316,7 @@ import \"a.kcl\"
|
||||
);
|
||||
modules.insert("c.kcl".to_owned(), into_module_info(c));
|
||||
|
||||
let ctx = ExecutorContext::new_mock().await;
|
||||
let ctx = ExecutorContext::new_mock(None).await;
|
||||
let order = import_graph(&modules, &ctx).unwrap();
|
||||
assert_eq!(
|
||||
vec![vec!["a.kcl".to_owned()], vec!["b.kcl".to_owned(), "c.kcl".to_owned()]],
|
||||
@ -342,7 +342,7 @@ import \"a.kcl\"
|
||||
);
|
||||
modules.insert("b.kcl".to_owned(), into_module_info(b));
|
||||
|
||||
let ctx = ExecutorContext::new_mock().await;
|
||||
let ctx = ExecutorContext::new_mock(None).await;
|
||||
import_graph(&modules, &ctx).unwrap_err();
|
||||
}
|
||||
}
|
||||
|
@ -21,6 +21,7 @@ export import * from "std::sketch"
|
||||
export import * from "std::solid"
|
||||
export import * from "std::transform"
|
||||
export import "std::turns"
|
||||
export import "std::sweep"
|
||||
|
||||
/// An abstract 3d plane aligned with the X and Y axes. Its normal is the positive Z axis.
|
||||
export XY = {
|
||||
@ -83,7 +84,7 @@ export END = 'end'
|
||||
/// // Create a spring by sweeping around the helix path.
|
||||
/// springSketch = startSketchOn(YZ)
|
||||
/// |> circle( center = [0, 0], radius = 0.5)
|
||||
/// |> sweep(path = helixPath, relativeTo = "sketchPlane")
|
||||
/// |> sweep(path = helixPath, relativeTo = sweep::SKETCH_PLANE)
|
||||
/// ```
|
||||
///
|
||||
/// ```
|
||||
@ -104,7 +105,7 @@ export END = 'end'
|
||||
/// // Create a spring by sweeping around the helix path.
|
||||
/// springSketch = startSketchOn(XY)
|
||||
/// |> circle( center = [0, 0], radius = 0.5 )
|
||||
/// |> sweep(path = helixPath, relativeTo = "sketchPlane")
|
||||
/// |> sweep(path = helixPath, relativeTo = sweep::SKETCH_PLANE)
|
||||
/// ```
|
||||
///
|
||||
/// ```
|
||||
@ -124,7 +125,7 @@ export END = 'end'
|
||||
/// // Create a spring by sweeping around the helix path.
|
||||
/// springSketch = startSketchOn(XY)
|
||||
/// |> circle( center = [0, 0], radius = 1 )
|
||||
/// |> sweep(path = helixPath, relativeTo = "sketchPlane")
|
||||
/// |> sweep(path = helixPath, relativeTo = sweep::SKETCH_PLANE)
|
||||
/// ```
|
||||
///
|
||||
/// ```
|
||||
@ -413,7 +414,7 @@ export fn offsetPlane(
|
||||
/// // Create a spring by sweeping around the helix path.
|
||||
/// sweepedSpring = clone(springSketch)
|
||||
/// |> translate(x=100)
|
||||
/// |> sweep(path = helixPath, relativeTo = "sketchPlane")
|
||||
/// |> sweep(path = helixPath, relativeTo = sweep::SKETCH_PLANE)
|
||||
/// ```
|
||||
///
|
||||
/// ```kcl
|
||||
|
5
rust/kcl-lib/std/sweep.kcl
Normal file
5
rust/kcl-lib/std/sweep.kcl
Normal file
@ -0,0 +1,5 @@
|
||||
/// Local/relative to the trajectory curve
|
||||
export TRAJECTORY = 'trajectoryCurve'
|
||||
|
||||
/// Local/relative to a position centered within the plane being sketched on
|
||||
export SKETCH_PLANE = 'sketchPlane'
|
@ -22,13 +22,21 @@ flowchart LR
|
||||
10["Sweep Extrusion<br>[279, 298, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }]
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
16[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
17["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
18["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
19["SweepEdge Opposite"]
|
||||
20["SweepEdge Opposite"]
|
||||
21["SweepEdge Opposite"]
|
||||
|
@ -31,21 +31,31 @@ flowchart LR
|
||||
1["Plane<br>[12, 29, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["StartSketchOnFace<br>[343, 382, 0]"]
|
||||
%% Missing NodePath
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
16["Sweep Extrusion<br>[258, 290, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
17["Sweep Extrusion<br>[553, 583, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
18[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
19[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
20[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
21[Wall]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
22[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
23[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
24[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
25["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
26["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
27["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
28["SweepEdge Opposite"]
|
||||
29["SweepEdge Opposite"]
|
||||
30["SweepEdge Opposite"]
|
||||
|
@ -13,7 +13,7 @@ flowchart LR
|
||||
3["Plane<br>[110, 138, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
4["StartSketchOnPlane<br>[152, 181, 0]"]
|
||||
%% Missing NodePath
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
1 <--x 4
|
||||
1 --- 5
|
||||
5 --- 6
|
||||
|
@ -2,61 +2,106 @@
|
||||
flowchart LR
|
||||
subgraph path5 [Path]
|
||||
5["Path<br>[35, 60, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
9["Segment<br>[66, 84, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
10["Segment<br>[90, 123, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
11["Segment<br>[129, 185, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
12["Segment<br>[191, 198, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
25[Solid2d]
|
||||
end
|
||||
subgraph path6 [Path]
|
||||
6["Path<br>[300, 330, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
13["Segment<br>[336, 354, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
14["Segment<br>[360, 379, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
15["Segment<br>[385, 441, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
16["Segment<br>[447, 454, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
26[Solid2d]
|
||||
end
|
||||
subgraph path7 [Path]
|
||||
7["Path<br>[556, 583, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
17["Segment<br>[589, 623, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
18["Segment<br>[629, 648, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
19["Segment<br>[654, 710, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
20["Segment<br>[716, 723, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
28[Solid2d]
|
||||
end
|
||||
subgraph path8 [Path]
|
||||
8["Path<br>[825, 852, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
21["Segment<br>[858, 878, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
22["Segment<br>[884, 905, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
23["Segment<br>[911, 967, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
24["Segment<br>[973, 980, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
27[Solid2d]
|
||||
end
|
||||
1["Plane<br>[12, 29, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["StartSketchOnFace<br>[255, 294, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
3["StartSketchOnFace<br>[511, 550, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
4["StartSketchOnFace<br>[780, 819, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
29["Sweep Extrusion<br>[212, 242, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
30["Sweep Extrusion<br>[468, 498, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
31["Sweep Extrusion<br>[737, 767, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
32["Sweep Extrusion<br>[994, 1024, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
33[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
34[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
35[Wall]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
36[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
37[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
38[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
39[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
40[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
41[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
42[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
43[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
44[Wall]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
45["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
46["Cap End"]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
47["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
48["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
49["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
50["SweepEdge Opposite"]
|
||||
51["SweepEdge Opposite"]
|
||||
52["SweepEdge Opposite"]
|
||||
|
@ -39,17 +39,29 @@ flowchart LR
|
||||
18["Sweep Extrusion<br>[264, 286, 2]"]
|
||||
%% Missing NodePath
|
||||
19[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
20[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
21[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
22[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
23[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
24[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
25[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
26[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
27["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
28["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
29["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
30["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
31["SweepEdge Opposite"]
|
||||
32["SweepEdge Opposite"]
|
||||
33["SweepEdge Opposite"]
|
||||
|
@ -18,11 +18,17 @@ flowchart LR
|
||||
8["Sweep Extrusion<br>[195, 215, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
9[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
10[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
|
@ -18,11 +18,17 @@ flowchart LR
|
||||
8["Sweep Extrusion<br>[183, 203, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
9[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
10[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
|
@ -18,11 +18,17 @@ flowchart LR
|
||||
8["Sweep Extrusion<br>[210, 230, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
9[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
10[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
|
@ -18,11 +18,17 @@ flowchart LR
|
||||
8["Sweep Extrusion<br>[210, 230, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
9[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
10[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
|
@ -18,11 +18,17 @@ flowchart LR
|
||||
8["Sweep Extrusion<br>[183, 203, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
9[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
10[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
|
@ -2,12 +2,17 @@
|
||||
flowchart LR
|
||||
subgraph path2 [Path]
|
||||
2["Path<br>[35, 70, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
3["Segment<br>[35, 70, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
4[Solid2d]
|
||||
end
|
||||
1["Plane<br>[12, 29, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
5["Sweep Revolve<br>[76, 120, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
6[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
7["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
2 --- 3
|
||||
|
@ -12,8 +12,11 @@ flowchart LR
|
||||
5["Sweep Extrusion<br>[102, 122, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
6[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
7["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
8["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
9["SweepEdge Opposite"]
|
||||
10["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
|
@ -18,11 +18,17 @@ flowchart LR
|
||||
8["Sweep Extrusion<br>[157, 176, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
9[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
10[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
|
@ -2,111 +2,187 @@
|
||||
flowchart LR
|
||||
subgraph path4 [Path]
|
||||
4["Path<br>[43, 86, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
15["Segment<br>[92, 130, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
16["Segment<br>[136, 175, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
17["Segment<br>[181, 237, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
18["Segment<br>[243, 250, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
56[Solid2d]
|
||||
end
|
||||
subgraph path5 [Path]
|
||||
5["Path<br>[362, 405, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
19["Segment<br>[411, 435, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
20["Segment<br>[441, 466, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
end
|
||||
subgraph path6 [Path]
|
||||
6["Path<br>[480, 522, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
21["Segment<br>[528, 593, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
22["Segment<br>[599, 667, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
23["Segment<br>[673, 761, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
24["Segment<br>[767, 823, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
25["Segment<br>[829, 836, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
53[Solid2d]
|
||||
end
|
||||
subgraph path7 [Path]
|
||||
7["Path<br>[850, 892, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
26["Segment<br>[898, 918, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
27["Segment<br>[924, 950, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
28["Segment<br>[956, 1012, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
29["Segment<br>[1018, 1025, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
58[Solid2d]
|
||||
end
|
||||
subgraph path8 [Path]
|
||||
8["Path<br>[1039, 1094, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
30["Segment<br>[1039, 1094, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
57[Solid2d]
|
||||
end
|
||||
subgraph path9 [Path]
|
||||
9["Path<br>[1108, 1150, 0]"]
|
||||
%% [ProgramBodyItem { index: 8 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
31["Segment<br>[1156, 1180, 0]"]
|
||||
%% [ProgramBodyItem { index: 8 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
32["Segment<br>[1186, 1211, 0]"]
|
||||
%% [ProgramBodyItem { index: 8 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
33["Segment<br>[1217, 1273, 0]"]
|
||||
%% [ProgramBodyItem { index: 8 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
34["Segment<br>[1279, 1286, 0]"]
|
||||
%% [ProgramBodyItem { index: 8 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
59[Solid2d]
|
||||
end
|
||||
subgraph path10 [Path]
|
||||
10["Path<br>[1456, 1497, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
35["Segment<br>[1503, 1527, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
36["Segment<br>[1533, 1558, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
end
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[1572, 1614, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
37["Segment<br>[1620, 1644, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
38["Segment<br>[1650, 1675, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
39["Segment<br>[1681, 1737, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
40["Segment<br>[1743, 1750, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
51[Solid2d]
|
||||
end
|
||||
subgraph path12 [Path]
|
||||
12["Path<br>[1764, 1806, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
41["Segment<br>[1812, 1835, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
42["Segment<br>[1841, 1866, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
43["Segment<br>[1872, 1928, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
44["Segment<br>[1934, 1941, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
52[Solid2d]
|
||||
end
|
||||
subgraph path13 [Path]
|
||||
13["Path<br>[1955, 2011, 0]"]
|
||||
%% [ProgramBodyItem { index: 15 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
45["Segment<br>[1955, 2011, 0]"]
|
||||
%% [ProgramBodyItem { index: 15 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
55[Solid2d]
|
||||
end
|
||||
subgraph path14 [Path]
|
||||
14["Path<br>[2025, 2068, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
46["Segment<br>[2074, 2139, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
47["Segment<br>[2145, 2213, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
48["Segment<br>[2219, 2307, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
49["Segment<br>[2313, 2369, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
50["Segment<br>[2375, 2382, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
54[Solid2d]
|
||||
end
|
||||
1["Plane<br>[12, 29, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
2["Plane<br>[1424, 1442, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
3["StartSketchOnFace<br>[309, 348, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
60["Sweep Extrusion<br>[264, 296, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
61["Sweep RevolveAboutEdge<br>[1300, 1366, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
62["Sweep Extrusion<br>[1380, 1411, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
63["Sweep Extrusion<br>[2396, 2429, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
64["Sweep RevolveAboutEdge<br>[2443, 2488, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
65[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
66[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
67[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
68[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
69[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
70[Wall]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
71[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
72[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
73[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
74[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
75[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
76[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
77[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
78["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
79["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
80["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
81["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
82["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
83["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
84["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
85["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
86["SweepEdge Opposite"]
|
||||
87["SweepEdge Opposite"]
|
||||
88["SweepEdge Opposite"]
|
||||
|
@ -20,11 +20,17 @@ flowchart LR
|
||||
9["Sweep Extrusion<br>[374, 402, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 7 }, ReturnStatementArg, PipeBodyItem { index: 7 }]
|
||||
10[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
18["SweepEdge Opposite"]
|
||||
|
@ -20,11 +20,17 @@ flowchart LR
|
||||
9["Sweep Extrusion<br>[366, 390, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 7 }, ReturnStatementArg, PipeBodyItem { index: 7 }]
|
||||
10[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
18["SweepEdge Opposite"]
|
||||
|
@ -0,0 +1,6 @@
|
||||
---
|
||||
source: kcl-lib/src/simulation_tests.rs
|
||||
description: Artifact graph flowchart error_revolve_on_edge_get_edge.kcl
|
||||
extension: md
|
||||
snapshot_kind: binary
|
||||
---
|
@ -0,0 +1,115 @@
|
||||
```mermaid
|
||||
flowchart LR
|
||||
subgraph path3 [Path]
|
||||
3["Path<br>[29, 54, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
5["Segment<br>[60, 79, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
6["Segment<br>[85, 104, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
7["Segment<br>[110, 150, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
8["Segment<br>[156, 163, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
13[Solid2d]
|
||||
end
|
||||
subgraph path4 [Path]
|
||||
4["Path<br>[247, 273, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
9["Segment<br>[279, 299, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
10["Segment<br>[305, 323, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
11["Segment<br>[329, 348, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
12["Segment<br>[354, 361, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
14[Solid2d]
|
||||
end
|
||||
1["Plane<br>[6, 23, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["StartSketchOnFace<br>[203, 241, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
15["Sweep Extrusion<br>[169, 189, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
16[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
17[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
18[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
19[Wall]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
20["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
21["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
22["SweepEdge Opposite"]
|
||||
23["SweepEdge Opposite"]
|
||||
24["SweepEdge Opposite"]
|
||||
25["SweepEdge Opposite"]
|
||||
26["SweepEdge Adjacent"]
|
||||
27["SweepEdge Adjacent"]
|
||||
28["SweepEdge Adjacent"]
|
||||
29["SweepEdge Adjacent"]
|
||||
1 --- 3
|
||||
19 x--> 2
|
||||
3 --- 5
|
||||
3 --- 6
|
||||
3 --- 7
|
||||
3 --- 8
|
||||
3 --- 13
|
||||
3 ---- 15
|
||||
4 --- 9
|
||||
4 --- 10
|
||||
4 --- 11
|
||||
4 --- 12
|
||||
4 --- 14
|
||||
19 --- 4
|
||||
5 --- 18
|
||||
5 x--> 20
|
||||
5 --- 25
|
||||
5 --- 29
|
||||
6 --- 16
|
||||
6 x--> 20
|
||||
6 --- 24
|
||||
6 --- 28
|
||||
7 --- 19
|
||||
7 x--> 20
|
||||
7 --- 23
|
||||
7 --- 27
|
||||
8 --- 17
|
||||
8 x--> 20
|
||||
8 --- 22
|
||||
8 --- 26
|
||||
15 --- 16
|
||||
15 --- 17
|
||||
15 --- 18
|
||||
15 --- 19
|
||||
15 --- 20
|
||||
15 --- 21
|
||||
15 --- 22
|
||||
15 --- 23
|
||||
15 --- 24
|
||||
15 --- 25
|
||||
15 --- 26
|
||||
15 --- 27
|
||||
15 --- 28
|
||||
15 --- 29
|
||||
16 --- 24
|
||||
16 --- 28
|
||||
29 <--x 16
|
||||
17 --- 22
|
||||
17 --- 26
|
||||
27 <--x 17
|
||||
18 --- 25
|
||||
26 <--x 18
|
||||
18 --- 29
|
||||
19 --- 23
|
||||
19 --- 27
|
||||
28 <--x 19
|
||||
22 <--x 21
|
||||
23 <--x 21
|
||||
24 <--x 21
|
||||
25 <--x 21
|
||||
```
|
@ -2,101 +2,160 @@
|
||||
flowchart LR
|
||||
subgraph path7 [Path]
|
||||
7["Path<br>[396, 467, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
21["Segment<br>[473, 564, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
22["Segment<br>[570, 661, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
23["Segment<br>[667, 760, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
24["Segment<br>[766, 774, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
42[Solid2d]
|
||||
end
|
||||
subgraph path8 [Path]
|
||||
8["Path<br>[806, 831, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
25["Segment<br>[837, 885, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
26["Segment<br>[891, 948, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
27["Segment<br>[954, 1003, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
28["Segment<br>[1009, 1028, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
46[Solid2d]
|
||||
end
|
||||
subgraph path9 [Path]
|
||||
9["Path<br>[1339, 1364, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
end
|
||||
subgraph path10 [Path]
|
||||
10["Path<br>[1339, 1364, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
end
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[1339, 1364, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
end
|
||||
subgraph path12 [Path]
|
||||
12["Path<br>[1339, 1364, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
end
|
||||
subgraph path13 [Path]
|
||||
13["Path<br>[1372, 1409, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
31["Segment<br>[1372, 1409, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
38[Solid2d]
|
||||
end
|
||||
subgraph path14 [Path]
|
||||
14["Path<br>[1372, 1409, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
30["Segment<br>[1372, 1409, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
39[Solid2d]
|
||||
end
|
||||
subgraph path15 [Path]
|
||||
15["Path<br>[1372, 1409, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
29["Segment<br>[1372, 1409, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
40[Solid2d]
|
||||
end
|
||||
subgraph path16 [Path]
|
||||
16["Path<br>[1372, 1409, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
32["Segment<br>[1372, 1409, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
41[Solid2d]
|
||||
end
|
||||
subgraph path17 [Path]
|
||||
17["Path<br>[1435, 1473, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }, CallKwArg { index: 0 }]
|
||||
35["Segment<br>[1435, 1473, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }, CallKwArg { index: 0 }]
|
||||
37[Solid2d]
|
||||
end
|
||||
subgraph path18 [Path]
|
||||
18["Path<br>[1435, 1473, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }, CallKwArg { index: 0 }]
|
||||
33["Segment<br>[1435, 1473, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }, CallKwArg { index: 0 }]
|
||||
43[Solid2d]
|
||||
end
|
||||
subgraph path19 [Path]
|
||||
19["Path<br>[1435, 1473, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }, CallKwArg { index: 0 }]
|
||||
36["Segment<br>[1435, 1473, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }, CallKwArg { index: 0 }]
|
||||
44[Solid2d]
|
||||
end
|
||||
subgraph path20 [Path]
|
||||
20["Path<br>[1435, 1473, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }, CallKwArg { index: 0 }]
|
||||
34["Segment<br>[1435, 1473, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }, CallKwArg { index: 0 }]
|
||||
45[Solid2d]
|
||||
end
|
||||
1["Plane<br>[373, 390, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["Plane<br>[783, 800, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
3["Plane<br>[1314, 1331, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
4["Plane<br>[1314, 1331, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
5["Plane<br>[1314, 1331, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
6["Plane<br>[1314, 1331, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
47["Sweep Extrusion<br>[1034, 1062, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
48["Sweep Extrusion<br>[1482, 1506, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
49["Sweep Extrusion<br>[1482, 1506, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
50["Sweep Extrusion<br>[1482, 1506, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
51["Sweep Extrusion<br>[1482, 1506, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
52[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
53[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
54[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
55[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
56[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
57[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
58[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
59[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
60["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
61["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
62["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
63["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
64["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
65["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
66["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
67["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
68["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
69["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
70["SweepEdge Opposite"]
|
||||
71["SweepEdge Opposite"]
|
||||
72["SweepEdge Opposite"]
|
||||
@ -114,9 +173,13 @@ flowchart LR
|
||||
84["SweepEdge Adjacent"]
|
||||
85["SweepEdge Adjacent"]
|
||||
86["EdgeCut Fillet<br>[1068, 1274, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
87["EdgeCut Fillet<br>[1068, 1274, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
88["EdgeCut Fillet<br>[1068, 1274, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
89["EdgeCut Fillet<br>[1068, 1274, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
1 --- 7
|
||||
2 --- 8
|
||||
3 --- 10
|
||||
|
@ -18,11 +18,17 @@ flowchart LR
|
||||
8["Sweep Extrusion<br>[216, 236, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, ExpressionStatementExpr, PipeBodyItem { index: 5 }]
|
||||
9[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
10[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
|
@ -19,8 +19,11 @@ flowchart LR
|
||||
8["Sweep Extrusion<br>[702, 739, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
9[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
10["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12["SweepEdge Opposite"]
|
||||
13["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
|
@ -18,11 +18,17 @@ flowchart LR
|
||||
8["Sweep Extrusion<br>[181, 200, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
9[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
10[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
|
@ -18,11 +18,17 @@ flowchart LR
|
||||
8["Sweep Extrusion<br>[179, 198, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
9[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
10[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
11[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
12[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
13["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15["SweepEdge Opposite"]
|
||||
16["SweepEdge Opposite"]
|
||||
17["SweepEdge Opposite"]
|
||||
|
@ -12,8 +12,11 @@ flowchart LR
|
||||
5["Sweep Extrusion<br>[75, 95, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
6[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
7["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
8["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
9["SweepEdge Opposite"]
|
||||
10["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
|
@ -85,31 +85,57 @@ flowchart LR
|
||||
41["Sweep Extrusion<br>[2408, 2429, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
42[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
43[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
44[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
45[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
46[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
47[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
48[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
49[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
50[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
51[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
52[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
53[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
54[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
55[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
56[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
57[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
58[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
59[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
60[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
61[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
62[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
63[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
64[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
65[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
66["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
67["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
68["SweepEdge Opposite"]
|
||||
69["SweepEdge Opposite"]
|
||||
70["SweepEdge Opposite"]
|
||||
|
@ -2,51 +2,86 @@
|
||||
flowchart LR
|
||||
subgraph path8 [Path]
|
||||
8["Path<br>[753, 859, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
12["Segment<br>[867, 894, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
13["Segment<br>[902, 930, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
14["Segment<br>[938, 966, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
15["Segment<br>[974, 1050, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
16["Segment<br>[1058, 1123, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
17["Segment<br>[1131, 1138, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
30[Solid2d]
|
||||
end
|
||||
subgraph path9 [Path]
|
||||
9["Path<br>[1643, 1713, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
26["Segment<br>[2677, 2684, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
29[Solid2d]
|
||||
end
|
||||
subgraph path10 [Path]
|
||||
10["Path<br>[1643, 1713, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
19["Segment<br>[1723, 1889, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
20["Segment<br>[1899, 1984, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
23["Segment<br>[1994, 2215, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
24["Segment<br>[2302, 2388, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
28["Segment<br>[2677, 2684, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
31[Solid2d]
|
||||
end
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[1643, 1713, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
18["Segment<br>[1723, 1889, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
21["Segment<br>[1899, 1984, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
22["Segment<br>[1994, 2215, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
25["Segment<br>[2302, 2388, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
27["Segment<br>[2677, 2684, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
32[Solid2d]
|
||||
end
|
||||
1["Plane<br>[728, 745, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["Plane<br>[1594, 1632, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }, CallKwUnlabeledArg]
|
||||
3["Plane<br>[1594, 1632, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }, CallKwUnlabeledArg]
|
||||
4["Plane<br>[1594, 1632, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }, CallKwUnlabeledArg]
|
||||
5["StartSketchOnPlane<br>[1580, 1633, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
6["StartSketchOnPlane<br>[1580, 1633, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
7["StartSketchOnPlane<br>[1580, 1633, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
33["Sweep Loft<br>[3201, 3268, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 15 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
34[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
35[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
36[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
37[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
38["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
39["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
40["SweepEdge Opposite"]
|
||||
41["SweepEdge Opposite"]
|
||||
42["SweepEdge Opposite"]
|
||||
|
@ -26,13 +26,21 @@ flowchart LR
|
||||
12["Sweep Revolve<br>[302, 319, 1]"]
|
||||
%% Missing NodePath
|
||||
13[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
14[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
15[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
16[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
17[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
18[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
19[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
20[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
21["SweepEdge Adjacent"]
|
||||
22["SweepEdge Adjacent"]
|
||||
23["SweepEdge Adjacent"]
|
||||
|
@ -996,10 +996,51 @@ description: Artifact commands import_mesh_clone.kcl
|
||||
"direction": "positive"
|
||||
}
|
||||
},
|
||||
"units": "mm"
|
||||
"units": "m"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "set_object_transform",
|
||||
"object_id": "[uuid]",
|
||||
"transforms": [
|
||||
{
|
||||
"translate": {
|
||||
"property": {
|
||||
"x": -2000.0,
|
||||
"y": -2000.0,
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "object_set_material_params_pbr",
|
||||
"object_id": "[uuid]",
|
||||
"color": {
|
||||
"r": 1.0,
|
||||
"g": 1.0,
|
||||
"b": 0.0,
|
||||
"a": 100.0
|
||||
},
|
||||
"metalness": 0.0,
|
||||
"roughness": 0.0,
|
||||
"ambient_occlusion": 0.0
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1008,6 +1049,22 @@ description: Artifact commands import_mesh_clone.kcl
|
||||
"entity_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "entity_get_all_child_uuids",
|
||||
"entity_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "entity_get_all_child_uuids",
|
||||
"entity_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
@ -1018,7 +1075,7 @@ description: Artifact commands import_mesh_clone.kcl
|
||||
{
|
||||
"translate": {
|
||||
"property": {
|
||||
"x": 1020.0,
|
||||
"x": 4000.0,
|
||||
"y": 0.0,
|
||||
"z": 0.0
|
||||
},
|
||||
@ -1044,8 +1101,138 @@ description: Artifact commands import_mesh_clone.kcl
|
||||
"b": 0.0,
|
||||
"a": 100.0
|
||||
},
|
||||
"metalness": 0.5,
|
||||
"roughness": 0.5,
|
||||
"metalness": 0.0,
|
||||
"roughness": 0.0,
|
||||
"ambient_occlusion": 0.0
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "entity_clone",
|
||||
"entity_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "entity_get_all_child_uuids",
|
||||
"entity_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "entity_get_all_child_uuids",
|
||||
"entity_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "set_object_transform",
|
||||
"object_id": "[uuid]",
|
||||
"transforms": [
|
||||
{
|
||||
"translate": {
|
||||
"property": {
|
||||
"x": 0.0,
|
||||
"y": 4000.0,
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "object_set_material_params_pbr",
|
||||
"object_id": "[uuid]",
|
||||
"color": {
|
||||
"r": 0.0,
|
||||
"g": 1.0,
|
||||
"b": 0.0,
|
||||
"a": 100.0
|
||||
},
|
||||
"metalness": 0.0,
|
||||
"roughness": 0.0,
|
||||
"ambient_occlusion": 0.0
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "entity_clone",
|
||||
"entity_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "entity_get_all_child_uuids",
|
||||
"entity_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "entity_get_all_child_uuids",
|
||||
"entity_id": "[uuid]"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "set_object_transform",
|
||||
"object_id": "[uuid]",
|
||||
"transforms": [
|
||||
{
|
||||
"translate": {
|
||||
"property": {
|
||||
"x": 0.0,
|
||||
"y": 4000.0,
|
||||
"z": 0.0
|
||||
},
|
||||
"set": false,
|
||||
"is_local": true
|
||||
},
|
||||
"rotate_rpy": null,
|
||||
"rotate_angle_axis": null,
|
||||
"scale": null
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"cmdId": "[uuid]",
|
||||
"range": [],
|
||||
"command": {
|
||||
"type": "object_set_material_params_pbr",
|
||||
"object_id": "[uuid]",
|
||||
"color": {
|
||||
"r": 0.0,
|
||||
"g": 0.0,
|
||||
"b": 1.0,
|
||||
"a": 100.0
|
||||
},
|
||||
"metalness": 0.0,
|
||||
"roughness": 0.0,
|
||||
"ambient_occlusion": 0.0
|
||||
}
|
||||
}
|
||||
|
@ -8,6 +8,46 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
{
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"outerAttrs": [
|
||||
{
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": null,
|
||||
"properties": [
|
||||
{
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"key": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "lengthUnit",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"start": 0,
|
||||
"type": "ObjectProperty",
|
||||
"value": {
|
||||
"abs_path": false,
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "m",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"path": [],
|
||||
"start": 0,
|
||||
"type": "Name",
|
||||
"type": "Name"
|
||||
}
|
||||
}
|
||||
],
|
||||
"start": 0,
|
||||
"type": "Annotation"
|
||||
}
|
||||
],
|
||||
"path": {
|
||||
"type": "Foreign",
|
||||
"path": "../inputs/cube.obj"
|
||||
@ -17,7 +57,7 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
"alias": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "cube",
|
||||
"name": "yellow",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
}
|
||||
@ -27,25 +67,18 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
"type": "ImportStatement"
|
||||
},
|
||||
{
|
||||
"commentStart": 0,
|
||||
"declaration": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"id": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "model",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"init": {
|
||||
"expression": {
|
||||
"body": [
|
||||
{
|
||||
"abs_path": false,
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "cube",
|
||||
"name": "yellow",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
@ -54,14 +87,173 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
"type": "Name",
|
||||
"type": "Name"
|
||||
},
|
||||
"start": 0,
|
||||
"type": "VariableDeclarator"
|
||||
},
|
||||
{
|
||||
"arguments": [
|
||||
{
|
||||
"type": "LabeledArg",
|
||||
"label": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"kind": "const",
|
||||
"name": "x",
|
||||
"start": 0,
|
||||
"type": "VariableDeclaration",
|
||||
"type": "VariableDeclaration"
|
||||
"type": "Identifier"
|
||||
},
|
||||
"arg": {
|
||||
"argument": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"raw": "2000",
|
||||
"start": 0,
|
||||
"type": "Literal",
|
||||
"type": "Literal",
|
||||
"value": {
|
||||
"value": 2000.0,
|
||||
"suffix": "None"
|
||||
}
|
||||
},
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"operator": "-",
|
||||
"start": 0,
|
||||
"type": "UnaryExpression",
|
||||
"type": "UnaryExpression"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "LabeledArg",
|
||||
"label": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "y",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"arg": {
|
||||
"argument": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"raw": "2000",
|
||||
"start": 0,
|
||||
"type": "Literal",
|
||||
"type": "Literal",
|
||||
"value": {
|
||||
"value": 2000.0,
|
||||
"suffix": "None"
|
||||
}
|
||||
},
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"operator": "-",
|
||||
"start": 0,
|
||||
"type": "UnaryExpression",
|
||||
"type": "UnaryExpression"
|
||||
}
|
||||
}
|
||||
],
|
||||
"callee": {
|
||||
"abs_path": false,
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "translate",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"path": [],
|
||||
"start": 0,
|
||||
"type": "Name"
|
||||
},
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "CallExpressionKw",
|
||||
"type": "CallExpressionKw",
|
||||
"unlabeled": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "PipeSubstitution",
|
||||
"type": "PipeSubstitution"
|
||||
}
|
||||
}
|
||||
],
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "PipeExpression",
|
||||
"type": "PipeExpression"
|
||||
},
|
||||
"start": 0,
|
||||
"type": "ExpressionStatement",
|
||||
"type": "ExpressionStatement"
|
||||
},
|
||||
{
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"expression": {
|
||||
"arguments": [
|
||||
{
|
||||
"type": "LabeledArg",
|
||||
"label": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "color",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"arg": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"raw": "\"#ffff00\"",
|
||||
"start": 0,
|
||||
"type": "Literal",
|
||||
"type": "Literal",
|
||||
"value": "#ffff00"
|
||||
}
|
||||
}
|
||||
],
|
||||
"callee": {
|
||||
"abs_path": false,
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "appearance",
|
||||
"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": "yellow",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"path": [],
|
||||
"start": 0,
|
||||
"type": "Name",
|
||||
"type": "Name"
|
||||
}
|
||||
},
|
||||
"start": 0,
|
||||
"type": "ExpressionStatement",
|
||||
"type": "ExpressionStatement"
|
||||
},
|
||||
{
|
||||
"commentStart": 0,
|
||||
@ -71,7 +263,7 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
"id": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "model2",
|
||||
"name": "red",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
@ -105,7 +297,7 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "model",
|
||||
"name": "yellow",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
@ -129,12 +321,12 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
"arg": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"raw": "1020",
|
||||
"raw": "4000",
|
||||
"start": 0,
|
||||
"type": "Literal",
|
||||
"type": "Literal",
|
||||
"value": {
|
||||
"value": 1020.0,
|
||||
"value": 4000.0,
|
||||
"suffix": "None"
|
||||
}
|
||||
}
|
||||
@ -160,9 +352,34 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
"start": 0,
|
||||
"type": "CallExpressionKw",
|
||||
"type": "CallExpressionKw",
|
||||
"unlabeled": null
|
||||
"unlabeled": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "PipeSubstitution",
|
||||
"type": "PipeSubstitution"
|
||||
}
|
||||
}
|
||||
],
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "PipeExpression",
|
||||
"type": "PipeExpression"
|
||||
},
|
||||
"start": 0,
|
||||
"type": "VariableDeclarator"
|
||||
},
|
||||
"end": 0,
|
||||
"kind": "const",
|
||||
"start": 0,
|
||||
"type": "VariableDeclaration",
|
||||
"type": "VariableDeclaration"
|
||||
},
|
||||
{
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"expression": {
|
||||
"arguments": [
|
||||
{
|
||||
"type": "LabeledArg",
|
||||
@ -182,50 +399,6 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
"type": "Literal",
|
||||
"value": "#ff0000"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "LabeledArg",
|
||||
"label": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "metalness",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"arg": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"raw": "50",
|
||||
"start": 0,
|
||||
"type": "Literal",
|
||||
"type": "Literal",
|
||||
"value": {
|
||||
"value": 50.0,
|
||||
"suffix": "None"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "LabeledArg",
|
||||
"label": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "roughness",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"arg": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"raw": "50",
|
||||
"start": 0,
|
||||
"type": "Literal",
|
||||
"type": "Literal",
|
||||
"value": {
|
||||
"value": 50.0,
|
||||
"suffix": "None"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"callee": {
|
||||
@ -248,7 +421,131 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
"start": 0,
|
||||
"type": "CallExpressionKw",
|
||||
"type": "CallExpressionKw",
|
||||
"unlabeled": null
|
||||
"unlabeled": {
|
||||
"abs_path": false,
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "red",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"path": [],
|
||||
"start": 0,
|
||||
"type": "Name",
|
||||
"type": "Name"
|
||||
}
|
||||
},
|
||||
"start": 0,
|
||||
"type": "ExpressionStatement",
|
||||
"type": "ExpressionStatement"
|
||||
},
|
||||
{
|
||||
"commentStart": 0,
|
||||
"declaration": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"id": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "green",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"init": {
|
||||
"body": [
|
||||
{
|
||||
"callee": {
|
||||
"abs_path": false,
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "clone",
|
||||
"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": "yellow",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"path": [],
|
||||
"start": 0,
|
||||
"type": "Name",
|
||||
"type": "Name"
|
||||
}
|
||||
},
|
||||
{
|
||||
"arguments": [
|
||||
{
|
||||
"type": "LabeledArg",
|
||||
"label": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "y",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"arg": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"raw": "4000",
|
||||
"start": 0,
|
||||
"type": "Literal",
|
||||
"type": "Literal",
|
||||
"value": {
|
||||
"value": 4000.0,
|
||||
"suffix": "None"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"callee": {
|
||||
"abs_path": false,
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "translate",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"path": [],
|
||||
"start": 0,
|
||||
"type": "Name"
|
||||
},
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "CallExpressionKw",
|
||||
"type": "CallExpressionKw",
|
||||
"unlabeled": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "PipeSubstitution",
|
||||
"type": "PipeSubstitution"
|
||||
}
|
||||
}
|
||||
],
|
||||
"commentStart": 0,
|
||||
@ -265,6 +562,259 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
"start": 0,
|
||||
"type": "VariableDeclaration",
|
||||
"type": "VariableDeclaration"
|
||||
},
|
||||
{
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"expression": {
|
||||
"arguments": [
|
||||
{
|
||||
"type": "LabeledArg",
|
||||
"label": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "color",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"arg": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"raw": "\"#00ff00\"",
|
||||
"start": 0,
|
||||
"type": "Literal",
|
||||
"type": "Literal",
|
||||
"value": "#00ff00"
|
||||
}
|
||||
}
|
||||
],
|
||||
"callee": {
|
||||
"abs_path": false,
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "appearance",
|
||||
"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": "green",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"path": [],
|
||||
"start": 0,
|
||||
"type": "Name",
|
||||
"type": "Name"
|
||||
}
|
||||
},
|
||||
"start": 0,
|
||||
"type": "ExpressionStatement",
|
||||
"type": "ExpressionStatement"
|
||||
},
|
||||
{
|
||||
"commentStart": 0,
|
||||
"declaration": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"id": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "blue",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"init": {
|
||||
"body": [
|
||||
{
|
||||
"callee": {
|
||||
"abs_path": false,
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "clone",
|
||||
"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": "red",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"path": [],
|
||||
"start": 0,
|
||||
"type": "Name",
|
||||
"type": "Name"
|
||||
}
|
||||
},
|
||||
{
|
||||
"arguments": [
|
||||
{
|
||||
"type": "LabeledArg",
|
||||
"label": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "y",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"arg": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"raw": "4000",
|
||||
"start": 0,
|
||||
"type": "Literal",
|
||||
"type": "Literal",
|
||||
"value": {
|
||||
"value": 4000.0,
|
||||
"suffix": "None"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"callee": {
|
||||
"abs_path": false,
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "translate",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"path": [],
|
||||
"start": 0,
|
||||
"type": "Name"
|
||||
},
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "CallExpressionKw",
|
||||
"type": "CallExpressionKw",
|
||||
"unlabeled": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "PipeSubstitution",
|
||||
"type": "PipeSubstitution"
|
||||
}
|
||||
}
|
||||
],
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "PipeExpression",
|
||||
"type": "PipeExpression"
|
||||
},
|
||||
"start": 0,
|
||||
"type": "VariableDeclarator"
|
||||
},
|
||||
"end": 0,
|
||||
"kind": "const",
|
||||
"start": 0,
|
||||
"type": "VariableDeclaration",
|
||||
"type": "VariableDeclaration"
|
||||
},
|
||||
{
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"expression": {
|
||||
"arguments": [
|
||||
{
|
||||
"type": "LabeledArg",
|
||||
"label": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "color",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"arg": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"raw": "\"#0000ff\"",
|
||||
"start": 0,
|
||||
"type": "Literal",
|
||||
"type": "Literal",
|
||||
"value": "#0000ff"
|
||||
}
|
||||
}
|
||||
],
|
||||
"callee": {
|
||||
"abs_path": false,
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": {
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"name": "appearance",
|
||||
"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": "blue",
|
||||
"start": 0,
|
||||
"type": "Identifier"
|
||||
},
|
||||
"path": [],
|
||||
"start": 0,
|
||||
"type": "Name",
|
||||
"type": "Name"
|
||||
}
|
||||
},
|
||||
"start": 0,
|
||||
"type": "ExpressionStatement",
|
||||
"type": "ExpressionStatement"
|
||||
}
|
||||
],
|
||||
"commentStart": 0,
|
||||
@ -282,7 +832,29 @@ description: Result of parsing import_mesh_clone.kcl
|
||||
}
|
||||
}
|
||||
],
|
||||
"1": [
|
||||
"2": [
|
||||
{
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "NonCodeNode",
|
||||
"value": {
|
||||
"type": "newLine"
|
||||
}
|
||||
}
|
||||
],
|
||||
"4": [
|
||||
{
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
"start": 0,
|
||||
"type": "NonCodeNode",
|
||||
"value": {
|
||||
"type": "newLine"
|
||||
}
|
||||
}
|
||||
],
|
||||
"6": [
|
||||
{
|
||||
"commentStart": 0,
|
||||
"end": 0,
|
||||
|
@ -1,10 +0,0 @@
|
||||
---
|
||||
source: kcl-lib/src/simulation_tests.rs
|
||||
description: Error from executing import_mesh_clone.kcl
|
||||
---
|
||||
KCL Engine error
|
||||
|
||||
× engine: Modeling command failed: websocket closed early
|
||||
╭────
|
||||
13 │ )
|
||||
╰────
|
@ -1,13 +1,18 @@
|
||||
import "../inputs/cube.obj" as cube
|
||||
@(lengthUnit = m)
|
||||
import "../inputs/cube.obj" as yellow
|
||||
|
||||
model = cube
|
||||
yellow
|
||||
|> translate(%, x = -2000, y = -2000)
|
||||
appearance(yellow, color = "#ffff00")
|
||||
|
||||
model2 = clone(model)
|
||||
|> translate(
|
||||
x = 1020,
|
||||
)
|
||||
|> appearance(
|
||||
color = "#ff0000",
|
||||
metalness = 50,
|
||||
roughness = 50
|
||||
)
|
||||
red = clone(yellow)
|
||||
|> translate(%, x = 4000)
|
||||
appearance(red, color = "#ff0000")
|
||||
|
||||
green = clone(yellow)
|
||||
|> translate(%, y = 4000)
|
||||
appearance(green, color = "#00ff00")
|
||||
|
||||
blue = clone(red)
|
||||
|> translate(%, y = 4000)
|
||||
appearance(blue, color = "#0000ff")
|
||||
|
@ -25,6 +25,32 @@ description: Operations executed import_mesh_clone.kcl
|
||||
"labeledArgs": {},
|
||||
"sourceRange": []
|
||||
},
|
||||
{
|
||||
"type": "KclStdLibCall",
|
||||
"name": "clone",
|
||||
"unlabeledArg": {
|
||||
"value": {
|
||||
"type": "ImportedGeometry",
|
||||
"artifact_id": "[uuid]"
|
||||
},
|
||||
"sourceRange": []
|
||||
},
|
||||
"labeledArgs": {},
|
||||
"sourceRange": []
|
||||
},
|
||||
{
|
||||
"type": "KclStdLibCall",
|
||||
"name": "clone",
|
||||
"unlabeledArg": {
|
||||
"value": {
|
||||
"type": "ImportedGeometry",
|
||||
"artifact_id": "[uuid]"
|
||||
},
|
||||
"sourceRange": []
|
||||
},
|
||||
"labeledArgs": {},
|
||||
"sourceRange": []
|
||||
},
|
||||
{
|
||||
"type": "GroupEnd"
|
||||
}
|
||||
|
31
rust/kcl-lib/tests/import_mesh_clone/program_memory.snap
Normal file
31
rust/kcl-lib/tests/import_mesh_clone/program_memory.snap
Normal file
@ -0,0 +1,31 @@
|
||||
---
|
||||
source: kcl-lib/src/simulation_tests.rs
|
||||
description: Variables in memory after executing import_mesh_clone.kcl
|
||||
---
|
||||
{
|
||||
"blue": {
|
||||
"type": "ImportedGeometry",
|
||||
"id": "[uuid]",
|
||||
"value": [
|
||||
"cube.obj"
|
||||
]
|
||||
},
|
||||
"green": {
|
||||
"type": "ImportedGeometry",
|
||||
"id": "[uuid]",
|
||||
"value": [
|
||||
"cube.obj"
|
||||
]
|
||||
},
|
||||
"red": {
|
||||
"type": "ImportedGeometry",
|
||||
"id": "[uuid]",
|
||||
"value": [
|
||||
"cube.obj"
|
||||
]
|
||||
},
|
||||
"yellow": {
|
||||
"type": "Module",
|
||||
"value": 1
|
||||
}
|
||||
}
|
BIN
rust/kcl-lib/tests/import_mesh_clone/rendered_model.png
Normal file
BIN
rust/kcl-lib/tests/import_mesh_clone/rendered_model.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 59 KiB |
@ -2,10 +2,21 @@
|
||||
source: kcl-lib/src/simulation_tests.rs
|
||||
description: Result of unparsing import_mesh_clone.kcl
|
||||
---
|
||||
import "../inputs/cube.obj" as cube
|
||||
@(lengthUnit = m)
|
||||
import "../inputs/cube.obj" as yellow
|
||||
|
||||
model = cube
|
||||
yellow
|
||||
|> translate(%, x = -2000, y = -2000)
|
||||
appearance(yellow, color = "#ffff00")
|
||||
|
||||
model2 = clone(model)
|
||||
|> translate(x = 1020)
|
||||
|> appearance(color = "#ff0000", metalness = 50, roughness = 50)
|
||||
red = clone(yellow)
|
||||
|> translate(%, x = 4000)
|
||||
appearance(red, color = "#ff0000")
|
||||
|
||||
green = clone(yellow)
|
||||
|> translate(%, y = 4000)
|
||||
appearance(green, color = "#00ff00")
|
||||
|
||||
blue = clone(red)
|
||||
|> translate(%, y = 4000)
|
||||
appearance(blue, color = "#0000ff")
|
||||
|
@ -12,8 +12,11 @@ flowchart LR
|
||||
5["Sweep Extrusion<br>[124, 144, 1]"]
|
||||
%% Missing NodePath
|
||||
6[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
7["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
8["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
9["SweepEdge Opposite"]
|
||||
10["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
|
@ -12,8 +12,11 @@ flowchart LR
|
||||
5["Sweep Extrusion<br>[143, 163, 1]"]
|
||||
%% Missing NodePath
|
||||
6[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
7["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
8["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
9["SweepEdge Opposite"]
|
||||
10["SweepEdge Adjacent"]
|
||||
1 --- 2
|
||||
|
@ -2,37 +2,64 @@
|
||||
flowchart LR
|
||||
subgraph path3 [Path]
|
||||
3["Path<br>[58, 113, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 1 }]
|
||||
6["Segment<br>[121, 177, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 2 }]
|
||||
8["Segment<br>[185, 241, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 3 }]
|
||||
9["Segment<br>[249, 305, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 4 }]
|
||||
12["Segment<br>[313, 320, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 5 }]
|
||||
13[Solid2d]
|
||||
end
|
||||
subgraph path4 [Path]
|
||||
4["Path<br>[58, 113, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 1 }]
|
||||
5["Segment<br>[121, 177, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 2 }]
|
||||
7["Segment<br>[185, 241, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 3 }]
|
||||
10["Segment<br>[249, 305, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 4 }]
|
||||
11["Segment<br>[313, 320, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 5 }]
|
||||
14[Solid2d]
|
||||
end
|
||||
1["Plane<br>[33, 50, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 0 }]
|
||||
2["Plane<br>[33, 50, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 0 }]
|
||||
15["Sweep Extrusion<br>[328, 354, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 6 }]
|
||||
16["Sweep Extrusion<br>[328, 354, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 6 }]
|
||||
17["CompositeSolid Intersect<br>[480, 509, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
18[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
19[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
20[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
21[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
22[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
23[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
24[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
25[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
26["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
27["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
28["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
29["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
30["SweepEdge Opposite"]
|
||||
31["SweepEdge Opposite"]
|
||||
32["SweepEdge Opposite"]
|
||||
|
@ -31,13 +31,21 @@ flowchart LR
|
||||
14["Sweep Extrusion<br>[1230, 1258, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 11 }]
|
||||
15[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
16[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
17[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
18[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
19[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
20[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
21["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
22["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
23["SweepEdge Opposite"]
|
||||
24["SweepEdge Opposite"]
|
||||
25["SweepEdge Opposite"]
|
||||
|
@ -147,71 +147,137 @@ flowchart LR
|
||||
72["Sweep Extrusion<br>[5086, 5114, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 68 }]
|
||||
73[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
74[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
75[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
76[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
77[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
78[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
79[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
80[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
81[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
82[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
83[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
84[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
85[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
86[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
87[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
88[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
89[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
90[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
91[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
92[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
93[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
94[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
95[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
96[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
97[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
98[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
99[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
100[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
101[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
102[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
103[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
104[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
105[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
106[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
107[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
108[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
109[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
110[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
111[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
112[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
113[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
114[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
115[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
116[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
117[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
118[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
119[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
120[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
121[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
122[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
123[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
124[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
125[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
126[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
127[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
128[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
129[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
130[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
131[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
132[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
133[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
134[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
135[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
136[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
137["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
138["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
139["SweepEdge Opposite"]
|
||||
140["SweepEdge Opposite"]
|
||||
141["SweepEdge Opposite"]
|
||||
|
@ -2,239 +2,406 @@
|
||||
flowchart LR
|
||||
subgraph path8 [Path]
|
||||
8["Path<br>[341, 388, 1]"]
|
||||
%% Missing NodePath
|
||||
31["Segment<br>[394, 462, 1]"]
|
||||
%% Missing NodePath
|
||||
32["Segment<br>[468, 568, 1]"]
|
||||
%% Missing NodePath
|
||||
33["Segment<br>[574, 691, 1]"]
|
||||
%% Missing NodePath
|
||||
34["Segment<br>[697, 782, 1]"]
|
||||
%% Missing NodePath
|
||||
35["Segment<br>[788, 795, 1]"]
|
||||
%% Missing NodePath
|
||||
105[Solid2d]
|
||||
end
|
||||
subgraph path9 [Path]
|
||||
9["Path<br>[819, 854, 1]"]
|
||||
%% Missing NodePath
|
||||
36["Segment<br>[819, 854, 1]"]
|
||||
%% Missing NodePath
|
||||
100[Solid2d]
|
||||
end
|
||||
subgraph path10 [Path]
|
||||
10["Path<br>[879, 1026, 1]"]
|
||||
%% Missing NodePath
|
||||
37["Segment<br>[879, 1026, 1]"]
|
||||
%% Missing NodePath
|
||||
114[Solid2d]
|
||||
end
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[1051, 1199, 1]"]
|
||||
%% Missing NodePath
|
||||
38["Segment<br>[1051, 1199, 1]"]
|
||||
%% Missing NodePath
|
||||
104[Solid2d]
|
||||
end
|
||||
subgraph path12 [Path]
|
||||
12["Path<br>[1224, 1372, 1]"]
|
||||
%% Missing NodePath
|
||||
39["Segment<br>[1224, 1372, 1]"]
|
||||
%% Missing NodePath
|
||||
110[Solid2d]
|
||||
end
|
||||
subgraph path13 [Path]
|
||||
13["Path<br>[1397, 1546, 1]"]
|
||||
%% Missing NodePath
|
||||
40["Segment<br>[1397, 1546, 1]"]
|
||||
%% Missing NodePath
|
||||
115[Solid2d]
|
||||
end
|
||||
subgraph path14 [Path]
|
||||
14["Path<br>[1714, 1770, 1]"]
|
||||
%% Missing NodePath
|
||||
41["Segment<br>[1776, 1841, 1]"]
|
||||
%% Missing NodePath
|
||||
42["Segment<br>[1847, 1899, 1]"]
|
||||
%% Missing NodePath
|
||||
43["Segment<br>[1905, 1956, 1]"]
|
||||
%% Missing NodePath
|
||||
44["Segment<br>[1962, 2014, 1]"]
|
||||
%% Missing NodePath
|
||||
45["Segment<br>[2020, 2086, 1]"]
|
||||
%% Missing NodePath
|
||||
46["Segment<br>[2092, 2144, 1]"]
|
||||
%% Missing NodePath
|
||||
47["Segment<br>[2150, 2182, 1]"]
|
||||
%% Missing NodePath
|
||||
48["Segment<br>[2188, 2253, 1]"]
|
||||
%% Missing NodePath
|
||||
49["Segment<br>[2259, 2266, 1]"]
|
||||
%% Missing NodePath
|
||||
101[Solid2d]
|
||||
end
|
||||
subgraph path15 [Path]
|
||||
15["Path<br>[2615, 2728, 1]"]
|
||||
%% Missing NodePath
|
||||
50["Segment<br>[2734, 2789, 1]"]
|
||||
%% Missing NodePath
|
||||
51["Segment<br>[2795, 2830, 1]"]
|
||||
%% Missing NodePath
|
||||
52["Segment<br>[2836, 2891, 1]"]
|
||||
%% Missing NodePath
|
||||
53["Segment<br>[2897, 2933, 1]"]
|
||||
%% Missing NodePath
|
||||
54["Segment<br>[2939, 2994, 1]"]
|
||||
%% Missing NodePath
|
||||
55["Segment<br>[3000, 3036, 1]"]
|
||||
%% Missing NodePath
|
||||
56["Segment<br>[3042, 3097, 1]"]
|
||||
%% Missing NodePath
|
||||
57["Segment<br>[3103, 3159, 1]"]
|
||||
%% Missing NodePath
|
||||
end
|
||||
subgraph path16 [Path]
|
||||
16["Path<br>[3308, 3359, 1]"]
|
||||
%% Missing NodePath
|
||||
58["Segment<br>[3308, 3359, 1]"]
|
||||
%% Missing NodePath
|
||||
113[Solid2d]
|
||||
end
|
||||
subgraph path17 [Path]
|
||||
17["Path<br>[3538, 3600, 1]"]
|
||||
%% Missing NodePath
|
||||
59["Segment<br>[3606, 3674, 1]"]
|
||||
%% Missing NodePath
|
||||
60["Segment<br>[3680, 3780, 1]"]
|
||||
%% Missing NodePath
|
||||
61["Segment<br>[3786, 3903, 1]"]
|
||||
%% Missing NodePath
|
||||
62["Segment<br>[3909, 3994, 1]"]
|
||||
%% Missing NodePath
|
||||
63["Segment<br>[4000, 4007, 1]"]
|
||||
%% Missing NodePath
|
||||
107[Solid2d]
|
||||
end
|
||||
subgraph path18 [Path]
|
||||
18["Path<br>[4031, 4082, 1]"]
|
||||
%% Missing NodePath
|
||||
64["Segment<br>[4031, 4082, 1]"]
|
||||
%% Missing NodePath
|
||||
99[Solid2d]
|
||||
end
|
||||
subgraph path19 [Path]
|
||||
19["Path<br>[4107, 4254, 1]"]
|
||||
%% Missing NodePath
|
||||
65["Segment<br>[4107, 4254, 1]"]
|
||||
%% Missing NodePath
|
||||
108[Solid2d]
|
||||
end
|
||||
subgraph path20 [Path]
|
||||
20["Path<br>[4279, 4427, 1]"]
|
||||
%% Missing NodePath
|
||||
66["Segment<br>[4279, 4427, 1]"]
|
||||
%% Missing NodePath
|
||||
106[Solid2d]
|
||||
end
|
||||
subgraph path21 [Path]
|
||||
21["Path<br>[4452, 4600, 1]"]
|
||||
%% Missing NodePath
|
||||
67["Segment<br>[4452, 4600, 1]"]
|
||||
%% Missing NodePath
|
||||
103[Solid2d]
|
||||
end
|
||||
subgraph path22 [Path]
|
||||
22["Path<br>[4625, 4774, 1]"]
|
||||
%% Missing NodePath
|
||||
68["Segment<br>[4625, 4774, 1]"]
|
||||
%% Missing NodePath
|
||||
98[Solid2d]
|
||||
end
|
||||
subgraph path23 [Path]
|
||||
23["Path<br>[4916, 4954, 1]"]
|
||||
%% Missing NodePath
|
||||
69["Segment<br>[4916, 4954, 1]"]
|
||||
%% Missing NodePath
|
||||
118[Solid2d]
|
||||
end
|
||||
subgraph path24 [Path]
|
||||
24["Path<br>[5027, 5063, 1]"]
|
||||
%% Missing NodePath
|
||||
70["Segment<br>[5027, 5063, 1]"]
|
||||
%% Missing NodePath
|
||||
111[Solid2d]
|
||||
end
|
||||
subgraph path25 [Path]
|
||||
25["Path<br>[295, 345, 3]"]
|
||||
%% Missing NodePath
|
||||
71["Segment<br>[295, 345, 3]"]
|
||||
%% Missing NodePath
|
||||
102[Solid2d]
|
||||
end
|
||||
subgraph path26 [Path]
|
||||
26["Path<br>[520, 555, 3]"]
|
||||
%% Missing NodePath
|
||||
72["Segment<br>[520, 555, 3]"]
|
||||
%% Missing NodePath
|
||||
112[Solid2d]
|
||||
end
|
||||
subgraph path27 [Path]
|
||||
27["Path<br>[234, 273, 4]"]
|
||||
%% Missing NodePath
|
||||
73["Segment<br>[279, 309, 4]"]
|
||||
%% Missing NodePath
|
||||
74["Segment<br>[315, 354, 4]"]
|
||||
%% Missing NodePath
|
||||
75["Segment<br>[360, 384, 4]"]
|
||||
%% Missing NodePath
|
||||
76["Segment<br>[390, 414, 4]"]
|
||||
%% Missing NodePath
|
||||
77["Segment<br>[420, 461, 4]"]
|
||||
%% Missing NodePath
|
||||
78["Segment<br>[467, 505, 4]"]
|
||||
%% Missing NodePath
|
||||
79["Segment<br>[511, 534, 4]"]
|
||||
%% Missing NodePath
|
||||
80["Segment<br>[540, 557, 4]"]
|
||||
%% Missing NodePath
|
||||
81["Segment<br>[563, 584, 4]"]
|
||||
%% Missing NodePath
|
||||
82["Segment<br>[590, 677, 4]"]
|
||||
%% Missing NodePath
|
||||
83["Segment<br>[683, 720, 4]"]
|
||||
%% Missing NodePath
|
||||
84["Segment<br>[726, 763, 4]"]
|
||||
%% Missing NodePath
|
||||
85["Segment<br>[769, 776, 4]"]
|
||||
%% Missing NodePath
|
||||
109[Solid2d]
|
||||
end
|
||||
subgraph path28 [Path]
|
||||
28["Path<br>[1131, 1221, 4]"]
|
||||
%% Missing NodePath
|
||||
87["Segment<br>[1229, 1298, 4]"]
|
||||
%% Missing NodePath
|
||||
89["Segment<br>[1306, 1606, 4]"]
|
||||
%% Missing NodePath
|
||||
91["Segment<br>[1614, 1916, 4]"]
|
||||
%% Missing NodePath
|
||||
93["Segment<br>[1924, 2143, 4]"]
|
||||
%% Missing NodePath
|
||||
94["Segment<br>[2151, 2158, 4]"]
|
||||
%% Missing NodePath
|
||||
97[Solid2d]
|
||||
end
|
||||
subgraph path29 [Path]
|
||||
29["Path<br>[1131, 1221, 4]"]
|
||||
%% Missing NodePath
|
||||
96["Segment<br>[2151, 2158, 4]"]
|
||||
%% Missing NodePath
|
||||
116[Solid2d]
|
||||
end
|
||||
subgraph path30 [Path]
|
||||
30["Path<br>[1131, 1221, 4]"]
|
||||
%% Missing NodePath
|
||||
86["Segment<br>[1229, 1298, 4]"]
|
||||
%% Missing NodePath
|
||||
88["Segment<br>[1306, 1606, 4]"]
|
||||
%% Missing NodePath
|
||||
90["Segment<br>[1614, 1916, 4]"]
|
||||
%% Missing NodePath
|
||||
92["Segment<br>[1924, 2143, 4]"]
|
||||
%% Missing NodePath
|
||||
95["Segment<br>[2151, 2158, 4]"]
|
||||
%% Missing NodePath
|
||||
117[Solid2d]
|
||||
end
|
||||
1["Plane<br>[318, 335, 1]"]
|
||||
%% Missing NodePath
|
||||
2["Plane<br>[222, 249, 3]"]
|
||||
%% Missing NodePath
|
||||
3["Plane<br>[485, 513, 3]"]
|
||||
%% Missing NodePath
|
||||
4["Plane<br>[211, 228, 4]"]
|
||||
%% Missing NodePath
|
||||
5["Plane<br>[1084, 1122, 4]"]
|
||||
%% Missing NodePath
|
||||
6["Plane<br>[1084, 1122, 4]"]
|
||||
%% Missing NodePath
|
||||
7["Plane<br>[1084, 1122, 4]"]
|
||||
%% Missing NodePath
|
||||
119["Sweep Extrusion<br>[1553, 1572, 1]"]
|
||||
%% Missing NodePath
|
||||
120["Sweep Extrusion<br>[2406, 2426, 1]"]
|
||||
%% Missing NodePath
|
||||
121["Sweep Extrusion<br>[2406, 2426, 1]"]
|
||||
%% Missing NodePath
|
||||
122["Sweep Extrusion<br>[2406, 2426, 1]"]
|
||||
%% Missing NodePath
|
||||
123["Sweep Extrusion<br>[2406, 2426, 1]"]
|
||||
%% Missing NodePath
|
||||
124["Sweep Extrusion<br>[3165, 3200, 1]"]
|
||||
%% Missing NodePath
|
||||
125["Sweep Extrusion<br>[3365, 3403, 1]"]
|
||||
%% Missing NodePath
|
||||
126["Sweep Extrusion<br>[4781, 4800, 1]"]
|
||||
%% Missing NodePath
|
||||
127["Sweep Extrusion<br>[4960, 4980, 1]"]
|
||||
%% Missing NodePath
|
||||
128["Sweep Extrusion<br>[5069, 5090, 1]"]
|
||||
%% Missing NodePath
|
||||
129["Sweep Extrusion<br>[351, 371, 3]"]
|
||||
%% Missing NodePath
|
||||
130["Sweep Extrusion<br>[561, 582, 3]"]
|
||||
%% Missing NodePath
|
||||
131["Sweep Revolve<br>[782, 864, 4]"]
|
||||
%% Missing NodePath
|
||||
132["Sweep Loft<br>[2472, 2491, 4]"]
|
||||
%% Missing NodePath
|
||||
133[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
134[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
135[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
136[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
137[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
138[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
139[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
140[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
141[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
142[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
143[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
144[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
145[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
146[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
147[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
148[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
149[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
150[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
151[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
152[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
153[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
154[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
155[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
156[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
157[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
158[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
159[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
160[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
161[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
162[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
163[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
164[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
165[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
166[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
167[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
168[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
169[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
170[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
171[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
172[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
173[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
174[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
175[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
176[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
177[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
178["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
179["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
180["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
181["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
182["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
183["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
184["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
185["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
186["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
187["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
188["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
189["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
190["SweepEdge Opposite"]
|
||||
191["SweepEdge Opposite"]
|
||||
192["SweepEdge Opposite"]
|
||||
@ -313,15 +480,25 @@ flowchart LR
|
||||
265["SweepEdge Adjacent"]
|
||||
266["SweepEdge Adjacent"]
|
||||
267["EdgeCut Fillet<br>[5131, 5642, 1]"]
|
||||
%% Missing NodePath
|
||||
268["EdgeCut Fillet<br>[5131, 5642, 1]"]
|
||||
%% Missing NodePath
|
||||
269["EdgeCut Fillet<br>[5131, 5642, 1]"]
|
||||
%% Missing NodePath
|
||||
270["EdgeCut Fillet<br>[5131, 5642, 1]"]
|
||||
%% Missing NodePath
|
||||
271["EdgeCut Fillet<br>[5131, 5642, 1]"]
|
||||
%% Missing NodePath
|
||||
272["EdgeCut Fillet<br>[5131, 5642, 1]"]
|
||||
%% Missing NodePath
|
||||
273["EdgeCut Fillet<br>[5131, 5642, 1]"]
|
||||
%% Missing NodePath
|
||||
274["EdgeCut Fillet<br>[5131, 5642, 1]"]
|
||||
%% Missing NodePath
|
||||
275["EdgeCut Fillet<br>[412, 470, 3]"]
|
||||
%% Missing NodePath
|
||||
276["EdgeCut Fillet<br>[412, 470, 3]"]
|
||||
%% Missing NodePath
|
||||
1 --- 8
|
||||
1 --- 9
|
||||
1 --- 10
|
||||
|
@ -2,70 +2,115 @@
|
||||
flowchart LR
|
||||
subgraph path8 [Path]
|
||||
8["Path<br>[682, 744, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
15["Segment<br>[682, 744, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
32[Solid2d]
|
||||
end
|
||||
subgraph path9 [Path]
|
||||
9["Path<br>[768, 814, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
16["Segment<br>[768, 814, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
31[Solid2d]
|
||||
end
|
||||
subgraph path10 [Path]
|
||||
10["Path<br>[998, 1054, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
17["Segment<br>[1060, 1119, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
18["Segment<br>[1125, 1132, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
29[Solid2d]
|
||||
end
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[1502, 1624, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
19["Segment<br>[1630, 1690, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
20["Segment<br>[1696, 1727, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
21["Segment<br>[1733, 1761, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
22["Segment<br>[1767, 1774, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
27[Solid2d]
|
||||
end
|
||||
subgraph path12 [Path]
|
||||
12["Path<br>[2108, 2250, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
23["Segment<br>[2108, 2250, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
28[Solid2d]
|
||||
end
|
||||
subgraph path13 [Path]
|
||||
13["Path<br>[2644, 2697, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
24["Segment<br>[2644, 2697, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
30[Solid2d]
|
||||
end
|
||||
subgraph path14 [Path]
|
||||
14["Path<br>[2721, 2795, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
25["Segment<br>[2721, 2795, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
26[Solid2d]
|
||||
end
|
||||
1["Plane<br>[628, 675, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }, CallKwUnlabeledArg]
|
||||
2["Plane<br>[975, 992, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
3["Plane<br>[1479, 1496, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
4["Plane<br>[2085, 2102, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
5["Plane<br>[2590, 2637, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }, CallKwUnlabeledArg]
|
||||
6["StartSketchOnPlane<br>[614, 676, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
7["StartSketchOnPlane<br>[2576, 2638, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
33["Sweep Extrusion<br>[866, 918, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
34["Sweep Revolve<br>[1214, 1244, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
35["Sweep Revolve<br>[1816, 1846, 0]"]
|
||||
%% [ProgramBodyItem { index: 15 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
36["Sweep Revolve<br>[2293, 2344, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
37["Sweep Extrusion<br>[2812, 2865, 0]"]
|
||||
%% [ProgramBodyItem { index: 19 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
38[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
39[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
40[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
41[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
42[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
43[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
44[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
45[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
46[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
47["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
48["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
49["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
50["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
51["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
52["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
53["SweepEdge Opposite"]
|
||||
54["SweepEdge Opposite"]
|
||||
55["SweepEdge Opposite"]
|
||||
|
@ -2,456 +2,864 @@
|
||||
flowchart LR
|
||||
subgraph path24 [Path]
|
||||
24["Path<br>[380, 413, 1]"]
|
||||
%% Missing NodePath
|
||||
42["Segment<br>[421, 447, 1]"]
|
||||
%% Missing NodePath
|
||||
50["Segment<br>[455, 517, 1]"]
|
||||
%% Missing NodePath
|
||||
55["Segment<br>[525, 587, 1]"]
|
||||
%% Missing NodePath
|
||||
63["Segment<br>[595, 658, 1]"]
|
||||
%% Missing NodePath
|
||||
64["Segment<br>[666, 691, 1]"]
|
||||
%% Missing NodePath
|
||||
70["Segment<br>[699, 719, 1]"]
|
||||
%% Missing NodePath
|
||||
77["Segment<br>[727, 751, 1]"]
|
||||
%% Missing NodePath
|
||||
83["Segment<br>[759, 821, 1]"]
|
||||
%% Missing NodePath
|
||||
89["Segment<br>[829, 854, 1]"]
|
||||
%% Missing NodePath
|
||||
96["Segment<br>[862, 882, 1]"]
|
||||
%% Missing NodePath
|
||||
102["Segment<br>[890, 914, 1]"]
|
||||
%% Missing NodePath
|
||||
106["Segment<br>[922, 983, 1]"]
|
||||
%% Missing NodePath
|
||||
112["Segment<br>[991, 1052, 1]"]
|
||||
%% Missing NodePath
|
||||
118["Segment<br>[1060, 1085, 1]"]
|
||||
%% Missing NodePath
|
||||
125["Segment<br>[1093, 1117, 1]"]
|
||||
%% Missing NodePath
|
||||
132["Segment<br>[1125, 1187, 1]"]
|
||||
%% Missing NodePath
|
||||
139["Segment<br>[1195, 1220, 1]"]
|
||||
%% Missing NodePath
|
||||
146["Segment<br>[1228, 1255, 1]"]
|
||||
%% Missing NodePath
|
||||
152["Segment<br>[1263, 1324, 1]"]
|
||||
%% Missing NodePath
|
||||
157["Segment<br>[1332, 1376, 1]"]
|
||||
%% Missing NodePath
|
||||
162["Segment<br>[1384, 1391, 1]"]
|
||||
%% Missing NodePath
|
||||
213[Solid2d]
|
||||
end
|
||||
subgraph path25 [Path]
|
||||
25["Path<br>[380, 413, 1]"]
|
||||
%% Missing NodePath
|
||||
40["Segment<br>[421, 447, 1]"]
|
||||
%% Missing NodePath
|
||||
51["Segment<br>[455, 517, 1]"]
|
||||
%% Missing NodePath
|
||||
57["Segment<br>[525, 587, 1]"]
|
||||
%% Missing NodePath
|
||||
58["Segment<br>[595, 658, 1]"]
|
||||
%% Missing NodePath
|
||||
69["Segment<br>[666, 691, 1]"]
|
||||
%% Missing NodePath
|
||||
75["Segment<br>[699, 719, 1]"]
|
||||
%% Missing NodePath
|
||||
80["Segment<br>[727, 751, 1]"]
|
||||
%% Missing NodePath
|
||||
82["Segment<br>[759, 821, 1]"]
|
||||
%% Missing NodePath
|
||||
90["Segment<br>[829, 854, 1]"]
|
||||
%% Missing NodePath
|
||||
97["Segment<br>[862, 882, 1]"]
|
||||
%% Missing NodePath
|
||||
103["Segment<br>[890, 914, 1]"]
|
||||
%% Missing NodePath
|
||||
108["Segment<br>[922, 983, 1]"]
|
||||
%% Missing NodePath
|
||||
114["Segment<br>[991, 1052, 1]"]
|
||||
%% Missing NodePath
|
||||
121["Segment<br>[1060, 1085, 1]"]
|
||||
%% Missing NodePath
|
||||
129["Segment<br>[1093, 1117, 1]"]
|
||||
%% Missing NodePath
|
||||
133["Segment<br>[1125, 1187, 1]"]
|
||||
%% Missing NodePath
|
||||
140["Segment<br>[1195, 1220, 1]"]
|
||||
%% Missing NodePath
|
||||
143["Segment<br>[1228, 1255, 1]"]
|
||||
%% Missing NodePath
|
||||
150["Segment<br>[1263, 1324, 1]"]
|
||||
%% Missing NodePath
|
||||
154["Segment<br>[1332, 1376, 1]"]
|
||||
%% Missing NodePath
|
||||
163["Segment<br>[1384, 1391, 1]"]
|
||||
%% Missing NodePath
|
||||
214[Solid2d]
|
||||
end
|
||||
subgraph path26 [Path]
|
||||
26["Path<br>[380, 413, 1]"]
|
||||
%% Missing NodePath
|
||||
44["Segment<br>[421, 447, 1]"]
|
||||
%% Missing NodePath
|
||||
48["Segment<br>[455, 517, 1]"]
|
||||
%% Missing NodePath
|
||||
53["Segment<br>[525, 587, 1]"]
|
||||
%% Missing NodePath
|
||||
61["Segment<br>[595, 658, 1]"]
|
||||
%% Missing NodePath
|
||||
66["Segment<br>[666, 691, 1]"]
|
||||
%% Missing NodePath
|
||||
73["Segment<br>[699, 719, 1]"]
|
||||
%% Missing NodePath
|
||||
81["Segment<br>[727, 751, 1]"]
|
||||
%% Missing NodePath
|
||||
87["Segment<br>[759, 821, 1]"]
|
||||
%% Missing NodePath
|
||||
92["Segment<br>[829, 854, 1]"]
|
||||
%% Missing NodePath
|
||||
95["Segment<br>[862, 882, 1]"]
|
||||
%% Missing NodePath
|
||||
101["Segment<br>[890, 914, 1]"]
|
||||
%% Missing NodePath
|
||||
111["Segment<br>[922, 983, 1]"]
|
||||
%% Missing NodePath
|
||||
117["Segment<br>[991, 1052, 1]"]
|
||||
%% Missing NodePath
|
||||
119["Segment<br>[1060, 1085, 1]"]
|
||||
%% Missing NodePath
|
||||
124["Segment<br>[1093, 1117, 1]"]
|
||||
%% Missing NodePath
|
||||
135["Segment<br>[1125, 1187, 1]"]
|
||||
%% Missing NodePath
|
||||
137["Segment<br>[1195, 1220, 1]"]
|
||||
%% Missing NodePath
|
||||
147["Segment<br>[1228, 1255, 1]"]
|
||||
%% Missing NodePath
|
||||
148["Segment<br>[1263, 1324, 1]"]
|
||||
%% Missing NodePath
|
||||
159["Segment<br>[1332, 1376, 1]"]
|
||||
%% Missing NodePath
|
||||
164["Segment<br>[1384, 1391, 1]"]
|
||||
%% Missing NodePath
|
||||
218[Solid2d]
|
||||
end
|
||||
subgraph path27 [Path]
|
||||
27["Path<br>[380, 413, 1]"]
|
||||
%% Missing NodePath
|
||||
43["Segment<br>[421, 447, 1]"]
|
||||
%% Missing NodePath
|
||||
47["Segment<br>[455, 517, 1]"]
|
||||
%% Missing NodePath
|
||||
56["Segment<br>[525, 587, 1]"]
|
||||
%% Missing NodePath
|
||||
59["Segment<br>[595, 658, 1]"]
|
||||
%% Missing NodePath
|
||||
65["Segment<br>[666, 691, 1]"]
|
||||
%% Missing NodePath
|
||||
71["Segment<br>[699, 719, 1]"]
|
||||
%% Missing NodePath
|
||||
76["Segment<br>[727, 751, 1]"]
|
||||
%% Missing NodePath
|
||||
86["Segment<br>[759, 821, 1]"]
|
||||
%% Missing NodePath
|
||||
91["Segment<br>[829, 854, 1]"]
|
||||
%% Missing NodePath
|
||||
99["Segment<br>[862, 882, 1]"]
|
||||
%% Missing NodePath
|
||||
100["Segment<br>[890, 914, 1]"]
|
||||
%% Missing NodePath
|
||||
110["Segment<br>[922, 983, 1]"]
|
||||
%% Missing NodePath
|
||||
116["Segment<br>[991, 1052, 1]"]
|
||||
%% Missing NodePath
|
||||
122["Segment<br>[1060, 1085, 1]"]
|
||||
%% Missing NodePath
|
||||
128["Segment<br>[1093, 1117, 1]"]
|
||||
%% Missing NodePath
|
||||
134["Segment<br>[1125, 1187, 1]"]
|
||||
%% Missing NodePath
|
||||
136["Segment<br>[1195, 1220, 1]"]
|
||||
%% Missing NodePath
|
||||
145["Segment<br>[1228, 1255, 1]"]
|
||||
%% Missing NodePath
|
||||
151["Segment<br>[1263, 1324, 1]"]
|
||||
%% Missing NodePath
|
||||
156["Segment<br>[1332, 1376, 1]"]
|
||||
%% Missing NodePath
|
||||
161["Segment<br>[1384, 1391, 1]"]
|
||||
%% Missing NodePath
|
||||
220[Solid2d]
|
||||
end
|
||||
subgraph path28 [Path]
|
||||
28["Path<br>[380, 413, 1]"]
|
||||
%% Missing NodePath
|
||||
41["Segment<br>[421, 447, 1]"]
|
||||
%% Missing NodePath
|
||||
46["Segment<br>[455, 517, 1]"]
|
||||
%% Missing NodePath
|
||||
54["Segment<br>[525, 587, 1]"]
|
||||
%% Missing NodePath
|
||||
62["Segment<br>[595, 658, 1]"]
|
||||
%% Missing NodePath
|
||||
67["Segment<br>[666, 691, 1]"]
|
||||
%% Missing NodePath
|
||||
74["Segment<br>[699, 719, 1]"]
|
||||
%% Missing NodePath
|
||||
78["Segment<br>[727, 751, 1]"]
|
||||
%% Missing NodePath
|
||||
85["Segment<br>[759, 821, 1]"]
|
||||
%% Missing NodePath
|
||||
93["Segment<br>[829, 854, 1]"]
|
||||
%% Missing NodePath
|
||||
94["Segment<br>[862, 882, 1]"]
|
||||
%% Missing NodePath
|
||||
104["Segment<br>[890, 914, 1]"]
|
||||
%% Missing NodePath
|
||||
107["Segment<br>[922, 983, 1]"]
|
||||
%% Missing NodePath
|
||||
115["Segment<br>[991, 1052, 1]"]
|
||||
%% Missing NodePath
|
||||
123["Segment<br>[1060, 1085, 1]"]
|
||||
%% Missing NodePath
|
||||
126["Segment<br>[1093, 1117, 1]"]
|
||||
%% Missing NodePath
|
||||
130["Segment<br>[1125, 1187, 1]"]
|
||||
%% Missing NodePath
|
||||
138["Segment<br>[1195, 1220, 1]"]
|
||||
%% Missing NodePath
|
||||
144["Segment<br>[1228, 1255, 1]"]
|
||||
%% Missing NodePath
|
||||
149["Segment<br>[1263, 1324, 1]"]
|
||||
%% Missing NodePath
|
||||
158["Segment<br>[1332, 1376, 1]"]
|
||||
%% Missing NodePath
|
||||
165["Segment<br>[1384, 1391, 1]"]
|
||||
%% Missing NodePath
|
||||
221[Solid2d]
|
||||
end
|
||||
subgraph path29 [Path]
|
||||
29["Path<br>[380, 413, 1]"]
|
||||
%% Missing NodePath
|
||||
45["Segment<br>[421, 447, 1]"]
|
||||
%% Missing NodePath
|
||||
49["Segment<br>[455, 517, 1]"]
|
||||
%% Missing NodePath
|
||||
52["Segment<br>[525, 587, 1]"]
|
||||
%% Missing NodePath
|
||||
60["Segment<br>[595, 658, 1]"]
|
||||
%% Missing NodePath
|
||||
68["Segment<br>[666, 691, 1]"]
|
||||
%% Missing NodePath
|
||||
72["Segment<br>[699, 719, 1]"]
|
||||
%% Missing NodePath
|
||||
79["Segment<br>[727, 751, 1]"]
|
||||
%% Missing NodePath
|
||||
84["Segment<br>[759, 821, 1]"]
|
||||
%% Missing NodePath
|
||||
88["Segment<br>[829, 854, 1]"]
|
||||
%% Missing NodePath
|
||||
98["Segment<br>[862, 882, 1]"]
|
||||
%% Missing NodePath
|
||||
105["Segment<br>[890, 914, 1]"]
|
||||
%% Missing NodePath
|
||||
109["Segment<br>[922, 983, 1]"]
|
||||
%% Missing NodePath
|
||||
113["Segment<br>[991, 1052, 1]"]
|
||||
%% Missing NodePath
|
||||
120["Segment<br>[1060, 1085, 1]"]
|
||||
%% Missing NodePath
|
||||
127["Segment<br>[1093, 1117, 1]"]
|
||||
%% Missing NodePath
|
||||
131["Segment<br>[1125, 1187, 1]"]
|
||||
%% Missing NodePath
|
||||
141["Segment<br>[1195, 1220, 1]"]
|
||||
%% Missing NodePath
|
||||
142["Segment<br>[1228, 1255, 1]"]
|
||||
%% Missing NodePath
|
||||
153["Segment<br>[1263, 1324, 1]"]
|
||||
%% Missing NodePath
|
||||
155["Segment<br>[1332, 1376, 1]"]
|
||||
%% Missing NodePath
|
||||
160["Segment<br>[1384, 1391, 1]"]
|
||||
%% Missing NodePath
|
||||
223[Solid2d]
|
||||
end
|
||||
subgraph path30 [Path]
|
||||
30["Path<br>[1783, 1807, 1]"]
|
||||
%% Missing NodePath
|
||||
end
|
||||
subgraph path31 [Path]
|
||||
31["Path<br>[1783, 1807, 1]"]
|
||||
%% Missing NodePath
|
||||
end
|
||||
subgraph path32 [Path]
|
||||
32["Path<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
167["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
170["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
172["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
173["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
176["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
177["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
178["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
212[Solid2d]
|
||||
end
|
||||
subgraph path33 [Path]
|
||||
33["Path<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
166["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
168["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
169["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
171["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
174["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
175["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
179["Segment<br>[1815, 1941, 1]"]
|
||||
%% Missing NodePath
|
||||
216[Solid2d]
|
||||
end
|
||||
subgraph path34 [Path]
|
||||
34["Path<br>[2235, 2262, 1]"]
|
||||
180["Segment<br>[2270, 2292, 1]"]
|
||||
181["Segment<br>[2300, 2322, 1]"]
|
||||
182["Segment<br>[2330, 2352, 1]"]
|
||||
183["Segment<br>[2360, 2383, 1]"]
|
||||
184["Segment<br>[2391, 2414, 1]"]
|
||||
185["Segment<br>[2422, 2457, 1]"]
|
||||
186["Segment<br>[2465, 2472, 1]"]
|
||||
34["Path<br>[2217, 2244, 1]"]
|
||||
%% Missing NodePath
|
||||
180["Segment<br>[2252, 2274, 1]"]
|
||||
%% Missing NodePath
|
||||
181["Segment<br>[2282, 2304, 1]"]
|
||||
%% Missing NodePath
|
||||
182["Segment<br>[2312, 2334, 1]"]
|
||||
%% Missing NodePath
|
||||
183["Segment<br>[2342, 2365, 1]"]
|
||||
%% Missing NodePath
|
||||
184["Segment<br>[2373, 2396, 1]"]
|
||||
%% Missing NodePath
|
||||
185["Segment<br>[2404, 2439, 1]"]
|
||||
%% Missing NodePath
|
||||
186["Segment<br>[2447, 2454, 1]"]
|
||||
%% Missing NodePath
|
||||
215[Solid2d]
|
||||
end
|
||||
subgraph path35 [Path]
|
||||
35["Path<br>[2746, 2775, 1]"]
|
||||
187["Segment<br>[2783, 2818, 1]"]
|
||||
188["Segment<br>[2826, 2851, 1]"]
|
||||
189["Segment<br>[2859, 2895, 1]"]
|
||||
190["Segment<br>[2903, 2927, 1]"]
|
||||
191["Segment<br>[2935, 2969, 1]"]
|
||||
192["Segment<br>[2977, 3012, 1]"]
|
||||
193["Segment<br>[3020, 3027, 1]"]
|
||||
35["Path<br>[2719, 2748, 1]"]
|
||||
%% Missing NodePath
|
||||
187["Segment<br>[2756, 2791, 1]"]
|
||||
%% Missing NodePath
|
||||
188["Segment<br>[2799, 2824, 1]"]
|
||||
%% Missing NodePath
|
||||
189["Segment<br>[2832, 2868, 1]"]
|
||||
%% Missing NodePath
|
||||
190["Segment<br>[2876, 2900, 1]"]
|
||||
%% Missing NodePath
|
||||
191["Segment<br>[2908, 2942, 1]"]
|
||||
%% Missing NodePath
|
||||
192["Segment<br>[2950, 2985, 1]"]
|
||||
%% Missing NodePath
|
||||
193["Segment<br>[2993, 3000, 1]"]
|
||||
%% Missing NodePath
|
||||
219[Solid2d]
|
||||
end
|
||||
subgraph path36 [Path]
|
||||
36["Path<br>[3304, 3331, 1]"]
|
||||
195["Segment<br>[3339, 3358, 1]"]
|
||||
197["Segment<br>[3366, 3415, 1]"]
|
||||
36["Path<br>[3268, 3295, 1]"]
|
||||
%% Missing NodePath
|
||||
195["Segment<br>[3303, 3322, 1]"]
|
||||
%% Missing NodePath
|
||||
197["Segment<br>[3330, 3379, 1]"]
|
||||
%% Missing NodePath
|
||||
end
|
||||
subgraph path37 [Path]
|
||||
37["Path<br>[3304, 3331, 1]"]
|
||||
194["Segment<br>[3339, 3358, 1]"]
|
||||
196["Segment<br>[3366, 3415, 1]"]
|
||||
37["Path<br>[3268, 3295, 1]"]
|
||||
%% Missing NodePath
|
||||
194["Segment<br>[3303, 3322, 1]"]
|
||||
%% Missing NodePath
|
||||
196["Segment<br>[3330, 3379, 1]"]
|
||||
%% Missing NodePath
|
||||
end
|
||||
subgraph path38 [Path]
|
||||
38["Path<br>[3516, 3549, 1]"]
|
||||
198["Segment<br>[3557, 3576, 1]"]
|
||||
201["Segment<br>[3584, 3606, 1]"]
|
||||
202["Segment<br>[3614, 3637, 1]"]
|
||||
204["Segment<br>[3645, 3665, 1]"]
|
||||
206["Segment<br>[3673, 3697, 1]"]
|
||||
208["Segment<br>[3705, 3728, 1]"]
|
||||
211["Segment<br>[3736, 3743, 1]"]
|
||||
38["Path<br>[3480, 3513, 1]"]
|
||||
%% Missing NodePath
|
||||
198["Segment<br>[3521, 3540, 1]"]
|
||||
%% Missing NodePath
|
||||
201["Segment<br>[3548, 3570, 1]"]
|
||||
%% Missing NodePath
|
||||
202["Segment<br>[3578, 3601, 1]"]
|
||||
%% Missing NodePath
|
||||
204["Segment<br>[3609, 3629, 1]"]
|
||||
%% Missing NodePath
|
||||
206["Segment<br>[3637, 3661, 1]"]
|
||||
%% Missing NodePath
|
||||
208["Segment<br>[3669, 3692, 1]"]
|
||||
%% Missing NodePath
|
||||
211["Segment<br>[3700, 3707, 1]"]
|
||||
%% Missing NodePath
|
||||
217[Solid2d]
|
||||
end
|
||||
subgraph path39 [Path]
|
||||
39["Path<br>[3516, 3549, 1]"]
|
||||
199["Segment<br>[3557, 3576, 1]"]
|
||||
200["Segment<br>[3584, 3606, 1]"]
|
||||
203["Segment<br>[3614, 3637, 1]"]
|
||||
205["Segment<br>[3645, 3665, 1]"]
|
||||
207["Segment<br>[3673, 3697, 1]"]
|
||||
209["Segment<br>[3705, 3728, 1]"]
|
||||
210["Segment<br>[3736, 3743, 1]"]
|
||||
39["Path<br>[3480, 3513, 1]"]
|
||||
%% Missing NodePath
|
||||
199["Segment<br>[3521, 3540, 1]"]
|
||||
%% Missing NodePath
|
||||
200["Segment<br>[3548, 3570, 1]"]
|
||||
%% Missing NodePath
|
||||
203["Segment<br>[3578, 3601, 1]"]
|
||||
%% Missing NodePath
|
||||
205["Segment<br>[3609, 3629, 1]"]
|
||||
%% Missing NodePath
|
||||
207["Segment<br>[3637, 3661, 1]"]
|
||||
%% Missing NodePath
|
||||
209["Segment<br>[3669, 3692, 1]"]
|
||||
%% Missing NodePath
|
||||
210["Segment<br>[3700, 3707, 1]"]
|
||||
%% Missing NodePath
|
||||
222[Solid2d]
|
||||
end
|
||||
1["Plane<br>[841, 882, 0]"]
|
||||
%% [ProgramBodyItem { index: 8 }, ExpressionStatementExpr, CallKwUnlabeledArg]
|
||||
2["Plane<br>[892, 934, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, ExpressionStatementExpr, CallKwUnlabeledArg]
|
||||
3["Plane<br>[993, 1035, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, ExpressionStatementExpr, CallKwUnlabeledArg]
|
||||
4["Plane<br>[1095, 1162, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, ExpressionStatementExpr, CallKwUnlabeledArg]
|
||||
5["Plane<br>[1241, 1308, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, ExpressionStatementExpr, CallKwUnlabeledArg]
|
||||
6["Plane<br>[352, 372, 1]"]
|
||||
%% Missing NodePath
|
||||
7["Plane<br>[352, 372, 1]"]
|
||||
8["Plane<br>[3823, 3858, 1]"]
|
||||
9["Plane<br>[3823, 3858, 1]"]
|
||||
10["Plane<br>[3887, 3916, 1]"]
|
||||
11["Plane<br>[3887, 3916, 1]"]
|
||||
%% Missing NodePath
|
||||
8["Plane<br>[3787, 3822, 1]"]
|
||||
%% Missing NodePath
|
||||
9["Plane<br>[3787, 3822, 1]"]
|
||||
%% Missing NodePath
|
||||
10["Plane<br>[3851, 3880, 1]"]
|
||||
%% Missing NodePath
|
||||
11["Plane<br>[3851, 3880, 1]"]
|
||||
%% Missing NodePath
|
||||
12["StartSketchOnPlane<br>[352, 372, 1]"]
|
||||
13["StartSketchOnPlane<br>[3276, 3296, 1]"]
|
||||
14["StartSketchOnPlane<br>[3488, 3508, 1]"]
|
||||
15["StartSketchOnPlane<br>[2718, 2738, 1]"]
|
||||
16["StartSketchOnPlane<br>[3488, 3508, 1]"]
|
||||
17["StartSketchOnPlane<br>[2207, 2227, 1]"]
|
||||
%% Missing NodePath
|
||||
13["StartSketchOnPlane<br>[3240, 3260, 1]"]
|
||||
%% Missing NodePath
|
||||
14["StartSketchOnPlane<br>[3452, 3472, 1]"]
|
||||
%% Missing NodePath
|
||||
15["StartSketchOnPlane<br>[2691, 2711, 1]"]
|
||||
%% Missing NodePath
|
||||
16["StartSketchOnPlane<br>[3452, 3472, 1]"]
|
||||
%% Missing NodePath
|
||||
17["StartSketchOnPlane<br>[2189, 2209, 1]"]
|
||||
%% Missing NodePath
|
||||
18["StartSketchOnPlane<br>[352, 372, 1]"]
|
||||
%% Missing NodePath
|
||||
19["StartSketchOnPlane<br>[1755, 1775, 1]"]
|
||||
%% Missing NodePath
|
||||
20["StartSketchOnPlane<br>[1755, 1775, 1]"]
|
||||
21["StartSketchOnPlane<br>[3276, 3296, 1]"]
|
||||
%% Missing NodePath
|
||||
21["StartSketchOnPlane<br>[3240, 3260, 1]"]
|
||||
%% Missing NodePath
|
||||
22["StartSketchOnPlane<br>[352, 372, 1]"]
|
||||
%% Missing NodePath
|
||||
23["StartSketchOnPlane<br>[352, 372, 1]"]
|
||||
%% Missing NodePath
|
||||
224["Sweep Extrusion<br>[1480, 1518, 1]"]
|
||||
%% Missing NodePath
|
||||
225["Sweep Extrusion<br>[1480, 1518, 1]"]
|
||||
%% Missing NodePath
|
||||
226["Sweep Extrusion<br>[1480, 1518, 1]"]
|
||||
%% Missing NodePath
|
||||
227["Sweep Extrusion<br>[1556, 1595, 1]"]
|
||||
%% Missing NodePath
|
||||
228["Sweep Extrusion<br>[1556, 1595, 1]"]
|
||||
%% Missing NodePath
|
||||
229["Sweep Extrusion<br>[1556, 1595, 1]"]
|
||||
230["Sweep Extrusion<br>[2052, 2076, 1]"]
|
||||
231["Sweep Extrusion<br>[2126, 2150, 1]"]
|
||||
232["Sweep Extrusion<br>[2636, 2660, 1]"]
|
||||
233["Sweep Extrusion<br>[2636, 2660, 1]"]
|
||||
234["Sweep Extrusion<br>[2636, 2660, 1]"]
|
||||
235["Sweep Extrusion<br>[3198, 3222, 1]"]
|
||||
236["Sweep Extrusion<br>[3198, 3222, 1]"]
|
||||
237["Sweep Sweep<br>[3938, 3965, 1]"]
|
||||
238["Sweep Sweep<br>[3938, 3965, 1]"]
|
||||
%% Missing NodePath
|
||||
230["Sweep Extrusion<br>[2052, 2067, 1]"]
|
||||
%% Missing NodePath
|
||||
231["Sweep Extrusion<br>[2117, 2132, 1]"]
|
||||
%% Missing NodePath
|
||||
232["Sweep Extrusion<br>[2618, 2633, 1]"]
|
||||
%% Missing NodePath
|
||||
233["Sweep Extrusion<br>[2618, 2633, 1]"]
|
||||
%% Missing NodePath
|
||||
234["Sweep Extrusion<br>[2618, 2633, 1]"]
|
||||
%% Missing NodePath
|
||||
235["Sweep Extrusion<br>[3171, 3186, 1]"]
|
||||
%% Missing NodePath
|
||||
236["Sweep Extrusion<br>[3171, 3186, 1]"]
|
||||
%% Missing NodePath
|
||||
237["Sweep Sweep<br>[3902, 3929, 1]"]
|
||||
%% Missing NodePath
|
||||
238["Sweep Sweep<br>[3902, 3929, 1]"]
|
||||
%% Missing NodePath
|
||||
239[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
240[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
241[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
242[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
243[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
244[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
245[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
246[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
247[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
248[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
249[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
250[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
251[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
252[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
253[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
254[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
255[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
256[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
257[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
258[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
259[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
260[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
261[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
262[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
263[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
264[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
265[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
266[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
267[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
268[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
269[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
270[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
271[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
272[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
273[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
274[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
275[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
276[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
277[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
278[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
279[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
280[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
281[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
282[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
283[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
284[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
285[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
286[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
287[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
288[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
289[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
290[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
291[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
292[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
293[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
294[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
295[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
296[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
297[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
298[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
299[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
300[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
301[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
302[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
303[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
304[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
305[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
306[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
307[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
308[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
309[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
310[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
311[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
312[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
313[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
314[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
315[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
316[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
317[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
318[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
319[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
320[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
321[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
322[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
323[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
324[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
325[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
326[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
327[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
328[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
329[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
330[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
331[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
332[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
333[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
334[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
335[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
336[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
337[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
338[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
339[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
340[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
341[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
342[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
343[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
344[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
345[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
346[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
347[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
348[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
349[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
350[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
351[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
352[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
353[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
354[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
355[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
356[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
357[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
358[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
359[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
360[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
361[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
362[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
363[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
364[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
365[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
366[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
367[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
368[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
369[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
370[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
371[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
372[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
373[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
374[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
375[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
376[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
377[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
378[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
379[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
380[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
381[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
382[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
383[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
384[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
385[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
386[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
387[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
388[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
389[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
390[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
391[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
392[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
393[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
394[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
395[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
396[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
397["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
398["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
399["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
400["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
401["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
402["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
403["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
404["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
405["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
406["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
407["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
408["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
409["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
410["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
411["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
412["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
413["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
414["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
415["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
416["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
417["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
418["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
419["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
420["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
421["SweepEdge Opposite"]
|
||||
422["SweepEdge Opposite"]
|
||||
423["SweepEdge Opposite"]
|
||||
|
@ -2,126 +2,221 @@
|
||||
flowchart LR
|
||||
subgraph path3 [Path]
|
||||
3["Path<br>[541, 569, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
12["Segment<br>[575, 626, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
13["Segment<br>[632, 680, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
14["Segment<br>[686, 737, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
15["Segment<br>[743, 791, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
16["Segment<br>[797, 848, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
17["Segment<br>[854, 902, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
18["Segment<br>[908, 959, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }]
|
||||
19["Segment<br>[965, 1007, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 9 }]
|
||||
20["Segment<br>[1013, 1071, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 10 }]
|
||||
21["Segment<br>[1077, 1132, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 11 }]
|
||||
22["Segment<br>[1138, 1196, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 12 }]
|
||||
23["Segment<br>[1202, 1257, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 13 }]
|
||||
24["Segment<br>[1263, 1306, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 14 }]
|
||||
25["Segment<br>[1312, 1368, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 15 }]
|
||||
26["Segment<br>[1374, 1429, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 16 }]
|
||||
27["Segment<br>[1435, 1491, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 17 }]
|
||||
28["Segment<br>[1497, 1504, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 18 }]
|
||||
42[Solid2d]
|
||||
end
|
||||
subgraph path4 [Path]
|
||||
4["Path<br>[1668, 1730, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
29["Segment<br>[1668, 1730, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
41[Solid2d]
|
||||
end
|
||||
subgraph path5 [Path]
|
||||
5["Path<br>[1768, 1829, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
30["Segment<br>[1768, 1829, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
44[Solid2d]
|
||||
end
|
||||
subgraph path6 [Path]
|
||||
6["Path<br>[1867, 1929, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
31["Segment<br>[1867, 1929, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
45[Solid2d]
|
||||
end
|
||||
subgraph path7 [Path]
|
||||
7["Path<br>[1967, 2026, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
32["Segment<br>[1967, 2026, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
39[Solid2d]
|
||||
end
|
||||
subgraph path8 [Path]
|
||||
8["Path<br>[2064, 2124, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
33["Segment<br>[2064, 2124, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
37[Solid2d]
|
||||
end
|
||||
subgraph path9 [Path]
|
||||
9["Path<br>[2162, 2222, 0]"]
|
||||
%% [ProgramBodyItem { index: 8 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
34["Segment<br>[2162, 2222, 0]"]
|
||||
%% [ProgramBodyItem { index: 8 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
38[Solid2d]
|
||||
end
|
||||
subgraph path10 [Path]
|
||||
10["Path<br>[2260, 2322, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
35["Segment<br>[2260, 2322, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
40[Solid2d]
|
||||
end
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[2360, 2421, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
36["Segment<br>[2360, 2421, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
43[Solid2d]
|
||||
end
|
||||
1["Plane<br>[518, 535, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["Plane<br>[1641, 1658, 0]"]
|
||||
%% [ProgramBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
46["Sweep Revolve<br>[1510, 1557, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 19 }]
|
||||
47["Sweep Extrusion<br>[1736, 1758, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
48["Sweep Extrusion<br>[1835, 1857, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
49["Sweep Extrusion<br>[1935, 1957, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
50["Sweep Extrusion<br>[2032, 2054, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
51["Sweep Extrusion<br>[2130, 2152, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
52["Sweep Extrusion<br>[2228, 2250, 0]"]
|
||||
%% [ProgramBodyItem { index: 8 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
53["Sweep Extrusion<br>[2328, 2350, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
54["Sweep Extrusion<br>[2427, 2449, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
55["CompositeSolid Subtract<br>[2716, 2769, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
56["CompositeSolid Union<br>[2680, 2703, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, CallKwArg { index: 0 }]
|
||||
57["CompositeSolid Union<br>[2615, 2638, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, CallKwArg { index: 0 }]
|
||||
58["CompositeSolid Subtract<br>[2517, 2574, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
59["CompositeSolid Subtract<br>[2586, 2639, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
60["CompositeSolid Union<br>[2550, 2573, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, CallKwArg { index: 0 }]
|
||||
61["CompositeSolid Subtract<br>[2651, 2704, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
62["CompositeSolid Union<br>[2745, 2768, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, CallKwArg { index: 0 }]
|
||||
63[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
64[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
65[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
66[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
67[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
68[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
69[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
70[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
71[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
72[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
73[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
74[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
75[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
76[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
77[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
78[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
79[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
80[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
81[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
82[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
83[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
84[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
85[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
86[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
87["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
88["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
89["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
90["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
91["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
92["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
93["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
94["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
95["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
96["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
97["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
98["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
99["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
100["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
101["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
102["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
103["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
104["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
105["SweepEdge Opposite"]
|
||||
106["SweepEdge Opposite"]
|
||||
107["SweepEdge Opposite"]
|
||||
|
@ -25,13 +25,15 @@ flowchart LR
|
||||
2["Plane<br>[756, 806, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
3["StartSketchOnFace<br>[713, 750, 0]"]
|
||||
%% Missing NodePath
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
13["Sweep Extrusion<br>[605, 647, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
14["Sweep Extrusion<br>[812, 839, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
15[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
16["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
17["SweepEdge Opposite"]
|
||||
18["SweepEdge Adjacent"]
|
||||
1 --- 4
|
||||
|
@ -2,45 +2,77 @@
|
||||
flowchart LR
|
||||
subgraph path4 [Path]
|
||||
4["Path<br>[2083, 2108, 0]"]
|
||||
%% [ProgramBodyItem { index: 20 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
7["Segment<br>[2114, 2172, 0]"]
|
||||
%% [ProgramBodyItem { index: 20 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
8["Segment<br>[2178, 2217, 0]"]
|
||||
%% [ProgramBodyItem { index: 20 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
9["Segment<br>[2223, 2270, 0]"]
|
||||
%% [ProgramBodyItem { index: 20 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
10["Segment<br>[2276, 2322, 0]"]
|
||||
%% [ProgramBodyItem { index: 20 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
11["Segment<br>[2328, 2367, 0]"]
|
||||
%% [ProgramBodyItem { index: 20 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
12["Segment<br>[2373, 2443, 0]"]
|
||||
%% [ProgramBodyItem { index: 20 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
13["Segment<br>[2449, 2456, 0]"]
|
||||
%% [ProgramBodyItem { index: 20 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }]
|
||||
17[Solid2d]
|
||||
end
|
||||
subgraph path5 [Path]
|
||||
5["Path<br>[2601, 2791, 0]"]
|
||||
%% [ProgramBodyItem { index: 21 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
14["Segment<br>[2601, 2791, 0]"]
|
||||
%% [ProgramBodyItem { index: 21 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
18[Solid2d]
|
||||
end
|
||||
subgraph path6 [Path]
|
||||
6["Path<br>[3225, 3427, 0]"]
|
||||
%% [ProgramBodyItem { index: 22 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
15["Segment<br>[3225, 3427, 0]"]
|
||||
%% [ProgramBodyItem { index: 22 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
16[Solid2d]
|
||||
end
|
||||
1["Plane<br>[2060, 2077, 0]"]
|
||||
%% [ProgramBodyItem { index: 20 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["StartSketchOnFace<br>[2555, 2595, 0]"]
|
||||
%% [ProgramBodyItem { index: 21 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
3["StartSketchOnFace<br>[3179, 3219, 0]"]
|
||||
%% [ProgramBodyItem { index: 22 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
19["Sweep Extrusion<br>[2462, 2488, 0]"]
|
||||
%% [ProgramBodyItem { index: 20 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 9 }]
|
||||
20["Sweep Extrusion<br>[3077, 3114, 0]"]
|
||||
%% [ProgramBodyItem { index: 21 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
21["Sweep Extrusion<br>[3077, 3114, 0]"]
|
||||
%% [ProgramBodyItem { index: 21 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
22["Sweep Extrusion<br>[3077, 3114, 0]"]
|
||||
%% [ProgramBodyItem { index: 21 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
23["Sweep Extrusion<br>[3077, 3114, 0]"]
|
||||
%% [ProgramBodyItem { index: 21 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
24["Sweep Extrusion<br>[3542, 3579, 0]"]
|
||||
%% [ProgramBodyItem { index: 22 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
25["Sweep Extrusion<br>[3542, 3579, 0]"]
|
||||
%% [ProgramBodyItem { index: 22 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
26[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
27[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
28[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
29[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
30[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
31[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
32[Wall]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 21 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
33[Wall]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 22 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
34["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
35["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
36["SweepEdge Opposite"]
|
||||
37["SweepEdge Opposite"]
|
||||
38["SweepEdge Opposite"]
|
||||
@ -58,11 +90,17 @@ flowchart LR
|
||||
50["SweepEdge Adjacent"]
|
||||
51["SweepEdge Adjacent"]
|
||||
52["EdgeCut Fillet<br>[3596, 3676, 0]"]
|
||||
%% [ProgramBodyItem { index: 23 }, ExpressionStatementExpr]
|
||||
53["EdgeCut Fillet<br>[3677, 3754, 0]"]
|
||||
%% [ProgramBodyItem { index: 24 }, ExpressionStatementExpr]
|
||||
54["EdgeCut Fillet<br>[3780, 3922, 0]"]
|
||||
%% [ProgramBodyItem { index: 25 }, ExpressionStatementExpr]
|
||||
55["EdgeCut Fillet<br>[3780, 3922, 0]"]
|
||||
%% [ProgramBodyItem { index: 25 }, ExpressionStatementExpr]
|
||||
56["EdgeCut Fillet<br>[3780, 3922, 0]"]
|
||||
%% [ProgramBodyItem { index: 25 }, ExpressionStatementExpr]
|
||||
57["EdgeCut Fillet<br>[3780, 3922, 0]"]
|
||||
%% [ProgramBodyItem { index: 25 }, ExpressionStatementExpr]
|
||||
1 --- 4
|
||||
32 x--> 2
|
||||
33 x--> 3
|
||||
|
@ -2,391 +2,709 @@
|
||||
flowchart LR
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[372, 428, 1]"]
|
||||
%% Missing NodePath
|
||||
34["Segment<br>[372, 428, 1]"]
|
||||
%% Missing NodePath
|
||||
148[Solid2d]
|
||||
end
|
||||
subgraph path12 [Path]
|
||||
12["Path<br>[452, 508, 1]"]
|
||||
%% Missing NodePath
|
||||
35["Segment<br>[452, 508, 1]"]
|
||||
%% Missing NodePath
|
||||
141[Solid2d]
|
||||
end
|
||||
subgraph path13 [Path]
|
||||
13["Path<br>[675, 731, 1]"]
|
||||
%% Missing NodePath
|
||||
36["Segment<br>[675, 731, 1]"]
|
||||
%% Missing NodePath
|
||||
155[Solid2d]
|
||||
end
|
||||
subgraph path14 [Path]
|
||||
14["Path<br>[755, 811, 1]"]
|
||||
%% Missing NodePath
|
||||
37["Segment<br>[755, 811, 1]"]
|
||||
%% Missing NodePath
|
||||
157[Solid2d]
|
||||
end
|
||||
subgraph path15 [Path]
|
||||
15["Path<br>[957, 1011, 1]"]
|
||||
%% Missing NodePath
|
||||
38["Segment<br>[957, 1011, 1]"]
|
||||
%% Missing NodePath
|
||||
156[Solid2d]
|
||||
end
|
||||
subgraph path16 [Path]
|
||||
16["Path<br>[1294, 1349, 1]"]
|
||||
%% Missing NodePath
|
||||
39["Segment<br>[1294, 1349, 1]"]
|
||||
%% Missing NodePath
|
||||
150[Solid2d]
|
||||
end
|
||||
subgraph path17 [Path]
|
||||
17["Path<br>[1707, 1753, 1]"]
|
||||
%% Missing NodePath
|
||||
40["Segment<br>[1759, 1811, 1]"]
|
||||
%% Missing NodePath
|
||||
41["Segment<br>[1817, 1890, 1]"]
|
||||
%% Missing NodePath
|
||||
42["Segment<br>[1896, 1918, 1]"]
|
||||
%% Missing NodePath
|
||||
43["Segment<br>[1924, 1980, 1]"]
|
||||
%% Missing NodePath
|
||||
44["Segment<br>[1986, 1993, 1]"]
|
||||
%% Missing NodePath
|
||||
152[Solid2d]
|
||||
end
|
||||
subgraph path18 [Path]
|
||||
18["Path<br>[2125, 2171, 1]"]
|
||||
%% Missing NodePath
|
||||
45["Segment<br>[2177, 2229, 1]"]
|
||||
%% Missing NodePath
|
||||
46["Segment<br>[2235, 2310, 1]"]
|
||||
%% Missing NodePath
|
||||
47["Segment<br>[2316, 2353, 1]"]
|
||||
%% Missing NodePath
|
||||
48["Segment<br>[2359, 2415, 1]"]
|
||||
%% Missing NodePath
|
||||
49["Segment<br>[2421, 2428, 1]"]
|
||||
%% Missing NodePath
|
||||
147[Solid2d]
|
||||
end
|
||||
subgraph path19 [Path]
|
||||
19["Path<br>[2909, 2956, 1]"]
|
||||
%% Missing NodePath
|
||||
51["Segment<br>[2964, 3301, 1]"]
|
||||
%% Missing NodePath
|
||||
52["Segment<br>[3309, 3341, 1]"]
|
||||
%% Missing NodePath
|
||||
54["Segment<br>[3349, 3690, 1]"]
|
||||
%% Missing NodePath
|
||||
57["Segment<br>[3698, 3754, 1]"]
|
||||
%% Missing NodePath
|
||||
59["Segment<br>[3762, 3769, 1]"]
|
||||
%% Missing NodePath
|
||||
146[Solid2d]
|
||||
end
|
||||
subgraph path20 [Path]
|
||||
20["Path<br>[2909, 2956, 1]"]
|
||||
%% Missing NodePath
|
||||
50["Segment<br>[2964, 3301, 1]"]
|
||||
%% Missing NodePath
|
||||
53["Segment<br>[3309, 3341, 1]"]
|
||||
%% Missing NodePath
|
||||
55["Segment<br>[3349, 3690, 1]"]
|
||||
%% Missing NodePath
|
||||
56["Segment<br>[3698, 3754, 1]"]
|
||||
%% Missing NodePath
|
||||
58["Segment<br>[3762, 3769, 1]"]
|
||||
%% Missing NodePath
|
||||
159[Solid2d]
|
||||
end
|
||||
subgraph path21 [Path]
|
||||
21["Path<br>[4379, 4474, 1]"]
|
||||
%% Missing NodePath
|
||||
60["Segment<br>[4480, 4513, 1]"]
|
||||
%% Missing NodePath
|
||||
61["Segment<br>[4519, 4570, 1]"]
|
||||
%% Missing NodePath
|
||||
62["Segment<br>[4576, 4609, 1]"]
|
||||
%% Missing NodePath
|
||||
63["Segment<br>[4615, 4665, 1]"]
|
||||
%% Missing NodePath
|
||||
64["Segment<br>[4671, 4712, 1]"]
|
||||
%% Missing NodePath
|
||||
65["Segment<br>[4718, 4767, 1]"]
|
||||
%% Missing NodePath
|
||||
66["Segment<br>[4773, 4806, 1]"]
|
||||
%% Missing NodePath
|
||||
67["Segment<br>[4812, 4846, 1]"]
|
||||
%% Missing NodePath
|
||||
68["Segment<br>[4852, 4886, 1]"]
|
||||
%% Missing NodePath
|
||||
69["Segment<br>[4892, 4944, 1]"]
|
||||
%% Missing NodePath
|
||||
70["Segment<br>[4950, 4984, 1]"]
|
||||
%% Missing NodePath
|
||||
71["Segment<br>[4990, 5066, 1]"]
|
||||
%% Missing NodePath
|
||||
72["Segment<br>[5072, 5105, 1]"]
|
||||
%% Missing NodePath
|
||||
73["Segment<br>[5111, 5187, 1]"]
|
||||
%% Missing NodePath
|
||||
74["Segment<br>[5193, 5227, 1]"]
|
||||
%% Missing NodePath
|
||||
75["Segment<br>[5233, 5307, 1]"]
|
||||
%% Missing NodePath
|
||||
76["Segment<br>[5313, 5347, 1]"]
|
||||
%% Missing NodePath
|
||||
77["Segment<br>[5353, 5404, 1]"]
|
||||
%% Missing NodePath
|
||||
78["Segment<br>[5410, 5472, 1]"]
|
||||
%% Missing NodePath
|
||||
79["Segment<br>[5478, 5529, 1]"]
|
||||
%% Missing NodePath
|
||||
80["Segment<br>[5535, 5569, 1]"]
|
||||
%% Missing NodePath
|
||||
81["Segment<br>[5575, 5608, 1]"]
|
||||
%% Missing NodePath
|
||||
82["Segment<br>[5614, 5647, 1]"]
|
||||
%% Missing NodePath
|
||||
83["Segment<br>[5653, 5660, 1]"]
|
||||
%% Missing NodePath
|
||||
158[Solid2d]
|
||||
end
|
||||
subgraph path22 [Path]
|
||||
22["Path<br>[589, 640, 3]"]
|
||||
%% Missing NodePath
|
||||
84["Segment<br>[589, 640, 3]"]
|
||||
%% Missing NodePath
|
||||
142[Solid2d]
|
||||
end
|
||||
subgraph path23 [Path]
|
||||
23["Path<br>[830, 886, 3]"]
|
||||
%% Missing NodePath
|
||||
85["Segment<br>[830, 886, 3]"]
|
||||
%% Missing NodePath
|
||||
153[Solid2d]
|
||||
end
|
||||
subgraph path24 [Path]
|
||||
24["Path<br>[1016, 1069, 3]"]
|
||||
%% Missing NodePath
|
||||
86["Segment<br>[1016, 1069, 3]"]
|
||||
%% Missing NodePath
|
||||
161[Solid2d]
|
||||
end
|
||||
subgraph path25 [Path]
|
||||
25["Path<br>[1457, 1497, 3]"]
|
||||
%% Missing NodePath
|
||||
87["Segment<br>[1457, 1497, 3]"]
|
||||
%% Missing NodePath
|
||||
151[Solid2d]
|
||||
end
|
||||
subgraph path26 [Path]
|
||||
26["Path<br>[1606, 1657, 3]"]
|
||||
%% Missing NodePath
|
||||
88["Segment<br>[1606, 1657, 3]"]
|
||||
%% Missing NodePath
|
||||
149[Solid2d]
|
||||
end
|
||||
subgraph path27 [Path]
|
||||
27["Path<br>[1795, 1847, 3]"]
|
||||
%% Missing NodePath
|
||||
89["Segment<br>[1795, 1847, 3]"]
|
||||
%% Missing NodePath
|
||||
162[Solid2d]
|
||||
end
|
||||
subgraph path28 [Path]
|
||||
28["Path<br>[2095, 2167, 3]"]
|
||||
%% Missing NodePath
|
||||
90["Segment<br>[2095, 2167, 3]"]
|
||||
%% Missing NodePath
|
||||
160[Solid2d]
|
||||
end
|
||||
subgraph path29 [Path]
|
||||
29["Path<br>[2429, 2460, 3]"]
|
||||
%% Missing NodePath
|
||||
91["Segment<br>[2466, 2486, 3]"]
|
||||
%% Missing NodePath
|
||||
92["Segment<br>[2492, 2512, 3]"]
|
||||
%% Missing NodePath
|
||||
93["Segment<br>[2518, 2539, 3]"]
|
||||
%% Missing NodePath
|
||||
94["Segment<br>[2545, 2601, 3]"]
|
||||
%% Missing NodePath
|
||||
95["Segment<br>[2607, 2614, 3]"]
|
||||
%% Missing NodePath
|
||||
144[Solid2d]
|
||||
end
|
||||
subgraph path30 [Path]
|
||||
30["Path<br>[2921, 2953, 3]"]
|
||||
%% Missing NodePath
|
||||
96["Segment<br>[2959, 2980, 3]"]
|
||||
%% Missing NodePath
|
||||
97["Segment<br>[2986, 3006, 3]"]
|
||||
%% Missing NodePath
|
||||
98["Segment<br>[3012, 3032, 3]"]
|
||||
%% Missing NodePath
|
||||
99["Segment<br>[3038, 3094, 3]"]
|
||||
%% Missing NodePath
|
||||
100["Segment<br>[3100, 3107, 3]"]
|
||||
%% Missing NodePath
|
||||
143[Solid2d]
|
||||
end
|
||||
subgraph path31 [Path]
|
||||
31["Path<br>[529, 610, 4]"]
|
||||
%% Missing NodePath
|
||||
101["Segment<br>[616, 717, 4]"]
|
||||
%% Missing NodePath
|
||||
102["Segment<br>[723, 781, 4]"]
|
||||
%% Missing NodePath
|
||||
103["Segment<br>[787, 871, 4]"]
|
||||
%% Missing NodePath
|
||||
104["Segment<br>[877, 936, 4]"]
|
||||
%% Missing NodePath
|
||||
105["Segment<br>[942, 1027, 4]"]
|
||||
%% Missing NodePath
|
||||
106["Segment<br>[1033, 1092, 4]"]
|
||||
%% Missing NodePath
|
||||
107["Segment<br>[1098, 1221, 4]"]
|
||||
%% Missing NodePath
|
||||
108["Segment<br>[1227, 1286, 4]"]
|
||||
%% Missing NodePath
|
||||
109["Segment<br>[1292, 1427, 4]"]
|
||||
%% Missing NodePath
|
||||
110["Segment<br>[1433, 1492, 4]"]
|
||||
%% Missing NodePath
|
||||
111["Segment<br>[1498, 1622, 4]"]
|
||||
%% Missing NodePath
|
||||
112["Segment<br>[1628, 1687, 4]"]
|
||||
%% Missing NodePath
|
||||
113["Segment<br>[1693, 1778, 4]"]
|
||||
%% Missing NodePath
|
||||
114["Segment<br>[1784, 1843, 4]"]
|
||||
%% Missing NodePath
|
||||
115["Segment<br>[1849, 1934, 4]"]
|
||||
%% Missing NodePath
|
||||
116["Segment<br>[1940, 1998, 4]"]
|
||||
%% Missing NodePath
|
||||
117["Segment<br>[2004, 2011, 4]"]
|
||||
%% Missing NodePath
|
||||
154[Solid2d]
|
||||
end
|
||||
subgraph path32 [Path]
|
||||
32["Path<br>[711, 751, 5]"]
|
||||
%% Missing NodePath
|
||||
118["Segment<br>[759, 806, 5]"]
|
||||
%% Missing NodePath
|
||||
119["Segment<br>[814, 850, 5]"]
|
||||
%% Missing NodePath
|
||||
120["Segment<br>[858, 888, 5]"]
|
||||
%% Missing NodePath
|
||||
121["Segment<br>[896, 935, 5]"]
|
||||
%% Missing NodePath
|
||||
122["Segment<br>[943, 983, 5]"]
|
||||
%% Missing NodePath
|
||||
123["Segment<br>[991, 1026, 5]"]
|
||||
%% Missing NodePath
|
||||
124["Segment<br>[1034, 1072, 5]"]
|
||||
%% Missing NodePath
|
||||
125["Segment<br>[1080, 1102, 5]"]
|
||||
%% Missing NodePath
|
||||
126["Segment<br>[1110, 1117, 5]"]
|
||||
%% Missing NodePath
|
||||
145[Solid2d]
|
||||
end
|
||||
subgraph path33 [Path]
|
||||
33["Path<br>[505, 562, 6]"]
|
||||
%% Missing NodePath
|
||||
127["Segment<br>[568, 702, 6]"]
|
||||
%% Missing NodePath
|
||||
128["Segment<br>[708, 755, 6]"]
|
||||
%% Missing NodePath
|
||||
129["Segment<br>[761, 858, 6]"]
|
||||
%% Missing NodePath
|
||||
130["Segment<br>[864, 896, 6]"]
|
||||
%% Missing NodePath
|
||||
131["Segment<br>[902, 934, 6]"]
|
||||
%% Missing NodePath
|
||||
132["Segment<br>[940, 971, 6]"]
|
||||
%% Missing NodePath
|
||||
133["Segment<br>[977, 1092, 6]"]
|
||||
%% Missing NodePath
|
||||
134["Segment<br>[1098, 1130, 6]"]
|
||||
%% Missing NodePath
|
||||
135["Segment<br>[1136, 1168, 6]"]
|
||||
%% Missing NodePath
|
||||
136["Segment<br>[1174, 1205, 6]"]
|
||||
%% Missing NodePath
|
||||
137["Segment<br>[1211, 1304, 6]"]
|
||||
%% Missing NodePath
|
||||
138["Segment<br>[1310, 1357, 6]"]
|
||||
%% Missing NodePath
|
||||
139["Segment<br>[1363, 1436, 6]"]
|
||||
%% Missing NodePath
|
||||
140["Segment<br>[1442, 1449, 6]"]
|
||||
%% Missing NodePath
|
||||
163[Solid2d]
|
||||
end
|
||||
1["Plane<br>[349, 366, 1]"]
|
||||
%% Missing NodePath
|
||||
2["Plane<br>[1684, 1701, 1]"]
|
||||
%% Missing NodePath
|
||||
3["Plane<br>[2102, 2119, 1]"]
|
||||
%% Missing NodePath
|
||||
4["Plane<br>[2878, 2901, 1]"]
|
||||
%% Missing NodePath
|
||||
5["Plane<br>[2878, 2901, 1]"]
|
||||
%% Missing NodePath
|
||||
6["Plane<br>[4356, 4373, 1]"]
|
||||
%% Missing NodePath
|
||||
7["Plane<br>[566, 583, 3]"]
|
||||
%% Missing NodePath
|
||||
8["Plane<br>[506, 523, 4]"]
|
||||
%% Missing NodePath
|
||||
9["Plane<br>[677, 703, 5]"]
|
||||
%% Missing NodePath
|
||||
10["Plane<br>[482, 499, 6]"]
|
||||
%% Missing NodePath
|
||||
164["Sweep Extrusion<br>[515, 548, 1]"]
|
||||
%% Missing NodePath
|
||||
165["Sweep Extrusion<br>[818, 851, 1]"]
|
||||
%% Missing NodePath
|
||||
166["Sweep Extrusion<br>[1158, 1192, 1]"]
|
||||
%% Missing NodePath
|
||||
167["Sweep Extrusion<br>[1158, 1192, 1]"]
|
||||
%% Missing NodePath
|
||||
168["Sweep Extrusion<br>[1158, 1192, 1]"]
|
||||
%% Missing NodePath
|
||||
169["Sweep Extrusion<br>[1158, 1192, 1]"]
|
||||
%% Missing NodePath
|
||||
170["Sweep Extrusion<br>[1158, 1192, 1]"]
|
||||
%% Missing NodePath
|
||||
171["Sweep Extrusion<br>[1496, 1530, 1]"]
|
||||
%% Missing NodePath
|
||||
172["Sweep Extrusion<br>[1496, 1530, 1]"]
|
||||
%% Missing NodePath
|
||||
173["Sweep Extrusion<br>[1496, 1530, 1]"]
|
||||
%% Missing NodePath
|
||||
174["Sweep Extrusion<br>[1496, 1530, 1]"]
|
||||
%% Missing NodePath
|
||||
175["Sweep Extrusion<br>[1496, 1530, 1]"]
|
||||
%% Missing NodePath
|
||||
176["Sweep Revolve<br>[1999, 2016, 1]"]
|
||||
%% Missing NodePath
|
||||
177["Sweep Revolve<br>[2434, 2451, 1]"]
|
||||
%% Missing NodePath
|
||||
178["Sweep Extrusion<br>[3817, 3863, 1]"]
|
||||
%% Missing NodePath
|
||||
179["Sweep Extrusion<br>[3817, 3863, 1]"]
|
||||
%% Missing NodePath
|
||||
180["Sweep Revolve<br>[5666, 5683, 1]"]
|
||||
%% Missing NodePath
|
||||
181["Sweep Extrusion<br>[649, 705, 3]"]
|
||||
%% Missing NodePath
|
||||
182["Sweep Extrusion<br>[899, 961, 3]"]
|
||||
%% Missing NodePath
|
||||
183["Sweep Extrusion<br>[1216, 1295, 3]"]
|
||||
%% Missing NodePath
|
||||
184["Sweep Extrusion<br>[1216, 1295, 3]"]
|
||||
%% Missing NodePath
|
||||
185["Sweep Extrusion<br>[1216, 1295, 3]"]
|
||||
%% Missing NodePath
|
||||
186["Sweep Extrusion<br>[1216, 1295, 3]"]
|
||||
%% Missing NodePath
|
||||
187["Sweep Extrusion<br>[1216, 1295, 3]"]
|
||||
%% Missing NodePath
|
||||
188["Sweep Extrusion<br>[1503, 1536, 3]"]
|
||||
%% Missing NodePath
|
||||
189["Sweep Extrusion<br>[1672, 1737, 3]"]
|
||||
%% Missing NodePath
|
||||
190["Sweep Extrusion<br>[1994, 2038, 3]"]
|
||||
%% Missing NodePath
|
||||
191["Sweep Extrusion<br>[1994, 2038, 3]"]
|
||||
%% Missing NodePath
|
||||
192["Sweep Extrusion<br>[1994, 2038, 3]"]
|
||||
%% Missing NodePath
|
||||
193["Sweep Extrusion<br>[1994, 2038, 3]"]
|
||||
%% Missing NodePath
|
||||
194["Sweep Extrusion<br>[1994, 2038, 3]"]
|
||||
%% Missing NodePath
|
||||
195["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
196["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
197["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
198["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
199["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
200["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
201["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
202["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
203["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
204["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
205["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
206["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
207["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
208["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
209["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
210["Sweep Extrusion<br>[2322, 2366, 3]"]
|
||||
%% Missing NodePath
|
||||
211["Sweep Extrusion<br>[2780, 2848, 3]"]
|
||||
%% Missing NodePath
|
||||
212["Sweep Extrusion<br>[2780, 2848, 3]"]
|
||||
%% Missing NodePath
|
||||
213["Sweep Extrusion<br>[2780, 2848, 3]"]
|
||||
%% Missing NodePath
|
||||
214["Sweep Extrusion<br>[2780, 2848, 3]"]
|
||||
%% Missing NodePath
|
||||
215["Sweep Extrusion<br>[2780, 2848, 3]"]
|
||||
%% Missing NodePath
|
||||
216["Sweep Extrusion<br>[3270, 3344, 3]"]
|
||||
%% Missing NodePath
|
||||
217["Sweep Extrusion<br>[3270, 3344, 3]"]
|
||||
%% Missing NodePath
|
||||
218["Sweep Extrusion<br>[3270, 3344, 3]"]
|
||||
%% Missing NodePath
|
||||
219["Sweep Extrusion<br>[3270, 3344, 3]"]
|
||||
%% Missing NodePath
|
||||
220["Sweep Extrusion<br>[3270, 3344, 3]"]
|
||||
%% Missing NodePath
|
||||
221["Sweep Revolve<br>[2049, 2099, 4]"]
|
||||
%% Missing NodePath
|
||||
222["Sweep Revolve<br>[1125, 1142, 5]"]
|
||||
%% Missing NodePath
|
||||
223["Sweep Revolve<br>[1502, 1531, 6]"]
|
||||
%% Missing NodePath
|
||||
224[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
225[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
226[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
227[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
228[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
229[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
230[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
231[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
232[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
233[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
234[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
235[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
236[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
237[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
238[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
239[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
240[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
241[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
242[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
243[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
244[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
245[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
246[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
247[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
248[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
249[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
250[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
251[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
252[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
253[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
254[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
255[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
256[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
257[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
258[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
259[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
260[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
261[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
262[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
263[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
264[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
265[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
266[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
267[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
268[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
269[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
270[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
271[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
272[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
273[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
274[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
275[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
276[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
277[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
278[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
279[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
280[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
281[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
282[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
283[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
284[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
285[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
286[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
287[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
288[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
289[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
290[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
291[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
292[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
293[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
294[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
295[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
296[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
297[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
298[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
299[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
300[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
301[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
302[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
303[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
304[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
305[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
306[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
307[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
308[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
309[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
310[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
311[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
312[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
313[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
314[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
315[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
316[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
317[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
318[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
319[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
320[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
321[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
322[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
323["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
324["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
325["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
326["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
327["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
328["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
329["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
330["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
331["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
332["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
333["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
334["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
335["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
336["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
337["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
338["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
339["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
340["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
341["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
342["SweepEdge Opposite"]
|
||||
343["SweepEdge Opposite"]
|
||||
344["SweepEdge Opposite"]
|
||||
|
@ -2,70 +2,122 @@
|
||||
flowchart LR
|
||||
subgraph path7 [Path]
|
||||
7["Path<br>[577, 617, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
12["Segment<br>[623, 670, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
13["Segment<br>[676, 705, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
14["Segment<br>[711, 764, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
15["Segment<br>[770, 798, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
16["Segment<br>[804, 863, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
17["Segment<br>[869, 912, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
18["Segment<br>[918, 971, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }]
|
||||
19["Segment<br>[977, 1019, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 9 }]
|
||||
20["Segment<br>[1025, 1072, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 10 }]
|
||||
21["Segment<br>[1078, 1128, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 11 }]
|
||||
22["Segment<br>[1134, 1196, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 12 }]
|
||||
23["Segment<br>[1202, 1253, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 13 }]
|
||||
24["Segment<br>[1259, 1281, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 14 }]
|
||||
25["Segment<br>[1287, 1309, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 15 }]
|
||||
26["Segment<br>[1339, 1346, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 17 }]
|
||||
44[Solid2d]
|
||||
end
|
||||
subgraph path8 [Path]
|
||||
8["Path<br>[1517, 1560, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
27["Segment<br>[1566, 1601, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
28["Segment<br>[1607, 1668, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
29["Segment<br>[1674, 1743, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
30["Segment<br>[1749, 1811, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
31["Segment<br>[1817, 1880, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
32["Segment<br>[1886, 1947, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
33["Segment<br>[1953, 2016, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }]
|
||||
end
|
||||
subgraph path9 [Path]
|
||||
9["Path<br>[2162, 2237, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
34["Segment<br>[2162, 2237, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
43[Solid2d]
|
||||
end
|
||||
subgraph path10 [Path]
|
||||
10["Path<br>[2264, 2355, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
35["Segment<br>[2264, 2355, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
41[Solid2d]
|
||||
end
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[2552, 2584, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
36["Segment<br>[2590, 2680, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
37["Segment<br>[2686, 2723, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
38["Segment<br>[2729, 2882, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
39["Segment<br>[2888, 2944, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
40["Segment<br>[2950, 2957, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
42[Solid2d]
|
||||
end
|
||||
1["Plane<br>[554, 571, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["Plane<br>[1472, 1510, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }, CallKwUnlabeledArg]
|
||||
3["Plane<br>[2124, 2155, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }, CallKwUnlabeledArg]
|
||||
4["Plane<br>[2529, 2546, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
5["StartSketchOnPlane<br>[1458, 1511, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
6["StartSketchOnPlane<br>[2110, 2156, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
45["Sweep Extrusion<br>[1352, 1390, 0]"]
|
||||
%% [ProgramBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 18 }]
|
||||
46["Sweep Sweep<br>[2362, 2390, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
47["Sweep Extrusion<br>[2963, 3001, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
48[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
49[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
50[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
51[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
52[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
53["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
54["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
55["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
56["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
57["SweepEdge Opposite"]
|
||||
58["SweepEdge Opposite"]
|
||||
59["SweepEdge Opposite"]
|
||||
|
@ -2,106 +2,190 @@
|
||||
flowchart LR
|
||||
subgraph path7 [Path]
|
||||
7["Path<br>[791, 831, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 1 }]
|
||||
18["Segment<br>[839, 904, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 2 }]
|
||||
19["Segment<br>[912, 1009, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 3 }]
|
||||
30["Segment<br>[1017, 1134, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 4 }]
|
||||
36["Segment<br>[1142, 1198, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 5 }]
|
||||
42["Segment<br>[1206, 1213, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 6 }]
|
||||
43[Solid2d]
|
||||
end
|
||||
subgraph path8 [Path]
|
||||
8["Path<br>[791, 831, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 1 }]
|
||||
15["Segment<br>[839, 904, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 2 }]
|
||||
23["Segment<br>[912, 1009, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 3 }]
|
||||
26["Segment<br>[1017, 1134, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 4 }]
|
||||
33["Segment<br>[1142, 1198, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 5 }]
|
||||
39["Segment<br>[1206, 1213, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 6 }]
|
||||
44[Solid2d]
|
||||
end
|
||||
subgraph path9 [Path]
|
||||
9["Path<br>[791, 831, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 1 }]
|
||||
14["Segment<br>[839, 904, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 2 }]
|
||||
22["Segment<br>[912, 1009, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 3 }]
|
||||
29["Segment<br>[1017, 1134, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 4 }]
|
||||
34["Segment<br>[1142, 1198, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 5 }]
|
||||
38["Segment<br>[1206, 1213, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 6 }]
|
||||
45[Solid2d]
|
||||
end
|
||||
subgraph path10 [Path]
|
||||
10["Path<br>[791, 831, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 1 }]
|
||||
16["Segment<br>[839, 904, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 2 }]
|
||||
24["Segment<br>[912, 1009, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 3 }]
|
||||
25["Segment<br>[1017, 1134, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 4 }]
|
||||
31["Segment<br>[1142, 1198, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 5 }]
|
||||
40["Segment<br>[1206, 1213, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 6 }]
|
||||
46[Solid2d]
|
||||
end
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[791, 831, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 1 }]
|
||||
13["Segment<br>[839, 904, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 2 }]
|
||||
20["Segment<br>[912, 1009, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 3 }]
|
||||
27["Segment<br>[1017, 1134, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 4 }]
|
||||
32["Segment<br>[1142, 1198, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 5 }]
|
||||
37["Segment<br>[1206, 1213, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 6 }]
|
||||
47[Solid2d]
|
||||
end
|
||||
subgraph path12 [Path]
|
||||
12["Path<br>[791, 831, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 1 }]
|
||||
17["Segment<br>[839, 904, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 2 }]
|
||||
21["Segment<br>[912, 1009, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 3 }]
|
||||
28["Segment<br>[1017, 1134, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 4 }]
|
||||
35["Segment<br>[1142, 1198, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 5 }]
|
||||
41["Segment<br>[1206, 1213, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 6 }]
|
||||
48[Solid2d]
|
||||
end
|
||||
1["Plane<br>[374, 408, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
2["Plane<br>[423, 458, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
3["Plane<br>[472, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
4["Plane<br>[522, 558, 0]"]
|
||||
%% [ProgramBodyItem { index: 8 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
5["Plane<br>[570, 620, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
6["Plane<br>[633, 668, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
49["Sweep Extrusion<br>[1221, 1252, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 7 }]
|
||||
50["Sweep Extrusion<br>[1221, 1252, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 7 }]
|
||||
51["Sweep Extrusion<br>[1221, 1252, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 7 }]
|
||||
52["Sweep Extrusion<br>[1221, 1252, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 7 }]
|
||||
53["Sweep Extrusion<br>[1221, 1252, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 7 }]
|
||||
54["Sweep Extrusion<br>[1221, 1252, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg, PipeBodyItem { index: 7 }]
|
||||
55[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
56[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
57[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
58[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
59[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
60[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
61[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
62[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
63[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
64[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
65[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
66[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
67[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
68[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
69[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
70[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
71[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
72[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
73[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
74[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
75[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
76[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
77[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
78[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
79["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
80["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
81["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
82["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
83["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
84["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
85["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
86["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
87["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
88["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
89["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
90["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
91["SweepEdge Opposite"]
|
||||
92["SweepEdge Opposite"]
|
||||
93["SweepEdge Opposite"]
|
||||
|
@ -2,159 +2,269 @@
|
||||
flowchart LR
|
||||
subgraph path15 [Path]
|
||||
15["Path<br>[757, 811, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
30["Segment<br>[817, 889, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
31["Segment<br>[895, 998, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
32["Segment<br>[1004, 1121, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
33["Segment<br>[1127, 1212, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
34["Segment<br>[1218, 1225, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
62[Solid2d]
|
||||
end
|
||||
subgraph path16 [Path]
|
||||
16["Path<br>[1249, 1304, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }, CallKwArg { index: 0 }]
|
||||
35["Segment<br>[1249, 1304, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }, CallKwArg { index: 0 }]
|
||||
68[Solid2d]
|
||||
end
|
||||
subgraph path17 [Path]
|
||||
17["Path<br>[1995, 2059, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
38["Segment<br>[1995, 2059, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
59[Solid2d]
|
||||
end
|
||||
subgraph path18 [Path]
|
||||
18["Path<br>[1995, 2059, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
36["Segment<br>[1995, 2059, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
61[Solid2d]
|
||||
end
|
||||
subgraph path19 [Path]
|
||||
19["Path<br>[1995, 2059, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
37["Segment<br>[1995, 2059, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
69[Solid2d]
|
||||
end
|
||||
subgraph path20 [Path]
|
||||
20["Path<br>[1995, 2059, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
39["Segment<br>[1995, 2059, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
72[Solid2d]
|
||||
end
|
||||
subgraph path21 [Path]
|
||||
21["Path<br>[2159, 2230, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
43["Segment<br>[2159, 2230, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
60[Solid2d]
|
||||
end
|
||||
subgraph path22 [Path]
|
||||
22["Path<br>[2159, 2230, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
40["Segment<br>[2159, 2230, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
63[Solid2d]
|
||||
end
|
||||
subgraph path23 [Path]
|
||||
23["Path<br>[2159, 2230, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
42["Segment<br>[2159, 2230, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
66[Solid2d]
|
||||
end
|
||||
subgraph path24 [Path]
|
||||
24["Path<br>[2159, 2230, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
41["Segment<br>[2159, 2230, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
73[Solid2d]
|
||||
end
|
||||
subgraph path25 [Path]
|
||||
25["Path<br>[2643, 2684, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
44["Segment<br>[2643, 2684, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
65[Solid2d]
|
||||
end
|
||||
subgraph path26 [Path]
|
||||
26["Path<br>[2840, 2911, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
45["Segment<br>[2840, 2911, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
64[Solid2d]
|
||||
end
|
||||
subgraph path27 [Path]
|
||||
27["Path<br>[2935, 2990, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
46["Segment<br>[2935, 2990, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
70[Solid2d]
|
||||
end
|
||||
subgraph path28 [Path]
|
||||
28["Path<br>[3369, 3470, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
47["Segment<br>[3478, 3575, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
50["Segment<br>[3583, 3603, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
51["Segment<br>[3611, 3717, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
54["Segment<br>[3725, 3746, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
55["Segment<br>[3754, 3810, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
58["Segment<br>[3818, 3825, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
67[Solid2d]
|
||||
end
|
||||
subgraph path29 [Path]
|
||||
29["Path<br>[3369, 3470, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
48["Segment<br>[3478, 3575, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
49["Segment<br>[3583, 3603, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
52["Segment<br>[3611, 3717, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
53["Segment<br>[3725, 3746, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
56["Segment<br>[3754, 3810, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
57["Segment<br>[3818, 3825, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
71[Solid2d]
|
||||
end
|
||||
1["Plane<br>[734, 751, 0]"]
|
||||
%% [ProgramBodyItem { index: 11 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["Plane<br>[2620, 2637, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
3["Plane<br>[2793, 2833, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }, CallKwUnlabeledArg]
|
||||
4["Plane<br>[3337, 3361, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
5["Plane<br>[3337, 3361, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
6["StartSketchOnPlane<br>[2779, 2834, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
7["StartSketchOnFace<br>[1951, 1987, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
8["StartSketchOnFace<br>[2115, 2151, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
9["StartSketchOnFace<br>[1951, 1987, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
10["StartSketchOnFace<br>[1951, 1987, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
11["StartSketchOnFace<br>[2115, 2151, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
12["StartSketchOnFace<br>[1951, 1987, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
13["StartSketchOnFace<br>[2115, 2151, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
14["StartSketchOnFace<br>[2115, 2151, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
74["Sweep Extrusion<br>[1318, 1363, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
75["Sweep Extrusion<br>[2067, 2103, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
76["Sweep Extrusion<br>[2067, 2103, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
77["Sweep Extrusion<br>[2067, 2103, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
78["Sweep Extrusion<br>[2067, 2103, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
79["Sweep Extrusion<br>[2238, 2291, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
80["Sweep Extrusion<br>[2238, 2291, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
81["Sweep Extrusion<br>[2238, 2291, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
82["Sweep Extrusion<br>[2238, 2291, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
83["Sweep Extrusion<br>[2690, 2711, 0]"]
|
||||
%% [ProgramBodyItem { index: 16 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
84["Sweep Extrusion<br>[2997, 3025, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
85["Sweep Extrusion<br>[3833, 3882, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }]
|
||||
86["Sweep Extrusion<br>[3833, 3882, 0]"]
|
||||
%% [ProgramBodyItem { index: 18 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }]
|
||||
87["CompositeSolid Subtract<br>[3031, 3058, 0]"]
|
||||
%% [ProgramBodyItem { index: 17 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
88[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
89[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
90[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
91[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
92[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
93[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
94[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
95[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
96[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
97[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
98[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
99[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
100[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
101[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
102[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
103[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
104[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
105[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
106[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
107[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
108[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
109[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
110[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
111[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
112["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
113["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
114["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
115["Cap Start"]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
116["Cap Start"]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
117["Cap Start"]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
118["Cap Start"]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
119["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
120["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
121["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
122["Cap End"]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
123["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
124["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
125["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
126["SweepEdge Opposite"]
|
||||
127["SweepEdge Opposite"]
|
||||
128["SweepEdge Opposite"]
|
||||
@ -204,13 +314,21 @@ flowchart LR
|
||||
172["SweepEdge Adjacent"]
|
||||
173["SweepEdge Adjacent"]
|
||||
174["EdgeCut Chamfer<br>[1369, 1651, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
175["EdgeCut Chamfer<br>[1369, 1651, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
176["EdgeCut Chamfer<br>[1369, 1651, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
177["EdgeCut Chamfer<br>[1369, 1651, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
178["EdgeCut Chamfer<br>[2360, 2446, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
179["EdgeCut Chamfer<br>[2360, 2446, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
180["EdgeCut Chamfer<br>[2360, 2446, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
181["EdgeCut Chamfer<br>[2360, 2446, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
1 --- 15
|
||||
1 --- 16
|
||||
2 --- 25
|
||||
|
@ -47,9 +47,9 @@ flowchart LR
|
||||
1["Plane<br>[700, 717, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["StartSketchOnFace<br>[1606, 1642, 0]"]
|
||||
%% Missing NodePath
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ExpressionStatementExpr, PipeBodyItem { index: 0 }]
|
||||
3["StartSketchOnFace<br>[1606, 1642, 0]"]
|
||||
%% Missing NodePath
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ExpressionStatementExpr, PipeBodyItem { index: 0 }]
|
||||
24["Sweep Extrusion<br>[1494, 1529, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 12 }]
|
||||
25["Sweep Extrusion<br>[1734, 1767, 0]"]
|
||||
@ -57,17 +57,29 @@ flowchart LR
|
||||
26["Sweep Extrusion<br>[1734, 1767, 0]"]
|
||||
%% [ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ExpressionStatementExpr, PipeBodyItem { index: 2 }]
|
||||
27[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
28[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
29[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
30[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
31[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
32[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
33[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
34[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
35[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
36[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
37["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
38["Cap End"]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 10 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ExpressionStatementExpr, PipeBodyItem { index: 0 }]
|
||||
39["SweepEdge Opposite"]
|
||||
40["SweepEdge Opposite"]
|
||||
41["SweepEdge Opposite"]
|
||||
|
@ -73,21 +73,29 @@ flowchart LR
|
||||
3["Plane<br>[619, 652, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }, CallKwUnlabeledArg]
|
||||
4["StartSketchOnPlane<br>[605, 653, 0]"]
|
||||
%% Missing NodePath
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
5["StartSketchOnPlane<br>[605, 653, 0]"]
|
||||
%% Missing NodePath
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
6["StartSketchOnPlane<br>[605, 653, 0]"]
|
||||
%% Missing NodePath
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
37["Sweep Loft<br>[1483, 1572, 0]"]
|
||||
%% [ProgramBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
38[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
39[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
40[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
41[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
42[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
43[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
44["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
45["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
46["SweepEdge Opposite"]
|
||||
47["SweepEdge Opposite"]
|
||||
48["SweepEdge Opposite"]
|
||||
|
@ -2,207 +2,374 @@
|
||||
flowchart LR
|
||||
subgraph path13 [Path]
|
||||
13["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
35["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
38["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
53["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
69["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
73[Solid2d]
|
||||
end
|
||||
subgraph path14 [Path]
|
||||
14["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
25["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
48["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
59["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
62["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
74[Solid2d]
|
||||
end
|
||||
subgraph path15 [Path]
|
||||
15["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
32["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
46["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
52["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
65["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
75[Solid2d]
|
||||
end
|
||||
subgraph path16 [Path]
|
||||
16["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
26["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
45["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
60["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
68["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
76[Solid2d]
|
||||
end
|
||||
subgraph path17 [Path]
|
||||
17["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
27["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
47["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
50["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
64["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
77[Solid2d]
|
||||
end
|
||||
subgraph path18 [Path]
|
||||
18["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
34["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
43["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
51["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
71["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
78[Solid2d]
|
||||
end
|
||||
subgraph path19 [Path]
|
||||
19["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
29["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
40["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
55["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
67["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
79[Solid2d]
|
||||
end
|
||||
subgraph path20 [Path]
|
||||
20["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
28["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
44["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
57["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
70["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
80[Solid2d]
|
||||
end
|
||||
subgraph path21 [Path]
|
||||
21["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
36["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
37["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
54["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
72["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
81[Solid2d]
|
||||
end
|
||||
subgraph path22 [Path]
|
||||
22["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
31["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
41["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
58["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
63["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
82[Solid2d]
|
||||
end
|
||||
subgraph path23 [Path]
|
||||
23["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
33["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
39["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
56["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
61["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
83[Solid2d]
|
||||
end
|
||||
subgraph path24 [Path]
|
||||
24["Path<br>[515, 566, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
30["Segment<br>[574, 625, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
42["Segment<br>[633, 683, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
49["Segment<br>[691, 742, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
66["Segment<br>[750, 757, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
84[Solid2d]
|
||||
end
|
||||
1["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
3["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
4["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
5["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
6["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
7["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
8["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
9["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
10["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
11["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
12["Plane<br>[490, 507, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
85["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
86["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
87["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
88["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
89["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
90["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
91["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
92["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
93["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
94["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
95["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
96["Sweep Extrusion<br>[771, 821, 0]"]
|
||||
%% [ProgramBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
97["CompositeSolid Intersect<br>[2007, 2035, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg]
|
||||
98["CompositeSolid Intersect<br>[2007, 2035, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg]
|
||||
99["CompositeSolid Intersect<br>[2007, 2035, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg]
|
||||
100["CompositeSolid Intersect<br>[2007, 2035, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg]
|
||||
101["CompositeSolid Intersect<br>[2007, 2035, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg]
|
||||
102["CompositeSolid Intersect<br>[2007, 2035, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg]
|
||||
103["CompositeSolid Intersect<br>[2007, 2035, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg]
|
||||
104["CompositeSolid Intersect<br>[2007, 2035, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg]
|
||||
105["CompositeSolid Intersect<br>[2007, 2035, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg]
|
||||
106["CompositeSolid Intersect<br>[2007, 2035, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg]
|
||||
107["CompositeSolid Intersect<br>[2007, 2035, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 0 }, ReturnStatementArg]
|
||||
108[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
109[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
110[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
111[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
112[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
113[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
114[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
115[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
116[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
117[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
118[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
119[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
120[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
121[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
122[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
123[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
124[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
125[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
126[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
127[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
128[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
129[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
130[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
131[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
132[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
133[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
134[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
135[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
136[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
137[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
138[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
139[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
140[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
141[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
142[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
143[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
144[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
145[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
146[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
147[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
148[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
149[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
150[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
151[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
152[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
153[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
154[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
155[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
156["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
157["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
158["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
159["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
160["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
161["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
162["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
163["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
164["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
165["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
166["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
167["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
168["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
169["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
170["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
171["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
172["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
173["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
174["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
175["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
176["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
177["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
178["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
179["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
180["SweepEdge Opposite"]
|
||||
181["SweepEdge Opposite"]
|
||||
182["SweepEdge Opposite"]
|
||||
|
@ -2,155 +2,249 @@
|
||||
flowchart LR
|
||||
subgraph path8 [Path]
|
||||
8["Path<br>[305, 330, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
27["Segment<br>[336, 402, 0]"]
|
||||
28["Segment<br>[408, 507, 0]"]
|
||||
29["Segment<br>[513, 630, 0]"]
|
||||
30["Segment<br>[636, 721, 0]"]
|
||||
31["Segment<br>[727, 734, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
28["Segment<br>[408, 498, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
29["Segment<br>[504, 621, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
30["Segment<br>[627, 712, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
31["Segment<br>[718, 725, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
68[Solid2d]
|
||||
end
|
||||
subgraph path9 [Path]
|
||||
9["Path<br>[1616, 1699, 0]"]
|
||||
33["Segment<br>[1616, 1699, 0]"]
|
||||
9["Path<br>[1607, 1690, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
33["Segment<br>[1607, 1690, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
61[Solid2d]
|
||||
end
|
||||
subgraph path10 [Path]
|
||||
10["Path<br>[1616, 1699, 0]"]
|
||||
35["Segment<br>[1616, 1699, 0]"]
|
||||
10["Path<br>[1607, 1690, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
35["Segment<br>[1607, 1690, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
64[Solid2d]
|
||||
end
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[1616, 1699, 0]"]
|
||||
34["Segment<br>[1616, 1699, 0]"]
|
||||
11["Path<br>[1607, 1690, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
34["Segment<br>[1607, 1690, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
67[Solid2d]
|
||||
end
|
||||
subgraph path12 [Path]
|
||||
12["Path<br>[1616, 1699, 0]"]
|
||||
32["Segment<br>[1616, 1699, 0]"]
|
||||
12["Path<br>[1607, 1690, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
32["Segment<br>[1607, 1690, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
72[Solid2d]
|
||||
end
|
||||
subgraph path13 [Path]
|
||||
13["Path<br>[1725, 1792, 0]"]
|
||||
37["Segment<br>[1725, 1792, 0]"]
|
||||
13["Path<br>[1716, 1783, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
37["Segment<br>[1716, 1783, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
60[Solid2d]
|
||||
end
|
||||
subgraph path14 [Path]
|
||||
14["Path<br>[1725, 1792, 0]"]
|
||||
36["Segment<br>[1725, 1792, 0]"]
|
||||
14["Path<br>[1716, 1783, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
36["Segment<br>[1716, 1783, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
65[Solid2d]
|
||||
end
|
||||
subgraph path15 [Path]
|
||||
15["Path<br>[1725, 1792, 0]"]
|
||||
39["Segment<br>[1725, 1792, 0]"]
|
||||
15["Path<br>[1716, 1783, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
39["Segment<br>[1716, 1783, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
74[Solid2d]
|
||||
end
|
||||
subgraph path16 [Path]
|
||||
16["Path<br>[1725, 1792, 0]"]
|
||||
38["Segment<br>[1725, 1792, 0]"]
|
||||
16["Path<br>[1716, 1783, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
38["Segment<br>[1716, 1783, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
76[Solid2d]
|
||||
end
|
||||
subgraph path17 [Path]
|
||||
17["Path<br>[2360, 2395, 0]"]
|
||||
40["Segment<br>[2401, 2467, 0]"]
|
||||
41["Segment<br>[2473, 2572, 0]"]
|
||||
42["Segment<br>[2578, 2695, 0]"]
|
||||
43["Segment<br>[2701, 2786, 0]"]
|
||||
44["Segment<br>[2792, 2799, 0]"]
|
||||
17["Path<br>[2351, 2386, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
40["Segment<br>[2392, 2458, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
41["Segment<br>[2464, 2554, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
42["Segment<br>[2560, 2677, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
43["Segment<br>[2683, 2768, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
44["Segment<br>[2774, 2781, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
73[Solid2d]
|
||||
end
|
||||
subgraph path18 [Path]
|
||||
18["Path<br>[2823, 2979, 0]"]
|
||||
45["Segment<br>[2823, 2979, 0]"]
|
||||
18["Path<br>[2805, 2961, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }, CallKwArg { index: 0 }]
|
||||
45["Segment<br>[2805, 2961, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }, CallKwArg { index: 0 }]
|
||||
70[Solid2d]
|
||||
end
|
||||
subgraph path19 [Path]
|
||||
19["Path<br>[3004, 3171, 0]"]
|
||||
46["Segment<br>[3004, 3171, 0]"]
|
||||
19["Path<br>[2986, 3153, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }, CallKwArg { index: 0 }]
|
||||
46["Segment<br>[2986, 3153, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }, CallKwArg { index: 0 }]
|
||||
66[Solid2d]
|
||||
end
|
||||
subgraph path20 [Path]
|
||||
20["Path<br>[3196, 3354, 0]"]
|
||||
47["Segment<br>[3196, 3354, 0]"]
|
||||
20["Path<br>[3178, 3336, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 9 }, CallKwArg { index: 0 }]
|
||||
47["Segment<br>[3178, 3336, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 9 }, CallKwArg { index: 0 }]
|
||||
69[Solid2d]
|
||||
end
|
||||
subgraph path21 [Path]
|
||||
21["Path<br>[3379, 3548, 0]"]
|
||||
48["Segment<br>[3379, 3548, 0]"]
|
||||
21["Path<br>[3361, 3530, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 10 }, CallKwArg { index: 0 }]
|
||||
48["Segment<br>[3361, 3530, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 10 }, CallKwArg { index: 0 }]
|
||||
71[Solid2d]
|
||||
end
|
||||
subgraph path22 [Path]
|
||||
22["Path<br>[3991, 4075, 0]"]
|
||||
49["Segment<br>[4081, 4169, 0]"]
|
||||
50["Segment<br>[4175, 4296, 0]"]
|
||||
51["Segment<br>[4302, 4419, 0]"]
|
||||
52["Segment<br>[4425, 4510, 0]"]
|
||||
53["Segment<br>[4516, 4523, 0]"]
|
||||
22["Path<br>[3973, 4057, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
49["Segment<br>[4063, 4151, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
50["Segment<br>[4157, 4278, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
51["Segment<br>[4284, 4401, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
52["Segment<br>[4407, 4492, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
53["Segment<br>[4498, 4505, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
58[Solid2d]
|
||||
end
|
||||
subgraph path23 [Path]
|
||||
23["Path<br>[4547, 4719, 0]"]
|
||||
54["Segment<br>[4547, 4719, 0]"]
|
||||
23["Path<br>[4529, 4701, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }, CallKwArg { index: 0 }]
|
||||
54["Segment<br>[4529, 4701, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }, CallKwArg { index: 0 }]
|
||||
62[Solid2d]
|
||||
end
|
||||
subgraph path24 [Path]
|
||||
24["Path<br>[4744, 4927, 0]"]
|
||||
55["Segment<br>[4744, 4927, 0]"]
|
||||
24["Path<br>[4726, 4909, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }, CallKwArg { index: 0 }]
|
||||
55["Segment<br>[4726, 4909, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }, CallKwArg { index: 0 }]
|
||||
59[Solid2d]
|
||||
end
|
||||
subgraph path25 [Path]
|
||||
25["Path<br>[4952, 5126, 0]"]
|
||||
56["Segment<br>[4952, 5126, 0]"]
|
||||
25["Path<br>[4934, 5108, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 9 }, CallKwArg { index: 0 }]
|
||||
56["Segment<br>[4934, 5108, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 9 }, CallKwArg { index: 0 }]
|
||||
75[Solid2d]
|
||||
end
|
||||
subgraph path26 [Path]
|
||||
26["Path<br>[5151, 5336, 0]"]
|
||||
57["Segment<br>[5151, 5336, 0]"]
|
||||
26["Path<br>[5133, 5318, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 10 }, CallKwArg { index: 0 }]
|
||||
57["Segment<br>[5133, 5318, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 10 }, CallKwArg { index: 0 }]
|
||||
63[Solid2d]
|
||||
end
|
||||
1["Plane<br>[282, 299, 0]"]
|
||||
2["Plane<br>[1585, 1608, 0]"]
|
||||
3["Plane<br>[1585, 1608, 0]"]
|
||||
4["Plane<br>[1585, 1608, 0]"]
|
||||
5["Plane<br>[1585, 1608, 0]"]
|
||||
6["Plane<br>[2337, 2354, 0]"]
|
||||
7["StartSketchOnFace<br>[3948, 3985, 0]"]
|
||||
77["Sweep Extrusion<br>[748, 783, 0]"]
|
||||
78["Sweep Extrusion<br>[1809, 1860, 0]"]
|
||||
79["Sweep Extrusion<br>[1809, 1860, 0]"]
|
||||
80["Sweep Extrusion<br>[1809, 1860, 0]"]
|
||||
81["Sweep Extrusion<br>[1809, 1860, 0]"]
|
||||
82["Sweep Extrusion<br>[3563, 3605, 0]"]
|
||||
83["Sweep Extrusion<br>[5351, 5393, 0]"]
|
||||
%% [ProgramBodyItem { index: 5 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["Plane<br>[1576, 1599, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
3["Plane<br>[1576, 1599, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
4["Plane<br>[1576, 1599, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
5["Plane<br>[1576, 1599, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 1 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
6["Plane<br>[2328, 2345, 0]"]
|
||||
%% [ProgramBodyItem { index: 12 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
7["StartSketchOnFace<br>[3930, 3967, 0]"]
|
||||
%% [ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
77["Sweep Extrusion<br>[739, 774, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
78["Sweep Extrusion<br>[1800, 1851, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
79["Sweep Extrusion<br>[1800, 1851, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
80["Sweep Extrusion<br>[1800, 1851, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
81["Sweep Extrusion<br>[1800, 1851, 0]"]
|
||||
%% [ProgramBodyItem { index: 7 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit]
|
||||
82["Sweep Extrusion<br>[3545, 3587, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
83["Sweep Extrusion<br>[5333, 5375, 0]"]
|
||||
%% [ProgramBodyItem { index: 15 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
84[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
85[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
86[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
87[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
88[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
89[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
90[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
91[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
92[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
93[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
94[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
95[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
96[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
97[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
98[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
99[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
100["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
101["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
102["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
103["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
104["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
105["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
106["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
107["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
108["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
109["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
110["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
111["Cap End"]
|
||||
%% face_code_ref=[ProgramBodyItem { index: 14 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
112["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
113["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
114["SweepEdge Opposite"]
|
||||
115["SweepEdge Opposite"]
|
||||
116["SweepEdge Opposite"]
|
||||
@ -183,18 +277,30 @@ flowchart LR
|
||||
143["SweepEdge Adjacent"]
|
||||
144["SweepEdge Adjacent"]
|
||||
145["SweepEdge Adjacent"]
|
||||
146["EdgeCut Fillet<br>[789, 1071, 0]"]
|
||||
147["EdgeCut Fillet<br>[789, 1071, 0]"]
|
||||
148["EdgeCut Fillet<br>[789, 1071, 0]"]
|
||||
149["EdgeCut Fillet<br>[789, 1071, 0]"]
|
||||
150["EdgeCut Fillet<br>[3611, 3893, 0]"]
|
||||
151["EdgeCut Fillet<br>[3611, 3893, 0]"]
|
||||
152["EdgeCut Fillet<br>[3611, 3893, 0]"]
|
||||
153["EdgeCut Fillet<br>[3611, 3893, 0]"]
|
||||
154["EdgeCut Fillet<br>[5399, 5681, 0]"]
|
||||
155["EdgeCut Fillet<br>[5399, 5681, 0]"]
|
||||
156["EdgeCut Fillet<br>[5399, 5681, 0]"]
|
||||
157["EdgeCut Fillet<br>[5399, 5681, 0]"]
|
||||
146["EdgeCut Fillet<br>[780, 1062, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
147["EdgeCut Fillet<br>[780, 1062, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
148["EdgeCut Fillet<br>[780, 1062, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
149["EdgeCut Fillet<br>[780, 1062, 0]"]
|
||||
%% [ProgramBodyItem { index: 6 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
150["EdgeCut Fillet<br>[3593, 3875, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
151["EdgeCut Fillet<br>[3593, 3875, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
152["EdgeCut Fillet<br>[3593, 3875, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
153["EdgeCut Fillet<br>[3593, 3875, 0]"]
|
||||
%% [ProgramBodyItem { index: 13 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
154["EdgeCut Fillet<br>[5381, 5663, 0]"]
|
||||
%% [ProgramBodyItem { index: 15 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
155["EdgeCut Fillet<br>[5381, 5663, 0]"]
|
||||
%% [ProgramBodyItem { index: 15 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
156["EdgeCut Fillet<br>[5381, 5663, 0]"]
|
||||
%% [ProgramBodyItem { index: 15 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
157["EdgeCut Fillet<br>[5381, 5663, 0]"]
|
||||
%% [ProgramBodyItem { index: 15 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
1 --- 8
|
||||
2 --- 9
|
||||
2 --- 16
|
||||
|
@ -2,181 +2,299 @@
|
||||
flowchart LR
|
||||
subgraph path10 [Path]
|
||||
10["Path<br>[753, 788, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
31["Segment<br>[796, 822, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
37["Segment<br>[830, 891, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
40["Segment<br>[899, 958, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
45["Segment<br>[966, 1026, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
49["Segment<br>[1034, 1093, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
end
|
||||
subgraph path11 [Path]
|
||||
11["Path<br>[753, 788, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
32["Segment<br>[796, 822, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
38["Segment<br>[830, 891, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
41["Segment<br>[899, 958, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
43["Segment<br>[966, 1026, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
50["Segment<br>[1034, 1093, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
end
|
||||
subgraph path12 [Path]
|
||||
12["Path<br>[753, 788, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
34["Segment<br>[796, 822, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
35["Segment<br>[830, 891, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
39["Segment<br>[899, 958, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
44["Segment<br>[966, 1026, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
47["Segment<br>[1034, 1093, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
end
|
||||
subgraph path13 [Path]
|
||||
13["Path<br>[753, 788, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
33["Segment<br>[796, 822, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
36["Segment<br>[830, 891, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
42["Segment<br>[899, 958, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
46["Segment<br>[966, 1026, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
48["Segment<br>[1034, 1093, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
end
|
||||
subgraph path14 [Path]
|
||||
14["Path<br>[1195, 1257, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
52["Segment<br>[1195, 1257, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
87[Solid2d]
|
||||
end
|
||||
subgraph path15 [Path]
|
||||
15["Path<br>[1195, 1257, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
51["Segment<br>[1195, 1257, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
89[Solid2d]
|
||||
end
|
||||
subgraph path16 [Path]
|
||||
16["Path<br>[1195, 1257, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
54["Segment<br>[1195, 1257, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
94[Solid2d]
|
||||
end
|
||||
subgraph path17 [Path]
|
||||
17["Path<br>[1195, 1257, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
53["Segment<br>[1195, 1257, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
99[Solid2d]
|
||||
end
|
||||
subgraph path18 [Path]
|
||||
18["Path<br>[1283, 1361, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
56["Segment<br>[1283, 1361, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
84[Solid2d]
|
||||
end
|
||||
subgraph path19 [Path]
|
||||
19["Path<br>[1283, 1361, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
58["Segment<br>[1283, 1361, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
86[Solid2d]
|
||||
end
|
||||
subgraph path20 [Path]
|
||||
20["Path<br>[1283, 1361, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
55["Segment<br>[1283, 1361, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
91[Solid2d]
|
||||
end
|
||||
subgraph path21 [Path]
|
||||
21["Path<br>[1283, 1361, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
57["Segment<br>[1283, 1361, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }, CallKwArg { index: 0 }]
|
||||
100[Solid2d]
|
||||
end
|
||||
subgraph path22 [Path]
|
||||
22["Path<br>[1941, 1976, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 1 }]
|
||||
59["Segment<br>[1982, 2016, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 2 }]
|
||||
60["Segment<br>[2022, 2061, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
61["Segment<br>[2067, 2105, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 4 }]
|
||||
62["Segment<br>[2111, 2150, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 5 }]
|
||||
63["Segment<br>[2156, 2190, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 6 }]
|
||||
64["Segment<br>[2196, 2239, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 7 }]
|
||||
65["Segment<br>[2245, 2278, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 8 }]
|
||||
66["Segment<br>[2284, 2323, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 9 }]
|
||||
67["Segment<br>[2329, 2368, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 10 }]
|
||||
68["Segment<br>[2374, 2413, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 11 }]
|
||||
69["Segment<br>[2419, 2462, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 12 }]
|
||||
70["Segment<br>[2468, 2519, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 13 }]
|
||||
71["Segment<br>[2525, 2569, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 14 }]
|
||||
72["Segment<br>[2575, 2614, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 15 }]
|
||||
73["Segment<br>[2620, 2658, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 16 }]
|
||||
74["Segment<br>[2664, 2729, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 17 }]
|
||||
75["Segment<br>[2735, 2742, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 18 }]
|
||||
88[Solid2d]
|
||||
end
|
||||
subgraph path23 [Path]
|
||||
23["Path<br>[2827, 2900, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 19 }, CallKwArg { index: 0 }]
|
||||
76["Segment<br>[2827, 2900, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 19 }, CallKwArg { index: 0 }]
|
||||
93[Solid2d]
|
||||
end
|
||||
subgraph path24 [Path]
|
||||
24["Path<br>[2925, 2998, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 20 }, CallKwArg { index: 0 }]
|
||||
77["Segment<br>[2925, 2998, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 20 }, CallKwArg { index: 0 }]
|
||||
92[Solid2d]
|
||||
end
|
||||
subgraph path25 [Path]
|
||||
25["Path<br>[3023, 3096, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 21 }, CallKwArg { index: 0 }]
|
||||
78["Segment<br>[3023, 3096, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 21 }, CallKwArg { index: 0 }]
|
||||
96[Solid2d]
|
||||
end
|
||||
subgraph path26 [Path]
|
||||
26["Path<br>[3121, 3194, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 22 }, CallKwArg { index: 0 }]
|
||||
79["Segment<br>[3121, 3194, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 22 }, CallKwArg { index: 0 }]
|
||||
85[Solid2d]
|
||||
end
|
||||
subgraph path27 [Path]
|
||||
27["Path<br>[3258, 3397, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 23 }, CallKwArg { index: 0 }]
|
||||
80["Segment<br>[3258, 3397, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 23 }, CallKwArg { index: 0 }]
|
||||
98[Solid2d]
|
||||
end
|
||||
subgraph path28 [Path]
|
||||
28["Path<br>[3422, 3559, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 24 }, CallKwArg { index: 0 }]
|
||||
81["Segment<br>[3422, 3559, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 24 }, CallKwArg { index: 0 }]
|
||||
90[Solid2d]
|
||||
end
|
||||
subgraph path29 [Path]
|
||||
29["Path<br>[3584, 3731, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 25 }, CallKwArg { index: 0 }]
|
||||
82["Segment<br>[3584, 3731, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 25 }, CallKwArg { index: 0 }]
|
||||
97[Solid2d]
|
||||
end
|
||||
subgraph path30 [Path]
|
||||
30["Path<br>[3756, 3902, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 26 }, CallKwArg { index: 0 }]
|
||||
83["Segment<br>[3756, 3902, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 26 }, CallKwArg { index: 0 }]
|
||||
95[Solid2d]
|
||||
end
|
||||
1["Plane<br>[720, 745, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
2["Plane<br>[720, 745, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
3["Plane<br>[720, 745, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
4["Plane<br>[720, 745, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 2 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
5["Plane<br>[1170, 1187, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
6["Plane<br>[1170, 1187, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
7["Plane<br>[1170, 1187, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
8["Plane<br>[1170, 1187, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
9["Plane<br>[1918, 1935, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 0 }]
|
||||
101["Sweep Sweep<br>[1370, 1393, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
102["Sweep Sweep<br>[1370, 1393, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
103["Sweep Sweep<br>[1370, 1393, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
104["Sweep Sweep<br>[1370, 1393, 0]"]
|
||||
%% [ProgramBodyItem { index: 4 }, VariableDeclarationDeclaration, VariableDeclarationInit, FunctionExpressionBody, FunctionExpressionBodyItem { index: 3 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 3 }]
|
||||
105["Sweep Extrusion<br>[3955, 3984, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 27 }]
|
||||
106[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
107[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
108[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
109[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
110[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
111[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
112[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
113[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
114[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
115[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
116[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
117[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
118[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
119[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
120[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
121[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
122[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
123[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
124[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
125[Wall]
|
||||
%% face_code_ref=Missing NodePath
|
||||
126["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
127["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
128["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
129["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
130["Cap Start"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
131["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
132["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
133["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
134["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
135["Cap End"]
|
||||
%% face_code_ref=Missing NodePath
|
||||
136["SweepEdge Opposite"]
|
||||
137["SweepEdge Opposite"]
|
||||
138["SweepEdge Opposite"]
|
||||
@ -218,9 +336,13 @@ flowchart LR
|
||||
174["SweepEdge Adjacent"]
|
||||
175["SweepEdge Adjacent"]
|
||||
176["EdgeCut Fillet<br>[3990, 4124, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 28 }]
|
||||
177["EdgeCut Fillet<br>[3990, 4124, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 28 }]
|
||||
178["EdgeCut Fillet<br>[4130, 4264, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 29 }]
|
||||
179["EdgeCut Fillet<br>[4130, 4264, 0]"]
|
||||
%% [ProgramBodyItem { index: 9 }, VariableDeclarationDeclaration, VariableDeclarationInit, PipeBodyItem { index: 29 }]
|
||||
1 --- 13
|
||||
2 --- 11
|
||||
3 --- 12
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user