[Updates on the project here]
I wrote a little script to 3D print your own glasses. You don’t need much modeling skills. Just load up the script in Blender and load up your SVG (scalable vector graphics, like JPG except vector format). It’s going to do the 2D to 3D conversion for you (complete with nose pads) in just a few clicks!
You can play around with all sorts of designs!
*The algorithm has been updated based on actual glasses specs. I’ll write about that later. Below is the original algorithm.
I started with the black SVG you see above (made by Seth Taylor).
Since I don’t have any specs, I estimated (based off of my own glasses) that the bridge is about 16% of the entire length of the frame and protrudes out a little bit.
The nosepad area I estimated to be 16% around the bridge, and the midpoint between the bottom of the bridge to the bottom of the frame would be where the bump of the nosepad was.
The entire frame also has a slight blend.
I think it came out pretty well!
I would probably lessen the bend in the bridge and increase the protrusion of the nosepads.
Download the script from my Github and download Blender. I’m using version 2.70 but any future version should work fine.
If you’re already familiar with Blender, then just load up the script, select your imported SVG, and run!
If you’re not, here are more detailed steps.
When you open up Blender, hit Scripting to open up the scripting windows.
Press X on the cube to delete it.
Press Open to open up the downloaded script.
Load your glasses SVG.
Your SVG might be very small so you’ll have to zoom in a lot to see it (scroll up to zoom).
With the SVG selected, hit Run.
Viola! Export your glasses as an STL to print.
The 3D glasses might not be the right size, so you might have to scale it. Also, this script might not work great for thick frames, or really weirdly shaped frames, since I assume symmetry and based the parameters around the thin frame above.
There’s some small tweaks I still gotta do.
Try it out! Let me know.
If you’re code savy, feel free to make pull requests. The project is free/open source under GPLv3+.