Live data from Hacker News

Antimony – A fresh look at CAD software

mattkeeter.com

51–60 of 124 posts

Re: Antimony – A fresh look at CAD software

#51
post #27

Okay, I'm a CAD software developer instead of an actual CAD engineer, so my perspective may be a bit biased. But this CSG (constructive solid geometry) idea is not in any way new. The reason it's kind of obscure now is that spline-based boundary representation systems (B-reps) took over the market decades ago. If you think about, say, the latest car designs, those free-flowing shapes are pretty easy to do in B-rep, a…

Well, those shapes are hard to accomplish with a CSG of primitive shapes at least. This isn't really "plain CSG" though. I think it uses distance fields (a tree of distance functions), which can be of any kind. The simples ones are just primitives, but anything that has a defined distance could be used, including parametric surfaces, fractals... (If you are using it for actual CAD and not just visualization, you prob…

Yeah, but how difficult is it to make a distance field with the same versatility as a spline which lets you drag its surface, explicitly add seams of lower continuity (which are important out past the second derivative for reflections), shell a surface to uniform thickness, etc?

Blending shapes is neat trick but the market cares most about fundamental operations and it seems to me that the fundamentals are harder to implement with CSG.

Re: Antimony – A fresh look at CAD software

#52
The implicit surface representation is obviously great for 3D printing. I wonder if it would be suitable as input to a CAM system. (note: this is not a rhetorical question. I have no idea how CAM systems work.)

Re: Antimony – A fresh look at CAD software

#53

Earlier quoted context omitted.

Well, those shapes are hard to accomplish with a CSG of primitive shapes at least. This isn't really "plain CSG" though. I think it uses distance fields (a tree of distance functions), which can be of any kind. The simples ones are just primitives, but anything that has a defined distance could be used, including parametric surfaces, fractals... (If you are using it for actual CAD and not just visualization, you prob…

Yeah, but how difficult is it to make a distance field with the same versatility as a spline which lets you drag its surface, explicitly add seams of lower continuity (which are important out past the second derivative for reflections), shell a surface to uniform thickness, etc? Blending shapes is neat trick but the market cares most about fundamental operations and it seems to me that the fundamentals are harder to…

Yes, it's definitely a tradeoff. I wouldn't think distance field modeling will ever be mainstream in design for manufacturing, just like CSG won't be. They are mainly useful in direct visualization. There may be lost of niches such as content creation for gaming etc where other representations can be useful.

Re: Antimony – A fresh look at CAD software

#54
post #7

Looks nice. I have been working ten years professionally developing a CAD program, and if I could time travel and give my ten years younger self a single tip it would be to use a proper geometrical kernel (like CGAL) rather than doing anything with floating point. The tree rep is very cool. It could probably render implicitly using distance fields without even needing triangulation. http://iquilezles.org/www/articles…

> proper geometrical kernel (like CGAL)

Wow, that looks amazing. Thanks for the pointer!

http://www.cgal.org/

(Pretending to add value, it's eminently googleable)

Re: Antimony – A fresh look at CAD software

#55
post #16

Having used OpenSCAD, Solidworks and NX fairly extensively, I can say that "code-based" solid modelling systems are good for some specific things - anything that is highly parametric, for example: * Gears and sprockets * Fasteners (nuts & bolts) * Electrical components (ICs, etc) For anything else they aren't at all suitable. It's just a million times easier to be able to click on dimensions on the actual sketch and…

The ideal would be both worlds. 3D editor until you want to go in and change specific relations, which would be specified in code. Like editing an SVG or hand-editing its source, it's useful to have the option depending on your toolset.

The issue isn't whether you're editing text or visually interacting. It's that there's a tension between abstraction (parameterized models) and WYSIWYG editing.

Re: Antimony – A fresh look at CAD software

#56
post #35
post #27

Okay, I'm a CAD software developer instead of an actual CAD engineer, so my perspective may be a bit biased. But this CSG (constructive solid geometry) idea is not in any way new. The reason it's kind of obscure now is that spline-based boundary representation systems (B-reps) took over the market decades ago. If you think about, say, the latest car designs, those free-flowing shapes are pretty easy to do in B-rep, a…

And Auto-CAD had a Lisp engine in the '80s ... You could automate almost any function of the drawing system, build "macros" as well as patterns and even alter the DXF generation.

AutoCad got AutoLisp as an update to R6 in January 1986. AutoCad got solid modelling in R11 with the "Advanced Modelling Extension" add-on in 1990.

The whole history of AutoCad's feature evolution is that of a successful startup. There's an overview on AutoDesk's website:

http://autodesk.blogs.com/between_the_lines/autocad-release-...

Re: Antimony – A fresh look at CAD software

#57

Having used OpenSCAD, Solidworks and NX fairly extensively, I can say that "code-based" solid modelling systems are good for some specific things - anything that is highly parametric, for example: * Gears and sprockets * Fasteners (nuts & bolts) * Electrical components (ICs, etc) For anything else they aren't at all suitable. It's just a million times easier to be able to click on dimensions on the actual sketch and…

I really like the idea of OpenSCAD, but the language is just unacceptably crappy. It's still better for me with my habits than anything graphical, though. If it had better capabilities for abstraction I think it'd much more suitable for large, complicated objects than a graphical editor.

I found FreeCAD ideal. It has a language (python), an object model, a boundary rep kernel, and a GUI.

Re: Antimony – A fresh look at CAD software

#59
post #35

Earlier quoted context omitted.

And Auto-CAD had a Lisp engine in the '80s ... You could automate almost any function of the drawing system, build "macros" as well as patterns and even alter the DXF generation.

AutoCad got AutoLisp as an update to R6 in January 1986. AutoCad got solid modelling in R11 with the "Advanced Modelling Extension" add-on in 1990. The whole history of AutoCad's feature evolution is that of a successful startup. There's an overview on AutoDesk's website: http://autodesk.blogs.com/between_the_lines/autocad-release-...

I think it was release 2.18, retroactively named R6 maybe. John Walker and I hacked up a p.d. thing called xlisp by David Betz, removing some of the best bits (the 'X' parts) and fitting it into its own 64k 'small model' (x86) segment. I was a bit of a lisp nut, but even I (product manager at the time too) thought lisp as a 'macro language' for AutoCAD was a tinge crackers. Glad we did it though!
Post reply on HN