include include rooflength = nestwidth + ( 2 * plankthick ) + overhang; roofleftwidth = nestwidth + plankthick; roofrightwidth = nestwidth; module roofleft(){ color("green") cube([rooflength, roofleftwidth, plankthick]); echo("#### Roof left: length = ", nestwidth + ( 2 * plankthick ) + overhang, " width = ", nestwidth + plankthick); } module roofright(){ color("blue") cube([rooflength, nestwidth, plankthick]); echo("#### Roof right: length = ", nestwidth + ( 2 * plankthick ) + overhang, " width = ", nestwidth); } module roofleftdim(){ roofleft(); color("black") { translate([0, -10 , 0]) dimensions(length=rooflength); translate([-10, 0, 0]) rotate([0,0,90]) dimensions(length=roofleftwidth); translate([0, roofleftwidth + 15, 0]) drawtext("Roof left"); } } module roofrightdim(){ roofright(); color("black") { translate([0, -10 , 0]) dimensions(length=rooflength); translate([-10, 0, 0]) rotate([0,0,90]) dimensions(length=roofrightwidth); translate([0, roofrightwidth + 15, 0]) drawtext("Roof right"); } } module roof(){ rotate([-45, 0, 0]){ roofleft(); } roofright(); }