Larry Ellison's Driveway (a.k.a. CS270 Project)


Tools Used in this Project

For exploring Voronoi diagrams, and generating the pretty pictures, matlab was invaluable. It allowed quick generation of control points, and quick feedback on the tessellations. Generation of the control points, removal of local patterns, the user interface to address problem spots, and all the graphics were written as matlab scripts.

Unfortunately, matlab does not provide the Voronoi cells, only a bag of edges. Although one can generate the cells given the control points and the edges, it was easier to export the control points, and generate the cells using another program.

The program I used is called qhull, available from http://www.geom.umn.edu/locate/qhull

It uses the paraboloid projection algorithm and Quickhull to compute the Voronoi Diagram of a set of points. It can also be used to compute convex hulls, Delaunay triangulations, and works in arbitrary dimensions. It's overkill for this task, but I had used it before to compute convex hulls.

The programs to translate the output of qhull, compute the unique set of polygons, trim short edges, generate the map and polygon files, and convert to MiniCAD were all written from scratch in C++. Perl was also used to ease data translation.

All the code is available upon request.


Prev TOC Next

Adam Janin
janin@icsi.berkeley.edu