BRL-CAD
brlcad.org
brlcad.org
Back in 2012 I was lucky enough get into the Google Summer of Code program and landed on this project. Everything confused me, I'm pretty sure the only contribution I managed that whole summer was switching out a couple system sort calls for a qsort implementation.
The BRL-CAD team was so helpful and friendly though, I remember having such a fun time tinkering all summer (mostly unsuccessfully) and talking with my mentor about the program.
This is all to say that the BRL-CAD team is great, and some 11 years later they're still apart of that program giving back to the community through mentorship.
You're always welcome to get involved again! Whether doing code cleanup or picking up a custom project, always happy to see folks come back and work on scratching an itch. Take care, K!
From one of their tutorials (https://brlcad.org/w/images/9/9a/Principles_of_Effective_Mod...):
> Since 1979, the U.S. Army Research Laboratory (ARL) has been developing and distributing the U.S. Army Ballistic Research Laboratory - Computer-Aided Design (BRL-CAD) constructive solid geometry (CSG) modeling package for a wide range of military and industrial applications. The package includes a large collection of tools and utilities including an interactive geometry editor, raytracing and generic framebuffer libraries, network-distributed image-processing/signal-processing capabilities, and an embedded scripting language.
"If the build is successful, you will see "CORRECT" numbers and a performance summary at the end. The "vgr" line effectively shows you approximately how much faster your machine is to a VAX 11/780."
BRL-CAD - https://news.ycombinator.com/item?id=32449336 - Aug 2022 (82 comments)
BRL-CAD: Open-Source Solid Modeling - https://news.ycombinator.com/item?id=21148247 - Oct 2019 (29 comments)
Army has been developing a GPL'd CAD package since 1979: BRL-CAD - https://news.ycombinator.com/item?id=549899 - April 2009 (8 comments)
> BRL-CAD has an interactive geometry editor called MGED. It's often the starting point for beginners and allows creation and manipulation of models using commands. When mged is run, it creates 2 windows: a text console for commands and an interactive graphics window. Currently, if you close the graphics window, it quits the application.
You implement your design using BRL-CAD's DSL. It worked very well for a quite simple 3D model I implemented. Many (like me) prefer "coding" their designs instead of using an interactive, mouse-driven GUI.
The issue comes when you want to take something simple and make it more... nuanced. Adding the chamfers, removing cruft from the design... it feels orders of magnitude harder than just using something purely visual.
Most "design" people don't, unfortunately. For better adoption it will need a modern CAD GUI.
https://github.com/opencax/GSoC/issues/27
but didn't get any traction when discussing it here:
https://news.ycombinator.com/item?id=32060838
though there was more in two previous mentionings:
https://news.ycombinator.com/item?id=21148247 https://news.ycombinator.com/item?id=32449336
It's a program I've considered working with, but the lack of integrated CAM is something of a problem for my purposes.
Do you mean:
https://github.com/mbuesch/cnc/blob/master/tools/brlcad2gcod...
I gotta say, the screenshots showing what looks like Motif (or Lesstif) widgets makes it more appealing to me, not less.
I can actually tell apart the different widgets on screen, and determine what is a button and what is not.
Like many open source communities, pandemic had a pretty significant impact, but development and releases are quite active.
New release coming out in a few weeks introduces conversion support for 150 new geometry and terrain file formats. This summer, Physically-based Rendering support is coming to open source CAD for the first time ever. All the while, devs are working on GUI infrastructure, mentoring GSoC, doing academic research, interacting with academia, and doing what they can to help foster an open source CAx community.
In total, BRL-CAD today has more than 500 full-time staff-years of effort invested, more than pretty much all other open source CAD combined.
There's simply no PR team, and limited bandwidth to provide support to those that don't contribute in kind. CAD modelers coming out of school are only accustomed to multibillion dollar company products that dedicated highly experienced devs to specific user-facing features under dedicated funding lines.
With open source, skillsets vary wildly and coordination, collaboration, and maintenance are a challenge until a project achieves critical mass. It's something the BRL-CAD community is working hard on, but it's not something that will be quick. Contributors are welcome!
[1] https://www.army.mil/article/92288/brl_cad_the_worlds_oldest... [2] https://brlcad.org/BRL-CAD_Bibliography.pdf
Current dev focus is on conversion, rendering, and GUI modernization.
Can find indications it's CSG under the hood if it won't let you directly modify a surface without selecting some "convert to editable representation" option. TinkerCAD is an extreme example that's basically a pure CSG modeler (and probably the most popular CAD system to date, but I digress), but you won't find the term union, intersection, or CSG anywhere in its GUI. Solidworks and NX do a really good job hiding it.
IMHO: Any shape defined by a CSG modeling kernel can be defined in a BRep modeling kernel. The reverse is not true, short of some kind of 'hack'. BOT(bag of triangles)? Hybrid with mesh modeling?