import static uk.co.nickthecoder.foocad.layout.v1.Layout2d.* import static uk.co.nickthecoder.foocad.layout.v1.Layout3d.* /* Plant pot to help drainage, lifting the bottom of the pot off the ground. The frog wasn't designed by me. See : https://www.thingiverse.com/thing:18479 by Morena Protti (https://www.thingiverse.com/morenap/designs) NOTE, the original frog had many verticies, and OpenSCAD seemed to fail (or maybe there was something weird about the original STL) I lowered the number of polygons using MeshLab : Filters > Remeshing, simplification and construction > Quadratic Edge Collapse Decimation Use the link above if you want the hi-res frog model. Use the Scale ModelExtension to suit your pot. Three frogs needed for each pot. Print Notes Double scale, I used 6 perimeters (and the voids weren't working) Then changed to 4 perimeters with the voids working. */ class PlantPotFeetFrog : Model { var height = 10 override fun build() : Shape3d { val frog = STLParser().parseFile( "treeFrogFixed.stl" ) val step = Cylinder( 50, 40 ).sides(100).frontTo(2).bottomTo(height) // By adding tiny voids, we can print the model with low fill density, // and still have good support under the pot, because the voids will cause // additional perimiters. val voids = Cube( 0.2,0.2, height-0.8 ).center().bottomTo(0.4) .repeatX(4, 3).repeatY(5,2.7).centerX().frontTo(2) return frog - voids - step } }