Files
modeling-app/rust/kcl-lib/tests/kcl_samples/sheet-metal-bracket/ast.snap

3146 lines
103 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 sheet-metal-bracket.kcl
---
{
"Ok": {
"body": [
{
"declaration": {
"end": 476,
"id": {
"end": 468,
"name": "thickness",
"start": 459,
"type": "Identifier"
},
"init": {
"end": 476,
"raw": "0.090",
"start": 471,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.09,
"suffix": "None"
}
},
"start": 459,
"type": "VariableDeclarator"
},
"end": 476,
"kind": "const",
"start": 459,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 491,
"id": {
"end": 484,
"name": "bendRad",
"start": 477,
"type": "Identifier"
},
"init": {
"end": 491,
"raw": "0.08",
"start": 487,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.08,
"suffix": "None"
}
},
"start": 477,
"type": "VariableDeclarator"
},
"end": 491,
"kind": "const",
"start": 477,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 528,
"id": {
"end": 506,
"name": "outsideBendRad",
"start": 492,
"type": "Identifier"
},
"init": {
"end": 528,
"left": {
"end": 516,
"name": "bendRad",
"start": 509,
"type": "Identifier",
"type": "Identifier"
},
"operator": "+",
"right": {
"end": 528,
"name": "thickness",
"start": 519,
"type": "Identifier",
"type": "Identifier"
},
"start": 509,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 492,
"type": "VariableDeclarator"
},
"end": 528,
"kind": "const",
"start": 492,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 547,
"id": {
"end": 541,
"name": "flangeLength",
"start": 529,
"type": "Identifier"
},
"init": {
"end": 547,
"raw": "0.5",
"start": 544,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.5,
"suffix": "None"
}
},
"start": 529,
"type": "VariableDeclarator"
},
"end": 547,
"kind": "const",
"start": 529,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 561,
"id": {
"end": 557,
"name": "hatHeight",
"start": 548,
"type": "Identifier"
},
"init": {
"end": 561,
"raw": "3",
"start": 560,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 548,
"type": "VariableDeclarator"
},
"end": 561,
"kind": "const",
"start": 548,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 574,
"id": {
"end": 570,
"name": "hatWidth",
"start": 562,
"type": "Identifier"
},
"init": {
"end": 574,
"raw": "5",
"start": 573,
"type": "Literal",
"type": "Literal",
"value": {
"value": 5.0,
"suffix": "None"
}
},
"start": 562,
"type": "VariableDeclarator"
},
"end": 574,
"kind": "const",
"start": 562,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 590,
"id": {
"end": 583,
"name": "boltSize",
"start": 575,
"type": "Identifier"
},
"init": {
"end": 590,
"raw": "0.25",
"start": 586,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.25,
"suffix": "None"
}
},
"start": 575,
"type": "VariableDeclarator"
},
"end": 590,
"kind": "const",
"start": 575,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 608,
"id": {
"end": 602,
"name": "flangeWidth",
"start": 591,
"type": "Identifier"
},
"init": {
"end": 608,
"raw": "1.5",
"start": 605,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.5,
"suffix": "None"
}
},
"start": 591,
"type": "VariableDeclarator"
},
"end": 608,
"kind": "const",
"start": 591,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 2083,
"id": {
"end": 701,
"name": "baseExtrusion",
"start": 688,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"end": 723,
"raw": "'-XZ'",
"start": 718,
"type": "Literal",
"type": "Literal",
"value": "-XZ"
}
],
"callee": {
"end": 717,
"name": "startSketchOn",
"start": 704,
"type": "Identifier"
},
"end": 724,
"start": 704,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 747,
"raw": "0",
"start": 746,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 750,
"raw": "0",
"start": 749,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 751,
"start": 745,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 754,
"start": 753,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 744,
"name": "startProfileAt",
"start": 730,
"type": "Identifier"
},
"end": 755,
"start": 730,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 769,
"name": "end",
"start": 766,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 774,
"raw": "0",
"start": 773,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 785,
"name": "thickness",
"start": 776,
"type": "Identifier",
"type": "Identifier"
}
],
"end": 786,
"start": 772,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 791,
"name": "tag",
"start": 788,
"type": "Identifier"
},
"arg": {
"end": 797,
"start": 794,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e1"
}
}
],
"callee": {
"end": 765,
"name": "line",
"start": 761,
"type": "Identifier"
},
"end": 798,
"start": 761,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 812,
"name": "end",
"start": 809,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 828,
"name": "flangeLength",
"start": 816,
"type": "Identifier",
"type": "Identifier"
},
{
"end": 831,
"raw": "0",
"start": 830,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 832,
"start": 815,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 837,
"name": "tag",
"start": 834,
"type": "Identifier"
},
"arg": {
"end": 843,
"start": 840,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e2"
}
}
],
"callee": {
"end": 808,
"name": "line",
"start": 804,
"type": "Identifier"
},
"end": 844,
"start": 804,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 858,
"name": "end",
"start": 855,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 863,
"raw": "0",
"start": 862,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 874,
"name": "hatHeight",
"start": 865,
"type": "Identifier",
"type": "Identifier"
}
],
"end": 875,
"start": 861,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 880,
"name": "tag",
"start": 877,
"type": "Identifier"
},
"arg": {
"end": 886,
"start": 883,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e3"
}
}
],
"callee": {
"end": 854,
"name": "line",
"start": 850,
"type": "Identifier"
},
"end": 887,
"start": 850,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 901,
"name": "end",
"start": 898,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 913,
"name": "hatWidth",
"start": 905,
"type": "Identifier",
"type": "Identifier"
},
{
"end": 916,
"raw": "0",
"start": 915,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 917,
"start": 904,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 922,
"name": "tag",
"start": 919,
"type": "Identifier"
},
"arg": {
"end": 928,
"start": 925,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e4"
}
}
],
"callee": {
"end": 897,
"name": "line",
"start": 893,
"type": "Identifier"
},
"end": 929,
"start": 893,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 943,
"name": "end",
"start": 940,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 948,
"raw": "0",
"start": 947,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"argument": {
"end": 960,
"name": "hatHeight",
"start": 951,
"type": "Identifier",
"type": "Identifier"
},
"end": 960,
"operator": "-",
"start": 950,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 961,
"start": 946,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 966,
"name": "tag",
"start": 963,
"type": "Identifier"
},
"arg": {
"end": 972,
"start": 969,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e5"
}
}
],
"callee": {
"end": 939,
"name": "line",
"start": 935,
"type": "Identifier"
},
"end": 973,
"start": 935,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 987,
"name": "end",
"start": 984,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1003,
"name": "flangeLength",
"start": 991,
"type": "Identifier",
"type": "Identifier"
},
{
"end": 1006,
"raw": "0",
"start": 1005,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 1007,
"start": 990,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1012,
"name": "tag",
"start": 1009,
"type": "Identifier"
},
"arg": {
"end": 1018,
"start": 1015,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e6"
}
}
],
"callee": {
"end": 983,
"name": "line",
"start": 979,
"type": "Identifier"
},
"end": 1019,
"start": 979,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1033,
"name": "end",
"start": 1030,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1038,
"raw": "0",
"start": 1037,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"argument": {
"end": 1050,
"name": "thickness",
"start": 1041,
"type": "Identifier",
"type": "Identifier"
},
"end": 1050,
"operator": "-",
"start": 1040,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 1051,
"start": 1036,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1056,
"name": "tag",
"start": 1053,
"type": "Identifier"
},
"arg": {
"end": 1062,
"start": 1059,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e7"
}
}
],
"callee": {
"end": 1029,
"name": "line",
"start": 1025,
"type": "Identifier"
},
"end": 1063,
"start": 1025,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1077,
"name": "end",
"start": 1074,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1106,
"left": {
"argument": {
"end": 1094,
"name": "flangeLength",
"start": 1082,
"type": "Identifier",
"type": "Identifier"
},
"end": 1094,
"operator": "-",
"start": 1081,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "-",
"right": {
"end": 1106,
"name": "thickness",
"start": 1097,
"type": "Identifier",
"type": "Identifier"
},
"start": 1081,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 1109,
"raw": "0",
"start": 1108,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 1110,
"start": 1080,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1115,
"name": "tag",
"start": 1112,
"type": "Identifier"
},
"arg": {
"end": 1121,
"start": 1118,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e8"
}
}
],
"callee": {
"end": 1073,
"name": "line",
"start": 1069,
"type": "Identifier"
},
"end": 1122,
"start": 1069,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1136,
"name": "end",
"start": 1133,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1141,
"raw": "0",
"start": 1140,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 1152,
"name": "hatHeight",
"start": 1143,
"type": "Identifier",
"type": "Identifier"
}
],
"end": 1153,
"start": 1139,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1158,
"name": "tag",
"start": 1155,
"type": "Identifier"
},
"arg": {
"end": 1164,
"start": 1161,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e9"
}
}
],
"callee": {
"end": 1132,
"name": "line",
"start": 1128,
"type": "Identifier"
},
"end": 1165,
"start": 1128,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1179,
"name": "end",
"start": 1176,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1208,
"left": {
"argument": {
"end": 1192,
"name": "hatWidth",
"start": 1184,
"type": "Identifier",
"type": "Identifier"
},
"end": 1192,
"operator": "-",
"start": 1183,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
"operator": "+",
"right": {
"end": 1208,
"left": {
"end": 1196,
"raw": "2",
"start": 1195,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"operator": "*",
"right": {
"end": 1208,
"name": "thickness",
"start": 1199,
"type": "Identifier",
"type": "Identifier"
},
"start": 1195,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 1183,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"end": 1211,
"raw": "0",
"start": 1210,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 1212,
"start": 1182,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1217,
"name": "tag",
"start": 1214,
"type": "Identifier"
},
"arg": {
"end": 1224,
"start": 1220,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e10"
}
}
],
"callee": {
"end": 1175,
"name": "line",
"start": 1171,
"type": "Identifier"
},
"end": 1225,
"start": 1171,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1239,
"name": "end",
"start": 1236,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 1244,
"raw": "0",
"start": 1243,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"argument": {
"end": 1256,
"name": "hatHeight",
"start": 1247,
"type": "Identifier",
"type": "Identifier"
},
"end": 1256,
"operator": "-",
"start": 1246,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 1257,
"start": 1242,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1262,
"name": "tag",
"start": 1259,
"type": "Identifier"
},
"arg": {
"end": 1269,
"start": 1265,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e11"
}
}
],
"callee": {
"end": 1235,
"name": "line",
"start": 1231,
"type": "Identifier"
},
"end": 1270,
"start": 1231,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1285,
"name": "tag",
"start": 1282,
"type": "Identifier"
},
"arg": {
"end": 1292,
"start": 1288,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e12"
}
}
],
"callee": {
"end": 1281,
"name": "close",
"start": 1276,
"type": "Identifier"
},
"end": 1293,
"start": 1276,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1313,
"name": "length",
"start": 1307,
"type": "Identifier"
},
"arg": {
"end": 1324,
"name": "hatWidth",
"start": 1316,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"end": 1306,
"name": "extrude",
"start": 1299,
"type": "Identifier"
},
"end": 1325,
"start": 1299,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1352,
"name": "radius",
"start": 1346,
"type": "Identifier"
},
"arg": {
"end": 1362,
"name": "bendRad",
"start": 1355,
"type": "Identifier",
"type": "Identifier"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1375,
"name": "tags",
"start": 1371,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 1401,
"name": "e2",
"start": 1399,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 1398,
"name": "getNextAdjacentEdge",
"start": 1379,
"type": "Identifier"
},
"end": 1402,
"start": 1379,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 1403,
"start": 1378,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 1337,
"name": "fillet",
"start": 1331,
"type": "Identifier"
},
"end": 1410,
"start": 1331,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1437,
"name": "radius",
"start": 1431,
"type": "Identifier"
},
"arg": {
"end": 1454,
"name": "outsideBendRad",
"start": 1440,
"type": "Identifier",
"type": "Identifier"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1467,
"name": "tags",
"start": 1463,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 1493,
"name": "e3",
"start": 1491,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 1490,
"name": "getNextAdjacentEdge",
"start": 1471,
"type": "Identifier"
},
"end": 1494,
"start": 1471,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 1495,
"start": 1470,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 1422,
"name": "fillet",
"start": 1416,
"type": "Identifier"
},
"end": 1502,
"start": 1416,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1529,
"name": "radius",
"start": 1523,
"type": "Identifier"
},
"arg": {
"end": 1546,
"name": "outsideBendRad",
"start": 1532,
"type": "Identifier",
"type": "Identifier"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1559,
"name": "tags",
"start": 1555,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 1585,
"name": "e4",
"start": 1583,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 1582,
"name": "getNextAdjacentEdge",
"start": 1563,
"type": "Identifier"
},
"end": 1586,
"start": 1563,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 1587,
"start": 1562,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 1514,
"name": "fillet",
"start": 1508,
"type": "Identifier"
},
"end": 1594,
"start": 1508,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1621,
"name": "radius",
"start": 1615,
"type": "Identifier"
},
"arg": {
"end": 1631,
"name": "bendRad",
"start": 1624,
"type": "Identifier",
"type": "Identifier"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1644,
"name": "tags",
"start": 1640,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 1670,
"name": "e5",
"start": 1668,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 1667,
"name": "getNextAdjacentEdge",
"start": 1648,
"type": "Identifier"
},
"end": 1671,
"start": 1648,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 1672,
"start": 1647,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 1606,
"name": "fillet",
"start": 1600,
"type": "Identifier"
},
"end": 1679,
"start": 1600,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1706,
"name": "radius",
"start": 1700,
"type": "Identifier"
},
"arg": {
"end": 1723,
"name": "outsideBendRad",
"start": 1709,
"type": "Identifier",
"type": "Identifier"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1736,
"name": "tags",
"start": 1732,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 1762,
"name": "e8",
"start": 1760,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 1759,
"name": "getNextAdjacentEdge",
"start": 1740,
"type": "Identifier"
},
"end": 1763,
"start": 1740,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 1764,
"start": 1739,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 1691,
"name": "fillet",
"start": 1685,
"type": "Identifier"
},
"end": 1771,
"start": 1685,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1798,
"name": "radius",
"start": 1792,
"type": "Identifier"
},
"arg": {
"end": 1808,
"name": "bendRad",
"start": 1801,
"type": "Identifier",
"type": "Identifier"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1821,
"name": "tags",
"start": 1817,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 1847,
"name": "e9",
"start": 1845,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 1844,
"name": "getNextAdjacentEdge",
"start": 1825,
"type": "Identifier"
},
"end": 1848,
"start": 1825,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 1849,
"start": 1824,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 1783,
"name": "fillet",
"start": 1777,
"type": "Identifier"
},
"end": 1856,
"start": 1777,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1883,
"name": "radius",
"start": 1877,
"type": "Identifier"
},
"arg": {
"end": 1893,
"name": "bendRad",
"start": 1886,
"type": "Identifier",
"type": "Identifier"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1906,
"name": "tags",
"start": 1902,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 1933,
"name": "e10",
"start": 1930,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 1929,
"name": "getNextAdjacentEdge",
"start": 1910,
"type": "Identifier"
},
"end": 1934,
"start": 1910,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 1935,
"start": 1909,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 1868,
"name": "fillet",
"start": 1862,
"type": "Identifier"
},
"end": 1942,
"start": 1862,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 1969,
"name": "radius",
"start": 1963,
"type": "Identifier"
},
"arg": {
"end": 1986,
"name": "outsideBendRad",
"start": 1972,
"type": "Identifier",
"type": "Identifier"
}
},
{
"type": "LabeledArg",
"label": {
"end": 1999,
"name": "tags",
"start": 1995,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 2026,
"name": "e11",
"start": 2023,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 2022,
"name": "getNextAdjacentEdge",
"start": 2003,
"type": "Identifier"
},
"end": 2027,
"start": 2003,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 2028,
"start": 2002,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 1954,
"name": "fillet",
"start": 1948,
"type": "Identifier"
},
"end": 2035,
"start": 1948,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 2083,
"nonCodeMeta": {
"nonCodeNodes": {
"22": [
{
"end": 2083,
"start": 2035,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "Define the flanges and place the bolt holes",
"style": "line"
}
}
]
},
"startNodes": []
},
"start": 704,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 688,
"type": "VariableDeclarator"
},
"end": 2083,
"kind": "const",
"start": 688,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 2608,
"id": {
"end": 2091,
"name": "flange1",
"start": 2084,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"end": 2112,
"raw": "'XY'",
"start": 2108,
"type": "Literal",
"type": "Literal",
"value": "XY"
}
],
"callee": {
"end": 2107,
"name": "startSketchOn",
"start": 2094,
"type": "Identifier"
},
"end": 2113,
"start": 2094,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"end": 2136,
"raw": "0",
"start": 2135,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 2139,
"raw": "0",
"start": 2138,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 2140,
"start": 2134,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 2143,
"start": 2142,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 2133,
"name": "startProfileAt",
"start": 2119,
"type": "Identifier"
},
"end": 2144,
"start": 2119,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2158,
"name": "end",
"start": 2155,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 2163,
"raw": "0",
"start": 2162,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 2173,
"name": "hatWidth",
"start": 2165,
"type": "Identifier",
"type": "Identifier"
}
],
"end": 2174,
"start": 2161,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 2154,
"name": "line",
"start": 2150,
"type": "Identifier"
},
"end": 2175,
"start": 2150,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2189,
"name": "end",
"start": 2186,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 2204,
"name": "flangeWidth",
"start": 2193,
"type": "Identifier",
"type": "Identifier"
},
{
"end": 2207,
"raw": "0",
"start": 2206,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 2208,
"start": 2192,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2213,
"name": "tag",
"start": 2210,
"type": "Identifier"
},
"arg": {
"end": 2220,
"start": 2216,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e13"
}
}
],
"callee": {
"end": 2185,
"name": "line",
"start": 2181,
"type": "Identifier"
},
"end": 2221,
"start": 2181,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2235,
"name": "end",
"start": 2232,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 2240,
"raw": "0",
"start": 2239,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"argument": {
"end": 2251,
"name": "hatWidth",
"start": 2243,
"type": "Identifier",
"type": "Identifier"
},
"end": 2251,
"operator": "-",
"start": 2242,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 2252,
"start": 2238,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2257,
"name": "tag",
"start": 2254,
"type": "Identifier"
},
"arg": {
"end": 2264,
"start": 2260,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e14"
}
}
],
"callee": {
"end": 2231,
"name": "line",
"start": 2227,
"type": "Identifier"
},
"end": 2265,
"start": 2227,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [],
"callee": {
"end": 2276,
"name": "close",
"start": 2271,
"type": "Identifier"
},
"end": 2278,
"start": 2271,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2310,
"name": "center",
"start": 2304,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 2318,
"raw": "0.75",
"start": 2314,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.75,
"suffix": "None"
}
},
{
"end": 2321,
"raw": "1",
"start": 2320,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
],
"end": 2322,
"start": 2313,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2337,
"name": "radius",
"start": 2331,
"type": "Identifier"
},
"arg": {
"end": 2348,
"name": "boltSize",
"start": 2340,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"end": 2295,
"name": "circle",
"start": 2289,
"type": "Identifier"
},
"end": 2355,
"start": 2289,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"end": 2358,
"start": 2357,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 2288,
"name": "hole",
"start": 2284,
"type": "Identifier"
},
"end": 2359,
"start": 2284,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2391,
"name": "center",
"start": 2385,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 2399,
"raw": "0.75",
"start": 2395,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.75,
"suffix": "None"
}
},
{
"end": 2402,
"raw": "4",
"start": 2401,
"type": "Literal",
"type": "Literal",
"value": {
"value": 4.0,
"suffix": "None"
}
}
],
"end": 2403,
"start": 2394,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2418,
"name": "radius",
"start": 2412,
"type": "Identifier"
},
"arg": {
"end": 2429,
"name": "boltSize",
"start": 2421,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"end": 2376,
"name": "circle",
"start": 2370,
"type": "Identifier"
},
"end": 2436,
"start": 2370,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"end": 2439,
"start": 2438,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 2369,
"name": "hole",
"start": 2365,
"type": "Identifier"
},
"end": 2440,
"start": 2365,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2460,
"name": "length",
"start": 2454,
"type": "Identifier"
},
"arg": {
"end": 2472,
"name": "thickness",
"start": 2463,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"end": 2453,
"name": "extrude",
"start": 2446,
"type": "Identifier"
},
"end": 2473,
"start": 2446,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2500,
"name": "radius",
"start": 2494,
"type": "Identifier"
},
"arg": {
"end": 2506,
"raw": "0.5",
"start": 2503,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.5,
"suffix": "None"
}
}
},
{
"type": "LabeledArg",
"label": {
"end": 2519,
"name": "tags",
"start": 2515,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 2556,
"name": "e13",
"start": 2553,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 2552,
"name": "getNextAdjacentEdge",
"start": 2533,
"type": "Identifier"
},
"end": 2557,
"start": 2533,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"end": 2591,
"name": "e14",
"start": 2588,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 2587,
"name": "getNextAdjacentEdge",
"start": 2568,
"type": "Identifier"
},
"end": 2592,
"start": 2568,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 2601,
"start": 2522,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 2485,
"name": "fillet",
"start": 2479,
"type": "Identifier"
},
"end": 2608,
"start": 2479,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 2608,
"start": 2094,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 2084,
"type": "VariableDeclarator"
},
"end": 2608,
"kind": "const",
"start": 2084,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"declaration": {
"end": 3139,
"id": {
"end": 2617,
"name": "flange2",
"start": 2610,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"end": 2638,
"raw": "'XY'",
"start": 2634,
"type": "Literal",
"type": "Literal",
"value": "XY"
}
],
"callee": {
"end": 2633,
"name": "startSketchOn",
"start": 2620,
"type": "Identifier"
},
"end": 2639,
"start": 2620,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"elements": [
{
"argument": {
"end": 2663,
"raw": "6",
"start": 2662,
"type": "Literal",
"type": "Literal",
"value": {
"value": 6.0,
"suffix": "None"
}
},
"end": 2663,
"operator": "-",
"start": 2661,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"end": 2666,
"raw": "0",
"start": 2665,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 2667,
"start": 2660,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"end": 2670,
"start": 2669,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 2659,
"name": "startProfileAt",
"start": 2645,
"type": "Identifier"
},
"end": 2671,
"start": 2645,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2685,
"name": "end",
"start": 2682,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 2690,
"raw": "0",
"start": 2689,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"end": 2700,
"name": "hatWidth",
"start": 2692,
"type": "Identifier",
"type": "Identifier"
}
],
"end": 2701,
"start": 2688,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 2681,
"name": "line",
"start": 2677,
"type": "Identifier"
},
"end": 2702,
"start": 2677,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2716,
"name": "end",
"start": 2713,
"type": "Identifier"
},
"arg": {
"elements": [
{
"argument": {
"end": 2732,
"name": "flangeWidth",
"start": 2721,
"type": "Identifier",
"type": "Identifier"
},
"end": 2732,
"operator": "-",
"start": 2720,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"end": 2735,
"raw": "0",
"start": 2734,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"end": 2736,
"start": 2719,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2741,
"name": "tag",
"start": 2738,
"type": "Identifier"
},
"arg": {
"end": 2748,
"start": 2744,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e15"
}
}
],
"callee": {
"end": 2712,
"name": "line",
"start": 2708,
"type": "Identifier"
},
"end": 2749,
"start": 2708,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2763,
"name": "end",
"start": 2760,
"type": "Identifier"
},
"arg": {
"elements": [
{
"end": 2768,
"raw": "0",
"start": 2767,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"argument": {
"end": 2779,
"name": "hatWidth",
"start": 2771,
"type": "Identifier",
"type": "Identifier"
},
"end": 2779,
"operator": "-",
"start": 2770,
"type": "UnaryExpression",
"type": "UnaryExpression"
}
],
"end": 2780,
"start": 2766,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2785,
"name": "tag",
"start": 2782,
"type": "Identifier"
},
"arg": {
"end": 2792,
"start": 2788,
"type": "TagDeclarator",
"type": "TagDeclarator",
"value": "e16"
}
}
],
"callee": {
"end": 2759,
"name": "line",
"start": 2755,
"type": "Identifier"
},
"end": 2793,
"start": 2755,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [],
"callee": {
"end": 2804,
"name": "close",
"start": 2799,
"type": "Identifier"
},
"end": 2806,
"start": 2799,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2838,
"name": "center",
"start": 2832,
"type": "Identifier"
},
"arg": {
"elements": [
{
"argument": {
"end": 2847,
"raw": "6.75",
"start": 2843,
"type": "Literal",
"type": "Literal",
"value": {
"value": 6.75,
"suffix": "None"
}
},
"end": 2847,
"operator": "-",
"start": 2842,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"end": 2850,
"raw": "1",
"start": 2849,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
}
],
"end": 2851,
"start": 2841,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2866,
"name": "radius",
"start": 2860,
"type": "Identifier"
},
"arg": {
"end": 2877,
"name": "boltSize",
"start": 2869,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"end": 2823,
"name": "circle",
"start": 2817,
"type": "Identifier"
},
"end": 2884,
"start": 2817,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"end": 2887,
"start": 2886,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 2816,
"name": "hole",
"start": 2812,
"type": "Identifier"
},
"end": 2888,
"start": 2812,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2920,
"name": "center",
"start": 2914,
"type": "Identifier"
},
"arg": {
"elements": [
{
"argument": {
"end": 2929,
"raw": "6.75",
"start": 2925,
"type": "Literal",
"type": "Literal",
"value": {
"value": 6.75,
"suffix": "None"
}
},
"end": 2929,
"operator": "-",
"start": 2924,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"end": 2932,
"raw": "4",
"start": 2931,
"type": "Literal",
"type": "Literal",
"value": {
"value": 4.0,
"suffix": "None"
}
}
],
"end": 2933,
"start": 2923,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"end": 2948,
"name": "radius",
"start": 2942,
"type": "Identifier"
},
"arg": {
"end": 2959,
"name": "boltSize",
"start": 2951,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"end": 2905,
"name": "circle",
"start": 2899,
"type": "Identifier"
},
"end": 2966,
"start": 2899,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"end": 2969,
"start": 2968,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"end": 2898,
"name": "hole",
"start": 2894,
"type": "Identifier"
},
"end": 2970,
"start": 2894,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 2990,
"name": "length",
"start": 2984,
"type": "Identifier"
},
"arg": {
"end": 3002,
"name": "thickness",
"start": 2993,
"type": "Identifier",
"type": "Identifier"
}
}
],
"callee": {
"end": 2983,
"name": "extrude",
"start": 2976,
"type": "Identifier"
},
"end": 3003,
"start": 2976,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"end": 3030,
"name": "radius",
"start": 3024,
"type": "Identifier"
},
"arg": {
"end": 3037,
"raw": "0.25",
"start": 3033,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.25,
"suffix": "None"
}
}
},
{
"type": "LabeledArg",
"label": {
"end": 3050,
"name": "tags",
"start": 3046,
"type": "Identifier"
},
"arg": {
"elements": [
{
"arguments": [
{
"end": 3087,
"name": "e15",
"start": 3084,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 3083,
"name": "getNextAdjacentEdge",
"start": 3064,
"type": "Identifier"
},
"end": 3088,
"start": 3064,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"end": 3122,
"name": "e16",
"start": 3119,
"type": "Identifier",
"type": "Identifier"
}
],
"callee": {
"end": 3118,
"name": "getNextAdjacentEdge",
"start": 3099,
"type": "Identifier"
},
"end": 3123,
"start": 3099,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 3132,
"start": 3053,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"callee": {
"end": 3015,
"name": "fillet",
"start": 3009,
"type": "Identifier"
},
"end": 3139,
"start": 3009,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"end": 3139,
"start": 2620,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 2610,
"type": "VariableDeclarator"
},
"end": 3139,
"kind": "const",
"start": 2610,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
}
],
"end": 3140,
"innerAttrs": [
{
"end": 353,
"name": {
"end": 329,
"name": "settings",
"start": 321,
"type": "Identifier"
},
"properties": [
{
"end": 352,
"key": {
"end": 347,
"name": "defaultLengthUnit",
"start": 330,
"type": "Identifier"
},
"start": 330,
"type": "ObjectProperty",
"value": {
"end": 352,
"name": "in",
"start": 350,
"type": "Identifier",
"type": "Identifier"
}
}
],
"start": 320,
"type": "Annotation"
}
],
"nonCodeMeta": {
"nonCodeNodes": {
"7": [
{
"end": 687,
"start": 608,
"type": "NonCodeNode",
"value": {
"type": "newLineBlockComment",
"value": "Sketch and extrude the base shape and fillet the inside and outside edges.",
"style": "line"
}
}
],
"9": [
{
"end": 2610,
"start": 2608,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
}
]
},
"startNodes": [
{
"end": 22,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "blockComment",
"value": "Sheet Metal Bracket",
"style": "line"
}
},
{
"end": 305,
"start": 23,
"type": "NonCodeNode",
"value": {
"type": "blockComment",
"value": "A component typically made from flat sheet metal through various manufacturing processes such as bending, punching, cutting, and forming. These brackets are used to support, attach, or mount other hardware components, often providing a structural or functional base for assembly.",
"style": "line"
}
},
{
"end": 307,
"start": 305,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
},
{
"end": 319,
"start": 307,
"type": "NonCodeNode",
"value": {
"type": "blockComment",
"value": "Set Units",
"style": "line"
}
},
{
"end": 355,
"start": 353,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
},
{
"end": 458,
"start": 355,
"type": "NonCodeNode",
"value": {
"type": "blockComment",
"value": "Define constants such as sheet metal thickness, bend radius, flange length, bolt diameter size, etc.",
"style": "line"
}
}
]
},
"start": 0
}
}