Script: Structural Beams

Structural Beams picture
Type
Rete logo indicatorrete
Date Created
Nov 4, 2025, 10:54:49 AM
Last Edit Date
Apr 6, 2026, 10:36:51 AM

Project Information

In our latest version we introduced some helper functions to create standard beam profiles

View Full Project

Script Code

{
  "id": "rete-v2-json",
  "nodes": {
    "258c1f7e40dd7e5e": {
      "id": "258c1f7e40dd7e5e",
      "name": "bitbybit.occt.shapes.solid.createIBeamProfileSolid",
      "customName": "I beam profile solid",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "width": 0.2,
        "height": 0.3,
        "webThickness": 0.02,
        "flangeThickness": 0.03,
        "alignment": "topMid",
        "rotation": 90,
        "center": [
          0,
          0,
          0
        ],
        "direction": [
          0,
          1,
          0
        ],
        "extrusionLengthFront": 1,
        "extrusionLengthBack": 1
      },
      "inputs": {
        "direction": {
          "connections": [
            {
              "node": "69355383c76509b5",
              "output": "result",
              "data": {}
            }
          ]
        },
        "center": {
          "connections": [
            {
              "node": "307a4c86c391002a",
              "output": "result",
              "data": {}
            }
          ]
        },
        "width": {
          "connections": [
            {
              "node": "054656b1c7673a5b",
              "output": "result",
              "data": {}
            }
          ]
        },
        "extrusionLengthFront": {
          "connections": [
            {
              "node": "2c319fa1e319265c",
              "output": "result",
              "data": {}
            }
          ]
        },
        "extrusionLengthBack": {
          "connections": [
            {
              "node": "2c319fa1e319265c",
              "output": "result",
              "data": {}
            }
          ]
        },
        "height": {
          "connections": [
            {
              "node": "962e35426bd0cde3",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        7747.255331655817,
        233.77646324320963
      ]
    },
    "69355383c76509b5": {
      "id": "69355383c76509b5",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": 1,
        "y": 0,
        "z": 0
      },
      "inputs": {},
      "position": [
        5959.84669541458,
        447.97560627377493
      ]
    },
    "58cab01bc209a9a9": {
      "id": "58cab01bc209a9a9",
      "name": "bitbybit.math.numberSlider",
      "customName": "width",
      "data": {
        "options": {
          "min": 0,
          "max": 30,
          "step": 0.1,
          "width": 350,
          "updateOnDrag": false
        },
        "number": 10.3
      },
      "inputs": {},
      "position": [
        -1242.782415614452,
        2345.599904802829
      ]
    },
    "be711f16daa5018a": {
      "id": "be711f16daa5018a",
      "name": "bitbybit.math.divide",
      "customName": "divide",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "first": 1,
        "second": 2
      },
      "inputs": {
        "first": {
          "connections": [
            {
              "node": "58cab01bc209a9a9",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        2779.753741407253,
        2720.630528685395
      ]
    },
    "ee62f6576fd089ff": {
      "id": "ee62f6576fd089ff",
      "name": "bitbybit.vector.span",
      "customName": "span",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "step": 1,
        "min": -5,
        "max": 5
      },
      "inputs": {
        "max": {
          "connections": [
            {
              "node": "937078ffd0294a1e",
              "output": "result",
              "data": {}
            }
          ]
        },
        "min": {
          "connections": [
            {
              "node": "9e47974ff95f9b95",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        2805.123309118912,
        134.04525556714714
      ]
    },
    "307a4c86c391002a": {
      "id": "307a4c86c391002a",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": 0,
        "y": 3,
        "z": 0
      },
      "inputs": {
        "z": {
          "connections": [
            {
              "node": "265211b9ceebd161",
              "output": "result",
              "data": {}
            }
          ]
        },
        "y": {
          "connections": [
            {
              "node": "869f5b22f24e3905",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        5972.386546464713,
        55.01980037508304
      ]
    },
    "265211b9ceebd161": {
      "id": "265211b9ceebd161",
      "name": "bitbybit.lists.flatten",
      "customName": "flatten",
      "data": {
        "nrLevels": 1
      },
      "inputs": {
        "list": {
          "connections": [
            {
              "node": "ee62f6576fd089ff",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        3222.569984941329,
        172.69295738374
      ]
    },
    "acd874f00138e879": {
      "id": "acd874f00138e879",
      "name": "bitbybit.occt.shapes.solid.createIBeamProfileSolid",
      "customName": "I beam profile solid",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "width": 0.2,
        "height": 0.3,
        "webThickness": 0.02,
        "flangeThickness": 0.03,
        "alignment": "topMid",
        "rotation": 90,
        "center": [
          0,
          0,
          0
        ],
        "direction": [
          0,
          1,
          0
        ],
        "extrusionLengthFront": 1,
        "extrusionLengthBack": 1
      },
      "inputs": {
        "direction": {
          "connections": [
            {
              "node": "e6112f154bfd12fa",
              "output": "result",
              "data": {}
            }
          ]
        },
        "center": {
          "connections": [
            {
              "node": "cadfce9ed7139317",
              "output": "result",
              "data": {}
            }
          ]
        },
        "extrusionLengthFront": {
          "connections": [
            {
              "node": "92fb749d62b7cdc0",
              "output": "result",
              "data": {}
            }
          ]
        },
        "extrusionLengthBack": {
          "connections": [
            {
              "node": "92fb749d62b7cdc0",
              "output": "result",
              "data": {}
            }
          ]
        },
        "width": {
          "connections": [
            {
              "node": "054656b1c7673a5b",
              "output": "result",
              "data": {}
            }
          ]
        },
        "height": {
          "connections": [
            {
              "node": "962e35426bd0cde3",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        8051.555846003819,
        1120.890882965896
      ]
    },
    "e6112f154bfd12fa": {
      "id": "e6112f154bfd12fa",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": 0,
        "y": 0,
        "z": 1
      },
      "inputs": {},
      "position": [
        7359.8468306424365,
        2454.6149395557513
      ]
    },
    "37889a1e239e624a": {
      "id": "37889a1e239e624a",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": 0,
        "y": 0,
        "z": 0
      },
      "inputs": {
        "y": {
          "connections": [
            {
              "node": "869f5b22f24e3905",
              "output": "result",
              "data": {}
            }
          ]
        },
        "x": {
          "connections": [
            {
              "node": "be711f16daa5018a",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        6458.202571395677,
        2395.930632218117
      ]
    },
    "27b8da0f5d34a0b6": {
      "id": "27b8da0f5d34a0b6",
      "name": "bitbybit.math.negate",
      "customName": "negate",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "number": 1
      },
      "inputs": {
        "number": {
          "connections": [
            {
              "node": "be711f16daa5018a",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        3905.309607963248,
        2886.7024848669553
      ]
    },
    "937078ffd0294a1e": {
      "id": "937078ffd0294a1e",
      "name": "bitbybit.math.numberSlider",
      "customName": "length",
      "data": {
        "options": {
          "min": 0,
          "max": 10,
          "step": 2,
          "width": 350,
          "updateOnDrag": false
        },
        "number": 4
      },
      "inputs": {},
      "position": [
        -1242.3189048229858,
        1551.5354108930615
      ]
    },
    "9e47974ff95f9b95": {
      "id": "9e47974ff95f9b95",
      "name": "bitbybit.math.negate",
      "customName": "negate",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "number": 1
      },
      "inputs": {
        "number": {
          "connections": [
            {
              "node": "937078ffd0294a1e",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        1727.4087017314043,
        32.03067659392619
      ]
    },
    "869f5b22f24e3905": {
      "id": "869f5b22f24e3905",
      "name": "bitbybit.math.numberSlider",
      "customName": "height",
      "data": {
        "number": 2.4
      },
      "inputs": {},
      "position": [
        -1242.3350825764824,
        1746.3744632192079
      ]
    },
    "427a85acab414e11": {
      "id": "427a85acab414e11",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": 0,
        "y": 0,
        "z": 0
      },
      "inputs": {
        "y": {
          "connections": [
            {
              "node": "869f5b22f24e3905",
              "output": "result",
              "data": {}
            }
          ]
        },
        "x": {
          "connections": [
            {
              "node": "27b8da0f5d34a0b6",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        6454.980463856888,
        2034.7705276209601
      ]
    },
    "3a13702e3e21483f": {
      "id": "3a13702e3e21483f",
      "name": "bitbybit.lists.createList",
      "customName": "create list",
      "data": {},
      "inputs": {
        "listElements": {
          "connections": [
            {
              "node": "37889a1e239e624a",
              "output": "result",
              "data": {}
            },
            {
              "node": "427a85acab414e11",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        6940.416541906054,
        2197.237679520432
      ]
    },
    "cadfce9ed7139317": {
      "id": "cadfce9ed7139317",
      "name": "bitbybit.lists.flatten",
      "customName": "flatten",
      "data": {
        "nrLevels": 1
      },
      "inputs": {
        "list": {
          "connections": [
            {
              "node": "3a13702e3e21483f",
              "output": "list",
              "data": {}
            }
          ]
        }
      },
      "position": [
        7361.626034686105,
        2202.504983421861
      ]
    },
    "8cd37e40ad673799": {
      "id": "8cd37e40ad673799",
      "name": "bitbybit.babylon.scene.twoColorLinearGradientBackground",
      "customName": "two color linear gradient background",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "colorFrom": "#1a1c1f",
        "colorTo": "#93aacd",
        "direction": "to bottom",
        "stopFrom": 0,
        "stopTo": 100
      },
      "inputs": {},
      "position": [
        -471.0267332763326,
        5286.514693620773
      ]
    },
    "a5eba722e4cf4b69": {
      "id": "a5eba722e4cf4b69",
      "name": "bitbybit.draw.drawGridMesh",
      "customName": "draw grid mesh",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "width": 400,
        "height": 400,
        "subdivisions": 10,
        "majorUnitFrequency": 10,
        "minorUnitVisibility": 0.45,
        "gridRatio": 0.5,
        "opacity": 0.5,
        "backFaceCulling": false,
        "mainColor": "#ffffff",
        "secondaryColor": "#ffffff"
      },
      "inputs": {},
      "position": [
        -34.631349643776275,
        4514.776940842832
      ]
    },
    "9c1f83fa2c2628aa": {
      "id": "9c1f83fa2c2628aa",
      "name": "bitbybit.occt.shapes.compound.makeCompound",
      "customName": "make compound",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        }
      },
      "inputs": {
        "shapes": {
          "connections": [
            {
              "node": "45b4bbe13be87e58",
              "output": "list",
              "data": {}
            }
          ]
        }
      },
      "position": [
        8655.857488507996,
        225.28463757998654
      ]
    },
    "45b4bbe13be87e58": {
      "id": "45b4bbe13be87e58",
      "name": "bitbybit.lists.createList",
      "customName": "create list",
      "data": {},
      "inputs": {
        "listElements": {
          "connections": [
            {
              "node": "258c1f7e40dd7e5e",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        8241.923376983965,
        266.0960887095256
      ]
    },
    "7a1d47d5830dacb9": {
      "id": "7a1d47d5830dacb9",
      "name": "bitbybit.occt.shapes.compound.makeCompound",
      "customName": "make compound",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        }
      },
      "inputs": {
        "shapes": {
          "connections": [
            {
              "node": "8b8e72e55a72f200",
              "output": "list",
              "data": {}
            }
          ]
        }
      },
      "position": [
        8956.505839231053,
        1128.2219744494764
      ]
    },
    "8b8e72e55a72f200": {
      "id": "8b8e72e55a72f200",
      "name": "bitbybit.lists.createList",
      "customName": "create list",
      "data": {},
      "inputs": {
        "listElements": {
          "connections": [
            {
              "node": "acd874f00138e879",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        8546.221260776152,
        1165.5090367261525
      ]
    },
    "02ac01afd43871f7": {
      "id": "02ac01afd43871f7",
      "name": "bitbybit.draw.optionsOcctShapeSimple",
      "customName": "options occt shape simple",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "precision": 0.01,
        "drawFaces": true,
        "faceColour": "#3b0c69",
        "drawEdges": false,
        "edgeColour": "#008a09",
        "edgeWidth": 0.5,
        "drawTwoSided": true,
        "backFaceColour": "#0000ff",
        "backFaceOpacity": 1
      },
      "inputs": {},
      "position": [
        10298.297053493596,
        1464.1217295330746
      ]
    },
    "054656b1c7673a5b": {
      "id": "054656b1c7673a5b",
      "name": "bitbybit.math.numberSlider",
      "customName": "beam width",
      "data": {
        "options": {
          "min": 0,
          "max": 1,
          "step": 0.01,
          "width": 350,
          "updateOnDrag": false
        },
        "number": 0.17
      },
      "inputs": {},
      "position": [
        -1243.9429215276214,
        1957.8735059817689
      ]
    },
    "92fb749d62b7cdc0": {
      "id": "92fb749d62b7cdc0",
      "name": "bitbybit.math.add",
      "customName": "add",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "first": 1,
        "second": 2
      },
      "inputs": {
        "first": {
          "connections": [
            {
              "node": "937078ffd0294a1e",
              "output": "result",
              "data": {}
            }
          ]
        },
        "second": {
          "connections": [
            {
              "node": "c6e4dd6138544b98",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        6470.197240133625,
        1540.9671379674442
      ]
    },
    "c6e4dd6138544b98": {
      "id": "c6e4dd6138544b98",
      "name": "bitbybit.math.divide",
      "customName": "divide",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "first": 1,
        "second": 2
      },
      "inputs": {
        "first": {
          "connections": [
            {
              "node": "054656b1c7673a5b",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        2795.6773416940273,
        2373.505080879785
      ]
    },
    "2c319fa1e319265c": {
      "id": "2c319fa1e319265c",
      "name": "bitbybit.math.add",
      "customName": "add",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "first": 1,
        "second": 2
      },
      "inputs": {
        "first": {
          "connections": [
            {
              "node": "c6e4dd6138544b98",
              "output": "result",
              "data": {}
            }
          ]
        },
        "second": {
          "connections": [
            {
              "node": "be711f16daa5018a",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        5949.864334446051,
        800.7268756592316
      ]
    },
    "8b9104230a20ba58": {
      "id": "8b9104230a20ba58",
      "name": "bitbybit.babylon.scene.drawDirectionalLight",
      "customName": "draw directional light",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "direction": [
          -100,
          -100,
          -100
        ],
        "intensity": 2,
        "diffuse": "#ffffff",
        "specular": "#ffffff",
        "shadowGeneratorMapSize": 2056,
        "enableShadows": true,
        "shadowDarkness": 0,
        "shadowUsePercentageCloserFiltering": true,
        "transparencyShadow": false,
        "shadowContactHardeningLightSizeUVRatio": 0.2,
        "shadowBias": 0.0001,
        "shadowNormalBias": 0.002,
        "shadowMaxZ": 1000,
        "shadowMinZ": 0,
        "shadowRefreshRate": 1
      },
      "inputs": {},
      "position": [
        402.8170074163237,
        4547.56043809514
      ]
    },
    "69ca26610b50218b": {
      "id": "69ca26610b50218b",
      "name": "bitbybit.draw.drawAnyAsync",
      "customName": "draw any async",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        }
      },
      "inputs": {
        "options": {
          "connections": [
            {
              "node": "a850a37f93d3613d",
              "output": "result",
              "data": {}
            }
          ]
        },
        "entity": {
          "connections": [
            {
              "node": "7ef081e3319649a2",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        10780.2379903388,
        319.55652407412765
      ]
    },
    "a850a37f93d3613d": {
      "id": "a850a37f93d3613d",
      "name": "bitbybit.draw.optionsOcctShapeSimple",
      "customName": "options occt shape simple",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "precision": 0.01,
        "drawFaces": true,
        "faceColour": "#00ff91",
        "drawEdges": true,
        "edgeColour": "#24039b",
        "edgeWidth": 0.5,
        "drawTwoSided": true,
        "backFaceColour": "#0000ff",
        "backFaceOpacity": 1
      },
      "inputs": {},
      "position": [
        10300.955749408571,
        530.709323955825
      ]
    },
    "8cd1acf7dd02ba08": {
      "id": "8cd1acf7dd02ba08",
      "name": "bitbybit.occt.shapes.face.createCircleFace",
      "customName": "circle face",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "radius": 20,
        "center": [
          0,
          0,
          0
        ],
        "direction": [
          0,
          1,
          0
        ]
      },
      "inputs": {},
      "position": [
        -441.4820568786112,
        3510.1575387301696
      ]
    },
    "e8234e403b397928": {
      "id": "e8234e403b397928",
      "name": "bitbybit.draw.drawAnyAsync",
      "customName": "draw any async",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        }
      },
      "inputs": {
        "entity": {
          "connections": [
            {
              "node": "8cd1acf7dd02ba08",
              "output": "result",
              "data": {}
            }
          ]
        },
        "options": {
          "connections": [
            {
              "node": "75117488e240ed25",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        94.57397284784659,
        3650.181983715033
      ]
    },
    "75117488e240ed25": {
      "id": "75117488e240ed25",
      "name": "bitbybit.draw.optionsOcctShapeSimple",
      "customName": "options occt shape simple",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "precision": 0.01,
        "drawFaces": true,
        "faceColour": "#404040",
        "drawEdges": true,
        "edgeColour": "#ffffff",
        "edgeWidth": 2,
        "drawTwoSided": true,
        "backFaceColour": "#0000ff",
        "backFaceOpacity": 1
      },
      "inputs": {},
      "position": [
        -433.3117790121362,
        3875.742850683062
      ]
    },
    "ddf6018f6c7d8998": {
      "id": "ddf6018f6c7d8998",
      "name": "bitbybit.babylon.scene.adjustActiveArcRotateCamera",
      "customName": "adjust active arc rotate camera",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "position": [
          10,
          10,
          10
        ],
        "lookAt": [
          0,
          0,
          0
        ],
        "lowerBetaLimit": 1,
        "upperBetaLimit": 179,
        "angularSensibilityX": 1000,
        "angularSensibilityY": 1000,
        "maxZ": 1000,
        "panningSensibility": 1000,
        "wheelPrecision": 50
      },
      "inputs": {
        "lookAt": {
          "connections": [
            {
              "node": "2cdba9814408b55e",
              "output": "result",
              "data": {}
            }
          ]
        },
        "position": {
          "connections": [
            {
              "node": "ca61809f61f6312a",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        -501.81763652563603,
        4497.753331853265
      ]
    },
    "ca61809f61f6312a": {
      "id": "ca61809f61f6312a",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": -15,
        "y": 5,
        "z": 15
      },
      "inputs": {},
      "position": [
        -992.3456753110229,
        4522.42304942581
      ]
    },
    "e65faacb57d8d75d": {
      "id": "e65faacb57d8d75d",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": 0,
        "y": 3,
        "z": 0
      },
      "inputs": {
        "z": {
          "connections": [
            {
              "node": "265211b9ceebd161",
              "output": "result",
              "data": {}
            }
          ]
        },
        "y": {
          "connections": [
            {
              "node": "893df2302f52e2ee",
              "output": "result",
              "data": {}
            }
          ]
        },
        "x": {
          "connections": [
            {
              "node": "be711f16daa5018a",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        4105.6761209050765,
        -988.7702034511685
      ]
    },
    "962e35426bd0cde3": {
      "id": "962e35426bd0cde3",
      "name": "bitbybit.math.numberSlider",
      "customName": "beam height",
      "data": {
        "options": {
          "min": 0,
          "max": 1,
          "step": 0.1,
          "width": 350,
          "updateOnDrag": false
        },
        "number": 0.3
      },
      "inputs": {},
      "position": [
        -1246.0915100206369,
        2148.104862463279
      ]
    },
    "893df2302f52e2ee": {
      "id": "893df2302f52e2ee",
      "name": "bitbybit.math.subtract",
      "customName": "subtract",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "first": 1,
        "second": 2
      },
      "inputs": {
        "first": {
          "connections": [
            {
              "node": "869f5b22f24e3905",
              "output": "result",
              "data": {}
            }
          ]
        },
        "second": {
          "connections": [
            {
              "node": "962e35426bd0cde3",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        2262.4761785037663,
        -646.615093789237
      ]
    },
    "bef6f2139befd7f5": {
      "id": "bef6f2139befd7f5",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": 0,
        "y": 3,
        "z": 0
      },
      "inputs": {
        "y": {
          "connections": [
            {
              "node": "893df2302f52e2ee",
              "output": "result",
              "data": {}
            }
          ]
        },
        "x": {
          "connections": [
            {
              "node": "27b8da0f5d34a0b6",
              "output": "result",
              "data": {}
            }
          ]
        },
        "z": {
          "connections": [
            {
              "node": "265211b9ceebd161",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        4787.770313868448,
        -792.4565603570513
      ]
    },
    "053f5b9b5167d17b": {
      "id": "053f5b9b5167d17b",
      "name": "bitbybit.lists.createList",
      "customName": "create list",
      "data": {},
      "inputs": {
        "listElements": {
          "connections": [
            {
              "node": "bef6f2139befd7f5",
              "output": "result",
              "data": {}
            },
            {
              "node": "e65faacb57d8d75d",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        5233.290452444672,
        -942.6626302159938
      ]
    },
    "0d87703b7fe180fb": {
      "id": "0d87703b7fe180fb",
      "name": "bitbybit.occt.shapes.solid.createIBeamProfileSolid",
      "customName": "I beam profile solid",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "width": 0.2,
        "height": 0.25,
        "webThickness": 0.02,
        "flangeThickness": 0.03,
        "alignment": "midMid",
        "rotation": 90,
        "center": [
          0,
          0,
          0
        ],
        "direction": [
          0,
          1,
          0
        ],
        "extrusionLengthFront": 0.00001,
        "extrusionLengthBack": 2
      },
      "inputs": {
        "center": {
          "connections": [
            {
              "node": "abfe6b0be419c4cf",
              "output": "result",
              "data": {}
            }
          ]
        },
        "direction": {
          "connections": [
            {
              "node": "8675c8018fb5d02d",
              "output": "result",
              "data": {}
            }
          ]
        },
        "extrusionLengthBack": {
          "connections": [
            {
              "node": "893df2302f52e2ee",
              "output": "result",
              "data": {}
            }
          ]
        },
        "height": {
          "connections": [
            {
              "node": "054656b1c7673a5b",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        6933.2821389255505,
        -868.6420805764324
      ]
    },
    "abfe6b0be419c4cf": {
      "id": "abfe6b0be419c4cf",
      "name": "bitbybit.lists.flatten",
      "customName": "flatten",
      "data": {
        "nrLevels": 1
      },
      "inputs": {
        "list": {
          "connections": [
            {
              "node": "053f5b9b5167d17b",
              "output": "list",
              "data": {}
            }
          ]
        }
      },
      "position": [
        5630.193864096222,
        -940.0041260850953
      ]
    },
    "8675c8018fb5d02d": {
      "id": "8675c8018fb5d02d",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": 0,
        "y": 1,
        "z": 0
      },
      "inputs": {},
      "position": [
        5976.371547222918,
        -320.1518528297372
      ]
    },
    "fcbde3f4600af52a": {
      "id": "fcbde3f4600af52a",
      "name": "bitbybit.lists.createList",
      "customName": "create list",
      "data": {},
      "inputs": {
        "listElements": {
          "connections": [
            {
              "node": "0d87703b7fe180fb",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        7467.37956520403,
        -828.6446125547278
      ]
    },
    "9071066c69878186": {
      "id": "9071066c69878186",
      "name": "bitbybit.occt.shapes.compound.makeCompound",
      "customName": "make compound",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        }
      },
      "inputs": {
        "shapes": {
          "connections": [
            {
              "node": "fcbde3f4600af52a",
              "output": "list",
              "data": {}
            }
          ]
        }
      },
      "position": [
        7877.741696455566,
        -868.2354400203301
      ]
    },
    "dffffcf9d2fdd655": {
      "id": "dffffcf9d2fdd655",
      "name": "bitbybit.draw.optionsOcctShapeSimple",
      "customName": "options occt shape simple",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "precision": 0.01,
        "drawFaces": true,
        "faceColour": "#5778ff",
        "drawEdges": true,
        "edgeColour": "#000000",
        "edgeWidth": 0.5,
        "drawTwoSided": true,
        "backFaceColour": "#0000ff",
        "backFaceOpacity": 1
      },
      "inputs": {},
      "position": [
        10274.780537232511,
        -579.7469435370472
      ]
    },
    "17b988f1d999908a": {
      "id": "17b988f1d999908a",
      "name": "bitbybit.draw.drawAnyAsync",
      "customName": "draw any async",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        }
      },
      "inputs": {
        "options": {
          "connections": [
            {
              "node": "dffffcf9d2fdd655",
              "output": "result",
              "data": {}
            }
          ]
        },
        "entity": {
          "connections": [
            {
              "node": "5430c0fc46a137e3",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        10762.013701901647,
        -766.7199146472245
      ]
    },
    "e0e4fdcc73b9fee4": {
      "id": "e0e4fdcc73b9fee4",
      "name": "bitbybit.babylon.scene.drawDirectionalLight",
      "customName": "draw directional light",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "direction": [
          -100,
          -100,
          -100
        ],
        "intensity": 1,
        "diffuse": "#ffffff",
        "specular": "#ffffff",
        "shadowGeneratorMapSize": 1024,
        "enableShadows": true,
        "shadowDarkness": 0,
        "shadowUsePercentageCloserFiltering": true,
        "transparencyShadow": false,
        "shadowContactHardeningLightSizeUVRatio": 0.2,
        "shadowBias": 0.001,
        "shadowNormalBias": 0.002,
        "shadowMaxZ": 1000,
        "shadowMinZ": 0,
        "shadowRefreshRate": 1
      },
      "inputs": {
        "direction": {
          "connections": [
            {
              "node": "8195f6a917a84d44",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        1387.8403253053318,
        4612.939493082535
      ]
    },
    "8195f6a917a84d44": {
      "id": "8195f6a917a84d44",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": 100,
        "y": -100,
        "z": -100
      },
      "inputs": {},
      "position": [
        1005.3682260498481,
        4605.457175403028
      ]
    },
    "9447f74c4717cfa5": {
      "id": "9447f74c4717cfa5",
      "name": "bitbybit.occt.transforms.translate",
      "customName": "translate",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "translation": [
          0,
          0,
          0
        ]
      },
      "inputs": {
        "shape": {
          "connections": [
            {
              "node": "9071066c69878186",
              "output": "result",
              "data": {}
            }
          ]
        },
        "translation": {
          "connections": [
            {
              "node": "38a09d5487226d12",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        9495.120128800196,
        -877.5534027325307
      ]
    },
    "38a09d5487226d12": {
      "id": "38a09d5487226d12",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": 0,
        "y": 0,
        "z": 0
      },
      "inputs": {
        "y": {
          "connections": [
            {
              "node": "d146192e98565a70",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        8168.067423700045,
        -1612.7007146556516
      ]
    },
    "005a62a2b6ca578d": {
      "id": "005a62a2b6ca578d",
      "name": "bitbybit.math.add",
      "customName": "add",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "first": 1,
        "second": 2
      },
      "inputs": {
        "first": {
          "connections": [
            {
              "node": "869f5b22f24e3905",
              "output": "result",
              "data": {}
            }
          ]
        },
        "second": {
          "connections": [
            {
              "node": "962e35426bd0cde3",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        5697.333228939984,
        -1754.9772354781567
      ]
    },
    "f8f207214376c655": {
      "id": "f8f207214376c655",
      "name": "bitbybit.math.numberSlider",
      "customName": "Nr floors",
      "data": {
        "options": {
          "min": 1,
          "max": 10,
          "step": 1,
          "width": 350,
          "updateOnDrag": false
        },
        "number": 2
      },
      "inputs": {},
      "position": [
        -1186.2585169781023,
        -1324.4380312765852
      ]
    },
    "90de4cff1f5f0d3e": {
      "id": "90de4cff1f5f0d3e",
      "name": "bitbybit.math.multiply",
      "customName": "multiply",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "first": 1,
        "second": 2
      },
      "inputs": {
        "first": {
          "connections": [
            {
              "node": "005a62a2b6ca578d",
              "output": "result",
              "data": {}
            }
          ]
        },
        "second": {
          "connections": [
            {
              "node": "f8f207214376c655",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        6564.480609347342,
        -1395.5059543347725
      ]
    },
    "c15ee8ed1544b9fb": {
      "id": "c15ee8ed1544b9fb",
      "name": "bitbybit.vector.span",
      "customName": "span",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "step": 0.1,
        "min": 0,
        "max": 1
      },
      "inputs": {
        "max": {
          "connections": [
            {
              "node": "49e66a9b9c867fc5",
              "output": "result",
              "data": {}
            }
          ]
        },
        "step": {
          "connections": [
            {
              "node": "005a62a2b6ca578d",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        7396.4135921734205,
        -1569.376751688698
      ]
    },
    "49e66a9b9c867fc5": {
      "id": "49e66a9b9c867fc5",
      "name": "bitbybit.math.add",
      "customName": "add",
      "async": false,
      "drawable": false,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "first": 1,
        "second": 0.00001
      },
      "inputs": {
        "first": {
          "connections": [
            {
              "node": "90de4cff1f5f0d3e",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        6975.298171218972,
        -1400.6725532583973
      ]
    },
    "d146192e98565a70": {
      "id": "d146192e98565a70",
      "name": "bitbybit.lists.flatten",
      "customName": "flatten",
      "data": {
        "nrLevels": 1
      },
      "inputs": {
        "list": {
          "connections": [
            {
              "node": "c15ee8ed1544b9fb",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        7778.455905729268,
        -1531.760976937692
      ]
    },
    "5430c0fc46a137e3": {
      "id": "5430c0fc46a137e3",
      "name": "bitbybit.occt.shapes.compound.makeCompound",
      "customName": "make compound",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        }
      },
      "inputs": {
        "shapes": {
          "connections": [
            {
              "node": "d7f6639f5fbdbb40",
              "output": "list",
              "data": {}
            }
          ]
        }
      },
      "position": [
        10281.964072578045,
        -880.204608521107
      ]
    },
    "d7f6639f5fbdbb40": {
      "id": "d7f6639f5fbdbb40",
      "name": "bitbybit.lists.createList",
      "customName": "create list",
      "data": {},
      "inputs": {
        "listElements": {
          "connections": [
            {
              "node": "9447f74c4717cfa5",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        9886.500463984217,
        -840.0430666094057
      ]
    },
    "2736a60cd56ad16a": {
      "id": "2736a60cd56ad16a",
      "name": "bitbybit.occt.transforms.translate",
      "customName": "translate",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "translation": [
          0,
          0,
          0
        ]
      },
      "inputs": {
        "shape": {
          "connections": [
            {
              "node": "9c1f83fa2c2628aa",
              "output": "result",
              "data": {}
            }
          ]
        },
        "translation": {
          "connections": [
            {
              "node": "38a09d5487226d12",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        9527.722558724441,
        232.15069364963773
      ]
    },
    "6ea4a31bd91dea3d": {
      "id": "6ea4a31bd91dea3d",
      "name": "bitbybit.lists.createList",
      "customName": "create list",
      "data": {},
      "inputs": {
        "listElements": {
          "connections": [
            {
              "node": "2736a60cd56ad16a",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        9921.65233624981,
        269.9814585349116
      ]
    },
    "7ef081e3319649a2": {
      "id": "7ef081e3319649a2",
      "name": "bitbybit.occt.shapes.compound.makeCompound",
      "customName": "make compound",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        }
      },
      "inputs": {
        "shapes": {
          "connections": [
            {
              "node": "6ea4a31bd91dea3d",
              "output": "list",
              "data": {}
            }
          ]
        }
      },
      "position": [
        10303.7012348289,
        227.63548179310476
      ]
    },
    "febeca46e9617163": {
      "id": "febeca46e9617163",
      "name": "bitbybit.occt.transforms.translate",
      "customName": "translate",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "translation": [
          0,
          0,
          0
        ]
      },
      "inputs": {
        "shape": {
          "connections": [
            {
              "node": "7a1d47d5830dacb9",
              "output": "result",
              "data": {}
            }
          ]
        },
        "translation": {
          "connections": [
            {
              "node": "38a09d5487226d12",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        9521.327289556337,
        1145.5259966727476
      ]
    },
    "f036462462b92645": {
      "id": "f036462462b92645",
      "name": "bitbybit.lists.createList",
      "customName": "create list",
      "data": {},
      "inputs": {
        "listElements": {
          "connections": [
            {
              "node": "febeca46e9617163",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        9915.885068609656,
        1185.0048782421484
      ]
    },
    "982ff0cc826ff5a7": {
      "id": "982ff0cc826ff5a7",
      "name": "bitbybit.occt.shapes.compound.makeCompound",
      "customName": "make compound",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        }
      },
      "inputs": {
        "shapes": {
          "connections": [
            {
              "node": "f036462462b92645",
              "output": "list",
              "data": {}
            }
          ]
        }
      },
      "position": [
        10304.91340031946,
        1140.3252569270423
      ]
    },
    "b75100db7abb8512": {
      "id": "b75100db7abb8512",
      "name": "bitbybit.draw.drawAnyAsync",
      "customName": "draw any async",
      "async": true,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": false,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        }
      },
      "inputs": {
        "options": {
          "connections": [
            {
              "node": "02ac01afd43871f7",
              "output": "result",
              "data": {}
            }
          ]
        },
        "entity": {
          "connections": [
            {
              "node": "982ff0cc826ff5a7",
              "output": "result",
              "data": {}
            }
          ]
        }
      },
      "position": [
        10753.377903430955,
        1217.4981199144286
      ]
    },
    "2cdba9814408b55e": {
      "id": "2cdba9814408b55e",
      "name": "bitbybit.vector.vectorXYZ",
      "customName": "vector xyz",
      "async": false,
      "drawable": true,
      "data": {
        "genericNodeData": {
          "hide": true,
          "oneOnOne": false,
          "flatten": 0,
          "forceExecution": false
        },
        "x": 0,
        "y": 5,
        "z": 0
      },
      "inputs": {},
      "position": [
        -993.0317333181073,
        4881.799789580901
      ]
    }
  }
}