Voronoi Lamps

From i3Detroit
Jump to: navigation, search

Finished Spiral Ellipse Lamp


The source code for this project is entirely from MIT Media Lab High-Low Tech.

Those links are the best place to learn the entire process, but here is the basic idea of the design:

A Voronoi Diagram is a set of celis generated from a set of generating points, where each point in a cell is closer to its generating point than any other point. It's kind of just a mathematically rigorous way of dividing a space as evenly as possible.

If you generate a cool pattern of points, the resulting diagram will be Pretty. Here is the scripting portion of the Spiral Ellipse code.

  int centerLimit = 250; // variable to control the maximum diameter of the spiral
  float rad = 10; //like the radius of your circle, but increases with every point in your spiral, producing the spiral effect.
  float theta=0; // the angle of the current point of the spiral incremented on each iteration of the loop
  float a = 1; // x radius multiplier
  float b = 2.5 ;// y radius multipllier
  //this will draw one spiral 
  for(int i=0;i<centerLimit;i+=1){     
       rad +=0.5; //change to alter the tightness of your spiral
       theta+=0.5;//change to alter the rate of angle change in your spiral
       float x = a*rad*cos(theta);
       float y = b*rad*sin(theta);

       pointController.addCartPoint(width/2 + x, height/2 + y);// adds the point to your design

You can adjust the height and shape of the lamp in the UI for Codeable Objects, and also somewhat adjust the web from the points. Codeable Objects will output PDFs of the shades, the lamp frame pieces, and the web. You will almost certainly need to clean up the PDFs in illustrator or inkscape, just like anything else going to the laser cutter.
Wireframe rendered in Codeable Objects UI Voronoi generating points and web pattern in Codeable Objects UI


Spiral Ellipse web as-cut, first attempt (note the burnout in the center)
LED strip used for lighting. Top is a circle large enough to rest on top of lamp frame, and bottom has a notch for the cord

This section is under construction as i didn't think anything i was doing was going to work at the time, and so didn't document it well. I'll add pictures and details once I make another lamp that takes less than 3 months

  1. Laser-cut all the things! I will post the LaserCut parameters for materials that I used to cut on Bumblebee later.
    • Shades: 3 12"x12" sheets of vellum
    • Web: 1 24"x 36" sheet of Bristol board from Michaels (watercolor section)
    • Frame: 1/4" MDF from the laser cutter scrap drawer. I tried plywood but the warpage made the frame not fit together properly. Note: I had to change the notch thickness/width in illustrator after changing material. I'm not sure about the parameters given in the UI and will double check them in the next run. I cut a lot of test notches to get the fit right with the laser kerf.
  2. Attach the web and the shades using spray glue on the web. More pictures in the next run now that i know I wasn't making a huge mistake
  3. Assemble the lamp frame with wood glue
  4. For the light source, I used a strip of LEDs wrapped around a dowel because I like really uniform light sources.
  5. Gluing the shades to the frame is tricky. I'm trying to improve the overall construction next run because it basically made no physical sense and was probably most of the reason why I procrastinated the assembly of the lamp for a couple months.