Download the General Embedding Tool

This tool needs Java 1.6 or greater download Java here

**Please note: **This
tool is experimental. It is subject to unexpected crashes and input
validation is not really performed.

The software is based on the research
in this paper:

**General Euler Diagram Generation.
Peter Rodgers, Leishi Zhang, and Andrew Fish.
In Proceeding Diagrams 2008, LNCS (LNAI) 5223, pages 13-27. Springer,
September 2008.**

Follow this for the full text in .pdf format.

**Quickest:**Press “F1”, then enter the required abstract description and press "OK" form a superdual, press “F2” to get a plane dual graph from the superdual. Press “c” to show the diagram.**Still Quick:**Pressing “F1” to “F5” in sequence, followed by “o” will produce a better laid out diagram than the previous bullet.

If you have a connected plane dual graph on the display, with an empty vertex in the outer face and no duplicate vertex labels, then the following functions will work:

- “
**View”→“Toggle Show Triangulation” (also “t” key) s**hows/hides the graph triangulation - “
**View”→“Toggle Show Contours” (also “c” key) s**hows/hides the Euler diagram - “
**View”→“Toggle Show Optimization” (also “o” key) s**hows/hides the Euler diagram with optimized curves - “
**View”→“Toggle Show Graph” (also “g” key) s**hows/hides the dual graph

- “
**Euler Diagram”→“Find Superdual from Abstract Description” (also “F1” key)**brings up a dialog which allows an abstract description to be entered. This must not include duplicate zones, and must include the empty set “0”. Zones may be placed in any order. The generated superdual is placed in the window with a random layout when “OK” is pressed. A valid random abstract description appears in the text box when the “Random Diagram” button is pressed. - “
**Euler Diagram”→“Find Plane Dual from Superdual” (also “F2” key)**forms a plane graph from the superdual, removing edges if required. Note due to a bug, some extra edges may also be removed with this command. - “
**Euler Diagram”→“Connect Disconnected Components” (also “F3” key)**attempts to add edges to reduce duplicate curve labels in the resultant diagram. - “
**Euler Diagram”→“Correct Unnecessary Brushing Points” (also “F4” key)**adds in edges (sometimes chains of edges to route through complex faces), when required, to reduce concurrency in the resultant diagram. - “
**Euler Diagram”→“Apply Spring Embedder to Triangulated Dual” (also “F5” key)**attempts to layout the dual to improve the routing of curves around the faces of the graph.

It is possible to create any required dual, and manually lay it out using these editing functions.

Note that the graph must:

- be plane (no edge crossings)
- have the empty vertex on the outside face

These things may cause problems:

- duplicate vertex labels
- having a disconnected graph

The menu options under the “Euler Diagram” menu, or keys "F1"-"F5" give the basic operations required to create an effective dual for embedding an Euler diagram

**Adding vertices:**double left click on the background.**Moving vertices:**drag the vertex with the left mouse button.**Adding edges:**right mouse press over start edge and drag mouse to target vertex.**Editing items:**double left click on item. This brings up an editing dialog with suitable fields.**Selecting vertices and edges:**either one at a time with a left mouse click over the item, or a group with a left mouse drag to form a selection rectangle. Additional items can be added to the selection by pressing “Ctrl” whilst left mouse clicking items.**Deleting items:**select required items and then press the “Delete” key.**Add Edge Bend:**add an edge bend in the nearest straight edge segment to the target by selecting the edge and choosing “Edit” → “Add Edge Bend”.**Remove Edge Bends.**Select an edge and choose “Edit” → “Add Edge Bend”. This removes all the edge bends in the graph**Types.**There are various functions for controlling the appearance of “types” of vertices and edges. Items with the same type share the same appearance. Commands to manipulate types are in the “Edit” menu.**Editing Groups of vertices and edges**a number of items can be edited at the same time in the “Edit” menu.**Undo.**Not implemented.