curv
scad-clj
curv | scad-clj | |
---|---|---|
7 | 5 | |
1,121 | 315 | |
- | - | |
0.0 | 10.0 | |
7 months ago | about 4 years ago | |
C++ | Clojure | |
Apache License 2.0 | Eclipse Public License 1.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
curv
-
The Orb: a parametric trackball with BTU mounted ball and keyboard switches for buttons
curv seems to have cad/slicer integration in mind as a long term goal, using f-rep to generate infill as well as the shape itself.
-
SDF Viewer: a fast and cross-platform Signed Distance Function (SDF) viewer, easily integrated with your SDF library
Curv is another cool GPU SDF renderer that you may find interesting!
- Learning CAD on Linux
- Ten Steps to Becoming a Synth Dynamo
-
Curv3D vs OpenSCAD?
The author outlines several OpenSCAD features that they want to implement here.
- Libfive: Solid modeling (CAD) library/tools with Scheme/Python bindings and GUI
-
Smooth voxel terrain: isosurface extraction with marching cubes and surface nets
https://github.com/curv3d/curv/blob/master/ideas/v-rep/To_Me...
I've also written up a 2D study of Marching Cubes (Squares) vs Dual Contouring:
scad-clj
- Better OpenSCAD?
-
The Orb: a parametric trackball with BTU mounted ball and keyboard switches for buttons
As for Gamma: I wasn't really aware of CadQuery, but I did use OpenSCAD extensively, when designing my Lagrange keyboard. Gamma started as a way to address some aspects I didn't find quite satisfactory (as, to be fair, I can't say I had any real problems). Also to be fair, I used OpenSCAD through a frontend(scad-clj) translating Clojure code to its native language and some of the problems may have been due to that, but that is also one of the issues I had with OpenSCAD: why have to learn a new language when there are existing embedabble scripting languages, you might now already, of if not, which you might use elsewhere and which, having years of development, will likely be better?
-
GhostSCAD: Marrying OpenSCAD and Golang
I wonder how many OpenSCAD wrappers now exist? I know of scad-clj [0], openpyscad [1], and solidpython [2].
I particularly like scad-clj, because of `lein auto generate`. It watches source files, and regenerates the OpenSCAD files automatically, which OpenSCAD then also picks up. Although I'm not well versed in Clojure, and find debugging Clojure tricky, the workflow is just so good.
[0] https://github.com/farrellm/scad-clj
[1] https://github.com/taxpon/openpyscad
[2] https://github.com/SolidCode/SolidPython
- I must say I had been kinda ambivalent about OpenSCAD until now, but I discovered SolidPython and am absolutely delighted. This is what I had hoped OpenSCAD would be.
-
Code CAD – Use code to create CAD models
There is a small clojure project that transpiles clojure to openscad, (if I remember correctly...)
https://github.com/farrellm/scad-clj
Demonstrated and talked about in this clip:
What are some alternatives?
openscad - OpenSCAD - The Programmers Solid 3D CAD Modeller
openpyscad - Python library to generate OpenSCAD source code. This library provides intuitive interface when you handle 3D data.
libfive - Infrastructure for solid modeling
OpenJSCAD.org - JSCAD is an open source set of modular, browser and command line tools for creating parametric 2D and 3D designs with JavaScript code. It provides a quick, precise and reproducible method for generating 3D models, and is especially useful for 3D printing applications.
DaisySP - A Powerful DSP Library in C++
oce - OpenCASCADE Community Edition (OCE): a community driven fork of the Open CASCADE library.
regl - 👑 Functional WebGL
antimony - CAD from a parallel universe
zynthian-sys - System configuration scripts & files for Zynthian.
VisualScriptCAD - A simple visual scripting based 3D modeling application.
rust-bindgen - Automatically generates Rust FFI bindings to C (and some C++) libraries.
fswatch - A cross-platform file change monitor with multiple backends: Apple OS X File System Events, *BSD kqueue, Solaris/Illumos File Events Notification, Linux inotify, Microsoft Windows and a stat()-based backend.