|
From: Harald H. <h.h...@tu...> - 2003-10-17 09:23:39
|
This is a continuation of the thread "arrowheads too long in PostScript terminal" in comp.graphics.apps.gnuplot. > "Hans-Bernhard Broeker" <br...@ph...> wrote in message > news:bmgki7$6mg$1...@ne...... >> set style arrow ... >> Note the <length>, <angle> and <backangle> parameters. If possible, >> re-positioning of mitered arrow heads should be done globally for all >> terminals (needing some internal changes to let the core even know >> whether a given terminal driver is using mitered, rounded or >> miter-limited join style). If that can't be done, we'ld at least need >> a mostly native PostScript re-implementation of the default C function >> do_arrow() from term.c that takes into account all the parameters. > >For terminals that support filling, like PostScript, there is I guess an >easy solution: draw *all* arrow heads as filled outlines. Looking at >the EPS output for filled arrowheads, it is pretty clear that this code >*already exists and is used* (slightly offset however). After the the >filled area is generated however, additional lines are stroked along >the path describing the arrowhead, thus leading to the same problem >(that the mitred end runs past the endpoint) as in the unfilled arrows. > >Eliminate the offset (mentioned above) and get rid of the stroked path, >then filled arrowheads at least would stop at the right place. >This seems like an easy, quick fix requiring essentially no new code, >and at least the filled arrows would then behave right. >On these terminals the nofilled and empty arrowhead could *also* be >drawn as filled outlines, which might be easier than offsetting the >mitre. At least using the Postscript Terminal with rounded line joints, I really would prefer to preserve the stroked path around the arrow heads even when they are filled. If you eliminate the stroked path the corners of the arrow heads would be sharp what does not fit to the round line joints and line ends. I just think of a plot generated with the "round" option to be painted using a round pen as done in engineering drawings. To fit the DIN norm for drawing arrow heads (filled, 15=B0, length 5 times line width), I have programmed the filled arrow heads. And these should preserve round corners, I think. Fur butt line joints, we could think about eliminating the stroked path. But this leads to a problem of different size of arrow heads for butt and rounded line ends. Yours Harald --=20 Harald Harders Langer Kamp 8 Institut f=FCr Werkstoffe D-38106 Braunschweig Technische Universit=E4t Braunschweig Germany E-Mail: h.h...@tu... Tel: +49 (5 31) 3 91-3062 WWW : http://www.tu-bs.de/institute/ifw/ Fax: +49 (5 31) 3 91-3058 |