Number: 335
Title: Edge headURL and tailURL "inactive" when edges are drawn first
Submitter: Laurent Cocea
Date: Mon Aug 4 23:40:24 2003
Subsys: Output generation
Version: 1.10 (build 2003.07.31)
System: x86-Linux-RH 6.2
Severity: major
When edges are drawn first, with the -Goutputorder=edgesfirst option, edge head and tail URLs appear to be inactive. According to the online graphviz documentation, "For edges, the active areas are small circles where the edge contacts its head and tail nodes. These areas may overlap the related node, and the edge URL dominates." It appears that, with edges drawn first, edge URLs that overlap the related node no longer dominate and the active node URL area overlaps arrowhead areas.

The attached screenshot represents an area in neato output generated without the -Goutputorder=edgesfirst option; the result is, some edges are drawn over the nodes. Small circles (arrowheads of `odot' type) at edge/node junctions have links attached using edgeURL and tailURL parameters. When these circles are clicked, the corresponding URL is displayed in a pop-up window.

Upon invoking neato with the -Goutputorder=edgesfirst option, the small circles are visible but clicking them opens the related node URL rather the expected headURL/tailURL, as if the node URL dominates even in areas that are strictly outside the contour of the ellipse (node shape).

The files b335.pdf and b335a.pdf show the ouput, converted to PDF format, generated with and without, respectively, the -Goutputoption=edgesfirst option. Notice the difference when you click, or simply show URLs by moving the mouse over, any small circle ("arrowhead") adjacent to the VAV node in the two .pdf documents.

The VAV node example in b335.pdf is particularly relevant as only the small circle at the bottom of the VAV node shape displays the correct URL, likely because it's outside the rectangular area associated with the node URL. The other four small circles adjacent to the VAV node link to the node URL rather than to their associated head/tail URLs, which can be displayed in b335a.pdf.

The base URL of all nodes is while the base URL of all small circles (head/tail arrowheads) is
Input file:
Output file: b335.gif
IMO, when edges are drawn first with the -Goutputorder=edgesfirst option, edge arrowheads and associated URL areas should be drawn last (after the nodes are drawn). This may ensure that headURL and tailURL links "dominate" the related node URL.
Owner: *
Status: *