import static uk.co.nickthecoder.foocad.along.v1.Along.* import static uk.co.nickthecoder.foocad.layout.Layout2d.* import static uk.co.nickthecoder.foocad.layout.Layout3d.* include MiniShed.foocad include Container.foocad /* How I could use the MiniShed and containers. Use it for spades, forks, shovels etc. Pruning cutters and seceteurs on the door? Consider making two wheels for each container, so that they can be wheeled if lifted at one end. Ideally the back gate would open the other way, so that wood could poke through when cutting, and I could get out without moving the container. Maybe the tops are made from edged plywood, covered in roofing felt. Can't push wood across it though, and any punctures would be annoying. Maybe edged plywood, with double thick edges, sealed, painted, then epoxy coating. Maybe the shorter one is TWO - one for the table saw, the other for the mitre saw. Plane/cut a LARGE chamfer on the lid, so that wood fed onto it will never jam against the edge. */ class MiniShedDemo : Model { override fun build() : Shape3d { val workbench = Container().apply { length = 1300 width = 450 ringCount = 5 }.build() .rotateZ(90) .toOriginX() .translateY(-150) .bottomTo(0) val mitreTable = Container().apply { length = 900 width = 700 ringCount = 4 }.build() .rotateZ(90) .toOriginX() .translateY( -1300 ) .bottomTo(0) val shed = MiniShed().apply { width = 1100 depth = 600 }.build().toOriginX().translateX(710) val base = Cube( 1900, 2800, 1 ).color( "Red" ).darker() .translateY( -2200 ) return base + shed + workbench + mitreTable } }