Show HN: LuaCAD – Parametric CAD Scripted in Lua

(luacad.ad-si.com)

47 points | by adius 4 hours ago ago

10 comments

  • fhn 27 minutes ago

    Does this have a web-based playground? I find https://www.pythonscad.org/playground/ to be nice to try out the project.

    • adius 11 minutes ago

      Agreed! I’m already working on it, but it’s not quite ready yet. ETA is 1-2 weeks.

  • tolugenius 2 hours ago

    Really interesting! I actually use freecad so I'm use to that layer of the process but I'll check this out. Also good to see the work being done in modeling software these days

  • manny_rat 2 hours ago

    Love it! OpenSCAD has very painful syntax. Is it possible to easily do bevels/chamfers or does it have the same limitations as OpenSCAD there?

    • adius 2 hours ago

      Thanks! It natively supports all BOSL2 functions which include a chamfer argument (https://github.com/revarbat/BOSL/wiki#common-arguments). So that makes it quite straightforward to add chamfers to everything!

      • kragen 3 minutes ago

        Can you fillet unions? Like, if I union a cube with a smaller cube sticking out of its side, can I make a fillet so that the edge where the two cubes' faces intersect doesn't become a stress concentration point for cracks to start at? This is OpenSCAD's primary weakness from my point of view.

      • addaon 2 hours ago

        Which is what separates us from the animals.

  • WillAdams 2 hours ago

    Is it able to access the file system and write/read files?

    I've been doing that via PythonSCAD for my current project https://github.com/WillAdams/gcodepreview and it might be interesting to do a re-write in another language.

    • adius 2 hours ago

      Yes, it executes in a full fledged Lua environment. So you can do all the things you expect do be able to do with Lua!

      I’d pick Lua over Python any day, but maybe that’s just me. ;-)

      • WillAdams 29 minutes ago

        I've had good success w/ using Lua in LuaLaTeX, so hopefully a good fit for me to exercise my programming chops. I think it will be interesting to maintain two parallel versions for comparison/contrast. Thanks!