import static uk.co.nickthecoder.foocad.changefilament.v1.ChangeFilament.* class NoJunkMail : Model, PostProcessor { var thickness = 0.6 var totalThickness = 1.2 override fun build() : Shape3d { val text = Text( "No Papers\nNo Junk Mail\nNo Cold Callers", BOLD ) .hAlign(HAlignment.CENTER) val background = PolygonBuilder().apply { moveTo( 65, -30 ) lineTo( 40, 30 ) lineTo( -40, 30 ) lineTo( -65, -30 ) }.build().roundAllCorners(10) return text.center().extrude( totalThickness ).color( "Black" ) + (background - background.offset( -2 )).extrude( totalThickness ).color("Black") + background.extrude( thickness ) } override fun postProcess(gcode: GCode) { pauseAtHeight( gcode, thickness+0.1, "Change Filament" ) } }