Back to docs

Arbitrary Flat
A prpol arbitrary_flat part

This arbitrary_flat was generated from a 5 by 5 layout.

Customizing arbitrary_flat with OpenSCAD parameters

arbitrary_flat turns a text layout into a plate: every X in the layout is a filled cell on the 1 cm grid, every O is an empty cell:

arbitrary_flat( layout = [ "XXXXXXXXXXOX", "XOOOOOOOOXOX", "XOOOOXOOOXOX", "XXXXOXXXXXOX" ], plate_thickness = 2.5, chamfer_depth = 0.75, hole_diameter = 3.2, hole_faces = 20, echo_parameters = true );
layout a list of equal-length strings: X is a filled cell, O is an empty cell. Each cell is 1 cm.
plate_thickness plate thickness in mm (default 2.5).
chamfer_depth edge chamfer in mm (default 0.75).
hole_diameter mounting hole diameter in mm (default 3.2, sized for m3 screws).
hole_faces the number of sides used for the round holes (default 20). Higher values give smoother holes but slower renders.
echo_parameters when true (default), the OpenSCAD console echoes the full parameter list when you preview or render the module.

If you leave a parameter out of the module call, that parameter will just have the default value. For example, these are all valid module calls:

arbitrary_flat(); arbitrary_flat(layout = ["XXXX", "XOOX", "XXXX"]); arbitrary_flat( layout = [ "XXXXX", "XOOOX", "XOOOX", "XOOOX", "XXXXX" ], plate_thickness = 3 );