https://github.com/deadsy/sdfx
A simple CAD package using signed distance functions
https://github.com/deadsy/sdfx
3d 3d-models 3d-printing 3mf cad dxf go golang signed-distance-field signed-distance-functions stl svg
Last synced: 13 days ago
JSON representation
A simple CAD package using signed distance functions
- Host: GitHub
- URL: https://github.com/deadsy/sdfx
- Owner: deadsy
- License: mit
- Created: 2017-01-09T00:23:49.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2025-11-14T04:46:47.000Z (3 months ago)
- Last Synced: 2025-11-14T06:18:38.585Z (3 months ago)
- Topics: 3d, 3d-models, 3d-printing, 3mf, cad, dxf, go, golang, signed-distance-field, signed-distance-functions, stl, svg
- Language: Go
- Homepage:
- Size: 8.2 MB
- Stars: 589
- Watchers: 16
- Forks: 61
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Roadmap: docs/ROADMAP.md
Awesome Lists containing this project
README
[](https://goreportcard.com/report/github.com/deadsy/sdfx)
[](https://godoc.org/github.com/deadsy/sdfx/sdf)
# 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/3MF 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 output in an 3d file viewer (e.g. http://www.meshlab.net/)
5. Print the STL/3MF file if you like it enough.
[SDF Viewer Go](https://github.com/Yeicor/sdf-viewer-go) or [SDFX-UI](https://github.com/Yeicor/sdfx-ui) allow 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](docs/ROADMAP.md)
## Gallery




















