Brick Sizing
Understanding the MachineBlocks Grid
The MachineBlocks system is built on a 1×1 plate grid. All brick dimensions are defined as multiples of this base unit — similar to how LEGO® bricks are measured. This consistent grid ensures that all parts align perfectly when combined in a larger model.
When you specify the size parameter for a brick, you do so using the following format:
machineblock(
size = [width, depth, height]
);- Width (X-axis, red): number of studs along the X direction
- Depth (Y-axis, green): number of studs along the Y direction
- Height (Z-axis, blue): number of plates (3 plates = 1 brick height)
Creating Plates
Plates are the thinnest standard building elements in the MachineBlocks system. By definition, a plate is 1 plate high, so the third value in the size parameter (the height) is always set to 1.
To create a 3×3 plate, you can use the following code:
use <../machineblocks/lib/block.scad>;
include <../machineblocks/config/config.scad>;
machineblock(
size = [3, 3, 1]
);
Creating Bricks
Bricks are the standard building elements in the MachineBlocks system. A brick is three plates high, which means the third value in the size parameter (height) must always be set to 3.
For example, to create a 4×2 brick, use the following code:
use <../machineblocks/lib/block.scad>;
include <../machineblocks/config/config.scad>;
machineblock(
size = [4, 2, 3]
);
Creating Liftarms
Liftarms are specialized Technic-style beams used for structural connections. They differ from standard bricks in both shape and proportions. A liftarm has the same height as its depth, but because the height in MachineBlocks is measured in plate units, the height value for a liftarm is 2.5 plates.
The following example creates a 6×1 Technic liftarm with pin holes along the X-axis and rounded edges:
use <../machineblocks/lib/block.scad>;
include <../machineblocks/config/config.scad>;
machineblock(
size = [6, 1, 2.5],
holeXGridOffsetZ = 2.5,
baseRoundingRadius = [0,1.25,0],
studs=false,
holeX=true,
baseCutoutType="none"
);