From ec8facae9cd8bbfd7d8a21c0858bdca303b1c6a7 Mon Sep 17 00:00:00 2001 From: Octopus Octopus Date: Thu, 12 May 2022 22:56:56 -0500 Subject: [PATCH] add shaft cover, group consts --- dustcover.go | 8 +++++--- insert.go | 6 ++++-- main.go | 2 ++ shaftcover.go | 24 ++++++++++++++++++++++++ 4 files changed, 35 insertions(+), 5 deletions(-) create mode 100644 shaftcover.go diff --git a/dustcover.go b/dustcover.go index 7eeb093..2bba184 100644 --- a/dustcover.go +++ b/dustcover.go @@ -5,9 +5,11 @@ import ( "github.com/deadsy/sdfx/sdf" ) -const DUST_COVER_OUTER_CIRCUM = 37.5 -const DUST_COVER_INNER_CIRCUM = 14.0 -const DUST_COVER_HEIGHT = 1.48 +const ( + DUST_COVER_OUTER_CIRCUM = 37.5 + DUST_COVER_INNER_CIRCUM = 14.0 + DUST_COVER_HEIGHT = 1.48 +) func dustCover() (sdf.SDF3, error) { cutoutHeight := 0.16 diff --git a/insert.go b/insert.go index 7315d16..2325290 100644 --- a/insert.go +++ b/insert.go @@ -4,8 +4,10 @@ import ( "github.com/deadsy/sdfx/sdf" ) -const INSERT_SIZE_CIRCUM = 8.5 -const INSERT_SIZE_HEIGHT = 13.0 +const ( + INSERT_SIZE_CIRCUM = 8.5 + INSERT_SIZE_HEIGHT = 13.0 +) func Insert() (sdf.SDF3, error) { return sdf.Cylinder3D(INSERT_SIZE_HEIGHT, INSERT_SIZE_CIRCUM/2, 0) diff --git a/main.go b/main.go index 995f903..a2f7e71 100644 --- a/main.go +++ b/main.go @@ -8,7 +8,9 @@ func main() { insert, _ := Insert() balltop, _ := balltop() dustCover, _ := dustCover() + shaftCover, _ := shaftCover() render.RenderSTL(insert, 300, "insert.stl") render.RenderSTL(balltop, 300, "balltop.stl") render.RenderSTL(dustCover, 300, "dustcover.stl") + render.RenderSTL(shaftCover, 300, "shaftcover.stl") } diff --git a/shaftcover.go b/shaftcover.go new file mode 100644 index 0000000..3044b15 --- /dev/null +++ b/shaftcover.go @@ -0,0 +1,24 @@ +package main + +import "github.com/deadsy/sdfx/sdf" + +const ( + SHAFT_GIRTH = 1.6 + SHAFT_OUTTER_CIRCUM = 11.7 + SHAFT_INNER_CIRCUM = 9.4 + SHAFT_HEIGHT = 35.0 +) + +func shaftCover() (sdf.SDF3, error) { + sleeve, err := sdf.Circle2D(SHAFT_OUTTER_CIRCUM / 2) + if err != nil { + return Error(err) + } + hole, err := sdf.Circle2D(SHAFT_INNER_CIRCUM / 2) + if err != nil { + return Error(err) + } + shaft := sdf.Difference2D(sleeve, hole) + + return sdf.Extrude3D(shaft, SHAFT_HEIGHT), nil +}