http://www.cannymachines.com/entries/9/openscad_dimensioned_drawings
Tuommoinen tuli asennettua, ja onpahan muuten kätevä. Pystyy antamaan dimensiot parametriyhtälöinä niin, että kun mallin kokoa muuttaa niin kaikki mittamerkinnät päivittyvät itsestään.
Ohessa demoksi varastohyllykön OpenSCAD-malli.
Tuommoinen tuli asennettua, ja onpahan muuten kätevä. Pystyy antamaan dimensiot parametriyhtälöinä niin, että kun mallin kokoa muuttaa niin kaikki mittamerkinnät päivittyvät itsestään.
Ohessa demoksi varastohyllykön OpenSCAD-malli.
Koodi:
DOC_SCALING_FACTOR =500;
include <dimlines.scad>
DIM_LINE_WIDTH = .025 * DOC_SCALING_FACTOR;
DIM_SPACE = .1 * DOC_SCALING_FACTOR;
$l1=2000;
$l2=4100;
for (i=[600,1050,1500])
{
translate([300,-$l1/2,i]) cube([600,$l1,18],center=true);
}
translate([150,-$l1/2,1800]) cube([300,$l1,18],center=true);
for (i=[600,1050,1500])
{
translate([$l2/2+301,-300,i]) cube([$l2-600,600,18],center=true);
}
for(i=[-100:-($l1-200)/3:-$l1])
{
translate([-5,i,1100]) cube([10,25.0,2000],center=true);
}
for(i=[700:($l2-800)/5:$l2])
{
translate([i,5,1100]) cube([25,10,2000],center=true);
}
translate([0,-100,2100])
rotate([90,0,90])
dimensions(length=100, line_width=DIM_LINE_WIDTH, loc=2);
for(i=[-(100+($l1-200)/3):-($l1-200)/3:-$l1])
{
translate([0,i,2100])
rotate([90,0,90])
dimensions(length=($l1-200)/3, line_width=DIM_LINE_WIDTH, loc=0);
}
translate([0,0,2100])
rotate([90,0,0])
dimensions(length=700, line_width=DIM_LINE_WIDTH, loc=0);
for(i=[700:($l2-800)/5:$l2-200])
{
translate([i,0,2100])
rotate([90,0,0])
dimensions(length=($l2-800)/5, line_width=DIM_LINE_WIDTH, loc=0);
}
translate([0,-$l1,0])
rotate([0,-90,0])
dimensions(length=100, line_width=DIM_LINE_WIDTH, loc=1);
translate([0,-$l1,100])
rotate([0,-90,180])
dimensions(length=500, line_width=DIM_LINE_WIDTH, loc=0);
translate([0,-$l1+0,600])
rotate([0,-90,180])
dimensions(length=450, line_width=DIM_LINE_WIDTH, loc=0);
translate([0,-$l1,1050])
rotate([0,-90,180])
dimensions(length=450, line_width=DIM_LINE_WIDTH, loc=0);
translate([0,-$l1,1500])
rotate([0,-90,180])
dimensions(length=300, line_width=DIM_LINE_WIDTH, loc=0);
translate([300,-$l1,1600])
rotate([90,0,90])
dimensions(length=$l1, line_width=DIM_LINE_WIDTH, loc=0);
translate([600,-300,1600])
rotate([90,0,0])
dimensions(length=$l2-600, line_width=DIM_LINE_WIDTH, loc=0);