Exit Full View
Up

/Games/LazySusanSpacer.foocad

LazySusanSpacer
FooCAD Source Code
class LazySusanSpacer : Model {

    var size = Vector3(95.5, 95.5, 3)

    var edge = Vector2(1, 1.2)

    var holeDelta = Vector2( 6.5, 6.5 )

    override fun build() : Shape3d {
        val main = Cube( size.x + edge.x*2, size.y + edge.x*2, size.z + edge.y ).centerXY() -
            Cube( size.x, size.y, size.z + size.z + edge.y ).centerXY().translateZ( size.z ) -
            Cylinder( size.z * 3, size.x *0.45 ).center()
        val hole = Cylinder( size.z * 3 , 3 ).center()
            .translateX( size.x/2 - holeDelta.x )
            .translateY( size.y/2 - holeDelta.y )
        val holes = hole.mirrorX().also().mirrorY().also()
        return main - holes


    }
}