Script: Example of an engine model in Designer

Example of an engine model in Designer picture
Type
designer
Date Created
Oct 29, 2026, 5:49:12 AM
Last Edit Date
Oct 29, 2026, 5:51:45 AM

Project Information

A small air-cooled engine: a crankcase and a finned cylinder, the piston on its connecting rod and crankshaft, the valves and their cam, a flywheel, a carburettor and an exhaust.

View Full Project

Script Code

This script is large, so only its beginning is shown here. Open it in the editor to see all of it.

[
  {
    "schemaVersion": 1,
    "kind": "assembly",
    "id": "e9a1c0de-0000-4000-8000-000000000001",
    "up": "z",
    "units": {
      "length": "mm"
    },
    "meta": {
      "name": "Single-cylinder engine",
      "generator": "engine-app",
      "description": "A four-stroke side-valve single: the crank turns the rod and piston, a 20 to 40 tooth gear pair turns the camshaft at half speed, and its lobes lift the tappets and valves against their springs."
    },
    "parameters": {
      "crank": {
        "value": 0,
        "unit": "deg",
        "min": 0,
        "max": 720,
        "step": 1,
        "label": "Crank angle",
        "group": "Motion",
        "description": "Where the crankshaft stands in the four-stroke cycle: two turns, from top dead centre on the intake stroke"
      },
      "liftIn": {
        "value": "if(cos(crank / 2 - 55) > cos(66), 2 * (1 + cos(180 * acos(cos(crank / 2 - 55)) / 66)), 0)",
        "unit": "mm",
        "group": "Motion",
        "label": "Intake cam lift",
        "description": "How far the intake lobe lifts its tappet off the base circle at this crank angle"
      },
      "valveIn": {
        "value": "max(0, if(cos(crank / 2 - 55) > cos(66), 2 * (1 + cos(180 * acos(cos(crank / 2 - 55)) / 66)), 0) - 0.05)",
        "unit": "mm",
        "group": "Motion",
        "label": "Intake valve lift",
        "description": "How far the intake valve stands off its seat: the cam's lift less the tappet clearance"
      },
      "liftEx": {
        "value": "if(cos(crank / 2 - 305) > cos(66), 2 * (1 + cos(180 * acos(cos(crank / 2 - 305)) / 66)), 0)",
        "unit": "mm",
        "group": "Motion",
        "label": "Exhaust cam lift",
        "description": "How far the exhaust lobe lifts its tappet off the base circle at this crank angle"
      },
      "valveEx": {
        "value": "max(0, if(cos(crank / 2 - 305) > cos(66), 2 * (1 + cos(180 * acos(cos(crank / 2 - 305)) / 66)), 0) - 0.05)",
        "unit": "mm",
        "group": "Motion",
        "label": "Exhaust valve lift",
        "description": "How far the exhaust valve stands off its seat: the cam's lift less the tappet clearance"
      }
    },
    "configurations": [
      {
        "id": "intake",
        "name": "Intake",
        "values": {
          "crank": 90
        }
      },
      {
        "id": "compression",
        "name": "Compression",
        "values": {
          "crank": 270
        }
      },
      {
        "id": "power",
        "name": "Power",
        "values": {
          "crank": 450
        }
      },
      {
        "id": "exhaust",
        "name": "Exhaust",
        "values": {
          "crank": 630
        }
      }
    ],
    "components": [
      {
        "id": "block",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000002",
          "part": "block"
        }
      },
      {
        "id": "head",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000000f",
          "part": "head"
        }
      },
      {
        "id": "cover",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000010",
          "part": "cover"
        }
      },
      {
        "id": "bearingA",
        "name": "Main bearing, flywheel side",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000013",
          "part": "bearing"
        }
      },
      {
        "id": "bearingB",
        "name": "Main bearing, gear side",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000013",
          "part": "bearing"
        }
      },
      {
        "id": "crankshaft",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000003",
          "part": "crankshaft"
        }
      },
      {
        "id": "crankGear",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000008",
          "part": "crankGear"
        }
      },
      {
        "id": "gearKey",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000015",
          "part": "key",
          "parameters": {
            "shaftDiameter": 20,
            "length": 8
          }
        }
      },
      {
        "id": "flywheel",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000000e",
          "part": "flywheel"
        }
      },
      {
        "id": "flywheelKey",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000015",
          "part": "key",
          "parameters": {
            "shaftDiameter": 18,
            "length": 10
          }
        }
      },
      {
        "id": "starterCup",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000018",
          "part": "starterCup"
        }
      },
      {
        "id": "starterScrew",
        "name": "Starter cup screw",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "size": "M4",
            "length": 8
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "starterCup",
            "connector": "screws"
          }
        }
      },
      {
        "id": "rod",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000004",
          "part": "rod"
        }
      },
      {
        "id": "rodCap",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000000d",
          "part": "rodCap"
        }
      },
      {
        "id": "capScrew",
        "name": "Rod cap screw",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "length": 16
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "rodCap",
            "connector": "bolts"
          }
        }
      },
      {
        "id": "piston",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000005",
          "part": "piston"
        }
      },
      {
        "id": "gudgeonPin",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000006",
          "part": "gudgeonPin"
        }
      },
      {
        "id": "circlipA",
        "name": "Circlip, back",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000002c",
          "part": "circlip"
        }
      },
      {
        "id": "circlipB",
        "name": "Circlip, front",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000002c",
          "part": "circlip"
        }
      },
      {
        "id": "ring1",
        "name": "Compression ring 1",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000016",
          "part": "pistonRing"
        }
      },
      {
        "id": "ring2",
        "name": "Compression ring 2",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000016",
          "part": "pistonRing"
        }
      },
      {
        "id": "ring3",
        "name": "Oil ring",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000016",
          "part": "pistonRing"
        }
      },
      {
        "id": "camshaft",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000007",
          "part": "camshaft"
        }
      },
      {
        "id": "camGear",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000009",
          "part": "camGear"
        }
      },
      {
        "id": "tappetIn",
        "name": "Intake tappet",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000000a",
          "part": "tappet"
        }
      },
      {
        "id": "valveIn",
        "name": "Intake valve",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000000b",
          "part": "valve"
        }
      },
      {
        "id": "retainerIn",
        "name": "Intake spring retainer",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000000c",
          "part": "retainer"
        }
      },
      {
        "id": "seatIn",
        "name": "Intake spring seat",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000017",
          "part": "springSeat"
        }
      },
      {
        "id": "springIn",
        "name": "Intake valve spring",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000014",
          "part": "spring",
          "parameters": {
            "length": "22.2 - valveIn"
          }
        }
      },
      {
        "id": "tappetEx",
        "name": "Exhaust tappet",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000000a",
          "part": "tappet"
        }
      },
      {
        "id": "valveEx",
        "name": "Exhaust valve",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000000b",
          "part": "valve"
        }
      },
      {
        "id": "retainerEx",
        "name": "Exhaust spring retainer",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000000c",
          "part": "retainer"
        }
      },
      {
        "id": "seatEx",
        "name": "Exhaust spring seat",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000017",
          "part": "springSeat"
        }
      },
      {
        "id": "springEx",
        "name": "Exhaust valve spring",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000014",
          "part": "spring",
          "parameters": {
            "length": "22.2 - valveEx"
          }
        }
      },
      {
        "id": "headBolt",
        "name": "Head bolt",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "length": 30
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "head",
            "connector": "bolts"
          }
        }
      },
      {
        "id": "coverScrew",
        "name": "Cover screw",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "size": "M5",
            "length": 16
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "cover",
            "connector": "plateBolts"
          }
        }
      },
      {
        "id": "gearCoverScrew",
        "name": "Cover screw",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "size": "M5",
            "length": 16
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "cover",
            "connector": "roundBolts"
          }
        }
      },
      {
        "id": "sparkPlug",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000011",
          "part": "sparkPlug"
        }
      },
      {
        "id": "chestCover",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000001d",
          "part": "chestCover"
        }
      },
      {
        "id": "chestCoverScrew",
        "name": "Chest cover screw",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "size": "M4",
            "length": 10
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "chestCover",
            "connector": "screws"
          }
        }
      },
      {
        "id": "exhaust",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000001b",
          "part": "exhaust"
        }
      },
      {
        "id": "exhaustScrew",
        "name": "Exhaust flange screw",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "size": "M4",
            "length": 10
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "exhaust",
            "connector": "screws"
          }
        }
      },
      {
        "id": "carburettor",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000001a",
          "part": "carburettor"
        }
      },
      {
        "id": "carburettorScrew",
        "name": "Carburettor flange screw",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "size": "M4",
            "length": 10
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "carburettor",
            "connector": "screws"
          }
        }
      },
      {
        "id": "airFilter",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000001e",
          "part": "airFilter"
        }
      },
      {
        "id": "wingNut",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000001f",
          "part": "wingNut"
        }
      },
      {
        "id": "ignition",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000019",
          "part": "ignition"
        }
      },
      {
        "id": "ignitionScrew",
        "name": "Coil bracket screw",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "size": "M4",
            "length": 10
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "ignition",
            "connector": "screws"
          }
        }
      },
      {
        "id": "coreScrew",
        "name": "Coil core screw",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "size": "M4",
            "length": 10
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "ignition",
            "connector": "coreScrews"
          }
        }
      },
      {
        "id": "plugCap",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000001c",
          "part": "plugCap"
        }
      },
      {
        "id": "fillerCap",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000020",
          "part": "fillerCap"
        }
      },
      {
        "id": "drainPlug",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000021",
          "part": "drainPlug"
        }
      },
      {
        "id": "nameplate",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000022",
          "part": "nameplate"
        }
      },
      {
        "id": "governorArm",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000023",
          "part": "governorArm"
        }
      },
      {
        "id": "flywheelMagnet",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000024",
          "part": "flywheelMagnet"
        }
      },
      {
        "id": "headGasket",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000025",
          "part": "headGasket"
        }
      },
      {
        "id": "coverGasket",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000025",
          "part": "coverGasket"
        }
      },
      {
        "id": "chestGasket",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000025",
          "part": "chestGasket"
        }
      },
      {
        "id": "exhaustGasket",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000025",
          "part": "exhaustGasket"
        }
      },
      {
        "id": "intakeGasket",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000025",
          "part": "intakeGasket"
        }
      },
      {
        "id": "governorLink",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000026",
          "part": "governorLink"
        }
      },
      {
        "id": "fuelTank",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000027",
          "part": "fuelTank"
        }
      },
      {
        "id": "tankScrew0",
        "name": "Fuel tank screw",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "size": "M5",
            "length": 10
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "fuelTank",
            "connector": "screws0"
          }
        }
      },
      {
        "id": "tankScrew1",
        "name": "Fuel tank screw",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000012",
          "part": "screw",
          "parameters": {
            "size": "M5",
            "length": 10
          }
        },
        "replicate": {
          "connector": "seat",
          "to": {
            "component": "fuelTank",
            "connector": "screws1"
          }
        }
      },
      {
        "id": "tankCap",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000002a",
          "part": "tankCap"
        }
      },
      {
        "id": "fuelTap",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000028",
          "part": "fuelTap"
        }
      },
      {
        "id": "hoseEnds",
        "name": "Hose ends and clamps",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-00000000002b",
          "part": "hoseEnds"
        }
      },
      {
        "id": "fuelHose",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000029",
          "part": "fuelHose"
        }
      },
      {
        "id": "governorSpring",
        "name": "Governor damper spring",
        "source": {
          "document": "e9a1c0de-0000-4000-8000-000000000014",
          "part": "spring",
          "parameters": {
            "wireDiameter": 0.5,
            "diameter": 4.2,
            "activeCoils": 8,
            "length": 16.5
          }
        }
      }
    ],
    "joints": [
      {
        "id": "headGasketSeat",
        "type": "fastened",
        "component": "headGasket",
        "connector": "bottom",
        "to": {
          "component": "block",
          "connector": "deck"
        }
      },
      {
        "id": "headSeat",
        "type": "fastened",
        "component": "head",
        "connector": "gasket",
        "to": {
          "component": "headGasket",
          "connector": "top"
        }
      },
      {
        "id": "coverGasketSeat",
        "type": "fastened",
        "component": "coverGasket",
        "connector": "bottom",
        "to": {
          "component": "block",
          "connector": "front"
        }
      },
      {
        "id": "coverSeat",
        "type": "fastened",
        "component": "cover",
        "connector": "inside",
        "to": {
          "component": "coverGasket",
          "connector": "top"
        }
      },
      {
        "id": "bearingASeat",
        "type": "fastened",
        "component": "bearingA",
        "connector": "outer",
        "to": {
          "component": "block",
          "connector": "bearing"
        }
      },
      {
        "id": "bearingBSeat",
        "type": "fastened",
        "component": "bearingB",
        "connector": "outer",
        "to": {
          "component": "cover",
          "connector": "bearing"
        }
      },
      {
        "id": "crank",
        "type": "revolute",
        "component": "crankshaft",
        "connector": "drive",
        "to": {
          "frame": {
            "origin": [
              0,
              70,
              0
            ],
            "normal": [
              0,
              1,
              0
            ],
            "direction": [
              1,
              0,
              0
            ]
          }
        },
        "flip": true,
        "angle": "crank"
      },
      {
        "id": "crankGearSeat",
        "type": "fastened",
        "component": "crankGear",
        "connector": "seat",
        "to": {
          "component": "crankshaft",
          "connector": "gearSeat"
        },
        "offset": 0.05
      },
      {
        "id": "gearKeySeat",
        "type": "fastened",
        "component": "gearKey",
        "connector": "bottom",
        "to": {
          "component": "crankshaft",
          "connector": "gearKey"
        }
      },
      {
        "id": "flywheelSeat",
        "type": "fastened",
        "component": "flywheel",
        "connector": "seat",
        "to": {
          "component": "crankshaft",
          "connector": "flywheelSeat"
        },
        "offset": 0.05
      },
      {
        "id": "flywheelKeySeat",
        "type": "fastened",
        "component": "flywheelKey",
        "connector": "bottom",
        "to": {
          "component": "crankshaft",
          "connector": "flywheelKey"
        }
      },
      {
        "id": "starterCupSeat",
        "type": "fastened",
        "component": "starterCup",
        "connector": "seat",
        "to": {
          "component": "flywheel",
          "connector": "starter"
        }
      },
      {
        "id": "bigEnd",
        "type": "revolute",
        "component": "rod",
        "connector": "big",
        "to": {
          "component": "crankshaft",
          "connector": "pin"
        },
        "angle": "-asin(24 * sin(crank) / 90) - crank",
        "offset": 1
      },
      {
        "id": "capSeat",
        "type": "fastened",
        "component": "rodCap",
        "connector": "parting",
        "to": {
          "component": "rod",
          "connector": "parting"
        }
      },
      {
        "id": "bore",
        "type": "slider",
        "component": "piston",
        "connector": "crown",
        "to": {
          "component": "block",
          "connector": "deck"
        },
        "flip": true,
        "offset": "-1 + 24 * cos(crank) + sqrt(8100 - 576 * sin(crank) ^ 2) - 114"
      },
      {
        "id": "pinSeat",
        "type": "fastened",
        "component": "gudgeonPin",
        "connector": "end",
        "to": {
          "component": "piston",
          "connector": "boss"
        },
        "offset": -13
      },
      {
        "id": "circlipASeat",
        "type": "fastened",
        "component": "circlipA",
        "connector": "side",
        "to": {
          "component": "piston",
          "connector": "clipA"
        }
      },
      {
        "id": "circlipBSeat",
        "type": "fastened",
        "component": "circlipB",
        "connector": "side",
        "to": {
          "component": "piston",
          "connector": "clipB"
        }
      },
      {
        "id": "ring1Seat",
        "type": "fastened",
        "component": "ring1",
        "connector": "top",
        "to": {
          "component": "piston",
          "connector": "crown"
        },
        "flip": true,
        "offset": -3.05
      },
      {
        "id": "ring2Seat",
        "type": "fastened",
        "component": "ring2",
        "connector": "top",
        "to": {
          "component": "piston",
          "connector": "crown"
        },
        "flip": true,
        "offset": -6.55
      },
      {
        "id": "ring3Seat",
        "type": "fastened",
        "component": "ring3",
        "connector": "top",
        "to": {
          "component": "piston",
          "connector": "crown"
        },
        "flip": true,
        "offset": -10.05
      },
      {
        "id": "cam",
        "type": "revolute",
        "component": "camshaft",
        "connector": "drive",
        "to": {
          "frame": {
            "origin": [
              42,
              59,
              42.848571
            ],
            "normal": [
              0,
              1,
              0
            ],
            "direction": [
              1,
              0,
              0
            ]
          }
        },
        "flip": true,
        "angle": "-crank * 20 / 40"
      },
      {
        "id": "camGearSeat",
        "type": "fastened",
        "component": "camGear",
        "connector": "seat",
        "to": {
          "component": "camshaft",
          "connector": "gearSeat"
        },
        "offset": 0.05
      },
      {
        "id": "tappetInBore",
        "type": "slider",
        "component": "tappetIn",
        "connector": "top",
        "to": {
          "component": "block",
          "connector": "valveIn"
        },
        "flip": true,
        "offset": "-56.101429 + liftIn"
      },
      {
        "id": "valveInGuide",
        "type": "slider",
        "component": "valveIn",
        "connector": "top",
        "to": {
          "component": "block",
          "connector": "valveIn"
        },
        "flip": true,
        "offset": "0.05 + valveIn"
      },
      {
        "id": "retainerInSeat",
        "type": "fastened",
        "component": "retainerIn",
        "connector": "top",
        "to": {
          "component": "valveIn",
          "connector": "top"
        },
        "flip": true,
        "offset": -53.05
      },
      {
        "id": "seatInSeat",
        "type": "fastened",
        "component": "seatIn",
        "connector": "top",
        "to": {
          "component": "block",
          "connector": "springIn"
        }
      },
      {
        "id": "springInSeat",
        "type": "fastened",
        "component": "springIn",
        "connector": "top",
        "to": {
          "component": "seatIn",
          "connector": "bottom"
        },
        "offset": 0.15
      },
      {
        "id": "tappetExBore",
        "type": "slider",
        "component": "tappetEx",
        "connector": "top",
        "to": {
          "component": "block",
          "connector": "valveEx"
        },
        "flip": true,
        "offset": "-56.101429 + liftEx"
      },
      {
        "id": "valveExGuide",
        "type": "slider",
        "component": "valveEx",
        "connector": "top",
        "to": {
          "component": "block",
          "connector": "valveEx"
        },
        "flip": true,
        "offset": "0.05 + valveEx"
      },
      {
        "id": "retainerExSeat",
        "type": "fastened",
        "component": "retainerEx",
        "connector": "top",
        "to": {
          "component": "valveEx",
          "connector": "top"
        },
        "flip": true,
        "offset": -53.05
      },
      {
        "id": "seatExSeat",
        "type": "fastened",
        "component": "seatEx",
        "connector": "top",
        "to": {
          "component": "block",
          "connector": "springEx"
        }
      },
      {
        "id": "springExSeat",
        "type": "fastened",
        "component": "springEx",
        "connector": "top",
        "to": {
          "component": "seatEx",
          "connector": "bottom"
        },
        "offset": 0.15
      },
      {
        "id": "plugSeat",
        "type": "fastened",
        "component": "sparkPlug",
        "connector": "seat",
        "to": {
          "component": "head",
          "connector": "plug.plug"
        }
      },
      {
        "id": "chestGasketSeat",
        "type": "fastened",
        "component": "chestGasket",
        "connector": "bottom",
        "to": {
          "component": "block",
          "connector": "window"
        }
      },
      {
        "id": "chestCoverSeat",
        "type": "fastened",
        "component": "chestCover",
        "connector": "seat",
        "to": {
          "component": "chestGasket",
          "connector": "top"
        }
      },
      {
        "id": "exhaustGasketSeat",
        "type": "fastened",
        "component": "exhaustGasket",
        "connector": "bottom",
        "to": {
          "component": "block",
          "connector": "portEx"
        }
      },
      {
        "id": "exhaustSeat",
        "type": "fastened",
        "component": "exhaust",
        "connector": "seat",
        "to": {
          "component": "exhaustGasket",
          "connector": "top"
        }
      },
      {
        "id": "intakeGasketSeat",
        "type": "fastened",
        "component": "intakeGasket",
        "connector": "bottom",
        "to": {
          "component": "block",
          "connector": "portIn"
        }
      },
      {
        "id": "carburettorSeat",
        "type": "fastened",
        "component": "carburettor",
        "connector": "seat",
        "to": {
          "component": "intakeGasket",
          "connector": "top"
        }
      },
      {
        "id": "airFilterSeat",
        "type": "fastened",
        "component": "airFilter",
        "connector": "seat",
        "to": {
          "component": "carburettor",
          "connector": "outlet"
        }
      },
      {
        "id": "wingNutSeat",
        "type": "fastened",
        "component": "wingNut",
        "connector": "seat",
        "to": {
          "component": "airFilter",
          "connector": "nut"
        }
      },
      {
        "id": "ignitionSeat",
        "type": "fastened",
        "component": "ignition",
        "connector": "seat",
        "to": {
          "component": "block",
          "connector": "magneto"
        }
      },
      {
        "id": "plugCapSeat",
        "type": "fastened",
        "component": "plugCap",
        "connector": "terminal",
        "to": {
          "component": "sparkPlug",
          "connector": "terminal"
        },
        "offset": 0.05
      },
      {
        "id": "fillerCapSeat",
        "type": "fastened",
        "component": "fillerCap",
        "connector": "seat",
        "to": {
          "component": "block",
          "connector": "filler"
        }
      },
      {
        "id": "drainPlugSeat",
        "type": "fastened",
        "component": "drainPlug",
        "connector": "seat",
        "to": {
          "component": "block",
          "connector": "drain"
        }
      },
      {
        "id": "nameplateSeat",
        "type": "fastened",
        "component": "nameplate",
        "connector": "seat",
        "to": {
          "component": "block",
          "connector": "nameplate"
        }
      },
      {
        "id": "governorArmSeat",
        "type": "fastened",
        "component": "governorArm",
        "connector": "seat",
        "to": {
          "component": "block",
          "connector": "governor"
        }
      },
      {
        "id": "magnetSeat",
        "type": "fastened",
        "component": "flywheelMagnet",
        "connector": "seat",
        "to": {
          "component": "flywheel",
          "connector": "magnet"
        },
        "offset": 0.05
      },
      {
        "id": "fuelTankSeat",
        "type": "fastened",
        "component": "fuelTank",
        "connector": "seat",
        "to": {
          "component": "block",
          "connector": "tank"
        }
      },
      {
        "id": "tankCapSeat",
        "type": "fastened",
        "component": "tankCap",
        "connector": "seat",
        "to": {
          "component": "fuelTank",
          "connector": "neck"
        }
      },
      {
        "id": "fuelTapSeat",
        "type": "fastened",
        "component": "fuelTap",
        "connector": "seat",
        "to": {
          "component": "fuelTank",
          "connector": "tap"
        }
      },
      {
        "id": "hoseEndsSeat",
        "type": "fastened",
        "component": "hoseEnds",
        "connector": "tap",
        "to": {
          "component": "fuelTap",
          "connector": "hose"
        },
        "offset": 0.1
      },
      {
        "id": "fuelHoseSeat",
        "type": "fastened",
        "component": "fuelHose",
        "connector": "tap",
        "to": {
          "component": "hoseEnds",
          "connector": "hose"
        },
        "offset": 0.05
      },
      {
        "id": "governorLinkSeat",
        "type": "fastened",
        "component": "governorLink",
        "connector": "arm",
        "to": {
          "component": "governorArm",
          "connector": "link"
        },
        "offset": 0.05
      },
      {
        "id": "governorSpringSeat",
        "type": "fastened",
        "component": "governorSpring",
        "connector": "bottom",
        "to": {
          "component": "governorLink",
          "connector": "damper"
        },
        "offset": 0.15
      }
    ]
  },
  {
    "schemaVersion": 1,
    "id": "e9a1c0de-0000-4000-8000-000000000002",
    "up": "z",
    "meta": {
      "name": "Block",
      "generator": "engine-app"
    },
    "materials": [
      {
        "id": "aluminium",
        "name": "Cast aluminium",
        "density": 2680,
        "appearance": {
          "color": "#b9bdc1",
          "metallic": 0.7,
          "roughness": 0.45
        }
      },
      {
        "id": "steel",
        "name": "Forged steel",
        "density": 7850,
        "appearance": {
          "color": "#8e9399",
          "metallic": 0.9,
          "roughness": 0.3
        }
      },
      {
        "id": "pressed",
        "name": "Pressed steel, black",
        "density": 7850,
        "appearance": {
          "color": "#2b2d30",
          "metallic": 0.6,
          "roughness": 0.5
        }
      },
      {
        "id": "resin",
        "name": "Epoxy resin",
        "density": 1200,
        "appearance": {
          "color": "#1c1d1f",
          "metallic": 0,
          "roughness": 0.6
        }
      },
      {
        "id": "rubber",
        "name": "Rubber",
        "density": 1100,
        "appearance": {
          "color": "#26282b",
          "metallic": 0,
          "roughness": 0.85
        }
      },
      {
        "id": "exhaust",
        "name": "Heat-tinted steel",
        "density": 7850,
        "appearance": {
          "color": "#5d5a57",
          "metallic": 0.85,
          "roughness": 0.42
        }
      },
      {
        "id": "brass",
        "name": "Brass",
        "density": 8500,
        "appearance": {
          "color": "#b59a5a",
          "metallic": 0.9,
          "roughness": 0.32
        }
      },
      {
        "id": "gasket",
        "name": "Compressed fibre",
        "density": 1700,
        "appearance": {
          "color": "#6f6a60",
          "metallic": 0,
          "roughness": 0.9
        }
      },
      {
        "id": "copper",
        "name": "Copper",
        "density": 8960,
        "appearance": {
          "color": "#b87333",
          "metallic": 1,
          "roughness": 0.35
        }
      }
    ],
    "features": [
      {
        "id": "crankcaseProfile",
        "type": "sketch",
        "on": {
          "frame": {
            "origin": [
              0,
              50,
              0
            ],
            "normal": [
              0,
              -1,
              0
            ],
            "direction": [
              1,
              0,
              0
            ]
          }
        },
        "start": [
          -58,
          50
        ],
        "pen": [
          {
            "type": "line",
            "id": "crankcaseProfile0",
            "to": [
              -58,
              -40
            ]
          },
          {
            "type": "filletCorner",
            "id": "crankcaseProfileRound0",
            "radius": 14
          },
          {
            "type": "line",
            "id": "crankcaseProfile1",
            "to": [
              -40,
              -58
            ]
          },
          {
            "type": "filletCorner",
            "id": "crankcaseProfileRound1",
            "radius": 14
          },
          {
            "type": "line",
            "id": "crankcaseProfile2",
            "to": [
              40,
              -58
            ]
          },
          {
            "type": "filletCorner",
            "id": "crankcaseProfileRound2",
            "radius": 14
          },
          {
            "type": "line",
            "id": "crankcaseProfile3",
            "to": [
              58,
              -40
            ]
          },
          {
            "type": "filletCorner",
            "id": "crankcaseProfileRound3",
            "radius": 14
          },
          {
            "type": "line",
            "id": "crankcaseProfile4",
            "to": [
              58,
              50
            ]
          },
          {
            "type": "filletCorner",
            "id": "crankcaseProfileRound4",
            "radius": 6
          },
          {
            "type": "close",
            "id": "crankcaseProfileClose"
          },
          {
            "type": "filletCorner",
            "id": "crankcaseProfileRoundStart",
            "radius": 6
          }
        ]
      },
      {
        "id": "crankcase",
        "type": "extrude",
        "profile": "crankcaseProfile",
        "distance": 90
      },
      {
        "id": "crankcaseBackRound",
        "type": "fillet",
        "body": "crankcase",
        "edges": {
          "between": [
            {
              "of": "crankcase",
              "role": "end"
            },
            {
              "of": "crankcase",
              "role": "side"
            }
          ],
          "count": 12
        },
        "radius": 4
      },
      {
        "id": "camCaseProfile",
        "type": "sketch",
        "on": {
          "frame": {
            "origin": [
              0,
              50,
              0
            ],
            "normal": [
              0,
              -1,
              0
            ],
            "direction": [
              1,
              0,
              0
            ]
          }
        },
        "pen": [
          {
            "type": "circle",
            "id": "camCaseProfileRim",
            "centre": [
              42,
              42.848571
            ],
            "radius": 25
          }
        ]
      },
      {
        "id": "camCase",
        "type": "extrude",
        "profile": "camCaseProfile",
        "distance": 90
      },
      {
        "id": "camCaseBackRound",
        "type": "fillet",
        "body": "camCase",
        "edges": {
          "between": [
            {
              "of": "camCase",
              "role": "end"
            },
            {
              "of": "camCase",
              "role": "side"
            }
          ],
          "count": 1
        },
        "radius": 3
      },
      {
        "id": "gearCaseProfile",
        "type": "sketch",
        "on": {
          "frame": {
            "origin": [
              0,
              50,
              0
            ],
            "normal": [
              0,
              -1,
              0
            ],
            "direction": [
              1,
              0,
              0
            ]
          }
        },
        "pen": [
          {
            "type": "circle",
            "id": "gearCaseProfileRim",
            "centre": [
              42,
              42.848571
            ],
            "radius": 50
          }
        ]
      },
      {
        "id": "gearCase",
        "type": "extrude",
        "profile": "gearCaseProfile",
        "distance": 22
      },
      {
        "id": "gearCaseBackRound",
        "type": "fillet",
        "body": "gearCase",
        "edges": {
          "between": [
            {
              "of": "gearCase",
              "role": "end"
            },
            {
              "of": "gearCase",
              "role": "side"
            }
          ],
          "count": 1
        },
        "radius": 3
      },
      {
        "id": "barrelProfile",
        "type": "sketch",
        "on": {
          "frame": {
            "origin": [
              0,
              0,
              0
            ],
            "normal": [
              0,
              -1,
              0
            ],
            "direction": [
              1,
              0,
              0
            ]
          }
        },
        "start": [
          24,
          40
        ],
        "pen": [
          {
            "type": "line",
            "id": "barrelProfile0",
            "to": [
              36,
              40
            ]
          },
          {
            "type": "line",
            "id": "barrelProfile1",
            "to": [
              36,
              49
            ]
          },
          {
            "type": "line",
            "id": "barrelProfile2",
            "to": [
              32,
              54
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound2",
            "radius": 3
          },
          {
            "type": "line",
            "id": "barrelProfile3",
            "to": [
              32,
              70
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound3",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile4",
            "to": [
              42,
              70.45
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound4",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile5",
            "to": [
              42,
              72.55
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound5",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile6",
            "to": [
              32,
              73
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound6",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile7",
            "to": [
              32,
              78
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound7",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile8",
            "to": [
              42.666667,
              78.45
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound8",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile9",
            "to": [
              42.666667,
              80.55
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound9",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile10",
            "to": [
              32,
              81
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound10",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile11",
            "to": [
              32,
              86
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound11",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile12",
            "to": [
              43.333333,
              86.45
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound12",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile13",
            "to": [
              43.333333,
              88.55
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound13",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile14",
            "to": [
              32,
              89
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound14",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile15",
            "to": [
              32,
              94
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound15",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile16",
            "to": [
              44,
              94.45
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound16",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile17",
            "to": [
              44,
              96.55
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound17",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile18",
            "to": [
              32,
              97
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound18",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile19",
            "to": [
              32,
              102
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound19",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile20",
            "to": [
              44.666667,
              102.45
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound20",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile21",
            "to": [
              44.666667,
              104.55
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound21",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile22",
            "to": [
              32,
              105
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound22",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile23",
            "to": [
              32,
              110
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound23",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile24",
            "to": [
              45.333333,
              110.45
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound24",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile25",
            "to": [
              45.333333,
              112.55
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound25",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile26",
            "to": [
              32,
              113
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound26",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile27",
            "to": [
              32,
              118
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound27",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile28",
            "to": [
              46,
              118.45
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound28",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile29",
            "to": [
              46,
              120.55
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound29",
            "radius": 0.85
          },
          {
            "type": "line",
            "id": "barrelProfile30",
            "to": [
              32,
              121
            ]
          },
          {
            "type": "filletCorner",
            "id": "barrelProfileRound30",
            "radius": 1.4
          },
          {
            "type": "line",
            "id": "barrelProfile31",
            "to": [
              32,
              128
            ]
          },
          {
            "type": "line",
            "id": "barrelProfile32",
            "to": [
              24,
              128
            ]
          },
          {
            "type": "close",
            "id": "barrelProfileClose"
          }
        ]
      },
      {
        "id": "barrel",
        "type": "revolve",
        "profile": "barrelProfile",
        "axis": {
          "origin": [
            0,
            0,
            0
          ],
          "direction": [
            0,
            0,
            1
          ]
        }
      },
      {
        "id": "rearLeftBossProfile",
        "type": "sketch",
        "on": {
          "plane": "XY",
          "offset": 108
        },
        "pen": [
          {
            "type": "circle",
            "id": "rearLeftBossProfileRim",
            "centre": [
              -28,
              -28
            ],
            "radius": 6.5
          }
        ]
      },
      {
        "id": "rearLeftBoss",
        "type": "extrude",
        "profile": "rearLeftBossProfile",
        "distance": 20
      },
      {
        "id": "rearLeftBossRound",
        "type": "fillet",
        "body": "rearLeftBoss",
        "edges": {
          "between": [
            {
              "of": "rearLeftBoss",
              "role": "start"
            },
            {
              "of": "rearLeftBoss",
              "role": "side"
            }
          ],
          "count": 1
        },
        "radius": 2
      },
      {
        "id": "rearRightBossProfile",
        "type": "sketch",
        "on": {
          "plane": "XY",
          "offset": 108
        },
        "pen": [
          {
            "type": "circle",
            "id": "rearRightBossProfileRim",
            "centre": [
              -28,
              28
            ],
            "radius": 6.5
          }
        ]
      },
      {
        "id": "rearRightBoss",
        "type": "extrude",
        "profile": "rearRightBossProfile",
        "distance": 20
      },
      {
        "id": "rearRightBossRound",
        "type": "fillet",
        "body": "rearRightBoss",
        "edges": {
          "between": [
            {
              "of": "rearRightBoss",
              "role": "start"
            },
            {
              "of": "rearRightBoss",
              "role": "side"
            }
          ],
          "count": 1
        },
        "radius": 2
      },
      {
        "id": "midLeftBossProfile",
        "type": "sketch",
        "on": {
          "plane": "XY",
          "offset": 108
        },
        "pen": [
          {
            "type": "circle",
            "id": "midLeftBossProfileRim",
            "centre": [
              14,
              -31
            ],
            "radius": 6.5
          }
        ]
      },
      {
        "id": "midLeftBoss",
        "type": "extrude",
        "profile": "midLeftBossProfile",
        "distance": 20
      },
      {
        "id": "midLeftBossRound",
        "type": "fillet",
        "body": "midLeftBoss",
        "edges": {
          "between": [
            {
              "of": "midLeftBoss",
              "role": "start"
            },
            {
              "of": "midLeftBoss",
              "role": "side"
            }
          ],
          "count": 1
        },
        "radius": 2
      },
      {
        "id": "midRightBossProfile",
        "type": "sketch",
        "on": {
          "plane": "XY",
          "offset": 108
        },
        "pen": [
          {
            "type": "circle",
            "id": "midRightBossProfileRim",
            "centre": [
              14,
              31
            ],
            "radius": 6.5
          }
        ]
      },
      {
        "id": "midRightBoss",
        "type": "extrude",
        "profile": "midRightBossProfile",
        "distance": 20
      },
      {
        "id": "midRightBossRound",
        "type": "fillet",
        "body": "midRightBoss",
        "edges": {
          "between": [
            {
              "of": "midRightBoss",
              "role": "start"
            },
            {
              "of": "midRightBoss",
              "role": "side"
            }
          ],
          "count": 1
        },
        "radius": 2
      },
      {
        "id": "chestProfile",
        "type": "sketch",
        "on": {
          "plane": "XY",
          "offset": 50
        },
        "start": [
          28,
          -34
        ],
        "pen": [
          {
            "type": "line",
            "id": "chestProfile0",
            "to": [
              60,
              -34
            ]
          },
          {
            "type": "filletCorner",
            "id": "chestProfileRound0",
            "radius": 5
          },
          {
            "type": "line",
            "id": "chestProfile1",
            "to": [
              60,
              34
            ]
          },
          {
            "type": "filletCorner",
            "id": "chestProfileRound1",
            "radius": 5
          },
          {
            "type": "line",
            "id": "chestProfile2",
            "to": [
              28,
              34
            ]
          },
          {
            "type": "filletCorner",
            "id": "chestProfileRound2",
            "radius": 5
          },
          {
            "type": "close",
            "id": "chestProfileClose"
          },
          {
            "type": "filletCorner",
            "id": "chestProfileRoundStart",
            "radius": 5
          }
        ]
      },
      {
        "id": "chest",
        "type": "extrude",
        "profile": "chestProfile",
        "distance": 78
      },
      {
        "id": "deckProfile",
        "type": "sketch",
        "on": {
          "plane": "XY",
          "offset": 127
        },
        "start": [
          -36,
          -36
        ],
        "pen": [
          {
            "type": "line",
            "id": "deckProfile0",
            "to": [
              62,
              -36
            ]
          },
          {
            "type": "filletCorner",
            "id": "deckProfileRound0",
            "radius": 10
          },
          {
            "type": "line",
            "id": "deckProfile1",
            "to": [
              62,
              36
            ]
          },
          {
            "type": "filletCorner",
            "id": "deckProfileRound1",
            "radius": 10
          },
          {
            "type": "line",
            "id": "deckProfile2",
            "to": [
              -36,
              36
            ]
          },
          {
            "type": "filletCorner",
            "id": "deckProfileRound2",
            "radius": 10
          },
          {
            "type": "close",
            "id": "deckProfileClose"
          },
          {
            "type": "filletCorner",
            "id": "deckProfileRoundStart",
            "radius": 10
          }
        ]
      },
      {
        "id": "deckPlate",
        "type": "extrude",
        "profile": "deckProfile",
        "distance": 10
      },
      {
        "id": "deckPlateRound",
        "type": "fillet",
        "body": "deckPlate",
        "edges": {
          "between": [
            {
              "of": "deckPlate",
              "role": "start"
            },
            {
              "of": "deckPlate",
              "role": "side"
            }
          ],
          "count": 8
        },
        "radius": 2
      },
      {
        "id": "portInPadProfile",
        "type": "sketch",
        "on": {
          "frame": {
            "origin": [
              0,
              -34,
              0
            ],
            "normal": [
              0,
              -1,
              0
            ],
            "direction": [
              1,
              0,
              0
            ]
          }
        },
        "start": [
          28,
          112
        ],
        "pen": [
          {
            "type": "line",
            "id": "portInPadProfile0",
            "to": [
              54,
              112
            ]
          },
          {
            "type": "filletCorner",
            "id": "portInPadProfileRound0",
            "radius": 4
          },
          {
            "type": "line",
            "id": "portInPadProfile1",
            "to": [
              54,
              134
            ]
          },
          {
            "type": "filletCorner",
            "id": "portInPadProfileRound1",
            "radius": 4
          },
          {
            "type": "line",
            "id": "portInPadProfile2",
            "to": [
              28,
              134
            ]
          },
          {
            "type": "filletCorner",
            "id": "portInPadProfileRound2",
            "radius": 4
          },
          {
            "type": "close",
            "id": "portInPadProfileClose"
          },
          {
            "type": "filletCorner",
            "id": "portInPadProfileRoundStart",
            "radius": 4
          }
        ]
      },
      {
        "id": "portInPad",
        "type": "extrude",
        "profile": "portInPadProfile",
        "distance": 3
      },
      {
        "id": "portExPadProfile",
        "type": "sketch",
        "on": {
          "frame": {
            "origin": [
              0,
              34,
              0
            ],
            "normal": [
              0,
              1,
              0
            ],
            "direction": [
              1,
              0,
              0
            ]
          }
        },
        "start": [
          28,
          -134
        ],
        "pen": [
          {
            "type": "line",
            "id": "portExPadProfile0",
            "to": [
              54,
              -134
            ]
          },
          {
            "type": "filletCorner",
            "id": "portExPadProfileRound0",
            "radius": 4
          },
          {
            "type": "line",
            "id": "portExPadProfile1",
            "to": [
              54,
              -112
            ]
          },
          {
            "type": "filletCorner",
            "id": "portExPadProfileRound1",
            "radius": 4
          },
          {
            "type": "line",
            "id": "portExPadProfile2",
            "to": [
              28,
              -112
            ]
          },
          {
            "type": "filletCorner",
            "id": "portExPadProfileRound2",
            "radius": 4
          },
          {
            "type": "close",
            "id": "portExPadProfileClose"
          },
          {
            "type": "filletCorner",
            "id": "portExPadProfileRoundStart",
            "radius": 4
          }
        ]
      },
      {
        "id": "portExPad",
        "type": "extrude",
        "profile": "portExPadProfile",
        "distance": 3
      },
      {
        "id": "baseProfile",
        "type": "sketch",
        "on": {
          "plane": "XY",
          "offset": -76
        },
        "start": [
          -74,
          -34
        ],
        "pen": [
          {
            "type": "line",
            "id": "baseProfile0",
            "to": [
              74,
              -34
            ]
          },
          {
            "type": "filletCorner",
            "id": "baseProfileRound0",
            "radius": 10
          },
          {
            "type": "line",
            "id": "baseProfile1",
            "to": [
              74,
              46
            ]
          },
          {
            "type": "filletCorner",
            "id": "baseProfileRound1",
            "radius": 10
          },
          {
            "type": "line",
            "id": "baseProfile2",
            "to": [
              -74,
              46
            ]
          },
          {
            "type": "filletCorner",
            "id": "baseProfileRound2",
            "radius": 10
          },
          {
            "type": "close",
            "id": "baseProfileClose"
          },
          {
            "type": "filletCorner",
            "id": "baseProfileRoundStart",
            "radius": 10
          }
        ]
      },
      {
        "id": "base",
        "type": "extrude",
        "profile": "baseProfile",
        "distance": 6
      },
      {
        "id": "baseRound",
        "type": "fillet",
        "body": "base",
        "edges": {
          "between": [
            {
              "of": "base",
              "role": "end"
            },
            {
              "of": "base",
              "role": "side"
            }
          ],
          "count": 8
        },
        "radius": 2
      },
      {
        "id": "footHoles",
        "type": "hole",
        "body": "base",
        "on": {
          "of": "base",
          "role": "end"
        },
        "direction": [
          1,
          0,
          0
        ],
        "at": [
          {
            "id": "leftBack",
            "x": -62,
            "y": -24
          },
          {
            "id": "leftFront",
            "x": -62,
            "y": 36
          },
          {
            "id": "rightBack",
            "x": 62,
            "y": -24
          },
          {
            "id": "rightFront",
            "x": 62,
            "y": 36
          }
        ],
        "diameter": 9,
        "counterbore": {
          "diameter": 16,
          "depth": 1
        }
      },
      {
        "id": "pedestalProfile",
        "type": "sketch",
        "on": {
          "plane": "XY",
          "offset": -75
        },
        "start": [
          -32,
          -35
        ],
        "pen": [
          {
            "type": "line",
            "id": "pedestalProfile0",
            "to": [
              32,
              -35
            ]
          },
          {
            "type": "filletCorner",
            "id": "pedestalProfileRound0",
            "radius": 6
          },
          {
            "type": "line",
            "id": "pedestalProfile1",
            "to": [
              32,
              46
            ]
          },
          {
            "type": "filletCorner",
            "id": "pedestalProfileRound1",
            "radius": 6
          },
          {
            "type": "line",
            "id": "pedestalProfile2",
            "to": [
              -32,
              46
            ]
          },
          {
            "type": "filletCorner",
            "id": "pedestalProfileRound2",
            "radius": 6
          },
          {
            "type": "close",
            "id": "pedestalProfileClose"
          },
          {
            "type": "filletCorner",
            "id": "pedestalProfileRoundStart",
            "radius": 6
          }
        ]
      },
      {
        "id": "pedestal",
        "type": "extrude",
        "profile": "pedestalProfile",
        "distance": 18
      },
      {
        "id": "rib0RightProfile",
        "type": "sketch",
        "on": {
          "frame": {
            "origin": [
              0,
              -7.5,
              0
            ],
            "normal": [
              0,
              -1,
              0
            ],
            "direction": [
              1,
              0,
              0
            ]
          }
        },
        "start": [
          30,
          -71
        ],
        "pen": [
          {
            "type": "line",
            "id": "rib0RightProfile0",
            "to": [
              70,
              -71
            ]
          },
          {
            "type": "line",
            "id": "rib0RightProfile1",
            "to": [
              70,
              -69
            ]
          },
          {
            "type": "filletCorner",
        
Plans & Pricing

Choose Your Plan

Editor plans for 3D development, API keys for server-side CAD algorithms

B2B

ENTERPRISE

Custom pricing

Custom software development, dedicated servers & CAD automation at scale.

CAD Automation & Software
  • Custom software development
  • Cloud CAD automation pipelines
  • 3D configurators (STEP & GLTF)
  • Batch export jobs
  • Custom algorithms & deployment
Infrastructure & Support
  • Custom compute allocation
  • Dedicated / VPS server tenants
  • Long-running computation jobs
  • Custom upload limits & overage
  • SLA & premium support