44 lines
797 B
OpenSCAD
44 lines
797 B
OpenSCAD
/*
|
|
* OpenSCAD Layout Library (www.openscad.org)
|
|
* Copyright (C) 2012 Peter Uithoven
|
|
*
|
|
* License: LGPL 2.1 or later
|
|
*/
|
|
|
|
//list(iHeight);
|
|
//grid(iWidth,iHeight,inYDir = true,limit=3)
|
|
|
|
// Examples:
|
|
/*list(15)
|
|
{
|
|
square([25,10]);
|
|
square([25,10]);
|
|
square([25,10]);
|
|
square([25,10]);
|
|
square([25,10]);
|
|
}*/
|
|
/*grid(30,15,false,2)
|
|
{
|
|
square([25,10]);
|
|
square([25,10]);
|
|
square([25,10]);
|
|
square([25,10]);
|
|
square([25,10]);
|
|
}*/
|
|
|
|
//----------------------
|
|
|
|
module list(iHeight)
|
|
{
|
|
for (i = [0 : $children-1])
|
|
translate([0,i*iHeight]) child(i);
|
|
}
|
|
module grid(iWidth,iHeight,inYDir = true,limit=3)
|
|
{
|
|
for (i = [0 : $children-1])
|
|
{
|
|
translate([(inYDir)? (iWidth)*(i%limit) : (iWidth)*floor(i/limit),
|
|
(inYDir)? (iHeight)*floor(i/limit) : (iHeight)*(i%limit)])
|
|
child(i);
|
|
}
|
|
} |