Files
modeling-app/rust/kcl-lib/tests/kcl_samples/makeup-mirror/ast.snap

4020 lines
138 KiB
Plaintext
Raw Normal View History

---
source: kcl-lib/src/simulation_tests.rs
description: Result of parsing makeup-mirror.kcl
---
{
"Ok": {
"body": [
{
"commentStart": 166,
"declaration": {
"commentStart": 188,
"end": 0,
"id": {
"commentStart": 188,
"end": 0,
"name": "hingeRadius",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 202,
"end": 0,
"raw": "8",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 8.0,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"preComments": [
"// Hinge parameters"
],
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 204,
"declaration": {
"commentStart": 204,
"end": 0,
"id": {
"commentStart": 204,
"end": 0,
"name": "hingeHeight",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 218,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 218,
"end": 0,
"name": {
"commentStart": 218,
"end": 0,
"name": "hingeRadius",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 232,
"end": 0,
"raw": "3",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 234,
"declaration": {
"commentStart": 234,
"end": 0,
"id": {
"commentStart": 234,
"end": 0,
"name": "hingeGap",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 245,
"end": 0,
"raw": "0.5",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.5,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 248,
"declaration": {
"commentStart": 268,
"end": 0,
"id": {
"commentStart": 268,
"end": 0,
"name": "armLength",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 280,
"end": 0,
"raw": "170",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 170.0,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"preComments": [
"",
"",
"// Arm parameters"
],
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 284,
"declaration": {
"commentStart": 284,
"end": 0,
"id": {
"commentStart": 284,
"end": 0,
"name": "armRadius",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 296,
"end": 0,
"raw": "5",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 5.0,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 297,
"declaration": {
"commentStart": 320,
"end": 0,
"id": {
"commentStart": 320,
"end": 0,
"name": "mirrorRadius",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 335,
"end": 0,
"left": {
"commentStart": 335,
"end": 0,
"raw": "170",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 170.0,
"suffix": "None"
}
},
"operator": "/",
"right": {
"commentStart": 341,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"preComments": [
"",
"",
"// Mirror parameters"
],
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 343,
"declaration": {
"commentStart": 343,
"end": 0,
"id": {
"commentStart": 343,
"end": 0,
"name": "mirrorThickness",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 361,
"end": 0,
"raw": "10",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 10.0,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 364,
"declaration": {
"commentStart": 364,
"end": 0,
"id": {
"commentStart": 364,
"end": 0,
"name": "archToMirrorGap",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 382,
"end": 0,
"raw": "5",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 5.0,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 384,
"declaration": {
"commentStart": 384,
"end": 0,
"id": {
"commentStart": 384,
"end": 0,
"name": "archThickness",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 400,
"end": 0,
"raw": "1",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.0,
"suffix": "None"
}
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 402,
"declaration": {
"commentStart": 402,
"end": 0,
"id": {
"commentStart": 402,
"end": 0,
"name": "archRadius",
"start": 0,
"type": "Identifier"
},
"init": {
"commentStart": 415,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 415,
"end": 0,
"name": {
"commentStart": 415,
"end": 0,
"name": "mirrorRadius",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "+",
"right": {
"abs_path": false,
"commentStart": 430,
"end": 0,
"name": {
"commentStart": 430,
"end": 0,
"name": "archToMirrorGap",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 445,
"declaration": {
"commentStart": 500,
"end": 0,
"id": {
"commentStart": 500,
"end": 0,
"name": "hingeFn",
"start": 0,
"type": "Identifier"
},
"init": {
"body": {
"body": [
{
"commentStart": 521,
"declaration": {
"commentStart": 521,
"end": 0,
"id": {
"commentStart": 521,
"end": 0,
"name": "hingeBody",
"start": 0,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 563,
"end": 0,
"name": "offset",
"start": 0,
"type": "Identifier"
},
"arg": {
"abs_path": false,
"commentStart": 572,
"end": 0,
"name": {
"commentStart": 572,
"end": 0,
"name": "z",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 547,
"end": 0,
"name": {
"commentStart": 547,
"end": 0,
"name": "offsetPlane",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 547,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": {
"abs_path": false,
"commentStart": 559,
"end": 0,
"name": {
"commentStart": 559,
"end": 0,
"name": "XY",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 533,
"end": 0,
"name": {
"commentStart": 533,
"end": 0,
"name": "startSketchOn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 533,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 590,
"end": 0,
"name": "center",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 599,
"elements": [
{
"abs_path": false,
"commentStart": 600,
"end": 0,
"name": {
"commentStart": 600,
"end": 0,
"name": "x",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"abs_path": false,
"commentStart": 603,
"end": 0,
"name": {
"commentStart": 603,
"end": 0,
"name": "y",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 607,
"end": 0,
"name": "radius",
"start": 0,
"type": "Identifier"
},
"arg": {
"abs_path": false,
"commentStart": 616,
"end": 0,
"name": {
"commentStart": 616,
"end": 0,
"name": "hingeRadius",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 583,
"end": 0,
"name": {
"commentStart": 583,
"end": 0,
"name": "circle",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 583,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 644,
"end": 0,
"name": "length",
"start": 0,
"type": "Identifier"
},
"arg": {
"abs_path": false,
"commentStart": 653,
"end": 0,
"name": {
"commentStart": 653,
"end": 0,
"name": "hingeHeight",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 636,
"end": 0,
"name": {
"commentStart": 636,
"end": 0,
"name": "extrude",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 636,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"commentStart": 533,
"end": 0,
"start": 0,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"argument": {
"abs_path": false,
"commentStart": 675,
"end": 0,
"name": {
"commentStart": 675,
"end": 0,
"name": "hingeBody",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"commentStart": 668,
"end": 0,
"start": 0,
"type": "ReturnStatement",
"type": "ReturnStatement"
}
],
"commentStart": 517,
"end": 0,
"start": 0
},
"commentStart": 507,
"end": 0,
"params": [
{
"type": "Parameter",
"identifier": {
"commentStart": 508,
"end": 0,
"name": "x",
"start": 0,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"commentStart": 511,
"end": 0,
"name": "y",
"start": 0,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"commentStart": 514,
"end": 0,
"name": "z",
"start": 0,
"type": "Identifier"
}
}
],
"start": 0,
"type": "FunctionExpression",
"type": "FunctionExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "fn",
"preComments": [
"",
"",
"// Geometry",
"// Add a function to create the hinge"
],
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 686,
"declaration": {
"commentStart": 688,
"end": 0,
"id": {
"commentStart": 688,
"end": 0,
"name": "hingePartA1",
"start": 0,
"type": "Identifier"
},
"init": {
"arguments": [
{
"commentStart": 710,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 713,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 716,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 702,
"end": 0,
"name": {
"commentStart": 702,
"end": 0,
"name": "hingeFn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 702,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 719,
"declaration": {
"commentStart": 719,
"end": 0,
"id": {
"commentStart": 719,
"end": 0,
"name": "hingePartA2",
"start": 0,
"type": "Identifier"
},
"init": {
"arguments": [
{
"commentStart": 741,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 744,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 747,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 747,
"end": 0,
"name": {
"commentStart": 747,
"end": 0,
"name": "hingeHeight",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "+",
"right": {
"abs_path": false,
"commentStart": 761,
"end": 0,
"name": {
"commentStart": 761,
"end": 0,
"name": "hingeGap",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"callee": {
"abs_path": false,
"commentStart": 733,
"end": 0,
"name": {
"commentStart": 733,
"end": 0,
"name": "hingeFn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 733,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 771,
"declaration": {
"commentStart": 771,
"end": 0,
"id": {
"commentStart": 771,
"end": 0,
"name": "hingePartA3",
"start": 0,
"type": "Identifier"
},
"init": {
"arguments": [
{
"commentStart": 793,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 796,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 799,
"end": 0,
"left": {
"commentStart": 799,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 799,
"end": 0,
"name": {
"commentStart": 799,
"end": 0,
"name": "hingeHeight",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 813,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"commentStart": 817,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 817,
"end": 0,
"name": {
"commentStart": 817,
"end": 0,
"name": "hingeGap",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 828,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"callee": {
"abs_path": false,
"commentStart": 785,
"end": 0,
"name": {
"commentStart": 785,
"end": 0,
"name": "hingeFn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 785,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 830,
"declaration": {
"commentStart": 832,
"end": 0,
"id": {
"commentStart": 832,
"end": 0,
"name": "hingePartB2",
"start": 0,
"type": "Identifier"
},
"init": {
"arguments": [
{
"abs_path": false,
"commentStart": 854,
"end": 0,
"name": {
"commentStart": 854,
"end": 0,
"name": "armLength",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"commentStart": 865,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 868,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 868,
"end": 0,
"name": {
"commentStart": 868,
"end": 0,
"name": "hingeHeight",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "+",
"right": {
"abs_path": false,
"commentStart": 882,
"end": 0,
"name": {
"commentStart": 882,
"end": 0,
"name": "hingeGap",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"callee": {
"abs_path": false,
"commentStart": 846,
"end": 0,
"name": {
"commentStart": 846,
"end": 0,
"name": "hingeFn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 846,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 892,
"declaration": {
"commentStart": 892,
"end": 0,
"id": {
"commentStart": 892,
"end": 0,
"name": "hingePartB3",
"start": 0,
"type": "Identifier"
},
"init": {
"arguments": [
{
"abs_path": false,
"commentStart": 914,
"end": 0,
"name": {
"commentStart": 914,
"end": 0,
"name": "armLength",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"commentStart": 925,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 928,
"end": 0,
"left": {
"commentStart": 928,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 928,
"end": 0,
"name": {
"commentStart": 928,
"end": 0,
"name": "hingeHeight",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 942,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"commentStart": 946,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 946,
"end": 0,
"name": {
"commentStart": 946,
"end": 0,
"name": "hingeGap",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 957,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"callee": {
"abs_path": false,
"commentStart": 906,
"end": 0,
"name": {
"commentStart": 906,
"end": 0,
"name": "hingeFn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 906,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 959,
"declaration": {
"commentStart": 961,
"end": 0,
"id": {
"commentStart": 961,
"end": 0,
"name": "hingePartC2",
"start": 0,
"type": "Identifier"
},
"init": {
"arguments": [
{
"abs_path": false,
"commentStart": 983,
"end": 0,
"name": {
"commentStart": 983,
"end": 0,
"name": "armLength",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"argument": {
"abs_path": false,
"commentStart": 995,
"end": 0,
"name": {
"commentStart": 995,
"end": 0,
"name": "armLength",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"commentStart": 994,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"commentStart": 1006,
"end": 0,
"left": {
"commentStart": 1006,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1006,
"end": 0,
"name": {
"commentStart": 1006,
"end": 0,
"name": "hingeHeight",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 1020,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"commentStart": 1024,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1024,
"end": 0,
"name": {
"commentStart": 1024,
"end": 0,
"name": "hingeGap",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 1035,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"callee": {
"abs_path": false,
"commentStart": 975,
"end": 0,
"name": {
"commentStart": 975,
"end": 0,
"name": "hingeFn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 975,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 1038,
"declaration": {
"commentStart": 1038,
"end": 0,
"id": {
"commentStart": 1038,
"end": 0,
"name": "hingePartC3",
"start": 0,
"type": "Identifier"
},
"init": {
"arguments": [
{
"abs_path": false,
"commentStart": 1060,
"end": 0,
"name": {
"commentStart": 1060,
"end": 0,
"name": "armLength",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"argument": {
"abs_path": false,
"commentStart": 1072,
"end": 0,
"name": {
"commentStart": 1072,
"end": 0,
"name": "armLength",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"commentStart": 1071,
"end": 0,
"operator": "-",
"start": 0,
"type": "UnaryExpression",
"type": "UnaryExpression"
},
{
"commentStart": 1083,
"end": 0,
"left": {
"commentStart": 1083,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1083,
"end": 0,
"name": {
"commentStart": 1083,
"end": 0,
"name": "hingeHeight",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 1097,
"end": 0,
"raw": "3",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"commentStart": 1101,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1101,
"end": 0,
"name": {
"commentStart": 1101,
"end": 0,
"name": "hingeGap",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 1112,
"end": 0,
"raw": "3",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"callee": {
"abs_path": false,
"commentStart": 1052,
"end": 0,
"name": {
"commentStart": 1052,
"end": 0,
"name": "hingeFn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1052,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 1114,
"declaration": {
"commentStart": 1155,
"end": 0,
"id": {
"commentStart": 1155,
"end": 0,
"name": "armFn",
"start": 0,
"type": "Identifier"
},
"init": {
"body": {
"body": [
{
"commentStart": 1190,
"declaration": {
"commentStart": 1190,
"end": 0,
"id": {
"commentStart": 1190,
"end": 0,
"name": "armBody",
"start": 0,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"abs_path": false,
"commentStart": 1214,
"end": 0,
"name": {
"commentStart": 1214,
"end": 0,
"name": "plane",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
],
"callee": {
"abs_path": false,
"commentStart": 1200,
"end": 0,
"name": {
"commentStart": 1200,
"end": 0,
"name": "startSketchOn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1200,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1235,
"end": 0,
"name": "center",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1244,
"elements": [
{
"abs_path": false,
"commentStart": 1245,
"end": 0,
"name": {
"commentStart": 1245,
"end": 0,
"name": "offset",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"abs_path": false,
"commentStart": 1253,
"end": 0,
"name": {
"commentStart": 1253,
"end": 0,
"name": "altitude",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 1264,
"end": 0,
"name": "radius",
"start": 0,
"type": "Identifier"
},
"arg": {
"abs_path": false,
"commentStart": 1273,
"end": 0,
"name": {
"commentStart": 1273,
"end": 0,
"name": "armRadius",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 1228,
"end": 0,
"name": {
"commentStart": 1228,
"end": 0,
"name": "circle",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1228,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1299,
"end": 0,
"name": "length",
"start": 0,
"type": "Identifier"
},
"arg": {
"abs_path": false,
"commentStart": 1308,
"end": 0,
"name": {
"commentStart": 1308,
"end": 0,
"name": "armLength",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 1291,
"end": 0,
"name": {
"commentStart": 1291,
"end": 0,
"name": "extrude",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1291,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"commentStart": 1200,
"end": 0,
"start": 0,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"argument": {
"abs_path": false,
"commentStart": 1328,
"end": 0,
"name": {
"commentStart": 1328,
"end": 0,
"name": "armBody",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"commentStart": 1321,
"end": 0,
"start": 0,
"type": "ReturnStatement",
"type": "ReturnStatement"
}
],
"commentStart": 1186,
"end": 0,
"start": 0
},
"commentStart": 1160,
"end": 0,
"params": [
{
"type": "Parameter",
"identifier": {
"commentStart": 1161,
"end": 0,
"name": "plane",
"start": 0,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"commentStart": 1168,
"end": 0,
"name": "offset",
"start": 0,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"commentStart": 1176,
"end": 0,
"name": "altitude",
"start": 0,
"type": "Identifier"
}
}
],
"start": 0,
"type": "FunctionExpression",
"type": "FunctionExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "fn",
"preComments": [
"",
"",
"// Add a function to create the arm"
],
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 1337,
"declaration": {
"commentStart": 1339,
"end": 0,
"id": {
"commentStart": 1339,
"end": 0,
"name": "armPartA",
"start": 0,
"type": "Identifier"
},
"init": {
"arguments": [
{
"abs_path": false,
"commentStart": 1356,
"end": 0,
"name": {
"commentStart": 1356,
"end": 0,
"name": "YZ",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"commentStart": 1360,
"end": 0,
"raw": "0",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 0.0,
"suffix": "None"
}
},
{
"commentStart": 1363,
"end": 0,
"left": {
"commentStart": 1363,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1363,
"end": 0,
"name": {
"commentStart": 1363,
"end": 0,
"name": "hingeHeight",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 1377,
"end": 0,
"raw": "1.5",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 1.5,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"abs_path": false,
"commentStart": 1383,
"end": 0,
"name": {
"commentStart": 1383,
"end": 0,
"name": "hingeGap",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"callee": {
"abs_path": false,
"commentStart": 1350,
"end": 0,
"name": {
"commentStart": 1350,
"end": 0,
"name": "armFn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1350,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 1393,
"declaration": {
"commentStart": 1393,
"end": 0,
"id": {
"commentStart": 1393,
"end": 0,
"name": "armPartB",
"start": 0,
"type": "Identifier"
},
"init": {
"arguments": [
{
"abs_path": false,
"commentStart": 1410,
"end": 0,
"name": {
"commentStart": 1410,
"end": 0,
"name": "XZ",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"abs_path": false,
"commentStart": 1414,
"end": 0,
"name": {
"commentStart": 1414,
"end": 0,
"name": "armLength",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"commentStart": 1425,
"end": 0,
"left": {
"commentStart": 1425,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1425,
"end": 0,
"name": {
"commentStart": 1425,
"end": 0,
"name": "hingeHeight",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 1439,
"end": 0,
"raw": "2.5",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.5,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"commentStart": 1445,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1445,
"end": 0,
"name": {
"commentStart": 1445,
"end": 0,
"name": "hingeGap",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 1456,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"callee": {
"abs_path": false,
"commentStart": 1404,
"end": 0,
"name": {
"commentStart": 1404,
"end": 0,
"name": "armFn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1404,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 1458,
"declaration": {
"commentStart": 1502,
"end": 0,
"id": {
"commentStart": 1502,
"end": 0,
"name": "mirrorFn",
"start": 0,
"type": "Identifier"
},
"init": {
"body": {
"body": [
{
"commentStart": 1585,
"declaration": {
"commentStart": 1585,
"end": 0,
"id": {
"commentStart": 1585,
"end": 0,
"name": "armPlane",
"start": 0,
"type": "Identifier"
},
"init": {
"arguments": [
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1631,
"end": 0,
"name": "offset",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1640,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1640,
"end": 0,
"name": {
"commentStart": 1640,
"end": 0,
"name": "offsetY",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "-",
"right": {
"commentStart": 1651,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1651,
"end": 0,
"name": {
"commentStart": 1651,
"end": 0,
"name": "tiefe",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "/",
"right": {
"commentStart": 1659,
"end": 0,
"raw": "2",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 2.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 1612,
"end": 0,
"name": {
"commentStart": 1612,
"end": 0,
"name": "offsetPlane",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1612,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": {
"abs_path": false,
"commentStart": 1624,
"end": 0,
"name": {
"commentStart": 1624,
"end": 0,
"name": "plane",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 1596,
"end": 0,
"name": {
"commentStart": 1596,
"end": 0,
"name": "startSketchOn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1596,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 1666,
"declaration": {
"commentStart": 1666,
"end": 0,
"id": {
"commentStart": 1666,
"end": 0,
"name": "armBody",
"start": 0,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1693,
"end": 0,
"name": "center",
"start": 0,
"type": "Identifier"
},
"arg": {
"commentStart": 1702,
"elements": [
{
"abs_path": false,
"commentStart": 1703,
"end": 0,
"name": {
"commentStart": 1703,
"end": 0,
"name": "offsetX",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"abs_path": false,
"commentStart": 1712,
"end": 0,
"name": {
"commentStart": 1712,
"end": 0,
"name": "altitude",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"type": "LabeledArg",
"label": {
"commentStart": 1723,
"end": 0,
"name": "radius",
"start": 0,
"type": "Identifier"
},
"arg": {
"abs_path": false,
"commentStart": 1732,
"end": 0,
"name": {
"commentStart": 1732,
"end": 0,
"name": "radius",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 1676,
"end": 0,
"name": {
"commentStart": 1676,
"end": 0,
"name": "circle",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1676,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": {
"abs_path": false,
"commentStart": 1683,
"end": 0,
"name": {
"commentStart": 1683,
"end": 0,
"name": "armPlane",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1755,
"end": 0,
"name": "length",
"start": 0,
"type": "Identifier"
},
"arg": {
"abs_path": false,
"commentStart": 1764,
"end": 0,
"name": {
"commentStart": 1764,
"end": 0,
"name": "tiefe",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 1747,
"end": 0,
"name": {
"commentStart": 1747,
"end": 0,
"name": "extrude",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1747,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"commentStart": 1676,
"end": 0,
"start": 0,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 1770,
"declaration": {
"commentStart": 1774,
"end": 0,
"id": {
"commentStart": 1774,
"end": 0,
"name": "archBody",
"start": 0,
"type": "Identifier"
},
"init": {
"body": [
{
"arguments": [
{
"commentStart": 1800,
"elements": [
{
"commentStart": 1801,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1801,
"end": 0,
"name": {
"commentStart": 1801,
"end": 0,
"name": "offsetX",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "-",
"right": {
"abs_path": false,
"commentStart": 1811,
"end": 0,
"name": {
"commentStart": 1811,
"end": 0,
"name": "gestellR",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"abs_path": false,
"commentStart": 1821,
"end": 0,
"name": {
"commentStart": 1821,
"end": 0,
"name": "altitude",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
},
{
"abs_path": false,
"commentStart": 1832,
"end": 0,
"name": {
"commentStart": 1832,
"end": 0,
"name": "armPlane",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
],
"callee": {
"abs_path": false,
"commentStart": 1785,
"end": 0,
"name": {
"commentStart": 1785,
"end": 0,
"name": "startProfileAt",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1785,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 1855,
"end": 0,
"name": "length",
"start": 0,
"type": "Identifier"
},
"arg": {
"abs_path": false,
"commentStart": 1864,
"end": 0,
"name": {
"commentStart": 1864,
"end": 0,
"name": "gestellD",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 1849,
"end": 0,
"name": {
"commentStart": 1849,
"end": 0,
"name": "xLine",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1849,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"commentStart": 1887,
"end": 0,
"properties": [
{
"commentStart": 1898,
"end": 0,
"key": {
"commentStart": 1898,
"end": 0,
"name": "interior",
"start": 0,
"type": "Identifier"
},
"start": 0,
"type": "ObjectProperty",
"value": {
"commentStart": 1909,
"elements": [
{
"abs_path": false,
"commentStart": 1910,
"end": 0,
"name": {
"commentStart": 1910,
"end": 0,
"name": "offsetX",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"commentStart": 1919,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1919,
"end": 0,
"name": {
"commentStart": 1919,
"end": 0,
"name": "altitude",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "-",
"right": {
"abs_path": false,
"commentStart": 1930,
"end": 0,
"name": {
"commentStart": 1930,
"end": 0,
"name": "gestellR",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"commentStart": 1950,
"end": 0,
"key": {
"commentStart": 1950,
"end": 0,
"name": "end",
"start": 0,
"type": "Identifier"
},
"start": 0,
"type": "ObjectProperty",
"value": {
"commentStart": 1956,
"elements": [
{
"commentStart": 1957,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 1957,
"end": 0,
"name": {
"commentStart": 1957,
"end": 0,
"name": "offsetX",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "+",
"right": {
"abs_path": false,
"commentStart": 1967,
"end": 0,
"name": {
"commentStart": 1967,
"end": 0,
"name": "gestellR",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"abs_path": false,
"commentStart": 1977,
"end": 0,
"name": {
"commentStart": 1977,
"end": 0,
"name": "altitude",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"start": 0,
"type": "ObjectExpression",
"type": "ObjectExpression"
},
{
"commentStart": 1997,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"abs_path": false,
"commentStart": 1881,
"end": 0,
"name": {
"commentStart": 1881,
"end": 0,
"name": "arcTo",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 1881,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 2013,
"end": 0,
"name": "length",
"start": 0,
"type": "Identifier"
},
"arg": {
"abs_path": false,
"commentStart": 2022,
"end": 0,
"name": {
"commentStart": 2022,
"end": 0,
"name": "gestellD",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 2007,
"end": 0,
"name": {
"commentStart": 2007,
"end": 0,
"name": "xLine",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 2007,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
},
{
"arguments": [
{
"commentStart": 2045,
"end": 0,
"properties": [
{
"commentStart": 2056,
"end": 0,
"key": {
"commentStart": 2056,
"end": 0,
"name": "interior",
"start": 0,
"type": "Identifier"
},
"start": 0,
"type": "ObjectProperty",
"value": {
"commentStart": 2067,
"elements": [
{
"abs_path": false,
"commentStart": 2080,
"end": 0,
"name": {
"commentStart": 2080,
"end": 0,
"name": "offsetX",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"commentStart": 2100,
"end": 0,
"left": {
"commentStart": 2100,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 2100,
"end": 0,
"name": {
"commentStart": 2100,
"end": 0,
"name": "altitude",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "-",
"right": {
"abs_path": false,
"commentStart": 2111,
"end": 0,
"name": {
"commentStart": 2111,
"end": 0,
"name": "gestellR",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "-",
"right": {
"abs_path": false,
"commentStart": 2122,
"end": 0,
"name": {
"commentStart": 2122,
"end": 0,
"name": "gestellD",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
},
{
"commentStart": 2152,
"end": 0,
"key": {
"commentStart": 2152,
"end": 0,
"name": "end",
"start": 0,
"type": "Identifier"
},
"start": 0,
"type": "ObjectProperty",
"value": {
"commentStart": 2158,
"elements": [
{
"arguments": [
{
"commentStart": 2173,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"abs_path": false,
"commentStart": 2159,
"end": 0,
"name": {
"commentStart": 2159,
"end": 0,
"name": "profileStartX",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 2159,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"commentStart": 2191,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"abs_path": false,
"commentStart": 2177,
"end": 0,
"name": {
"commentStart": 2177,
"end": 0,
"name": "profileStartY",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 2177,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
}
],
"end": 0,
"start": 0,
"type": "ArrayExpression",
"type": "ArrayExpression"
}
}
],
"start": 0,
"type": "ObjectExpression",
"type": "ObjectExpression"
},
{
"commentStart": 2205,
"end": 0,
"start": 0,
"type": "PipeSubstitution",
"type": "PipeSubstitution"
}
],
"callee": {
"abs_path": false,
"commentStart": 2039,
"end": 0,
"name": {
"commentStart": 2039,
"end": 0,
"name": "arcTo",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 2039,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [],
"callee": {
"abs_path": false,
"commentStart": 2215,
"end": 0,
"name": {
"commentStart": 2215,
"end": 0,
"name": "close",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 2215,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
{
"arguments": [
{
"type": "LabeledArg",
"label": {
"commentStart": 2238,
"end": 0,
"name": "length",
"start": 0,
"type": "Identifier"
},
"arg": {
"abs_path": false,
"commentStart": 2247,
"end": 0,
"name": {
"commentStart": 2247,
"end": 0,
"name": "tiefe",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"callee": {
"abs_path": false,
"commentStart": 2230,
"end": 0,
"name": {
"commentStart": 2230,
"end": 0,
"name": "extrude",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 2230,
"end": 0,
"start": 0,
"type": "CallExpressionKw",
"type": "CallExpressionKw",
"unlabeled": null
}
],
"commentStart": 1785,
"end": 0,
"start": 0,
"type": "PipeExpression",
"type": "PipeExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"argument": {
"abs_path": false,
"commentStart": 2263,
"end": 0,
"name": {
"commentStart": 2263,
"end": 0,
"name": "armBody",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"commentStart": 2256,
"end": 0,
"start": 0,
"type": "ReturnStatement",
"type": "ReturnStatement"
}
],
"commentStart": 1581,
"end": 0,
"nonCodeMeta": {
"nonCodeNodes": {
"1": [
{
"commentStart": 1770,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
}
]
},
"startNodes": []
},
"start": 0
},
"commentStart": 1510,
"end": 0,
"params": [
{
"type": "Parameter",
"identifier": {
"commentStart": 1511,
"end": 0,
"name": "plane",
"start": 0,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"commentStart": 1518,
"end": 0,
"name": "offsetX",
"start": 0,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"commentStart": 1527,
"end": 0,
"name": "offsetY",
"start": 0,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"commentStart": 1536,
"end": 0,
"name": "altitude",
"start": 0,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"commentStart": 1546,
"end": 0,
"name": "radius",
"start": 0,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"commentStart": 1554,
"end": 0,
"name": "tiefe",
"start": 0,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"commentStart": 1561,
"end": 0,
"name": "gestellR",
"start": 0,
"type": "Identifier"
}
},
{
"type": "Parameter",
"identifier": {
"commentStart": 1571,
"end": 0,
"name": "gestellD",
"start": 0,
"type": "Identifier"
}
}
],
"start": 0,
"type": "FunctionExpression",
"type": "FunctionExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "fn",
"preComments": [
"",
"",
"// Add a function to create the mirror"
],
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
},
{
"commentStart": 2272,
"declaration": {
"commentStart": 2274,
"end": 0,
"id": {
"commentStart": 2274,
"end": 0,
"name": "mirror",
"start": 0,
"type": "Identifier"
},
"init": {
"arguments": [
{
"abs_path": false,
"commentStart": 2292,
"end": 0,
"name": {
"commentStart": 2292,
"end": 0,
"name": "XZ",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"abs_path": false,
"commentStart": 2296,
"end": 0,
"name": {
"commentStart": 2296,
"end": 0,
"name": "armLength",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"abs_path": false,
"commentStart": 2307,
"end": 0,
"name": {
"commentStart": 2307,
"end": 0,
"name": "armLength",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"commentStart": 2318,
"end": 0,
"left": {
"commentStart": 2318,
"end": 0,
"left": {
"commentStart": 2318,
"end": 0,
"left": {
"commentStart": 2318,
"end": 0,
"left": {
"commentStart": 2318,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 2318,
"end": 0,
"name": {
"commentStart": 2318,
"end": 0,
"name": "hingeHeight",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 2332,
"end": 0,
"raw": "4",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 4.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"commentStart": 2336,
"end": 0,
"left": {
"abs_path": false,
"commentStart": 2336,
"end": 0,
"name": {
"commentStart": 2336,
"end": 0,
"name": "hingeGap",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"operator": "*",
"right": {
"commentStart": 2347,
"end": 0,
"raw": "3",
"start": 0,
"type": "Literal",
"type": "Literal",
"value": {
"value": 3.0,
"suffix": "None"
}
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"abs_path": false,
"commentStart": 2351,
"end": 0,
"name": {
"commentStart": 2351,
"end": 0,
"name": "mirrorRadius",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"abs_path": false,
"commentStart": 2366,
"end": 0,
"name": {
"commentStart": 2366,
"end": 0,
"name": "archToMirrorGap",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
"operator": "+",
"right": {
"abs_path": false,
"commentStart": 2384,
"end": 0,
"name": {
"commentStart": 2384,
"end": 0,
"name": "archThickness",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
"start": 0,
"type": "BinaryExpression",
"type": "BinaryExpression"
},
{
"abs_path": false,
"commentStart": 2399,
"end": 0,
"name": {
"commentStart": 2399,
"end": 0,
"name": "mirrorRadius",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"abs_path": false,
"commentStart": 2413,
"end": 0,
"name": {
"commentStart": 2413,
"end": 0,
"name": "mirrorThickness",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"abs_path": false,
"commentStart": 2430,
"end": 0,
"name": {
"commentStart": 2430,
"end": 0,
"name": "archRadius",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
},
{
"abs_path": false,
"commentStart": 2442,
"end": 0,
"name": {
"commentStart": 2442,
"end": 0,
"name": "archThickness",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
],
"callee": {
"abs_path": false,
"commentStart": 2283,
"end": 0,
"name": {
"commentStart": 2283,
"end": 0,
"name": "mirrorFn",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name"
},
"commentStart": 2283,
"end": 0,
"start": 0,
"type": "CallExpression",
"type": "CallExpression"
},
"start": 0,
"type": "VariableDeclarator"
},
"end": 0,
"kind": "const",
"start": 0,
"type": "VariableDeclaration",
"type": "VariableDeclaration"
}
],
"commentStart": 0,
"end": 0,
"innerAttrs": [
{
"commentStart": 0,
"end": 0,
"name": {
"commentStart": 134,
"end": 0,
"name": "settings",
"start": 0,
"type": "Identifier"
},
"preComments": [
"// Makeup Mirror",
"// A circular vanity mirror mounted on a swiveling arm with pivot joints, used for personal grooming.",
"",
"",
"// Set units"
],
"properties": [
{
"commentStart": 143,
"end": 0,
"key": {
"commentStart": 143,
"end": 0,
"name": "defaultLengthUnit",
"start": 0,
"type": "Identifier"
},
"start": 0,
"type": "ObjectProperty",
"value": {
"abs_path": false,
"commentStart": 163,
"end": 0,
"name": {
"commentStart": 163,
"end": 0,
"name": "mm",
"start": 0,
"type": "Identifier"
},
"path": [],
"start": 0,
"type": "Name",
"type": "Name"
}
}
],
"start": 0,
"type": "Annotation"
}
],
"nonCodeMeta": {
"nonCodeNodes": {
"10": [
{
"commentStart": 686,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
}
],
"13": [
{
"commentStart": 830,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
}
],
"15": [
{
"commentStart": 959,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
}
],
"18": [
{
"commentStart": 1337,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
}
],
"21": [
{
"commentStart": 2272,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
}
]
},
"startNodes": [
{
"commentStart": 166,
"end": 0,
"start": 0,
"type": "NonCodeNode",
"value": {
"type": "newLine"
}
}
]
},
"start": 0
}
}