Need help?
<- Back

Comments (53)

  • gcr
    Here's an example!I recently used their sister library (build123d, same devs) to build a rotary slide rule bracelet for multiplying three-digit numbers. It was a great experience and wouldn't generally be easy to do with Fusion 360. My bracelet gets quite a lot of comments when I wear it in public. :-)Here's an IPython notebook with lots of pictures so you can see how the different operations come together: https://github.com/gcr/sliderule-bracelet/blob/main/version-...build123d is quite different stylistically from cadquery, but this should give you the flavor of programming-oriented CAD at least.
  • willrshansen
    Big fan overall. Designed a tension sensitive winch with this a few years back.Doing CAD with code seems like obviously the right move to me. The ability to just write new functions in python and do version control with git are super powerful.The big thing that struck me as innovative with CadQuery is the design intent query part. Selecting model geometry by relation to other geometry is way more resilient to changes ealier in the model's history than the regular "that point right there" you get with just clicking a point.That the developers acknowledge that seeing the model at various steps in the script is important, and so have the CQ-editor, is also a point in their favour.I do have a gripe though:Having to keep all the geometry selection stuff relating to the model in my head is hard. I want gui tools that write code.Like if I have a complex model, and variables assigned to various parts of the geometry. I want to be able to see that geometry highlighted and labeled, so I know what's easily selectable, and I want to be able to click buttons based on my design intent and get immediate visual feedback, and have each of those button presses added as code as I do them.Look at this example model: https://cadquery.readthedocs.io/en/latest/examples.html#a-pa...This bit that selects some points? # compute centers for screw holes topOfLidCenters = ( cutlip .faces(">Z") .workplane(centerOption="CenterOfMass") .rect(POSTWIDTH, POSTLENGTH, forConstruction=True) .vertices() ) Each of those lines should be a gui tool interaction that generates that line of code.
  • hgoel
    CadQuery and build123d have been very handy for prototyping stuff for 3d printing. AI still isn't quite good enough to generate correct scripts, but AI autocomplete at least helps with putting together small snippets.My last project involved making a cosplay helmet. I modeled the shell in blender, it was a low poly design, so I exported it to an OBJ, then put together some Python to load the OBJ, give the triangles some configurable thickness etc. Then I used it to explore how to print the helmet in such a way that the outer surface would be too clean to tell it's FDM printed, without needing to do any sanding.Initially I explored having cadquery put a number on the back of each triangle and I'd assemble it like a puzzle, but that didn't work out. Eventually I figured out how to cut it up into parts that would also eliminate the need for painting and outer surfaces would be clean, and because it was in code, changing which part a triangle belonged to was a matter of moving the corresponding index into another list.I probably could've managed it all in blender too, but being much more comfortable with code, it was easier for me to play with normals and manually turning each piece into a solid.I also go for it for functional designs because, again, tweaking code is more comfortable to me than dealing with constraints and sketches and multiple planes in, say, FreeCAD.
  • maouida
    CadQuery was an inspiration when I built FluidCAD. I wanted the workflow to be as close to traditional CAD as possible with more interactive UI.https://fluidcad.io
  • WillAdams
    It was a lot more interesting to me back when it first launched and it was a FreeCAD workbench.Previous discussions:https://news.ycombinator.com/item?id=24520014 (6 years, 49 comments)https://news.ycombinator.com/item?id=30232344 (4 years, 43 comments)https://news.ycombinator.com/item?id=30219940 (on Hackaday, 4 years, 28 comments)https://news.ycombinator.com/item?id=17038257 (8 years, 16 comments)https://news.ycombinator.com/item?id=28083578 (a Show HN from 5 years ago w/ 1 comment)There are a lot of tools in this space, esp. these days when "Vibe Coding" allows folks to knock one out w/ a prompt. Most folks jus use OpenSCAD which with its large user base and weaknesses which are (mostly) not exposed by 3D printing is great, so long as what one wants to model is easily described using mathematics/programming techniques which are familiar to the user.I'd really like to see an interactive opensource project follow OnShape's lead where a scripting language (for OS, FeatureScript) is used as a wrapper around the geometry kernel, then the graphical UI creates the model using that language, and one can always inspect the resultant code. It seems to me that this <i>should</i> be workable given the observation:https://news.ycombinator.com/item?id=31471109>Parametric CAD, in my view, is a perfect example of "visual programming", <BR> >you have variables, iteration/patterning reducing repetition, composability <BR> >of objects/sketches again reducing repetition, modularity of design though a<BR> >hierarchy of assemblies. The alignment between programming principles and <BR> >CAD modelling principles, while not immediately obvious, are very much <BR> >there. An elegantly designed CAD model is just as beautiful (in its construction) <BR> >as elegantly written code.but these days, I'm mostly using Open(Python)SCAD (which is in the process of getting merged in to the main project).
  • ozmaverick72
    Interesting. I have played with OpenScad a bit. This looks similar - i guess the difference is the syntax is python - any other major differences
  • ifloop
    I have written a lot of openSCAD code, I learned about BOSL(2) and wrote even more, I tried getting into build123d (and failed, as running openSCAD/BOSL2 is way too comfortable to leave it)... the only downside is that AI fails horribly with those libs and frameworks.I think I heard of cadquery before and decided against it, in favor of build123d.
  • edg5000
    Using a coding CLI I was able to create a computed shape would otherwise by incredibly challenging to make (impossible in parametric CAD GUIs at least) LLMs + CadQuery is a powerful combo, this will be more and more common I think. It's just too powerful to ignore.
  • jetter
    If you like this, you should definitely check modelrift.com which allows to build awesome cad models thanks to OpenSCAD and smart AI assistant.Community built examples: https://modelrift.com/models
  • girishso
    Came across a similar tool replicad. https://replicad.xyz/Anyone has used it?
  • atoav
    I used cadquery to programmatically generate 3D models for an electronics library for a 1000 or so parts that only differ slightly in their measurements. It literally saved me days of manual work.
  • ponyous
    Another library I have to integrate and benchmark against OpenSCAD for my AI SaaS[0]. I am really curious how constructive solid geometry compares to sketching and extruding that CadQuery is build on.Anyone curious in the writeup? I have a pretty good harness for evaluating 3d generation performance.[0]: https://grandpacad.com
  • lutusp
    I create CAD instructional videos based on SolveSpace, and I sometimes try to get people interested in CADQuery as well, but many people interested in CAD will learn SolveSpace or another similar design program, but don't have the programming background for CADQuery. Too bad -- in many ways, for many projects, CADQuery gives better results, especially if a single design needs to be recreated in a range of sizes.
  • ncrmro
    How does this compare to anchorcad?
  • ReptileMan
    PSA - Codex is really good at creating step files for simpl-ish objects with it.
  • ginko
    Guess this is a good opportunity to plug the DIY trackball I made using build123d:https://github.com/ginkgo/trackball/
  • colechristensen
    Neat!I'm working on a CAD kernel in Rust with a frontend either as a Blender plugin or a Blender fork (leaning towards fork at this point) It's not at all ready but I have reached first part status (before going back and rewriting a large chunk of the kernel)
  • fxff
    At the time of writing this there are 24 comments, of which 4 promote alternatives. I feel that recently the number of shameless plugs and check-out-my-SaaS's surged drasticallyhttps://news.ycombinator.com/item?id=47803846 https://news.ycombinator.com/item?id=47803475 https://news.ycombinator.com/item?id=47802988 https://news.ycombinator.com/item?id=47803416
  • jiusanzhou
    [dead]
  • kevinten10
    [dead]