10 ms·
SolveSpace – Parametric 2D/3D CAD
- crispisulcans 4y agoLove this piece of software! I tried a few other free CAD programs before and this is one my favorite.
- tastemykungfu 4y agoThis feels like a terminal based 3d application, and I love it! I tried out "plasticity" (trying to get off of FreeCad) but prefer this as it's very simple to use.
- zokier 4y ago> This feels like a terminal based 3d application I'm curious, what makes you think that?
- dvhh 4y agoFrom my point of view, the default color palette give a very strong impression of that feel
- dcminter 4y agoNow you mention it it does remind me vaguely of Tektronix and VT320 interactions with applications on a Vax in my university days!
- phkahler 4y ago>> This feels like a terminal based 3d application, and I love it! There is also solvespace-cli which is built along with it. Nice for doing things like generating thumbnails of sketches.
- pengaru 4y agoThis is by far my favorite CAD program for quick engineering-oriented designs. But it's not without its bugs, and frankly the performance seemed to steadily deteriorate as more of the code was "cleaned up" to use more modern C++/STL stuff over the years. I use a local fork from an older release that instead diverges even further away from using C++ crap in a very performance-sensitive area (the IdList indexing is done ad-hoc) and it's been far more usable for the large-ish models I tend to work on (designing sheds/roofs and cabin structures). The same models I work efficiently on are basically impossible to work with in current upstream releases (when I last tried them, admittedly pre-pandemic so years ago), almost every operation becomes a many-second stall. Edit: My local fork is based on Alexey Egorov's changes @ https://github.com/Evil-Spirit/solvespace-master/tree/id-list-indexing https://github.com/Evil-Spirit/solvespace-master/tree/id-lis...
- gamegod 4y agoYou should really give Solvespace 3.x a shot... it's come a long way and a lot of performance issues have been solved.
- pengaru 4y agoIt does look like they finally improved the IdList in 2021 according to [0]. When I have time I'll give it a spin on some of the models I was last working on. The last time I went down this path, IIRC the interactivity had improved substantially even on large assemblies, but a bunch of new bugs had been introduced. So I just stayed on the old branch with the indexing fix, it's been relatively bug-free for the stuff I do. From what I recall even just picking lines/points/faces with mouse clicks had become unreliable and inconsistent in the last new release I tried, it was very broken. [0] https://github.com/solvespace/solvespace/commit/7674be791e84ee4f9d06ca6e4ba35f94342c9543 https://github.com/solvespace/solvespace/commit/7674be791e84...
- phkahler 4y ago>> but a bunch of new bugs had been introduced. That makes me sad. We aim to avoid introducing bugs. I am aware of one open NURBS issue that is an actual regression where the model works in version 2.3 but not 3.0. Of course it may be affecting others too and we just haven't been told.
- pengaru 4y agoIt saddened me at the time as well, and normally I would have spent substantial time working with upstream to try fix such regressions. But between being busy rebuilding my home's roof structure at the time, which is what I was trying to use SolveSpace to assist in, and being generally frustrated with the seeming lack of interest/prioritizing the kinds of performance regressions and general scalability limits my use case kept encountering, I spent less effort working with upstream. I was doing quite large assemblies of stick-frame structures, and it seemed most users were doing simple models for 3D printing. Another factor around that era was whitequark had abruptly quit SolveSpace maintenance, and seemed to be the only active person at the time. We'd often chatted about issues in IRC and they were usually super helpful, when they told me they were no longer involved I kind of gave up hope. Glad to see things seem to have rebounded since, and my roof is all done so maybe I'll retry some of the things I was tripping over bugs attempting, using the latest release.
- ur-whale 4y agoThis is a nice piece of software, but I wish they had a clean, documented Python API to be able to drive it purely programatically (à la OpenSCAD / CADQuery).
- Syzygies 4y agoYes. I couldn't even figure out from the reference manual how to generate an input file programmatically. Presumably the saved file format is human readable, and could be reverse-engineered, but documentation would help.
- Piezoid 4y agoThe is a python API for it's constraints solver: https://pyslvs-ui.readthedocs.io/en/stable/python-solvespace-api/ https://pyslvs-ui.readthedocs.io/en/stable/python-solvespace... However the solid geometry engine is tightly coupled with the application and not exposed by a public API.
- chromatin 4y agoAlthough apparently(?) less engineering-oriented, check out OpenScad, which has a much wider install base and I think is more mature with a large ecosystem: https://openscad.org/ https://openscad.org/
- forgotpwd16 4y agoTheir approach seems different. SolveSpace is interactive-oriented (similar to most CAD programs) whereas OSCAD is code-oriented. Depending on what someone is doing guess they're complementary?
- ur-whale 4y agoSolveSpace, if it added a python API to its geometry engine and constraint solver would be the best of both worlds and an absolute killer app.
- gamegod 4y agoThis software is low key the best open source CAD software. Although it looks ancient, it's under active development and has a much lower learning curve than FreeCAD IMHO. It's a really good fit for the skill level of someone who has a 3D printer. I've designed dozens of parts for my printer and random crap around the house with Solvespace. It's a very useful tool.
- wiradikusuma 4y agoSlightly OOT: What software (can be paid) for designing a house? I'm a software engineer with no background in civil engineering / related fields. AutoCAD is too complex, Photoshop too abstract. I'm thinking the Sims :) But I need "real" measurements. The resulting design is not for commercial use but to be passed to the professionals (architect/builder). Simple enough for my mom to understand yet detailed enough for the professionals to know what I want precisely.
- lann 4y agoI looked at a bunch a while back and found this to be a nice middle ground with a usable mobile interface: https://floorplancreator.net/ https://floorplancreator.net/ Paid version can export to DXF (AutoCAD)
- nvrspyx 4y agoSketchUp is probably a good option for your use case, although I've never used it (or any other CAD).
- scoopr 4y agoSketchup is really in a nice spot for this kind of stuff. I’m still stuck at the last free version 2017 make. The new free web thing is kind of okay, but really suffers in even a slightly bigger models. Haven’t tried the newer paid versions. It’s a real shame most of these cad-like stuff are going subscription only. As a hobbyist, my needs are really sporadic :/
- sgtnoodle 4y agoThere's a web version at my.sketchup.com. It lacks some of the features of the desktop software, but works well enough. I drew up the interior of my home to aid in renovations. I also use it for modeling 3D prints when I don't need the part to be parameterized.
- doph 4y agoSketchUp. Pretty easy for an amateur/hobbyist to learn, powerful enough that your architect might use it, too. You can try the web based version for free.
- samwillis 4y agoSolveSpace is by far the most interesting thing happening in open source 3D parametric CAD, specifically because they have built their own advanced parametric CAD kernel and constraint solver. The only other "advanced" open source kernel is Open Cascade which is a little difficult to work with, and nowhere near the commercial Parasolid in its functionality and accessibility. I would love to see some significant sponsorship of SolveSpace, there is enormous potential for a modern and useable Parametric Kernel.
- gh02t 4y agoFor people not familiar with it, Parasolid is the geometry engine that powers a bunch of prominent commercial CAD/CAD-adjacent tools. SolidWorks, Onshape, Ansys, Abaqus etc. It's kind of the benchmark to beat for open source competitors like SolveSpace, which I agree is a very exciting tool.
- grawp 4y agoI have a big conceptual problem with these interactive editors: I'm a programmer and am very used to splitting things into functions and objects which can be then called with / have different parameters and be composed into another functions and objects. So far my experience with both SolveSpace and FreeCAD have been: Even if you can reuse a part of your design multiple times (and even this is a nontrivial problem), you surely can't do that with different parameters! My brain hurts from how it goes against all programming principles about DNRY, modularity, and composability.
- khimaros 4y agoI find using spreadsheet functionality and referencing those values works pretty well. you might use something like assembly4 plugin as well.
- grawp 4y agoIt's not about reusing values. It's about reusing whole complex designs. I know that there is some very very new feature called Variant link but I haven't managed to comprehend it yet.
- abadaba 4y agoWould be interesting if something like OpenSCAD had an interactive editor that allowed for exporting to an openscad code module. OpenSCAD is great, but sometimes I just want to fidget around with an object like in this SolveSpace demo video.
- dcminter 4y agoHave you played around with OpenSCAD? That comes from the programmatic direction. As a novice it does seem to me that there's room for an open source CAD tool that offers a bridge between the two approaches. For what it's worth my opinions on a few tools: • SolveSpace - solid, but a bit limited in its capabilities (e.g. no fillets or chamfers) • FreeCAD - very powerful but almost unusably buggy (others seem to have had better experiences) • OpenSCAD - very powerful but requires coding for everything Then there are various non-3D cad tools and a few online ones (of which I've got the most use out of TinkerCAD which is easy to use because it is very limited in its capabilities)
- deadsy 4y agoI wrote this (in golang) to satisfy my need to generate STLs for 3d printing. https://github.com/deadsy/sdfx https://github.com/deadsy/sdfx In general I like to write code to define objects, but there are some situations where a graphical editing UI would be nice. ie- Curve and polygon design. You can sort of imagine a hybrid approach where you could crack open a mini editor to design a curve and then use it to generate code (table of numbers) which you could then extrude/sweep/loft or whatever.
- timestretch 4y agoA hybrid approach where you could "sketch" with SolveSpace, but then generate OpenSCAD style code that you could later edit would be amazing. The main advantage of OpenSCAD is that it doesn't "blow up" when you change a variable to be out of some range where things work. In OpenSCAD, you can put it back if it does cause a problem. Changing a dimension in SolveSpace sometimes throws off the whole design. SolveSpace's precision, constraints, and great keyboard user interface make it a fun program to design parts in. It is among the best open source tools out there.
- WillAdams 4y agoAlternately, it would be way cool to have a modeling language which would make designs for Solvespace.
- genericone 4y agoI have to give this upvotes every few years this resurfaces on HN. This is the best option for visualizing linkages and the outputs from such mechanisms. It was lacking in one type of constraint, but it was open source so I was able to extend the code and contribute a feature after 8 years of weekly use.
- phkahler 4y ago>> but it was open source so I was able to extend the code and contribute a feature after 8 years of weekly use. Keep at it! There is a bit of learning curve and we need more people to keep climbing it. My way in was though the NURBS code which hadn't been touched in 2 or 3 years when I found it.
- silencedogood3 4y agoSo why would I choose his over openscad? What’s better/worse?
- ur-whale 4y agoThese are just different. My biggest gripe with SolveSpace won't let you write code, everything is done in the UI which is very limiting and a big turn-off, especially given what the underlying geometry engine is capable of. On the other hand, OpenSCAD doesn't have a constraint solver (you can't easily say something like "compute the intersection of these two circles and project the resulting point on this surface and extrude a cylinder from that point along the normal of that surface"), whereas SolveSpace does, and it's a very powerful way to model things. OpenSCAD is also very annoying in the sense that it doesn't allow you to "probe" your model to construct it further: it has exactly zero self-introspection features. To give a simple example, it's almost impossible to compute the bounding box of a model or its barycenter, which is very limiting.
- phkahler 4y agoSolvespace 3.1 (due soon RC1 is out) will allow linking STL files, so you can do your OpenSCAD stuff that way, then link in the STLs in solvespace. Not sure how useful that's going to be but it's something for those who like both tools.
- cab404 4y agoActually, I chose it over Openscad for one reason — it doesn’t crash that often) Otherwise it’s a bit less flexible — e.g. it’s harder to do value constraints (e.g get dimensions from a spreadsheet); and it isn’t compatible with scripting yet; you can’t just point-click-chamfer your parts; you need to do metric holes and indents for bolt heads manually; etc, etc But what is available works almost without any problems (except for 3D constraints and occasional problems with difference operations on curved surfaces) — and is soo fun to use.
- psyc 4y agoAs someone with simple 2D drafting needs, who wanted a reason to throw QCAD out a 10th story window, thank you OP.
- deleted 4y ago[deleted]
- fimdomeio 4y agoA while ago I found CAD Sketcher https://www.cadsketcher.com/ https://www.cadsketcher.com/ which integrates SolveSpace constrain solver in Blender which while might still not be a fully useful working tool is pretty interesting to play with. While sketchup make 2017 is still my go to for anything architectural or furniture and Freecad for anything 3d print, Blender is always the app I whish I was using all the time, even knowing fully well is not the right tool for anything cad.
- _carbyau_ 4y agoI am similar. I started using Blender for 3D printing models and while it is awkward - it works. And it has the potential to do so much other really cool stuff. I came across the cadsketcher via Maker Tales and can recommend his youtube channel for anyone new to Blender just trying to make it work for CAD.
- dapids 4y agoI was hoping this was a modelling software with solvers for electro/thermo/aero dynamics, etc. What is this solving?
- boppo1 4y agoWhat does this do that I can't do in Blender?
- phkahler 4y ago>> What does this do that I can't do in Blender? Make detailed dimensioned drawings and 3D models suitable for sending to a machine shop to get real parts made. Also export STEP files for other CAD/CAM applications.
- WillAdams 4y agoThere's an effort to make this available in Blender: https://www.cadsketcher.com/ https://www.cadsketcher.com/
- hello_marmalade 4y agoOne issue is that they won’t add fillets and chamfers.
- phkahler 4y agoIt's on the radar. As has been discussed many times, a general edge modifier tool is a long way out for technical reasons. I was working on adding Chamfer/Fillet/ and Draft Angle to straight extrusions which will cover many use cases. But even that needs a bunch more work. Old comment: https://github.com/solvespace/solvespace/issues/453#issuecomment-521376948 https://github.com/solvespace/solvespace/issues/453#issuecom...
- avhon1 4y agoI don't think that's an accurate way of saying it, and that a better way is that "Solvespace doesn't have tools to generate fillets and chamfers. The developers have shown some limited examples, but adding full-featured tools would be very difficult." https://github.com/solvespace/solvespace/issues/149 https://github.com/solvespace/solvespace/issues/149 https://github.com/solvespace/solvespace/issues/453 https://github.com/solvespace/solvespace/issues/453 https://github.com/solvespace/solvespace/issues/577 https://github.com/solvespace/solvespace/issues/577 edit: dang, got ninja'd by one of the devs in the cited threads!
- jessaustin 4y agoCould you provide a bit more detail about this? I haven't tried it, but I would expect that you could just define another surface with a such-and-such borders and such-and-such curvature?
- app4soft 4y agoJFYI, Here are my SolveSpace showcases (models & videos).[0] [0] https://git.io/DailySolveSpace https://git.io/DailySolveSpace
- deleted 4y ago[deleted]
- phkahler 4y agoI keep a short file of quotes about solvespace: Ramez: "I love what you've done. It's plain brilliant. Thank you." Peneloppe PPE: "Thanks for this CAD Jesus, I have tried most if not all reputable CAD softwares and none of them felt great to me ( or did not keep my files hostage )... I have not yet imagined something I could not make with SolveSpace, the latest being a print in place bearing with 50 microns tolerances :P" Azial: "Omg, this render performance increase on macOS! Its sooo fluid, thank you so much!" Dave: "Solvespace is slowly but surely becoming the Inkscape of the CAD world..." timestretch (HN): "SolveSpace's precision, constraints, and great keyboard user interface make it a fun program to design parts in. It is among the best open source tools out there." It is quite an honor to be maintaining this piece of software that I did not create in the first place. We've passed the 50 contributor mark recently but can definitely use more help, it's a complex code base with huge capability for its size.