Automatic Tessellation Representation by Bertrand Fan

how to use it
Double-click to add vertices, and you can drag them to move them. To draw an edge, select the starting vertex and drag the line to the ending vertex. It is important to note that all the edges must be pointing upwards (a requirement to convert to a tessellation representation), and the program will malfunction if they're not. The next step is to add faces. To add a face, click on the "Add Face" button and then click on one of the vertexes that belongs to the face you're trying to make. Continue clicking on the vertexes in either a clockwise or counterclockwise manner until you have reached back to the original vertex you started with, and by clicking that, a face will be formed. The program will not let you click on vertices that are not connected to each other while you are adding a face. Click the "Add Face" button again to add another face, until you have created all the faces of the graph. Again, if all the faces are not added, the program will malfunction. Finally, click on the Tessellation Representation button and the Tessellation Representation will appear in a separate window. It may appear as if your inputted graph will lose it faces, simply click back on the applet window and it will redraw them.

source code (zipped)

tessrep.html
DirectedEdge.java
DirectedGraph.java
DirectedGraphCanvas.java
DirectedGraphEditorApplet.java DirectedVertex.java
DiscButtonPanel.java
Face.java
FirstWindow.java
List.java
Position.java
Selectable.java

program files (zipped)

tessrep.html
DirectedEdge.class
DirectedGraph.class
DirectedGraphCanvas.class
DirectedGraphEditorApplet.class
DirectedVertex.class
DiscButtonPanel.class
Face.class
FirstWindow.class
List.class
Position.class
Selectable.class