[HN Gopher] 3D-Printed Mathematical Lampshades
       ___________________________________________________________________
        
       3D-Printed Mathematical Lampshades
        
       Author : hessammehr
       Score  : 43 points
       Date   : 2026-01-24 15:17 UTC (4 days ago)
        
 (HTM) web link (hessammehr.github.io)
 (TXT) w3m dump (hessammehr.github.io)
        
       | mlmonkey wrote:
       | 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
        
         | hessammehr wrote:
         | 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!
        
         | Zarathruster wrote:
         | 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
        
         | aforwardslash wrote:
         | > 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.
        
           | MengerSponge wrote:
           | 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...
        
             | dekhn wrote:
             | freeCAD is brep based and scriptable.
        
         | givc wrote:
         | 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...
        
         | dole wrote:
         | 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.
        
         | nomel wrote:
         | For this case, I'm not exaggerating when I say you would
         | probably have a _much_ easier time generating the meshes
         | yourself in python.
        
         | horacemorace wrote:
         | 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.
        
       | hessammehr wrote:
       | 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.
        
       | Aurornis wrote:
       | 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.
        
         | JKCalhoun wrote:
         | 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.
        
         | hessammehr wrote:
         | 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
        
       | givc wrote:
       | 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
        
         | alhirzel wrote:
         | Try cadquery also!
         | 
         | https://github.com/CadQuery/cadquery
        
         | geokon wrote:
         | heres an example of OpenSCAD in Clojure
         | 
         | https://www.juxt.pro/blog/designing-3d-printable-objects-wit...
         | 
         | Looks quite fun
        
       ___________________________________________________________________
       (page generated 2026-01-28 23:01 UTC)