3D-Printed Mathematical Lampshades

Posted by hessammehr 4 days ago

Counter43Comment18OpenOriginal

Comments

Comment by givc 3 hours ago

This is awesome. I’ve also been playing with OnShape to make lamps and it’s been quite challenging. I also tried Blender but the learning curve is just too steep for me. I like this idea of using Python. I might try OpenSCAD too like someone else suggested.

Here’s my lamp if you’re curious, printed with a .8 mm nozzle, otherwise it would fail https://imgur.com/a/mRqw1pI

Comment by geokon 1 hour ago

heres an example of OpenSCAD in Clojure

https://www.juxt.pro/blog/designing-3d-printable-objects-wit...

Looks quite fun

Comment by alhirzel 2 hours ago

Comment by Aurornis 4 hours ago

Cool project. The author used PLA, but for anything near a heat source PETG or ASA would be a better choice. PLA will soften and deform at only mildly elevated temperatures. An LED light strip will generate enough heat to cause normal PLA to warp and droop over time.

Comment by JKCalhoun 3 hours ago

Was going to comment similar. Definitely don't want to use these lamp shades with incandescent bulbs (too hot).

As per drooping over time, perhaps for some of these models the "Persistence of Memory" might apply a nice transform to the shapes.

Comment by hessammehr 2 hours ago

Good to know about the risk of deformation due to heat from the LED strip. Ours hasn’t visibly warped over the past few months of use, fingers crossed it will last a little while

Comment by mlmonkey 4 hours 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

Comment by dheera 40 seconds ago

Yeah OpenSCAD would have made this a lot easier than the exported-SVG-DXF pipeline

Comment by givc 2 hours ago

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...

Comment by dole 2 hours ago

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.

Comment by hessammehr 4 hours ago

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!

Comment by horacemorace 47 minutes ago

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.

Comment by nomel 57 minutes ago

For this case, I'm not exaggerating when I say you would probably have a much easier time generating the meshes yourself in python.

Comment by Zarathruster 3 hours ago

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

Comment by aforwardslash 2 hours ago

> 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.

Comment by MengerSponge 2 hours ago

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...

Comment by dekhn 1 hour ago

freeCAD is brep based and scriptable.

Comment by hessammehr 4 hours ago

Just noticed that this has made it to the front page, so just had a quick look through to see if there are any broken links, etc. (as I have a habit of forgetting them) and added the missing OnShape link to the LED strip diffuser.

Also recommend checking out the live Marimo notebook linked down at the bottom. Incredible what you can do with Pyodide + Marimo these days. I only wish there was a webassembly version of jax to make it easier to share random numpyro experiments.