|
|
|
|
|
by tfinniga
2148 days ago
|
|
I think a big part of why this happens is that a lot of the fundamental math of CAD doesn't have good answers - everything is heuristics and approximations to within a tolerance. You can get a simple NURBS kernel up and running in maybe 2 dev-years. But getting good heuristics created for all of the common edge cases is what takes the huge number of dev-decades, and what you pay for with one of the commercial kernels. You won't even know what the common edge-cases are until you start getting user reports of things failing, so you'll need to be doing this development with a large community of users. There is no closed-form formula to tell how long a NURBS curve is. Offsets of NURBS curves are not NURBS curves. Likewise, intersecting NURBS surfaces produces intersection curves that are not possible to represent as NURBS curves. So something as simple as a fillet is impossible to exactly produce in like 3 ways. Booleans then add the joy of topology to the mix. It's all heuristics and approximations and dirty hacks. |
|