Exit Full View
Up

/Printer/NozzleChangeTool.foocad

NozzleChangeTool
FooCAD Source Code
import static uk.co.nickthecoder.foocad.chamferedextrude.v1.ChamferedExtrude.*

class NozzleChangeTool : Model {

    @Custom
    var size = Vector2( 60, 18 )

    @Custom
    var socketD = 7.7

    @Piece
    fun holeSizeTest() : Shape3d {
        val piece = Cylinder(6,6) - Cylinder( 100, socketD/2 ).sides(6)
        // Measure 1/4 of an inch, which is the stadard size sockets.
        val preview = Cube( 2, 25.4 / 4, 20 ).centerXY().previewOnly()

        return piece + preview
    }

    override fun build() : Shape3d {
        val hex = Circle(size.x/2).sides(6).roundAllCorners(5)
        val hole = Cylinder( 100, socketD/2 ).sides(6).translateZ(3)
        return hex.chamferedExtrude( size.y, 2 ) - hole
    
    }
}