From: Ethan M. <merritt@u.washington.edu> - 2005-11-03 17:25:17
|
On Thursday 03 November 2005 06:51 am, Juergen Wieferink wrote: > I'm not a fan of the old "set > size" kludge, but I need something like this to work. Will there be > some "set canvas" or size specification in "set term" in the near > future. I don't know how to fix this so that everyone is happy. Different terminal types seem to have been written with an intrinsically different idea of what the drawable region is. As I said before, any consistent interpretation of "set size" that we adopt for future work will break compatibility with one or more terminal types, because they are not consistent with each other now. post.trm in particular seems to be internally inconsistent. On the one hand it accepts the "set size" command to rescale the actual vector coordinates that it produces, but on the other hand it does not change the values of term->xmax, term->ymax that it reports back to the core code. So it is impossible to do clipping correctly because the driver itself does not provide the necessary information. > Is there anything I can do to help? You could try the following minimal patch: --- gnuplot/src/term.c 2005-10-20 09:22:25.000000000 -0700 +++ gnuplot-cvs/src/term.c 2005-11-03 09:22:40.618537816 -0800 @@ -1157,7 +1158,8 @@ /* Clip arrows to canvas */ clip_save = clip_area; - clip_area = &canvas; + if (!(term->flags & TERM_CAN_CLIP)) + clip_area = &canvas; /* Calculate and draw arrow heads. * Draw no head for arrows with length = 0, or, to be more specific, That should fix your particular plot, but I'm not sure what all the ramifications are for other plots. -- Ethan A Merritt merritt@u.washington.edu Biomolecular Structure Center Mailstop 357742 University of Washington, Seattle, WA 98195 |