Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Slight aside, does anyone know of a more modern open source parametric CAD kernel than OpenCascade (which this is built on)?

When I have looked into it before it seems to be criticised for being somewhat dated and not have the power and developer ease as Parasolid (which costs big bucks). Having both a software and mechanical engineering background (I spent a lot of time in SolidWorks) I regularly get the itch to try and combine the two and create a CAD tool.



I've never tried BRL-CAD but it looks really big and complex. The only other one I'm aware of is Solvespace: https://solvespace.com/index.pl

It uses it's own B-Rep for NURBS and can export STEP files. The basics are there for extrudes, revolves and helixes. Booleans are still a bit buggy, but we occasionally fix a bug or two.

It's definitely the smallest NURBS kernel around at about 8000 LoC and the full program comming in at ~5MB. There is no real API for geometry though, just the constraint solver.

BTW the constraint solver has also been used in one of the FreeCAD assembly workbenches, and also in this sketcher add-on for blender: https://blenderartists.org/t/geometry-sketcher-constraint-so...


That blender add on looks awesome! Thanks, I hadn’t see that.

Watching Solvespace with great interest, who hung it could one day become a full brown kernel.


The only other open source full function CAD kernel that I know of is BRL-CAD, have only poked around a bit in it and OCCT.


Yes, I have come across BRL-CAD but never tried it. I believe it’s even older and more complex than OpenCascade. How did you find the two of them?


It Coin3D not full function?


Coin3D is a 3d graphics scene graph toolkit, it has no parametric solid models tools.

I believe most tools built with OpenCascade use Coin3D for rendering.


same itch here.

Here are two quite remarkable statements from a MIT lecture on CAD (https://stellar.mit.edu/S/course/6/fa19/6.807/courseMaterial... ):

"[there are] ASIC and Parasolid, others are not really as good"

and "[CAD] Research disconnected from reality [compared to CG research]"

One might expect a whole range of CAD kernels floating around, since these kernels are such a fundamental part of civilization in some way. Doesn't seem to be the case, tho..


That confirms the impression I had, I guess they are just so complex that building a new open source one from scratch would be Herculean effort. Guess OCCT is the only option for now.

The itch I would love to scratch is an online real-time collaborative parametric cad app using CRDTs. Current thinking is combining OpenCascade compiled to WASM [0] with Yjs[1], but frankly don’t have the time.

A kind of Figma but for 3D cad. (There is obviously onShape but I’m thinking something a little simpler)

0: https://github.com/donalffons/opencascade.js/

1: https://github.com/yjs/yjs


Doing just this. Starting with BIM/IFCjs but have near-term plans for integrating a STEP-compatible engine soon.

Thanks for the opencascade/wasm link.. looks like a nice option!

github.com/buildrs/Share


"building a new open source one from scratch would be Herculean effort."

how are you tackling this?


Agree it's a big effort, so approaching as open as we can to attract cooperation. We also have a new company that has taken seed funding. I'm a systems engineer/data scientist, working with architects and 3d folks who know the state of the art well.

The architecture will tend towards platform + apps, to help address the scale problem. We're looking to partner/port the geometry kernel and focus on workflow and integration with open standards (IFC,STEP,gltf,Collada).

Initial UI is in react+three.js (soon react-three-fiber) with git for file-based versioning underneath. Also interested in recent discussions on HN about CRDTs on Matrix for collaboration. So kind of a CRDT real-time google docs capability on top of a persistent file based rep on git. This part is very fun coding :)

Just getting started! Appreciate any feedback, esp on our github/discord :)


that sounds very exciting! I also think that a physics / game engine environment would make CAD a lot more accessible. Right now, these two world are very distinct from each other..


I use Blender for simple 3D printing stuff. There have been a few times where I found the bottom of something by simply turning on gravity.

I do hope that Blender becomes more capable in this regard though.


they have very different goals. game engines and such make all sorts of performance compromises you positively wouldnt want your CAD software making.


What about CGM?




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: