We present a technique for designing 3D-printed perforated lampshades that project continuous grayscale imagesonto the surrounding walls. Given the geometry of the lampshade and a target grayscale image, our method computes a distribution of tiny holes over the shell, such that the combined footprints of the light emanating through the holes form the target image on a nearby diffuse surface. Our objective is to approximate the continuous tones and the spatial detail of the target image, to the extent possible within the constraints of the fabrication process.
To ensure structural integrity, there are lower bounds on the thickness of the shell, the radii of the holes, and theminimal distances between adjacent holes. Thus, the holes are realized as thin tubes distributed over the lampshadesurface. The amount of light passing through a single tube may be controlled by the tube’s radius and by itsorientation (tilt angle). The core of our technique thus consists of determining a suitable configuration of thetubes: their distribution across the relevant portion of the lampshade, as well as the parameters (radius, tilt angle)of each tube. This is achieved by computing a capacity-constrained Voronoi tessellation over a suitably defined density function, and embedding a tube inside the maximal inscribed circle of each tessellation cell.