Nice to see other open source CAD development being explored. BRL-CAD has had the pixdiff, bwdiff, and pixcmp tools for a very long time, for very similar purposes:
Very cool that it emulates the phosphor "burn" fading away like the original vector graphics hardware. You can see and play the real thing at The Strong National Museum of Play in Rochester, New York.
I have the sources to "JHU UNIX" which were a direct fork of one of the earliest BSD's, though I don't recall hearing which. They were recovered off data tapes (and are still in an arcane raw binary format) from the late 70's / very early 80's.
This past week, orgs were announced for the 20th anniversary of the Google Summer of Code. Anyone new to open source (not just students anymore) can submit a proposal to remotely work on an open source project for a few months and get paid. Best advice: communicate early, communicate often.
Cheers!
Disclaimer: GSoC admin and mentor since '07. BRL-CAD, BZFlag, Haiku OS, RTEMS, ... good times.
I'd be happy to host the site in perpetuity on one of our dedicated hosts (for free). Have hosted the sites for a number of notable open source communities for decades.
Not entirely true. As an explicit edit method, sure, but several of the big-name non-parametric (i.e., solid modeling) commercial CAD systems are fundamentally still CSG representation under the hood. They just hide it well, typically under the guise of feature edit nomenclatures or editing constraints.
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.
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.
BRL-CAD has a very rich and ongoing development history that is not immediately obvious. [1,2] Heavily actively used by gov'ts as it has unique features like validated full shotline solid ray tracing -- granted, not a feature most know, understand, or care about but absolutely critical to others. Development is actively funded annually (just not your priorities).
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!
The topic has come up and been a point of discussion, especially developing something akin to the ACIS or Parasolid kernels, but open source. In many areas, BRL-CAD's capabilities far exceed what OpenCascade provides, particularly w.r.t. CAE features, and in others it is noticeably lacking (e.g. export to polygonal). Couple years of effort have been invested in developing a new C++ API for exactly this purpose (codename "MOOSE").
Current dev focus is on conversion, rendering, and GUI modernization.
If someone were to come to the project with an interest in integrating CAM features, they would not be turned away. Closest has been having someone implement a BRL-CAD-to-gcode converter, which was actually incredibly well-suited to solid modeling. Used ray tracing to perfectly sample and slice the layers.
Devs feel the same way. Modernizing the GUI has been years in development to get necessary infrastructure bits in place. Massive disruption with pandemic and migration to git, but GUI work is now back on top of the priority queue. Qt-based with other major library integrations.
Your code refactoring project was important! Eliminating those sys calls, you fixed bad code and addressed security violations. You helped reduce maintenance costs which in turn helped with code auditing efforts
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!
pixdiff: https://manpage.me/index.cgi?q=pixdiff&sektion=1&apropos=0&m...
bwdiff: https://manpage.me/index.cgi?q=bwdiff&sektion=1&apropos=0&ma...
pixcmp: https://manpage.me/index.cgi?apropos=0&q=pixcmp&sektion=1&ma...