sdfx icon indicating copy to clipboard operation
sdfx copied to clipboard

A simple CAD package using signed distance functions

Go Report Card GoDoc

sdfx

A simple CAD package written in Go (https://golang.org/)

  • Objects are modelled with 2d and 3d signed distance functions (SDFs).
  • Objects are defined with Go code.
  • Objects are rendered to an STL file to be viewed and/or 3d printed.

How To

  1. See the examples.
  2. Write some Go code to define your own object.
  3. Build and run the Go code.
  4. Preview the STL output in an STL viewer (e.g. http://www.meshlab.net/)
  5. Print the STL file if you like it enough.

SDFX-UI allows faster development iterations, replacing steps 3 and 4 until the final build.

Why?

  • SDFs make CSG easy.
  • As a language Golang > OpenSCAD.
  • SDFs can easily do filleting and chamfering (hard to do with OpenSCAD).
  • SDFs are hackable to try out oddball ideas.

Development

  • Roadmap

Gallery

wheel core_box cylinder_head msquare axoloti text gyroid icosahedron cc16a cc16b cc18b cc18c gear camshaft geneva nutsandbolts extrude1 extrude2 bezier1 bezier2 voronoi