7 ms·
I'm very excited about what Matt is building, the world desperately needs a good open source parametric CAD package. One where the UI/UX is designed to be as "e
by samwillis 2y ago
I'm very excited about what Matt is building, the world desperately needs a good open source parametric CAD package. One where the UI/UX is designed to be as "easy" to use a SolidWorks.
The biggest reason this hasn't happened so far is the lack of a truly capable parametric kernel, Truck, the kernel that Matt is using looks like an incredible project and exactly whats needed. The only other kennel till now that been close to being whats needed is OpenCascade, but its lacks important features, is buggy and at times quite unstable.
Once Truck (and CADmium) lands stable fillets (surprisingly one of the hardest features to make stable) it will prove itself as the perfect successor to OpenCascade and and the perfect platform to build the future of open source parametric CAD upon.
- Arthur_ODC 2y agoEven better if it were as easy and intuitive to use as IronCAD. It's by-far the best UI/UX CAD software and I'll never understand why it doesn't get more recognition.
- beeboobaa3 2y ago> lands stable fillets (surprisingly one of the hardest features to make stable) Interesting. Any chance you could explain why fillets are hard(er)?
- samwillis 2y agoFor fillets to work well they have to connect three important features of a parametric CAD package: 1. Surface tangency matching - perfectly matching the tangent of the connecting surface on either side of the corner. 2. Edge tangency following - you select an edge, and the fillet should be able to follow along all connected tangent edges. 3. Edge reference tracking - when you modify the model further up the feature tree the kernel needs to keep track of that edge, even if the surfaces that make it drastically change or are split. All three are hard problems on their own, once you connect them all it becomes a great indicator of the capabilities and stability of a parametric kernel.
- phkahler 2y agoFor Solvespace I was looking at using curve offsetting to determine where the fillet touches the surface. This would not produce a "rolling ball" fillet in more complex cases, but should be fine for simpler extrusions. It turns out generating an offset curve is another somewhat hard problem in itself.
- samwillis 2y agoYep, it would be difficult to maintain a consistent radius with that method. My assumption (I've not looked) is that you could offset the surfaces from the two sides (say A and B), and then calculate the intersection of an offset of A with the original B. Then do the opposite for the other side. I think that will give you two edges that will produce a consistent radius. Offsetting surfaced and calculating intersections aren't exactly easy problems to solve on their own. Fillets are hard! (Solvespace is awesome BTW! If I had the time (or the expertise) it also makes a brilliant foundation for all this)
- phkahler 2y ago>> Offsetting surfaced and calculating intersections aren't exactly easy problems to solve on their own. Fillets are hard! Yeah, offsetting surfaces is harder than curves ;-) This was my early stab at doing chamfers on extrusions: https://github.com/solvespace/solvespace/issues/453#issuecomment-521376948 https://github.com/solvespace/solvespace/issues/453#issuecom... I know how to do it better now, but ugh... not enough time.
- Fr0styMatt88 2y agoI was subscribed to Shapr3D and had been using their parametric beta before switching to Linux and even in that fillets would mess up what I could do with my models afterwards. The impression I’ve gotten while learning FreeCAD is that making a CAD ‘just work’ is incredibly difficult and the commercial packages probably have a lot of very messy workarounds and heuristics in place to work like they do.
- ecjhdnc2025 2y ago
- datavirtue 2y agoI love this idea. However, the value of solid works (and other expensive solutions) are the domain-specific assets that are available. SketchUp has a lot of community assets but these still leave you hanging almost immediately. You need to be able to scrounge up drawings of certain parts by part number that can be inserted quickly. This is surmountable but I think it would take at least a decade to reach parity...in a best case scenario where CADmium is readily adopted. I would put in the time to learn CADmium. Having worked in FreeCAD some and SketchUp moreso. I hate that I can't automate things easier or build my drawings from scriptable components--like a XAML file.
- samwillis 2y agoI don't think think this is a problem at all, the industry has standardised on STEP for assets, as long as CADmium and Truck have STEP support (which they will) then they have access to all assets. True, there are dynamically configurable assets for SolidWorks, but any community around a cad package will quickly recreate those.
- Animats 2y ago> The biggest reason this hasn't happened so far is the lack of a truly capable parametric kernel, Truck, the kernel that Matt is using looks like an incredible project and exactly whats needed. Indeed. This is a great application for Rust. It's something that's complicated, difficult, and has to work right.
- wolvesechoes 2y ago> Indeed. This is a great application for Rust. It's something that's complicated, difficult, and has to work right. For Rust itself, maybe, but not for its community.
- LeifCarrotson 2y agoMaybe I'm not enough of an evangelist, but I just want a good, non-subscription local-first CAD package. I've recently moved over to Alibre Atom3D, which, while not open-source, costs $200. Once. Then (as long as your host OS doesn't change too much) you can access your designs forever. It runs on the ACIS kernel. "Browser first" and (from the readme) "Beyond that, I will try to monetize by offering a hosted version of the software as a paid product." reads to me like this project is doomed to either fizzle or to grow and transform into an open-core, subscription-requiring product, accumulating more complicated dependencies to install and "security features" that make it harder and harder to run in truly local fashion.
- spookie 2y agoFeel the same way. Honestly I think there's more money to be had going open source than competing in a sea full of sharks. But hey, that's probably wishful thinking from my part.
- freeone3000 2y agoBut that open-core subscription model is the way open source makes money! Not enough people pay for software out of the goodness of their hearts to make a living off of it.
- jonathankoren 2y agoAll subscription software is just a protection racket. Nice files you got there. It would be a shame if they suddenly become unreadable, eh? Even the so called "open" core is a joke. Just try to add anything useful. It will get rejected in favor of a paid option. The whole thing is just an offensive anathema to open source.
- tverbeure 2y agoThe problem with Alibre is that it only works on Windows. I switched from FreeCAD to the free (as in beer) version of Onshape, which works in the browser and is a night and day difference over FreeCAD. Your designs are wide open for anyone to see, but I can live with that for hobby stuff.
- geph2021 2y agoI don't know a lot about these tools, but I've used QCAD[1] for home improvement projects, drawing schematics and layout diagrams, and been very happy with it. It seems quite powerful. It's also open source, although not browser based. I'm just wondering why QCAD doesn't seem to get much if any mention on HN when CAD tools and open source comes up. 1 - https://www.qcad.org/ https://www.qcad.org/
- mft_ 2y ago2D vs. 3D, I think. 3D is where the excitement is, but also where the difficulty is from the kernel perspective.
- tverbeure 2y agoI'm impressed what people are doing with 2D CAD, because for the life of me I can't figure out how they do it. I love the constrained based sketching in 3D CAD tools and didn't have the impression that qcad had anything like it?
- phkahler 2y agoQcad is commercial software. The author is doing his best to ride the line between commercial and OSS, but most free software developers don't want to play. LibreCad was forked from an earlier version of Qcad and fell behind. Now they're doing a whole new LibreCAD but it's been years in the making.
- CarlJW 2y agoAs a user of QCAD I am more than happy to pay the extra for the features in the commercial version and support the developer (Not vastly different but adds a few tools that make certain constructions easier). I used it free for a while and appreciated it enough to exchange some money. The extra features are a bonus but it's worth the money even for the free version. I think it's a shame that LibreCAD has stagnated and diverted, particularly on usability. QCAD has one of the best 2D CAD UX I've used, akin to AutoCAD but more light and nimble. Exactly what is needed for most 2D CAD. If you need a powerhouse, then you really need 3D anyway, and most likely you aren't a hobbiest if that's the case. For 2D, it's QCAD all the way. 3D is nice, but 2D gets the job done 9/10 times. 3D is overrated.
- Fr0styMatt88 2y agoI will say that the FreeCAD weekly builds have made massive strides; I believe the toponaming fix is in the latest mainline weekly now and Ondsel have been contributing great work back from their branch as well. I’ve been playing around with the weekly version and using the OpenDark theme. It looks pretty slick. It seems like a really exciting time for open-source CAD (hopefully!).
- bobby_the_whal 2y agoFreeCAD suffers from the same issues that much open-source software suffers from: it has bugs. Bugs erode user confidence. Apparently, there are now > 500 bugs open. When commercial software has bugs, you don't even know they exist often. Sure, but there are also ways to make bug free software, but hardly any open-source software exists that uses those development techniques.
- virtualritz 2y agoI can only talk about professional visual effects (VFX) software like Maya and Nuke. Let's just say I've seen their (internal) bug trackers. TLDR; you couldn't be more wrong. When OSS software has bugs, at least someone with an interest in the issue and the skills can do something about it. For closed source software nobody can. Even the people working at the resp. company who are developers rarely or never decide about priorities. And as an added hurdle, adding features always has higher priority as it drives sales.
- imtringued 2y agoAnd here I thought it is cripplingly obvious UI problems. The attachment editor is horrible, for instance. If you want to attach a sketch to a datum plane, it will be attached at a random orientation. There is no preview for this, since datum planes are just planes, except you know, the part where it actually is an LCS with a default attachment orientation internally. So now you have to go into the sketch and draw an arrow pointing up and then rotate the sketch into place so that it actually points up. You will have to do this for every single sketch. It is so painful and an every day occurrence that surely someone should have come up with the idea of fixing it years ago, right? There is usually no preview for additive parts unless it successfully creates the final model. The idea of displaying a transparent preview of just the operation itself never occurred to them. Also, there are hardly any interactable UI features such as draggable arrows in the 3D editor, you mostly enter numbers in the left panel. I haven't had much trouble with "bugs". The attachment editor thing is considered a feature by the way.
- tonetegeatinst 2y agoI used solid works on my robotics team. Tried using some other program but I loved the way solidworks let's you create parts, and then some other features where its hard to exactly discribe the exact thing but for me solidworks seemed so much more intuitive. I dropped my summer internship money on the version which was a few hundred bucks. ...pretty sure it was cuz I got the student or the hobbist deal.
- grigri907 2y agoSolidworks finally has an affordable personal license https://www.solidworks.com/solution/3dexperience-solidworks-makers/diy-personal-cad https://www.solidworks.com/solution/3dexperience-solidworks-...
- tonetegeatinst 2y agoYES finally. That's a much more reasonable sum than what I was paying.
- onthecanposting 2y ago"The biggest reason this hasn't happened so far is the lack of a truly capable parametric kernel" Does parasolid not fit this requirement? The capabilities I've seen in Plasticity are very impressive. Or do you specifically mean FOSS? The more I use CAD platforms, the more I develop the sense that general-purpose CAD is much less useful than single-purpose applications that provide tailored solutions to narrow problem domains. SVG/DXF/DWG output is a plus, but I think a drawing software that works for high-volume machine parts, one-of-a-kind architecture, highways, 50-mile pipelines, circuits, urban transit plans, and art is the wrong direction. I use industry standard roadway design software and a "road" does not exist in the object model. Horizontal, vertical, and sectional components are all independently defined despite these things being inseparable and having some very obvious and well-specified rules about their interaction. I really think designers should spend more time thinking about outcomes and less time telling the computer how to display them.
- eliasson 2y agoAbsolutely agree. I just finished a project were where users can design / construct solutions in a specific domain in either 2D or 3D, with support for exporting CAD and STP. The user works with rich domain objects that limit the possibilities to what actually works or is practice; much like a game level builder. This allows non-experts to design solutions in this particular domain, which of course is great for business / sales.
- Fr0styMatt88 2y agoI think this is a great point. When looking at ‘best practices’ for constructing robust parametric models I keep thinking “this is so much like software engineering where the programming language is the CAD system” (as an aside, I’ve tried OpenSCAD but found the rendering UI waaay too slow even with simple stuff to be usable for me). So as a model builder you end up trying to build these higher-level abstractions into your model, where the parameters are your top-level interface. I think CAD is so much like programming in those ways, although I could just be biased since I’m a software engineer.
- WillAdams 2y ago
- pompino 2y agoI think this makes sense for a certain market segment. In the commercial arena, cost of AutoCAD (and similar) is negligible compared to the revenue it generates.