Hacker News new | ask | show | jobs
by mlmonkey 149 days ago
In theory, one should be able to use OpenSCAD to come up with fancy surfaces to 3-D print, right?

I'm just dipping my toes in 3D printing, with a recent acquisition of a Bambu P2S

8 comments

I used OpenSCAD to create a map of Manhattan. It shows the live location of subway trains. It was surprisingly easy, I struggled a lot with OnShape and Fusion360 trying to do this because there were too many polygons.

I found that starting with an SVG and extruding from there is perfect in OpenSCAD, but I’m sure I’m underutilizing it a lot.

I wrote a bit about it here if you’re curious https://hackaday.io/project/202488-manhattan-subway-map/deta...

Cool project, but just how many polygons are you talking about? Also, my guess is you did meshes, instead of breps- they are far more efficient in my experience.

The largest mesh I worked with in Fusion 360 is a digital elevation map of California, it has 2.8M vertices and 5.6M faces and it's still possible to get things done (like making a CAM to carve a 2 foot x 2 foot map with reasonable details).

I haven't used OpenSCAD much beyond combining primitives. Truthfully these organic shapes are more of a use-case for 3D modelling software like Blender rather than CAD, but I'd be keen to hear if you end up giving OpenSCAD a go.

My Bambu A1 mini has been reliable despite the challenging geometry; pretty sure your P2S will work just as well if not better. Good luck!

I was in your shoes about a year ago with an A1 mini, getting into OpenSCAD to make my own keycaps.

If you're getting into OpenSCAD I'd highly recommend getting Belfry ASAP.

https://github.com/BelfrySCAD/BOSL2/wiki

I wouldn't really consider using OpenSCAD without it

I was able to take the image of the star-shaped graph from OP, fed it to claude and used this for the prompt: "figure out a good formula or equation for this graph and use it to create the lampshade in openscad. use the graph as the bottom for a lampshade, and taper it all up to center point. leave a hole at the top big enough for a lightbulb fixture to pass through." It did a surprisingly good job of generating the OpenSCAD, STL, and preview renders in-browsers.
> In theory, one should be able to use OpenSCAD to come up with fancy surfaces to 3-D print, right?

Yes, but it is painfully slow. Even perforated patterns are quite slow to generate.

Aside from Fusion360, is there a Free (or FOSS) cad package that uses breps and is scriptable?

Fusion360 is just stupid fast at perforations and sophisticated modeling constructions via its python API. I use it because it works well, but I'd be happier if I didn't have to maintain that Autodesk dependency...

freeCAD is brep based and scriptable.
FreeCAD via AstoCAD (https://www.astocad.com/ - 4€/month) is quite more user friendly too, compared to the vanilla experience, for those who want to do CAD sometimes and forget things between uses. It's made by FreeCAD contributors who push things upstream too.
Eh. Since the 1.0 release of freeCAD, the UI has been greatly improved. Also subscription services are inherently a turn off.
I see it as a donation to developer who work on FreeCAD, not a "subscription service", just a different way of funding FOSS.

I'd agree that FreeCAD's UI isn't horrible, but it is a lot to take in at a first glance, and for people who don't use it frequently. If I was using it daily, I'd probably prefer FreeCAD as-is too, better feature density and everything at a glance.

OpenSCAD nightly using the Manifold engine is a lot faster than the CGAL crap the stable version ships with
I am learning build123 and skipping OpenSCAD altogether
just build it from source, its like night and day! thanks for the tip
Yes. Claude is surprisingly capable in this area, maybe because the shapes are so simple. Using a slicer in vase mode should make it print quickly too.
Yeah OpenSCAD would have made this a lot easier than the exported-SVG-DXF pipeline
For this case, I'm not exaggerating when I say you would probably have an easier time generating the meshes yourself in python and something like the trimesh library to load the vertices into.