4 ms·
What do you think of non-history based CADs using direct constraint solving? Can they even hypothetically match history based ones on functionality? As I under
by baybal2 5y ago
What do you think of non-history based CADs using direct constraint solving? Can they even hypothetically match history based ones on functionality?
As I understand history is a "hack" for low capabilities of 3D constraint solvers, which are limited in shapes they can express by what the solver can express.
- phkahler 5y ago>> What do you think of non-history based CADs using direct constraint solving? Can they even hypothetically match history based ones on functionality? I may not be the right one to ask. jwesthues wrote solvespace originally for his own reasons, I think partly to experiment with better ways of solving constrained sketches particularly during user interactions (dragging). I'm not sure about the history aspect of these programs. The group structure of a solvespace model is not really as necessary as it may seem. I don't think the capabilities of the constraint solver are even close to being fully utilized. >> As I understand history is a "hack" for low capabilities of 3D constraint solvers, which are limited in shapes they can express by what the solver can express. We could in theory apply the constraint solver to any set of points and lines - Vertexes and skeletal structures in Blender for example. It gets tricky to make predefined geometry with only some specific degrees of freedom. You're basically using automatic constraints to define the non-movable parts of an object, but leaving out just the right constraints to allow the user to move/stretch/bend the thing in an intuitive way. Again, we're just scratching the surface now with extrude/revolve/helix operations. Extrude-along a path is a long sought feature that I plan to implement. It will be like chaining multiple extrude or revolve segments (with uniform cross section) in a single group. The solver will be maintaining that cross section while allowing the user to drag an awful lot of stuff around. Most other CAD has the feature but they seem to want you to define a path ahead of time and then just create the geometry to follow it. We can do better.