Graphviz Issue Tracker
Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001265graphvizDotpublic2008-02-28 11:162011-04-28 04:03
ReporterPander 
Assigned Toellson 
PrioritynormalSeverityminorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOS*-*-OS Version
Summary0001265: Sized up arrowszie and penwidth do not connect nicely for arrowhead vee
Description



Sized up arrowszie and penwidth do not connect nicely for arrowhead vee.



This is for at least PNG, PDF and SVG output.



As can be seen in the example the line and the base of the vee arrow have different widths.



Fix this to ensure consistent sizing of lines and arrow at the point they connect.
Steps To Reproduce

digraph "test" {
    edge [penwidth=3 arrowsize=3 ]
    a -> b
    b -> c [arrowhead=vee ]
}
Additional Information

[ellson] Grumble mumble

[pander] Yeah, not a really niec one. Also when this arrow type is beign used
under an angle there is a gap appearing between the line and the arrow.
This does not happen for the normal arrow type. The gap increases as the
 angle increases.

I don't know if this is related to this bug report or is an other bug
report. Please advice on this. And when applicable add this comment to
the existing bug report.

[ellson] Can you provide a separate bug report and test case for this please. I think its (mostly) unrelated. Also I suspect it might show with other shapes? Like the box shape?

[north] The whole edge spline and arrowhead scaling issue is not
that simple. The code is written to deal with points and lines
with no thickness. We can get away with a little bit of scaling
up but at some point you need to deal with the fact that the
edge and the arrow should be represented by polygons etc.
Then there's the issue of proportion scaling - does it look good
if all parts of the edge and arrowhead scale up uniformly?
Then you have the issue that as you scale up the arrowhead
it might need more space in the layout but we kind of assume
they are infinitely small and just overdraw other things.
It is a pretty hard problem to get right in general, and there
isn't that much payoff. I agree our approach is rather simplistic.

[pander] Perhaps for the SVG output, a mapping can be made to SVG Markers. See
SVG start and end markers like Arrow1Lstart etc.

New feature for graphviz... Mid Markers ;)

[pander] > > Not sure what these are? Reference please?

http://www.w3.org/TR/SVG11/painting.html#MarkerElement [^]
http://apike.ca/prog_svg_patterns.html [^]

You can get some hands on experience with Inkscape, draw a line with F6,
then CTRL-F for 'Fill and stroke' menu, in tab 'Stroke style' you will
find the Start, End and Mid Markers selection.

Using these in the SVG output will result in simpler code and better
result where the arrows are connected to the edges.

TagsNo tags attached.
AUXILLARY-FILES
DATE-FIXED
FIX-COMMENT
FORMER-ID1297
INPUT-FILE
OUTPUT-FILE
STATUS-COMMENTFixed (29 Feb 2008)
VERSION     2.17 cvs
Attached Files

- Relationships

-  Notes
There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
2011-04-28 04:03 user1 New Issue
2011-04-28 04:03 user1 Assigned To => user695


MantisBT 1.2.5[^]
Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker