Files
modeling-app/rust/kcl-lib/tests/kcl_samples/focusrite-scarlett-mounting-bracket/ast.snap

6626 lines
252 KiB
Plaintext
Raw Normal View History

test: Vendor kcl-samples and add simulation tests for them (#5460) * Change to unzip * Download kcl-samples as zip to public dir * Fix fetch:samples, e2e electron still not working * Change error message to be clearer * Refactor so that input and output directories of sim tests can be different * Add kcl samples test implementation * Update output since adding kcl_samples tests * Update kcl-samples branch * Fix git-ignore pattern to only apply to the root * Fix yarn install and yarn fetch:samples to work the first time * Remove unneeded exists check * Change to use kcl-samples in public directory * Add kcl-samples * Update output since updating kcl-samples * Update output files * Change to not fetch samples during yarn install * Update output after merge * Ignore kcl-samples in codespell * WIP: Don't run e2e if only kcl-samples changed * Conditionally run cargo tests * Fix to round floating point values in program memory arrays * Update output since merge and rounding numbers in memory * Fix memory redaction for floating point to find more values * Fix float redaction pattern * Update output since rounding floating point numbers * Add center to floating point pattern * Fix trigger to use picomatch syntax * Update output since rounding center * Remove kcl-samples github workflows * Enable Rust backtrace * Update output after re-running * Update output after changing order of post-extrude commands * Fix to have deterministic order of commands * Update output after reverting ordering changes * Update kcl-samples * Update output after updating samples * Fix error messages to show the names of all samples that failed * Change cargo test command to match current one * Update kcl-samples * Update output since updating kcl-samples * Add generate manifest workflow and yarn script * Fix error check to actually work * Change util function to be what we actually need * Move new files after merge * Fix paths since directory move * Add dependabot updates for kcl-samples * Add GitHub workflow to make PR to kcl-samples repo * Add GitHub workflow to check kcl-samples header comments * Fix worfklow to change to the right directory * Add auto-commit simulation test output changes * Add permissions to workflows * Fix to run git commit step * Install just if needed * Fix directory of justfile * Add installation of cargo-insta * Fix to use underscore * Fix to allow just command failure * Change to always install CLI tools and cache them * Trying to fix overwrite failing * Combine commands * Change reviewer * Change to PR targeting the next branch * Change git commands to not do unnecessary fetch * Comment out trigger for creating a PR * Update kcl-samples from next branch * Update outputs after kcl-samples change * Fix to use bash pipefail * Add rust backtrace * Print full env from sim tests * Change command to use long option name * Fix to use ci profile even when calling through just * Add INSTA_UPDATE=always * Fix git push by using an app token on checkout * Add comments * Fix to use bash options * Change to echo when no changes are found * Fix so that kcl-samples updates don't trigger full run * Fix paths to reflect new crate location * Fix path detection * Fix e2e job to ignore kcl_samples simulation test output * Fix the fetch logic for the KCL samples after vendoring (#5661) Fixes the last 2 E2E tests for #5460. --------- Co-authored-by: Pierre Jacquier <pierre@zoo.dev> Co-authored-by: Pierre Jacquier <pierrejacquier39@gmail.com> Co-authored-by: Frank Noirot <frank@zoo.dev>
2025-03-06 18:01:24 -05:00
---
source: kcl-lib/src/simulation_tests.rs
description: Result of parsing focusrite-scarlett-mounting-bracket.kcl
---
{
"Ok": {
"body": [
{
"declaration": {
"end": 397,
"id": {
"end": 391,
"name": "radius",
"start": 385,
"type": "Identifier"
},
"init": {
"end": 397,
"raw": "6.0",
"start": 394,
"type": "Literal",
"type": "Literal",
"value": {
"value": 6.0,
"suffix": "None"
}
},
"start": 385,
"type": "VariableDeclarator"
},
"end": 397,
"kind": "const",
"start": 385,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 411,
"id": {
"end": 403,
"name": "width",
"start": 398,
"type": "Identifier"
},
"init": {
"end": 411,
"raw": "144.0",
"start": 406,
"type": "Literal",
"type": "Literal",
"value": {
"value": 144.0,
"suffix": "None"
}
},
"start": 398,
"type": "VariableDeclarator"
},
"end": 411,
"kind": "const",
"start": 398,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 425,
"id": {
"end": 418,
"name": "length",
"start": 412,
"type": "Identifier"
},
"init": {
"end": 425,
"raw": "80.0",
"start": 421,
"type": "Literal",
"type": "Literal",
"value": {
"value": 80.0,
"suffix": "None"
}
},
"start": 412,
"type": "VariableDeclarator"
},
"end": 425,
"kind": "const",
"start": 412,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 438,
"id": {
"end": 431,
"name": "depth",
"start": 426,
"type": "Identifier"
},
"init": {
"end": 438,
"raw": "45.0",
"start": 434,
"type": "Literal",
"type": "Literal",
"value": {
"value": 45.0,
"suffix": "None"
}
},
"start": 426,
"type": "VariableDeclarator"
},
"end": 438,
"kind": "const",
"start": 426,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 446,
"id": {
"end": 442,
"name": "thk",
"start": 439,
"type": "Identifier"
},
"init": {
"end": 446,
"raw": "4",
"start": 445,
"type": "Literal",
"type": "Literal",
"value": {
"value": 4.0,
"suffix": "None"
}
},
"start": 439,
"type": "VariableDeclarator"
},
"end": 446,
"kind": "const",
"start": 439,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 459,
"id": {
"end": 455,
"name": "holeDiam",
"start": 447,
"type": "Identifier"
},
"init": {
"end": 459,
"raw": "5",
"start": 458,
"type": "Literal",
"type": "Literal",
"value": {
"value": 5.0,
"suffix": "None"
}
},
"start": 447,
"type": "VariableDeclarator"
},
"end": 459,
"kind": "const",
"start": 447,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 474,
"id": {
"end": 469,
"name": "tabLength",
"start": 460,
"type": "Identifier"
},
"init": {
"end": 474,
"raw": "25",
"start": 472,
"type": "Literal",
"type": "Literal",
"value": {
"value": 25.0,
"suffix": "None"
}
},
"start": 460,
"type": "VariableDeclarator"
},
"end": 474,
"kind": "const",
"start": 460,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 488,
"id": {
"end": 483,
"name": "tabWidth",
"start": 475,
"type": "Identifier"
},
"init": {
"end": 488,
"raw": "12",
"start": 486,
"type": "Literal",
"type": "Literal",
"value": {
"value": 12.0,
"suffix": "None"
}
},
"start": 475,
"type": "VariableDeclarator"
},
"end": 488,
"kind": "const",
"start": 475,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 499,
"id": {
"end": 495,
"name": "tabThk",
"start": 489,
"type": "Identifier"
},
"init": {
"end": 499,
"raw": "4",
"start": 498,
"type": "Literal",
"type": "Literal",
"value": {
"value": 4.0,
"suffix": "None"
}
},
"start": 489,
"type": "VariableDeclarator"
},
"end": 499,
"kind": "const",
"start": 489,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 922,
"id": {
"end": 548,
"name": "rectShape",
"start": 539,
"type": "Identifier"
},
"init": {
"body": {
"body": [
{
"declaration": {
"end": 908,
"id": {
"end": 566,
"name": "rr",
"start": 564,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"end": 587,
"raw": "'xy'",
"start": 583,
"type": "Literal",
"type": "Literal",
"value": "xy"
}
],
"callee": {
"end": 582,
"name": "startSketchOn",
"start": 569,
"type": "Identifier"
},
"end": 588,
"start": 569,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 627,
"left": {
"computed": false,
"end": 618,
"object": {
"end": 615,
"name": "pos",
"start": 612,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 617,
"raw": "0",
"start": 616,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
"start": 612,
"type": "MemberExpression",
"type": "MemberExpression"
},
"operator": "-",
"right": {
"end": 627,
"left": {
"end": 623,
"name": "w",
"start": 622,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 627,
"raw": "2",
"start": 626,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 622,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 612,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 645,
"left": {
"computed": false,
"end": 636,
"object": {
"end": 633,
"name": "pos",
"start": 630,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 635,
"raw": "1",
"start": 634,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"start": 630,
"type": "MemberExpression",
"type": "MemberExpression"
},
"operator": "-",
"right": {
"end": 645,
"left": {
"end": 641,
"name": "l",
"start": 640,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 645,
"raw": "2",
"start": 644,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 640,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 630,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 647,
"start": 611,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 650,
"start": 649,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 610,
"name": "startProfileAt",
"start": 596,
"type": "Identifier"
},
"end": 651,
"start": 596,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 675,
"name": "endAbsolute",
"start": 664,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 693,
"left": {
"computed": false,
"end": 685,
"object": {
"end": 682,
"name": "pos",
"start": 679,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 684,
"raw": "0",
"start": 683,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
"start": 679,
"type": "MemberExpression",
"type": "MemberExpression"
},
"operator": "+",
"right": {
"end": 693,
"left": {
"end": 689,
"name": "w",
"start": 688,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 693,
"raw": "2",
"start": 692,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 688,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 679,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 710,
"left": {
"computed": false,
"end": 701,
"object": {
"end": 698,
"name": "pos",
"start": 695,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 700,
"raw": "1",
"start": 699,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"start": 695,
"type": "MemberExpression",
"type": "MemberExpression"
},
"operator": "-",
"right": {
"end": 710,
"left": {
"end": 706,
"name": "l",
"start": 705,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 710,
"raw": "2",
"start": 709,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 705,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 695,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 712,
"start": 678,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 717,
"name": "tag",
"start": 714,
"type": "Identifier"
},
"arg": {
"end": 727,
"start": 720,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge01"
}
}
],
"callee": {
"end": 663,
"name": "line",
"start": 659,
"type": "Identifier"
},
"end": 728,
"start": 659,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 752,
"name": "endAbsolute",
"start": 741,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 770,
"left": {
"computed": false,
"end": 762,
"object": {
"end": 759,
"name": "pos",
"start": 756,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 761,
"raw": "0",
"start": 760,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
"start": 756,
"type": "MemberExpression",
"type": "MemberExpression"
},
"operator": "+",
"right": {
"end": 770,
"left": {
"end": 766,
"name": "w",
"start": 765,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 770,
"raw": "2",
"start": 769,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 765,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 756,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 786,
"left": {
"computed": false,
"end": 778,
"object": {
"end": 775,
"name": "pos",
"start": 772,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 777,
"raw": "1",
"start": 776,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"start": 772,
"type": "MemberExpression",
"type": "MemberExpression"
},
"operator": "+",
"right": {
"end": 786,
"left": {
"end": 782,
"name": "l",
"start": 781,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 786,
"raw": "2",
"start": 785,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 781,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 772,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 787,
"start": 755,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 792,
"name": "tag",
"start": 789,
"type": "Identifier"
},
"arg": {
"end": 802,
"start": 795,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge02"
}
}
],
"callee": {
"end": 740,
"name": "line",
"start": 736,
"type": "Identifier"
},
"end": 803,
"start": 736,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 827,
"name": "endAbsolute",
"start": 816,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 846,
"left": {
"computed": false,
"end": 837,
"object": {
"end": 834,
"name": "pos",
"start": 831,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 836,
"raw": "0",
"start": 835,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
"start": 831,
"type": "MemberExpression",
"type": "MemberExpression"
},
"operator": "-",
"right": {
"end": 846,
"left": {
"end": 842,
"name": "w",
"start": 841,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 846,
"raw": "2",
"start": 845,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 841,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 831,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 863,
"left": {
"computed": false,
"end": 855,
"object": {
"end": 852,
"name": "pos",
"start": 849,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 854,
"raw": "1",
"start": 853,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"start": 849,
"type": "MemberExpression",
"type": "MemberExpression"
},
"operator": "+",
"right": {
"end": 863,
"left": {
"end": 859,
"name": "l",
"start": 858,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 863,
"raw": "2",
"start": 862,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 858,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 849,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 864,
"start": 830,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 869,
"name": "tag",
"start": 866,
"type": "Identifier"
},
"arg": {
"end": 879,
"start": 872,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge03"
}
}
],
"callee": {
"end": 815,
"name": "line",
"start": 811,
"type": "Identifier"
},
"end": 880,
"start": 811,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 897,
"name": "tag",
"start": 894,
"type": "Identifier"
},
"arg": {
"end": 907,
"start": 900,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge04"
}
}
],
"callee": {
"end": 893,
"name": "close",
"start": 888,
"type": "Identifier"
},
"end": 908,
"start": 888,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 908,
"start": 569,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 564,
"type": "VariableDeclarator"
},
"end": 908,
"kind": "const",
"start": 564,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"argument": {
"end": 920,
"name": "rr",
"start": 918,
"type": "Identifier",
"type": "Identifier"
},
"end": 920,
"start": 911,
"type": "ReturnStatement",
"type": "ReturnStatement"
}
],
"end": 922,
"start": 560
},
"end": 922,
"params": [
{
"type": "Parameter",
"identifier": {
"end": 552,
"name": "pos",
"start": 549,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"end": 555,
"name": "w",
"start": 554,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"end": 558,
"name": "l",
"start": 557,
"type": "Identifier"
}
}
],
"start": 548,
"type": "FunctionExpression",
"type": "FunctionExpression"
},
"start": 539,
"type": "VariableDeclarator"
},
"end": 922,
"kind": "fn",
"start": 536,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 1150,
"id": {
"end": 964,
"name": "bracketPlane",
"start": 952,
"type": "Identifier"
},
"init": {
"end": 1150,
"properties": [
{
"end": 1148,
"key": {
"end": 976,
"name": "plane",
"start": 971,
"type": "Identifier"
},
"start": 971,
"type": "ObjectProperty",
"value": {
"end": 1148,
"properties": [
{
"end": 1032,
"key": {
"end": 991,
"name": "origin",
"start": 985,
"type": "Identifier"
},
"start": 985,
"type": "ObjectProperty",
"value": {
"end": 1032,
"properties": [
{
"end": 1001,
"key": {
"end": 997,
"name": "x",
"start": 996,
"type": "Identifier"
},
"start": 996,
"type": "ObjectProperty",
"value": {
"end": 1001,
"raw": "0",
"start": 1000,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 1023,
"key": {
"end": 1004,
"name": "y",
"start": 1003,
"type": "Identifier"
},
"start": 1003,
"type": "ObjectProperty",
"value": {
"end": 1023,
"left": {
"end": 1017,
"left": {
"end": 1013,
"name": "length",
"start": 1007,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 1017,
"raw": "2",
"start": 1016,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 1007,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 1023,
"name": "thk",
"start": 1020,
"type": "Identifier",
"type": "Identifier"
},
"start": 1007,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
},
{
"end": 1030,
"key": {
"end": 1026,
"name": "z",
"start": 1025,
"type": "Identifier"
},
"start": 1025,
"type": "ObjectProperty",
"value": {
"end": 1030,
"raw": "0",
"start": 1029,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
}
],
"start": 994,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
},
{
"end": 1069,
"key": {
"end": 1043,
"name": "xAxis",
"start": 1038,
"type": "Identifier"
},
"start": 1038,
"type": "ObjectProperty",
"value": {
"end": 1069,
"properties": [
{
"end": 1053,
"key": {
"end": 1049,
"name": "x",
"start": 1048,
"type": "Identifier"
},
"start": 1048,
"type": "ObjectProperty",
"value": {
"end": 1053,
"raw": "1",
"start": 1052,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
},
{
"end": 1060,
"key": {
"end": 1056,
"name": "y",
"start": 1055,
"type": "Identifier"
},
"start": 1055,
"type": "ObjectProperty",
"value": {
"end": 1060,
"raw": "0",
"start": 1059,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 1067,
"key": {
"end": 1063,
"name": "z",
"start": 1062,
"type": "Identifier"
},
"start": 1062,
"type": "ObjectProperty",
"value": {
"end": 1067,
"raw": "0",
"start": 1066,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
}
],
"start": 1046,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
},
{
"end": 1106,
"key": {
"end": 1080,
"name": "yAxis",
"start": 1075,
"type": "Identifier"
},
"start": 1075,
"type": "ObjectProperty",
"value": {
"end": 1106,
"properties": [
{
"end": 1090,
"key": {
"end": 1086,
"name": "x",
"start": 1085,
"type": "Identifier"
},
"start": 1085,
"type": "ObjectProperty",
"value": {
"end": 1090,
"raw": "0",
"start": 1089,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 1097,
"key": {
"end": 1093,
"name": "y",
"start": 1092,
"type": "Identifier"
},
"start": 1092,
"type": "ObjectProperty",
"value": {
"end": 1097,
"raw": "0",
"start": 1096,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 1104,
"key": {
"end": 1100,
"name": "z",
"start": 1099,
"type": "Identifier"
},
"start": 1099,
"type": "ObjectProperty",
"value": {
"end": 1104,
"raw": "1",
"start": 1103,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
}
],
"start": 1083,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
},
{
"end": 1144,
"key": {
"end": 1117,
"name": "zAxis",
"start": 1112,
"type": "Identifier"
},
"start": 1112,
"type": "ObjectProperty",
"value": {
"end": 1144,
"properties": [
{
"end": 1127,
"key": {
"end": 1123,
"name": "x",
"start": 1122,
"type": "Identifier"
},
"start": 1122,
"type": "ObjectProperty",
"value": {
"end": 1127,
"raw": "0",
"start": 1126,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 1135,
"key": {
"end": 1130,
"name": "y",
"start": 1129,
"type": "Identifier"
},
"start": 1129,
"type": "ObjectProperty",
"value": {
"argument": {
"end": 1135,
"raw": "1",
"start": 1134,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"end": 1135,
"operator": "-",
"start": 1133,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
},
{
"end": 1142,
"key": {
"end": 1138,
"name": "z",
"start": 1137,
"type": "Identifier"
},
"start": 1137,
"type": "ObjectProperty",
"value": {
"end": 1142,
"raw": "0",
"start": 1141,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
}
],
"start": 1120,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
}
],
"start": 979,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
}
],
"start": 967,
"type": "ObjectExpression",
"type": "ObjectExpression"
},
"start": 952,
"type": "VariableDeclarator"
},
"end": 1150,
"kind": "const",
"start": 952,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 1736,
"id": {
"end": 1212,
"name": "bracketSketch",
"start": 1199,
"type": "Identifier"
},
"init": {
"body": {
"body": [
{
"declaration": {
"end": 1723,
"id": {
"end": 1227,
"name": "s",
"start": 1226,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"end": 1256,
"name": "bracketPlane",
"start": 1244,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 1243,
"name": "startSketchOn",
"start": 1230,
"type": "Identifier"
},
"end": 1257,
"start": 1230,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 1291,
"left": {
"end": 1287,
"left": {
"argument": {
"end": 1283,
"name": "w",
"start": 1282,
"type": "Identifier",
"type": "Identifier"
},
"end": 1283,
"operator": "-",
"start": 1281,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 1287,
"raw": "2",
"start": 1286,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 1281,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"end": 1291,
"name": "t",
"start": 1290,
"type": "Identifier",
"type": "Identifier"
},
"start": 1281,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 1298,
"left": {
"end": 1294,
"name": "d",
"start": 1293,
"type": "Identifier",
"type": "Identifier"
},
"operator": "+",
"right": {
"end": 1298,
"name": "t",
"start": 1297,
"type": "Identifier",
"type": "Identifier"
},
"start": 1293,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 1299,
"start": 1280,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 1302,
"start": 1301,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 1279,
"name": "startProfileAt",
"start": 1265,
"type": "Identifier"
},
"end": 1303,
"start": 1265,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1327,
"name": "endAbsolute",
"start": 1316,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1341,
"left": {
"end": 1337,
"left": {
"argument": {
"end": 1333,
"name": "w",
"start": 1332,
"type": "Identifier",
"type": "Identifier"
},
"end": 1333,
"operator": "-",
"start": 1331,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 1337,
"raw": "2",
"start": 1336,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 1331,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"end": 1341,
"name": "t",
"start": 1340,
"type": "Identifier",
"type": "Identifier"
},
"start": 1331,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"argument": {
"end": 1345,
"name": "t",
"start": 1344,
"type": "Identifier",
"type": "Identifier"
},
"end": 1345,
"operator": "-",
"start": 1343,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 1346,
"start": 1330,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1351,
"name": "tag",
"start": 1348,
"type": "Identifier"
},
"arg": {
"end": 1360,
"start": 1354,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge1"
}
}
],
"callee": {
"end": 1315,
"name": "line",
"start": 1311,
"type": "Identifier"
},
"end": 1361,
"start": 1311,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1385,
"name": "endAbsolute",
"start": 1374,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1398,
"left": {
"end": 1394,
"left": {
"end": 1390,
"name": "w",
"start": 1389,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 1394,
"raw": "2",
"start": 1393,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 1389,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 1398,
"name": "t",
"start": 1397,
"type": "Identifier",
"type": "Identifier"
},
"start": 1389,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"argument": {
"end": 1402,
"name": "t",
"start": 1401,
"type": "Identifier",
"type": "Identifier"
},
"end": 1402,
"operator": "-",
"start": 1400,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 1403,
"start": 1388,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1408,
"name": "tag",
"start": 1405,
"type": "Identifier"
},
"arg": {
"end": 1417,
"start": 1411,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge2"
}
}
],
"callee": {
"end": 1373,
"name": "line",
"start": 1369,
"type": "Identifier"
},
"end": 1418,
"start": 1369,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1442,
"name": "endAbsolute",
"start": 1431,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1455,
"left": {
"end": 1451,
"left": {
"end": 1447,
"name": "w",
"start": 1446,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 1451,
"raw": "2",
"start": 1450,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 1446,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 1455,
"name": "t",
"start": 1454,
"type": "Identifier",
"type": "Identifier"
},
"start": 1446,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 1462,
"left": {
"end": 1458,
"name": "d",
"start": 1457,
"type": "Identifier",
"type": "Identifier"
},
"operator": "+",
"right": {
"end": 1462,
"name": "t",
"start": 1461,
"type": "Identifier",
"type": "Identifier"
},
"start": 1457,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 1463,
"start": 1445,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1468,
"name": "tag",
"start": 1465,
"type": "Identifier"
},
"arg": {
"end": 1477,
"start": 1471,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge3"
}
}
],
"callee": {
"end": 1430,
"name": "line",
"start": 1426,
"type": "Identifier"
},
"end": 1478,
"start": 1426,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1502,
"name": "endAbsolute",
"start": 1491,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1511,
"left": {
"end": 1507,
"name": "w",
"start": 1506,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 1511,
"raw": "2",
"start": 1510,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 1506,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 1518,
"left": {
"end": 1514,
"name": "d",
"start": 1513,
"type": "Identifier",
"type": "Identifier"
},
"operator": "+",
"right": {
"end": 1518,
"name": "t",
"start": 1517,
"type": "Identifier",
"type": "Identifier"
},
"start": 1513,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 1519,
"start": 1505,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1524,
"name": "tag",
"start": 1521,
"type": "Identifier"
},
"arg": {
"end": 1533,
"start": 1527,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge4"
}
}
],
"callee": {
"end": 1490,
"name": "line",
"start": 1486,
"type": "Identifier"
},
"end": 1534,
"start": 1486,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1558,
"name": "endAbsolute",
"start": 1547,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1567,
"left": {
"end": 1563,
"name": "w",
"start": 1562,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 1567,
"raw": "2",
"start": 1566,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 1562,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 1570,
"raw": "0",
"start": 1569,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 1571,
"start": 1561,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1576,
"name": "tag",
"start": 1573,
"type": "Identifier"
},
"arg": {
"end": 1585,
"start": 1579,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge5"
}
}
],
"callee": {
"end": 1546,
"name": "line",
"start": 1542,
"type": "Identifier"
},
"end": 1586,
"start": 1542,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1610,
"name": "endAbsolute",
"start": 1599,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1620,
"left": {
"argument": {
"end": 1616,
"name": "w",
"start": 1615,
"type": "Identifier",
"type": "Identifier"
},
"end": 1616,
"operator": "-",
"start": 1614,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 1620,
"raw": "2",
"start": 1619,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 1614,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 1623,
"raw": "0",
"start": 1622,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 1624,
"start": 1613,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1629,
"name": "tag",
"start": 1626,
"type": "Identifier"
},
"arg": {
"end": 1638,
"start": 1632,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge6"
}
}
],
"callee": {
"end": 1598,
"name": "line",
"start": 1594,
"type": "Identifier"
},
"end": 1639,
"start": 1594,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1663,
"name": "endAbsolute",
"start": 1652,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1673,
"left": {
"argument": {
"end": 1669,
"name": "w",
"start": 1668,
"type": "Identifier",
"type": "Identifier"
},
"end": 1669,
"operator": "-",
"start": 1667,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 1673,
"raw": "2",
"start": 1672,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 1667,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 1680,
"left": {
"end": 1676,
"name": "d",
"start": 1675,
"type": "Identifier",
"type": "Identifier"
},
"operator": "+",
"right": {
"end": 1680,
"name": "t",
"start": 1679,
"type": "Identifier",
"type": "Identifier"
},
"start": 1675,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 1681,
"start": 1666,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1686,
"name": "tag",
"start": 1683,
"type": "Identifier"
},
"arg": {
"end": 1695,
"start": 1689,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge7"
}
}
],
"callee": {
"end": 1651,
"name": "line",
"start": 1647,
"type": "Identifier"
},
"end": 1696,
"start": 1647,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1713,
"name": "tag",
"start": 1710,
"type": "Identifier"
},
"arg": {
"end": 1722,
"start": 1716,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge8"
}
}
],
"callee": {
"end": 1709,
"name": "close",
"start": 1704,
"type": "Identifier"
},
"end": 1723,
"start": 1704,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 1723,
"start": 1230,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 1226,
"type": "VariableDeclarator"
},
"end": 1723,
"kind": "const",
"start": 1226,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"argument": {
"end": 1734,
"name": "s",
"start": 1733,
"type": "Identifier",
"type": "Identifier"
},
"end": 1734,
"start": 1726,
"type": "ReturnStatement",
"type": "ReturnStatement"
}
],
"end": 1736,
"start": 1222
},
"end": 1736,
"params": [
{
"type": "Parameter",
"identifier": {
"end": 1214,
"name": "w",
"start": 1213,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"end": 1217,
"name": "d",
"start": 1216,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"end": 1220,
"name": "t",
"start": 1219,
"type": "Identifier"
}
}
],
"start": 1212,
"type": "FunctionExpression",
"type": "FunctionExpression"
},
"start": 1199,
"type": "VariableDeclarator"
},
"end": 1736,
"kind": "fn",
"start": 1196,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 1808,
"id": {
"end": 1773,
"name": "bs",
"start": 1771,
"type": "Identifier"
},
"init": {
"arguments": [
{
"end": 1795,
"name": "width",
"start": 1790,
"type": "Identifier",
"type": "Identifier"
},
{
"end": 1802,
"name": "depth",
"start": 1797,
"type": "Identifier",
"type": "Identifier"
},
{
"end": 1807,
"name": "thk",
"start": 1804,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 1789,
"name": "bracketSketch",
"start": 1776,
"type": "Identifier"
},
"end": 1808,
"start": 1776,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 1771,
"type": "VariableDeclarator"
},
"end": 1808,
"kind": "const",
"start": 1771,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 2154,
"id": {
"end": 1820,
"name": "bracketBody",
"start": 1809,
"type": "Identifier"
},
"init": {
"body": [
{
"end": 1825,
"name": "bs",
"start": 1823,
"type": "Identifier",
"type": "Identifier"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1845,
"name": "length",
"start": 1839,
"type": "Identifier"
},
"arg": {
"end": 1864,
"left": {
"end": 1854,
"name": "length",
"start": 1848,
"type": "Identifier",
"type": "Identifier"
},
"operator": "+",
"right": {
"end": 1864,
"left": {
"end": 1858,
"raw": "2",
"start": 1857,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"operator": "*",
"right": {
"end": 1864,
"name": "thk",
"start": 1861,
"type": "Identifier",
"type": "Identifier"
},
"start": 1857,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 1848,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
}
],
"callee": {
"end": 1838,
"name": "extrude",
"start": 1831,
"type": "Identifier"
},
"end": 1865,
"start": 1831,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1892,
"name": "radius",
"start": 1886,
"type": "Identifier"
},
"arg": {
"end": 1901,
"name": "radius",
"start": 1895,
"type": "Identifier",
"type": "Identifier"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1914,
"name": "tags",
"start": 1910,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"computed": false,
"end": 1965,
"object": {
"computed": false,
"end": 1959,
"object": {
"end": 1954,
"name": "bs",
"start": 1952,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 1959,
"name": "tags",
"start": 1955,
"type": "Identifier",
"type": "Identifier"
},
"start": 1952,
"type": "MemberExpression",
"type": "MemberExpression"
},
"property": {
"end": 1965,
"name": "edge7",
"start": 1960,
"type": "Identifier",
"type": "Identifier"
},
"start": 1952,
"type": "MemberExpression",
"type": "MemberExpression"
}
],
"callee": {
"end": 1951,
"name": "getPreviousAdjacentEdge",
"start": 1928,
"type": "Identifier"
},
"end": 1966,
"start": 1928,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"computed": false,
"end": 2014,
"object": {
"computed": false,
"end": 2008,
"object": {
"end": 2003,
"name": "bs",
"start": 2001,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 2008,
"name": "tags",
"start": 2004,
"type": "Identifier",
"type": "Identifier"
},
"start": 2001,
"type": "MemberExpression",
"type": "MemberExpression"
},
"property": {
"end": 2014,
"name": "edge2",
"start": 2009,
"type": "Identifier",
"type": "Identifier"
},
"start": 2001,
"type": "MemberExpression",
"type": "MemberExpression"
}
],
"callee": {
"end": 2000,
"name": "getPreviousAdjacentEdge",
"start": 1977,
"type": "Identifier"
},
"end": 2015,
"start": 1977,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"computed": false,
"end": 2063,
"object": {
"computed": false,
"end": 2057,
"object": {
"end": 2052,
"name": "bs",
"start": 2050,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 2057,
"name": "tags",
"start": 2053,
"type": "Identifier",
"type": "Identifier"
},
"start": 2050,
"type": "MemberExpression",
"type": "MemberExpression"
},
"property": {
"end": 2063,
"name": "edge3",
"start": 2058,
"type": "Identifier",
"type": "Identifier"
},
"start": 2050,
"type": "MemberExpression",
"type": "MemberExpression"
}
],
"callee": {
"end": 2049,
"name": "getPreviousAdjacentEdge",
"start": 2026,
"type": "Identifier"
},
"end": 2064,
"start": 2026,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"computed": false,
"end": 2112,
"object": {
"computed": false,
"end": 2106,
"object": {
"end": 2101,
"name": "bs",
"start": 2099,
"type": "Identifier",
"type": "Identifier"
},
"property": {
"end": 2106,
"name": "tags",
"start": 2102,
"type": "Identifier",
"type": "Identifier"
},
"start": 2099,
"type": "MemberExpression",
"type": "MemberExpression"
},
"property": {
"end": 2112,
"name": "edge6",
"start": 2107,
"type": "Identifier",
"type": "Identifier"
},
"start": 2099,
"type": "MemberExpression",
"type": "MemberExpression"
}
],
"callee": {
"end": 2098,
"name": "getPreviousAdjacentEdge",
"start": 2075,
"type": "Identifier"
},
"end": 2113,
"start": 2075,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 2122,
"start": 1917,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 1877,
"name": "fillet",
"start": 1871,
"type": "Identifier"
},
"end": 2129,
"start": 1871,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 2154,
"nonCodeMeta": {
"nonCodeNodes": {
"2": [
{
"end": 2154,
"start": 2129,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "define the tab plane",
"style": "line"
}
}
]
},
"startNodes": []
},
"start": 1823,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 1809,
"type": "VariableDeclarator"
},
"end": 2154,
"kind": "const",
"start": 1809,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 2343,
"id": {
"end": 2163,
"name": "tabPlane",
"start": 2155,
"type": "Identifier"
},
"init": {
"end": 2343,
"properties": [
{
"end": 2341,
"key": {
"end": 2175,
"name": "plane",
"start": 2170,
"type": "Identifier"
},
"start": 2170,
"type": "ObjectProperty",
"value": {
"end": 2341,
"properties": [
{
"end": 2226,
"key": {
"end": 2190,
"name": "origin",
"start": 2184,
"type": "Identifier"
},
"start": 2184,
"type": "ObjectProperty",
"value": {
"end": 2226,
"properties": [
{
"end": 2200,
"key": {
"end": 2196,
"name": "x",
"start": 2195,
"type": "Identifier"
},
"start": 2195,
"type": "ObjectProperty",
"value": {
"end": 2200,
"raw": "0",
"start": 2199,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 2207,
"key": {
"end": 2203,
"name": "y",
"start": 2202,
"type": "Identifier"
},
"start": 2202,
"type": "ObjectProperty",
"value": {
"end": 2207,
"raw": "0",
"start": 2206,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 2224,
"key": {
"end": 2210,
"name": "z",
"start": 2209,
"type": "Identifier"
},
"start": 2209,
"type": "ObjectProperty",
"value": {
"end": 2224,
"left": {
"end": 2218,
"name": "depth",
"start": 2213,
"type": "Identifier",
"type": "Identifier"
},
"operator": "+",
"right": {
"end": 2224,
"name": "thk",
"start": 2221,
"type": "Identifier",
"type": "Identifier"
},
"start": 2213,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
}
],
"start": 2193,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
},
{
"end": 2263,
"key": {
"end": 2237,
"name": "xAxis",
"start": 2232,
"type": "Identifier"
},
"start": 2232,
"type": "ObjectProperty",
"value": {
"end": 2263,
"properties": [
{
"end": 2247,
"key": {
"end": 2243,
"name": "x",
"start": 2242,
"type": "Identifier"
},
"start": 2242,
"type": "ObjectProperty",
"value": {
"end": 2247,
"raw": "1",
"start": 2246,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
},
{
"end": 2254,
"key": {
"end": 2250,
"name": "y",
"start": 2249,
"type": "Identifier"
},
"start": 2249,
"type": "ObjectProperty",
"value": {
"end": 2254,
"raw": "0",
"start": 2253,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 2261,
"key": {
"end": 2257,
"name": "z",
"start": 2256,
"type": "Identifier"
},
"start": 2256,
"type": "ObjectProperty",
"value": {
"end": 2261,
"raw": "0",
"start": 2260,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
}
],
"start": 2240,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
},
{
"end": 2300,
"key": {
"end": 2274,
"name": "yAxis",
"start": 2269,
"type": "Identifier"
},
"start": 2269,
"type": "ObjectProperty",
"value": {
"end": 2300,
"properties": [
{
"end": 2284,
"key": {
"end": 2280,
"name": "x",
"start": 2279,
"type": "Identifier"
},
"start": 2279,
"type": "ObjectProperty",
"value": {
"end": 2284,
"raw": "0",
"start": 2283,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 2291,
"key": {
"end": 2287,
"name": "y",
"start": 2286,
"type": "Identifier"
},
"start": 2286,
"type": "ObjectProperty",
"value": {
"end": 2291,
"raw": "1",
"start": 2290,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
},
{
"end": 2298,
"key": {
"end": 2294,
"name": "z",
"start": 2293,
"type": "Identifier"
},
"start": 2293,
"type": "ObjectProperty",
"value": {
"end": 2298,
"raw": "0",
"start": 2297,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
}
],
"start": 2277,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
},
{
"end": 2337,
"key": {
"end": 2311,
"name": "zAxis",
"start": 2306,
"type": "Identifier"
},
"start": 2306,
"type": "ObjectProperty",
"value": {
"end": 2337,
"properties": [
{
"end": 2321,
"key": {
"end": 2317,
"name": "x",
"start": 2316,
"type": "Identifier"
},
"start": 2316,
"type": "ObjectProperty",
"value": {
"end": 2321,
"raw": "0",
"start": 2320,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 2328,
"key": {
"end": 2324,
"name": "y",
"start": 2323,
"type": "Identifier"
},
"start": 2323,
"type": "ObjectProperty",
"value": {
"end": 2328,
"raw": "0",
"start": 2327,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 2335,
"key": {
"end": 2331,
"name": "z",
"start": 2330,
"type": "Identifier"
},
"start": 2330,
"type": "ObjectProperty",
"value": {
"end": 2335,
"raw": "1",
"start": 2334,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
}
],
"start": 2314,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
}
],
"start": 2178,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
}
],
"start": 2166,
"type": "ObjectExpression",
"type": "ObjectExpression"
},
"start": 2155,
"type": "VariableDeclarator"
},
"end": 2343,
"kind": "const",
"start": 2155,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 3239,
"id": {
"end": 2405,
"name": "tabsR",
"start": 2400,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"end": 2430,
"name": "tabPlane",
"start": 2422,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 2421,
"name": "startSketchOn",
"start": 2408,
"type": "Identifier"
},
"end": 2431,
"start": 2408,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 2468,
"left": {
"end": 2462,
"left": {
"end": 2458,
"name": "width",
"start": 2453,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 2462,
"raw": "2",
"start": 2461,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 2453,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 2468,
"name": "thk",
"start": 2465,
"type": "Identifier",
"type": "Identifier"
},
"start": 2453,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 2486,
"left": {
"end": 2480,
"left": {
"end": 2476,
"name": "length",
"start": 2470,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 2480,
"raw": "2",
"start": 2479,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 2470,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 2486,
"name": "thk",
"start": 2483,
"type": "Identifier",
"type": "Identifier"
},
"start": 2470,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 2487,
"start": 2452,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 2490,
"start": 2489,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 2451,
"name": "startProfileAt",
"start": 2437,
"type": "Identifier"
},
"end": 2491,
"start": 2437,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2505,
"name": "end",
"start": 2502,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 2517,
"name": "tabWidth",
"start": 2509,
"type": "Identifier",
"type": "Identifier"
},
{
"end": 2533,
"left": {
"argument": {
"end": 2529,
"name": "tabLength",
"start": 2520,
"type": "Identifier",
"type": "Identifier"
},
"end": 2529,
"operator": "-",
"start": 2519,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 2533,
"raw": "3",
"start": 2532,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 2519,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 2534,
"start": 2508,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2539,
"name": "tag",
"start": 2536,
"type": "Identifier"
},
"arg": {
"end": 2549,
"start": 2542,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge11"
}
}
],
"callee": {
"end": 2501,
"name": "line",
"start": 2497,
"type": "Identifier"
},
"end": 2550,
"start": 2497,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2564,
"name": "end",
"start": 2561,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 2569,
"raw": "0",
"start": 2568,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 2589,
"left": {
"end": 2585,
"left": {
"argument": {
"end": 2581,
"name": "tabLength",
"start": 2572,
"type": "Identifier",
"type": "Identifier"
},
"end": 2581,
"operator": "-",
"start": 2571,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 2585,
"raw": "3",
"start": 2584,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 2571,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "*",
"right": {
"end": 2589,
"raw": "2",
"start": 2588,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 2571,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 2590,
"start": 2567,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2595,
"name": "tag",
"start": 2592,
"type": "Identifier"
},
"arg": {
"end": 2605,
"start": 2598,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge12"
}
}
],
"callee": {
"end": 2560,
"name": "line",
"start": 2556,
"type": "Identifier"
},
"end": 2606,
"start": 2556,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2620,
"name": "end",
"start": 2617,
"type": "Identifier"
},
"arg": {
"elements": [
{
"argument": {
"end": 2633,
"name": "tabWidth",
"start": 2625,
"type": "Identifier",
"type": "Identifier"
},
"end": 2633,
"operator": "-",
"start": 2624,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"end": 2649,
"left": {
"argument": {
"end": 2645,
"name": "tabLength",
"start": 2636,
"type": "Identifier",
"type": "Identifier"
},
"end": 2645,
"operator": "-",
"start": 2635,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 2649,
"raw": "3",
"start": 2648,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 2635,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 2650,
"start": 2623,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2655,
"name": "tag",
"start": 2652,
"type": "Identifier"
},
"arg": {
"end": 2665,
"start": 2658,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge13"
}
}
],
"callee": {
"end": 2616,
"name": "line",
"start": 2612,
"type": "Identifier"
},
"end": 2666,
"start": 2612,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2681,
"name": "tag",
"start": 2678,
"type": "Identifier"
},
"arg": {
"end": 2691,
"start": 2684,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge14"
}
}
],
"callee": {
"end": 2677,
"name": "close",
"start": 2672,
"type": "Identifier"
},
"end": 2692,
"start": 2672,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2724,
"name": "center",
"start": 2718,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 2768,
"left": {
"end": 2753,
"left": {
"end": 2747,
"left": {
"end": 2743,
"name": "width",
"start": 2738,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 2747,
"raw": "2",
"start": 2746,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 2738,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 2753,
"name": "thk",
"start": 2750,
"type": "Identifier",
"type": "Identifier"
},
"start": 2738,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 2768,
"left": {
"end": 2764,
"name": "tabWidth",
"start": 2756,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 2768,
"raw": "2",
"start": 2767,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 2756,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 2738,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 2817,
"left": {
"end": 2795,
"left": {
"end": 2789,
"left": {
"end": 2785,
"name": "length",
"start": 2779,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 2789,
"raw": "2",
"start": 2788,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 2779,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 2795,
"name": "thk",
"start": 2792,
"type": "Identifier",
"type": "Identifier"
},
"start": 2779,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"end": 2817,
"left": {
"end": 2808,
"name": "tabLength",
"start": 2799,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 2817,
"left": {
"end": 2813,
"raw": "3",
"start": 2812,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"operator": "/",
"right": {
"end": 2817,
"raw": "2",
"start": 2816,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 2812,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 2799,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 2779,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 2828,
"start": 2727,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2843,
"name": "radius",
"start": 2837,
"type": "Identifier"
},
"arg": {
"end": 2858,
"left": {
"end": 2854,
"name": "holeDiam",
"start": 2846,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 2858,
"raw": "2",
"start": 2857,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 2846,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
}
],
"callee": {
"end": 2709,
"name": "circle",
"start": 2703,
"type": "Identifier"
},
"end": 2865,
"start": 2703,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"end": 2868,
"start": 2867,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 2702,
"name": "hole",
"start": 2698,
"type": "Identifier"
},
"end": 2869,
"start": 2698,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2889,
"name": "length",
"start": 2883,
"type": "Identifier"
},
"arg": {
"argument": {
"end": 2899,
"name": "tabThk",
"start": 2893,
"type": "Identifier",
"type": "Identifier"
},
"end": 2899,
"operator": "-",
"start": 2892,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
}
],
"callee": {
"end": 2882,
"name": "extrude",
"start": 2875,
"type": "Identifier"
},
"end": 2900,
"start": 2875,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2927,
"name": "radius",
"start": 2921,
"type": "Identifier"
},
"arg": {
"end": 2942,
"left": {
"end": 2938,
"name": "holeDiam",
"start": 2930,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 2942,
"raw": "2",
"start": 2941,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 2930,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2955,
"name": "tags",
"start": 2951,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 2995,
"name": "edge11",
"start": 2989,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 2988,
"name": "getNextAdjacentEdge",
"start": 2969,
"type": "Identifier"
},
"end": 2996,
"start": 2969,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"end": 3033,
"name": "edge12",
"start": 3027,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 3026,
"name": "getNextAdjacentEdge",
"start": 3007,
"type": "Identifier"
},
"end": 3034,
"start": 3007,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 3043,
"start": 2958,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 2912,
"name": "fillet",
"start": 2906,
"type": "Identifier"
},
"end": 3050,
"start": 2906,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 3084,
"name": "axis",
"start": 3080,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 3089,
"raw": "0",
"start": 3088,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"argument": {
"end": 3093,
"raw": "1",
"start": 3092,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"end": 3093,
"operator": "-",
"start": 3091,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"end": 3096,
"raw": "0",
"start": 3095,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 3097,
"start": 3087,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 3115,
"name": "instances",
"start": 3106,
"type": "Identifier"
},
"arg": {
"end": 3119,
"raw": "2",
"start": 3118,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
}
},
{
"type": "LabeledArg",
"label": {
"end": 3136,
"name": "distance",
"start": 3128,
"type": "Identifier"
},
"arg": {
"end": 3176,
"left": {
"end": 3155,
"left": {
"end": 3145,
"name": "length",
"start": 3139,
"type": "Identifier",
"type": "Identifier"
},
"operator": "+",
"right": {
"end": 3155,
"left": {
"end": 3149,
"raw": "2",
"start": 3148,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"operator": "*",
"right": {
"end": 3155,
"name": "thk",
"start": 3152,
"type": "Identifier",
"type": "Identifier"
},
"start": 3148,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 3139,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"end": 3176,
"left": {
"end": 3172,
"left": {
"end": 3168,
"name": "tabLength",
"start": 3159,
"type": "Identifier",
"type": "Identifier"
},
"operator": "*",
"right": {
"end": 3172,
"raw": "4",
"start": 3171,
"type": "Literal",
"type": "Literal",
"value": {
"value": 4.0,
"suffix": "None"
}
},
"start": 3159,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "/",
"right": {
"end": 3176,
"raw": "3",
"start": 3175,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 3159,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 3139,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
}
],
"callee": {
"end": 3071,
"name": "patternLinear3d",
"start": 3056,
"type": "Identifier"
},
"end": 3184,
"start": 3056,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 3239,
"nonCodeMeta": {
"nonCodeNodes": {
"9": [
{
"end": 3239,
"start": 3184,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "build the tabs of the mounting bracket (left side)",
"style": "line"
}
}
]
},
"startNodes": []
},
"start": 2408,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 2400,
"type": "VariableDeclarator"
},
"end": 3239,
"kind": "const",
"start": 2400,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 4067,
"id": {
"end": 3245,
"name": "tabsL",
"start": 3240,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"end": 3270,
"name": "tabPlane",
"start": 3262,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 3261,
"name": "startSketchOn",
"start": 3248,
"type": "Identifier"
},
"end": 3271,
"start": 3248,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 3309,
"left": {
"end": 3303,
"left": {
"argument": {
"end": 3299,
"name": "width",
"start": 3294,
"type": "Identifier",
"type": "Identifier"
},
"end": 3299,
"operator": "-",
"start": 3293,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 3303,
"raw": "2",
"start": 3302,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 3293,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"end": 3309,
"name": "thk",
"start": 3306,
"type": "Identifier",
"type": "Identifier"
},
"start": 3293,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 3327,
"left": {
"end": 3321,
"left": {
"end": 3317,
"name": "length",
"start": 3311,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 3321,
"raw": "2",
"start": 3320,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 3311,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 3327,
"name": "thk",
"start": 3324,
"type": "Identifier",
"type": "Identifier"
},
"start": 3311,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 3328,
"start": 3292,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 3331,
"start": 3330,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 3291,
"name": "startProfileAt",
"start": 3277,
"type": "Identifier"
},
"end": 3332,
"start": 3277,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 3346,
"name": "end",
"start": 3343,
"type": "Identifier"
},
"arg": {
"elements": [
{
"argument": {
"end": 3359,
"name": "tabWidth",
"start": 3351,
"type": "Identifier",
"type": "Identifier"
},
"end": 3359,
"operator": "-",
"start": 3350,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"end": 3375,
"left": {
"argument": {
"end": 3371,
"name": "tabLength",
"start": 3362,
"type": "Identifier",
"type": "Identifier"
},
"end": 3371,
"operator": "-",
"start": 3361,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 3375,
"raw": "3",
"start": 3374,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 3361,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 3376,
"start": 3349,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 3381,
"name": "tag",
"start": 3378,
"type": "Identifier"
},
"arg": {
"end": 3391,
"start": 3384,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge21"
}
}
],
"callee": {
"end": 3342,
"name": "line",
"start": 3338,
"type": "Identifier"
},
"end": 3392,
"start": 3338,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 3406,
"name": "end",
"start": 3403,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 3411,
"raw": "0",
"start": 3410,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 3431,
"left": {
"end": 3427,
"left": {
"argument": {
"end": 3423,
"name": "tabLength",
"start": 3414,
"type": "Identifier",
"type": "Identifier"
},
"end": 3423,
"operator": "-",
"start": 3413,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 3427,
"raw": "3",
"start": 3426,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 3413,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "*",
"right": {
"end": 3431,
"raw": "2",
"start": 3430,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 3413,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 3432,
"start": 3409,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 3437,
"name": "tag",
"start": 3434,
"type": "Identifier"
},
"arg": {
"end": 3447,
"start": 3440,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge22"
}
}
],
"callee": {
"end": 3402,
"name": "line",
"start": 3398,
"type": "Identifier"
},
"end": 3448,
"start": 3398,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 3462,
"name": "end",
"start": 3459,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 3474,
"name": "tabWidth",
"start": 3466,
"type": "Identifier",
"type": "Identifier"
},
{
"end": 3490,
"left": {
"argument": {
"end": 3486,
"name": "tabLength",
"start": 3477,
"type": "Identifier",
"type": "Identifier"
},
"end": 3486,
"operator": "-",
"start": 3476,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 3490,
"raw": "3",
"start": 3489,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 3476,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 3491,
"start": 3465,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 3496,
"name": "tag",
"start": 3493,
"type": "Identifier"
},
"arg": {
"end": 3506,
"start": 3499,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge23"
}
}
],
"callee": {
"end": 3458,
"name": "line",
"start": 3454,
"type": "Identifier"
},
"end": 3507,
"start": 3454,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 3522,
"name": "tag",
"start": 3519,
"type": "Identifier"
},
"arg": {
"end": 3532,
"start": 3525,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "edge24"
}
}
],
"callee": {
"end": 3518,
"name": "close",
"start": 3513,
"type": "Identifier"
},
"end": 3533,
"start": 3513,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 3565,
"name": "center",
"start": 3559,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 3611,
"left": {
"end": 3595,
"left": {
"end": 3589,
"left": {
"argument": {
"end": 3585,
"name": "width",
"start": 3580,
"type": "Identifier",
"type": "Identifier"
},
"end": 3585,
"operator": "-",
"start": 3579,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 3589,
"raw": "2",
"start": 3588,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 3579,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"end": 3595,
"name": "thk",
"start": 3592,
"type": "Identifier",
"type": "Identifier"
},
"start": 3579,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"end": 3611,
"left": {
"end": 3607,
"name": "tabWidth",
"start": 3599,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 3611,
"raw": "2",
"start": 3610,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 3599,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 3579,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 3661,
"left": {
"end": 3639,
"left": {
"end": 3633,
"left": {
"end": 3629,
"name": "length",
"start": 3623,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 3633,
"raw": "2",
"start": 3632,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 3623,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 3639,
"name": "thk",
"start": 3636,
"type": "Identifier",
"type": "Identifier"
},
"start": 3623,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"end": 3661,
"left": {
"end": 3652,
"name": "tabLength",
"start": 3643,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 3661,
"left": {
"end": 3657,
"raw": "3",
"start": 3656,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"operator": "/",
"right": {
"end": 3661,
"raw": "2",
"start": 3660,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 3656,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 3643,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 3623,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 3672,
"start": 3568,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 3687,
"name": "radius",
"start": 3681,
"type": "Identifier"
},
"arg": {
"end": 3702,
"left": {
"end": 3698,
"name": "holeDiam",
"start": 3690,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 3702,
"raw": "2",
"start": 3701,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 3690,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
}
],
"callee": {
"end": 3550,
"name": "circle",
"start": 3544,
"type": "Identifier"
},
"end": 3709,
"start": 3544,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"end": 3712,
"start": 3711,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 3543,
"name": "hole",
"start": 3539,
"type": "Identifier"
},
"end": 3713,
"start": 3539,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 3733,
"name": "length",
"start": 3727,
"type": "Identifier"
},
"arg": {
"argument": {
"end": 3743,
"name": "tabThk",
"start": 3737,
"type": "Identifier",
"type": "Identifier"
},
"end": 3743,
"operator": "-",
"start": 3736,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
}
],
"callee": {
"end": 3726,
"name": "extrude",
"start": 3719,
"type": "Identifier"
},
"end": 3744,
"start": 3719,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 3771,
"name": "radius",
"start": 3765,
"type": "Identifier"
},
"arg": {
"end": 3786,
"left": {
"end": 3782,
"name": "holeDiam",
"start": 3774,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 3786,
"raw": "2",
"start": 3785,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 3774,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 3799,
"name": "tags",
"start": 3795,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 3839,
"name": "edge21",
"start": 3833,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 3832,
"name": "getNextAdjacentEdge",
"start": 3813,
"type": "Identifier"
},
"end": 3840,
"start": 3813,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"end": 3877,
"name": "edge22",
"start": 3871,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 3870,
"name": "getNextAdjacentEdge",
"start": 3851,
"type": "Identifier"
},
"end": 3878,
"start": 3851,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 3887,
"start": 3802,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 3756,
"name": "fillet",
"start": 3750,
"type": "Identifier"
},
"end": 3894,
"start": 3750,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 3928,
"name": "axis",
"start": 3924,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 3933,
"raw": "0",
"start": 3932,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"argument": {
"end": 3937,
"raw": "1",
"start": 3936,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"end": 3937,
"operator": "-",
"start": 3935,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"end": 3940,
"raw": "0",
"start": 3939,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 3941,
"start": 3931,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 3959,
"name": "instances",
"start": 3950,
"type": "Identifier"
},
"arg": {
"end": 3963,
"raw": "2",
"start": 3962,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
}
},
{
"type": "LabeledArg",
"label": {
"end": 3980,
"name": "distance",
"start": 3972,
"type": "Identifier"
},
"arg": {
"end": 4020,
"left": {
"end": 3999,
"left": {
"end": 3989,
"name": "length",
"start": 3983,
"type": "Identifier",
"type": "Identifier"
},
"operator": "+",
"right": {
"end": 3999,
"left": {
"end": 3993,
"raw": "2",
"start": 3992,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"operator": "*",
"right": {
"end": 3999,
"name": "thk",
"start": 3996,
"type": "Identifier",
"type": "Identifier"
},
"start": 3992,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 3983,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"end": 4020,
"left": {
"end": 4016,
"left": {
"end": 4012,
"name": "tabLength",
"start": 4003,
"type": "Identifier",
"type": "Identifier"
},
"operator": "*",
"right": {
"end": 4016,
"raw": "4",
"start": 4015,
"type": "Literal",
"type": "Literal",
"value": {
"value": 4.0,
"suffix": "None"
}
},
"start": 4003,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "/",
"right": {
"end": 4020,
"raw": "3",
"start": 4019,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 4003,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 3983,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
}
],
"callee": {
"end": 3915,
"name": "patternLinear3d",
"start": 3900,
"type": "Identifier"
},
"end": 4028,
"start": 3900,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 4067,
"nonCodeMeta": {
"nonCodeNodes": {
"9": [
{
"end": 4067,
"start": 4028,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "define a plane for retention bumps",
"style": "line"
}
}
]
},
"startNodes": []
},
"start": 3248,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 3240,
"type": "VariableDeclarator"
},
"end": 4067,
"kind": "const",
"start": 3240,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 4260,
"id": {
"end": 4076,
"name": "retPlane",
"start": 4068,
"type": "Identifier"
},
"init": {
"end": 4260,
"properties": [
{
"end": 4258,
"key": {
"end": 4088,
"name": "plane",
"start": 4083,
"type": "Identifier"
},
"start": 4083,
"type": "ObjectProperty",
"value": {
"end": 4258,
"properties": [
{
"end": 4143,
"key": {
"end": 4103,
"name": "origin",
"start": 4097,
"type": "Identifier"
},
"start": 4097,
"type": "ObjectProperty",
"value": {
"end": 4143,
"properties": [
{
"end": 4127,
"key": {
"end": 4109,
"name": "x",
"start": 4108,
"type": "Identifier"
},
"start": 4108,
"type": "ObjectProperty",
"value": {
"end": 4127,
"left": {
"end": 4122,
"left": {
"argument": {
"end": 4118,
"name": "width",
"start": 4113,
"type": "Identifier",
"type": "Identifier"
},
"end": 4118,
"operator": "-",
"start": 4112,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 4122,
"raw": "2",
"start": 4121,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 4112,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 4127,
"raw": "20",
"start": 4125,
"type": "Literal",
"type": "Literal",
"value": {
"value": 20.0,
"suffix": "None"
}
},
"start": 4112,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
},
{
"end": 4134,
"key": {
"end": 4130,
"name": "y",
"start": 4129,
"type": "Identifier"
},
"start": 4129,
"type": "ObjectProperty",
"value": {
"end": 4134,
"raw": "0",
"start": 4133,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 4141,
"key": {
"end": 4137,
"name": "z",
"start": 4136,
"type": "Identifier"
},
"start": 4136,
"type": "ObjectProperty",
"value": {
"end": 4141,
"raw": "0",
"start": 4140,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
}
],
"start": 4106,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
},
{
"end": 4180,
"key": {
"end": 4154,
"name": "xAxis",
"start": 4149,
"type": "Identifier"
},
"start": 4149,
"type": "ObjectProperty",
"value": {
"end": 4180,
"properties": [
{
"end": 4164,
"key": {
"end": 4160,
"name": "x",
"start": 4159,
"type": "Identifier"
},
"start": 4159,
"type": "ObjectProperty",
"value": {
"end": 4164,
"raw": "0",
"start": 4163,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 4171,
"key": {
"end": 4167,
"name": "y",
"start": 4166,
"type": "Identifier"
},
"start": 4166,
"type": "ObjectProperty",
"value": {
"end": 4171,
"raw": "1",
"start": 4170,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
},
{
"end": 4178,
"key": {
"end": 4174,
"name": "z",
"start": 4173,
"type": "Identifier"
},
"start": 4173,
"type": "ObjectProperty",
"value": {
"end": 4178,
"raw": "0",
"start": 4177,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
}
],
"start": 4157,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
},
{
"end": 4217,
"key": {
"end": 4191,
"name": "yAxis",
"start": 4186,
"type": "Identifier"
},
"start": 4186,
"type": "ObjectProperty",
"value": {
"end": 4217,
"properties": [
{
"end": 4201,
"key": {
"end": 4197,
"name": "x",
"start": 4196,
"type": "Identifier"
},
"start": 4196,
"type": "ObjectProperty",
"value": {
"end": 4201,
"raw": "0",
"start": 4200,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 4208,
"key": {
"end": 4204,
"name": "y",
"start": 4203,
"type": "Identifier"
},
"start": 4203,
"type": "ObjectProperty",
"value": {
"end": 4208,
"raw": "0",
"start": 4207,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 4215,
"key": {
"end": 4211,
"name": "z",
"start": 4210,
"type": "Identifier"
},
"start": 4210,
"type": "ObjectProperty",
"value": {
"end": 4215,
"raw": "1",
"start": 4214,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
}
],
"start": 4194,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
},
{
"end": 4254,
"key": {
"end": 4228,
"name": "zAxis",
"start": 4223,
"type": "Identifier"
},
"start": 4223,
"type": "ObjectProperty",
"value": {
"end": 4254,
"properties": [
{
"end": 4238,
"key": {
"end": 4234,
"name": "x",
"start": 4233,
"type": "Identifier"
},
"start": 4233,
"type": "ObjectProperty",
"value": {
"end": 4238,
"raw": "1",
"start": 4237,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
},
{
"end": 4245,
"key": {
"end": 4241,
"name": "y",
"start": 4240,
"type": "Identifier"
},
"start": 4240,
"type": "ObjectProperty",
"value": {
"end": 4245,
"raw": "0",
"start": 4244,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
},
{
"end": 4252,
"key": {
"end": 4248,
"name": "z",
"start": 4247,
"type": "Identifier"
},
"start": 4247,
"type": "ObjectProperty",
"value": {
"end": 4252,
"raw": "0",
"start": 4251,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
}
],
"start": 4231,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
}
],
"start": 4091,
"type": "ObjectExpression",
"type": "ObjectExpression"
}
}
],
"start": 4079,
"type": "ObjectExpression",
"type": "ObjectExpression"
},
"start": 4068,
"type": "VariableDeclarator"
},
"end": 4260,
"kind": "const",
"start": 4068,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 4527,
"id": {
"end": 4311,
"name": "retFront",
"start": 4303,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"end": 4336,
"name": "retPlane",
"start": 4328,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 4327,
"name": "startSketchOn",
"start": 4314,
"type": "Identifier"
},
"end": 4337,
"start": 4314,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 4376,
"left": {
"end": 4370,
"left": {
"argument": {
"end": 4366,
"name": "length",
"start": 4360,
"type": "Identifier",
"type": "Identifier"
},
"end": 4366,
"operator": "-",
"start": 4359,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "/",
"right": {
"end": 4370,
"raw": "2",
"start": 4369,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 4359,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"end": 4376,
"name": "thk",
"start": 4373,
"type": "Identifier",
"type": "Identifier"
},
"start": 4359,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 4379,
"raw": "0",
"start": 4378,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 4380,
"start": 4358,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 4383,
"start": 4382,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 4357,
"name": "startProfileAt",
"start": 4343,
"type": "Identifier"
},
"end": 4384,
"start": 4343,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 4398,
"name": "end",
"start": 4395,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 4403,
"raw": "0",
"start": 4402,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 4408,
"name": "thk",
"start": 4405,
"type": "Identifier",
"type": "Identifier"
}
],
"end": 4409,
"start": 4401,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 4394,
"name": "line",
"start": 4390,
"type": "Identifier"
},
"end": 4410,
"start": 4390,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 4424,
"name": "end",
"start": 4421,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 4431,
"name": "thk",
"start": 4428,
"type": "Identifier",
"type": "Identifier"
},
{
"argument": {
"end": 4437,
"name": "thk",
"start": 4434,
"type": "Identifier",
"type": "Identifier"
},
"end": 4437,
"operator": "-",
"start": 4433,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 4438,
"start": 4427,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 4420,
"name": "line",
"start": 4416,
"type": "Identifier"
},
"end": 4439,
"start": 4416,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [],
"callee": {
"end": 4450,
"name": "close",
"start": 4445,
"type": "Identifier"
},
"end": 4452,
"start": 4445,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 4472,
"name": "length",
"start": 4466,
"type": "Identifier"
},
"arg": {
"end": 4485,
"left": {
"end": 4480,
"name": "width",
"start": 4475,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"end": 4485,
"raw": "40",
"start": 4483,
"type": "Literal",
"type": "Literal",
"value": {
"value": 40.0,
"suffix": "None"
}
},
"start": 4475,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
}
],
"callee": {
"end": 4465,
"name": "extrude",
"start": 4458,
"type": "Identifier"
},
"end": 4486,
"start": 4458,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 4527,
"nonCodeMeta": {
"nonCodeNodes": {
"5": [
{
"end": 4527,
"start": 4486,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "build the retention bump in the back",
"style": "line"
}
}
]
},
"startNodes": []
},
"start": 4314,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 4303,
"type": "VariableDeclarator"
},
"end": 4527,
"kind": "const",
"start": 4303,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 4734,
"id": {
"end": 4535,
"name": "retBack",
"start": 4528,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"end": 4560,
"name": "retPlane",
"start": 4552,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 4551,
"name": "startSketchOn",
"start": 4538,
"type": "Identifier"
},
"end": 4561,
"start": 4538,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 4599,
"left": {
"end": 4593,
"left": {
"end": 4589,
"name": "length",
"start": 4583,
"type": "Identifier",
"type": "Identifier"
},
"operator": "/",
"right": {
"end": 4593,
"raw": "2",
"start": 4592,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 4583,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"end": 4599,
"name": "thk",
"start": 4596,
"type": "Identifier",
"type": "Identifier"
},
"start": 4583,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 4602,
"raw": "0",
"start": 4601,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 4603,
"start": 4582,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 4606,
"start": 4605,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 4581,
"name": "startProfileAt",
"start": 4567,
"type": "Identifier"
},
"end": 4607,
"start": 4567,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 4621,
"name": "end",
"start": 4618,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 4626,
"raw": "0",
"start": 4625,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 4631,
"name": "thk",
"start": 4628,
"type": "Identifier",
"type": "Identifier"
}
],
"end": 4632,
"start": 4624,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 4617,
"name": "line",
"start": 4613,
"type": "Identifier"
},
"end": 4633,
"start": 4613,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 4647,
"name": "end",
"start": 4644,
"type": "Identifier"
},
"arg": {
"elements": [
{
"argument": {
"end": 4655,
"name": "thk",
"start": 4652,
"type": "Identifier",
"type": "Identifier"
},
"end": 4655,
"operator": "-",
"start": 4651,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"end": 4658,
"raw": "0",
"start": 4657,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 4659,
"start": 4650,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 4643,
"name": "line",
"start": 4639,
"type": "Identifier"
},
"end": 4660,
"start": 4639,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 4674,
"name": "end",
"start": 4671,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 4679,
"raw": "0",
"start": 4678,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"argument": {
"end": 4685,
"name": "thk",
"start": 4682,
"type": "Identifier",
"type": "Identifier"
},
"end": 4685,
"operator": "-",
"start": 4681,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 4686,
"start": 4677,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 4670,
"name": "line",
"start": 4666,
"type": "Identifier"
},
"end": 4687,
"start": 4666,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [],
"callee": {
"end": 4698,
"name": "close",
"start": 4693,
"type": "Identifier"
},
"end": 4700,
"start": 4693,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 4720,
"name": "length",
"start": 4714,
"type": "Identifier"
},
"arg": {
"end": 4733,
"left": {
"end": 4728,
"name": "width",
"start": 4723,
"type": "Identifier",
"type": "Identifier"
},
"operator": "-",
"right": {
"end": 4733,
"raw": "40",
"start": 4731,
"type": "Literal",
"type": "Literal",
"value": {
"value": 40.0,
"suffix": "None"
}
},
"start": 4723,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
}
],
"callee": {
"end": 4713,
"name": "extrude",
"start": 4706,
"type": "Identifier"
},
"end": 4734,
"start": 4706,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 4734,
"start": 4538,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 4528,
"type": "VariableDeclarator"
},
"end": 4734,
"kind": "const",
"start": 4528,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
}
],
"end": 4735,
"innerAttrs": [
{
"end": 357,
"name": {
"end": 333,
"name": "settings",
"start": 325,
"type": "Identifier"
},
"properties": [
{
"end": 356,
"key": {
"end": 351,
"name": "defaultLengthUnit",
"start": 334,
"type": "Identifier"
},
"start": 334,
"type": "ObjectProperty",
"value": {
"end": 356,
"name": "mm",
"start": 354,
"type": "Identifier",
"type": "Identifier"
}
}
],
"start": 324,
"type": "Annotation"
}
],
"nonCodeMeta": {
"nonCodeNodes": {
"8": [
{
"end": 535,
"start": 499,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "define a rectangular shape func",
"style": "line"
}
}
],
"9": [
{
"end": 951,
"start": 922,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "define the bracket plane",
"style": "line"
}
}
],
"10": [
{
"end": 1195,
"start": 1150,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "build the bracket sketch around the body",
"style": "line"
}
}
],
"11": [
{
"end": 1770,
"start": 1736,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "build the body of the bracket",
"style": "line"
}
}
],
"14": [
{
"end": 2399,
"start": 2343,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "build the tabs of the mounting bracket (right side)",
"style": "line"
}
}
],
"17": [
{
"end": 4302,
"start": 4260,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "build the retention bump in the front",
"style": "line"
}
}
]
},
"startNodes": [
{
"end": 69,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "blockComment",
"value": "A mounting bracket for the Focusrite Scarlett Solo audio interface",
"style": "line"
}
},
{
"end": 309,
"start": 70,
"type": "NonCodeNode",
"value": {
"type": "blockComment",
"value": "This is a bracket that holds an audio device underneath a desk or shelf. The audio device has dimensions of 144mm wide, 80mm length and 45mm depth with fillets of 6mm. This mounting bracket is designed to be 3D printed with PLA material",
"style": "line"
}
},
{
"end": 311,
"start": 309,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
},
{
"end": 323,
"start": 311,
"type": "NonCodeNode",
"value": {
"type": "blockComment",
"value": "Set units",
"style": "line"
}
},
{
"end": 359,
"start": 357,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
},
{
"end": 384,
"start": 359,
"type": "NonCodeNode",
"value": {
"type": "blockComment",
"value": "define constants in mm",
"style": "line"
}
}
]
},
"start": 0
}
}