/* The plastic feet on my ironing board have broken. Go 3D printer ;-) A minimal "plain" look. A 2 part piece to be glued together. NOTE. the foot doesn't point downwards. See "" for the angle Print Notes Print using TPU (or other rubbery material) Glue the two pieces using CA glue. Use the "Tile" Model Extension to print all 4 pairs in one go. */ class IroningBoardFoot : Model { var diameter = 28.5 var height = 30 var baseThickness = 2.0 var thickness = 1.2 var bulge = 4.8 // Original was 4.8, but try 6.0 var tipHeight = 5.7 // Original was 5.7 (change to 6.0) @Piece fun main() = PolygonBuilder().apply { moveTo(0,baseThickness) lineTo(diameter/2, baseThickness) lineTo(diameter/2, height ) lineTo(diameter/2 + thickness, height ) bezierTo(Vector2( diameter/2 + bulge, height*0.25), Vector2( diameter/2 + thickness, 0) ) lineTo( 0, 0 ) }.build().revolve() @Piece fun tip() = PolygonBuilder().apply { val x = diameter*0.5 + thickness moveTo( 0,0 ) lineTo( 0, tipHeight ) bezierTo( Vector2( x*0.8, tipHeight ), Vector2( x, 0 ) ) }.build().revolve() @Piece fun pair() = main() + tip().translateX( diameter + thickness*2 + 1 ) override fun build() : Shape3d { return (main() + tip().mirrorZ().color("Grey")).rotateY(80) } }