From: Magnus L. H. <ma...@he...> - 2004-01-09 22:20:59
|
1. Why do arrow points jut out beyond the end-point of the line? I know the reason is probably simply the linejoin behavior, but is there a motivation? If not, could the arrowheads be rewritten to avoid this? (For example, they could be rewritten using only fill, and not stroke, which would also fix the next issue...) 2. Why are the contours of arrowheads dashed when the line is dashed? I can't think of any situations where this would be useful. 3. Why must deco.earrow.normal be instantiated to be used, while (e.g.) color.rgb.red must not? (A glitch in CVS? Or am I missing something?) - Magnus, a happy PyX user :) -- Magnus Lie Hetland "The mind is not a vessel to be filled, http://hetland.org but a fire to be lighted." [Plutarch] |
From: Joerg L. <jo...@us...> - 2004-01-10 18:17:29
|
Hi Magnus, On 09.01.04, Magnus Lie Hetland wrote: > 1. Why do arrow points jut out beyond the end-point of the line? I > know the reason is probably simply the linejoin behavior, but is > there a motivation? If not, could the arrowheads be rewritten to > avoid this? (For example, they could be rewritten using only fill, > and not stroke, which would also fix the next issue...) Maybe, you're right. But then we would lose the ability to have rounded arrow heads. On the other hand, we could reimplement this feature by constructing a suitable arrow head path. Another nice feature, namely the ability to draw arrows in two colors, however, cannot be reimplemented in this way. > 2. Why are the contours of arrowheads dashed when the line is dashed? > I can't think of any situations where this would be useful. Indeed, this is not a very useful feature, but see my points above. > 3. Why must deco.earrow.normal be instantiated to be used, while > (e.g.) color.rgb.red must not? (A glitch in CVS? Or am I missing > something?) This important point is really worth a separate mail, which I will send tomorrow. > - Magnus, a happy PyX user :) That's always nice to hear! Jörg |
From: Magnus L. H. <ma...@he...> - 2004-01-10 18:52:54
|
Joerg Lehmann <jo...@us...>: > > Hi Magnus, >=20 > On 09.01.04, Magnus Lie Hetland wrote: > > 1. Why do arrow points jut out beyond the end-point of the line? I > > know the reason is probably simply the linejoin behavior, but is > > there a motivation? If not, could the arrowheads be rewritten to > > avoid this? (For example, they could be rewritten using only fill, > > and not stroke, which would also fix the next issue...) >=20 > Maybe, you're right. But then we would lose the ability to have rounded= arrow > heads. On the other hand, we could reimplement this feature by construc= ting a > suitable arrow head path. Another nice feature, namely the ability to d= raw > arrows in two colors, however, cannot be reimplemented in this way. Indeed. An alternative is simply to move them back along the arrow so that the tip of the arrow is at the end-point. Another possibility is, I suppose, to allow this as an option -- for example setting the line style of the arrowhead separately, and setting it to None to avoid drawing it (or setting its width to zero or something). > > 2. Why are the contours of arrowheads dashed when the line is dashed? > > I can't think of any situations where this would be useful. >=20 > Indeed, this is not a very useful feature, but see my points above. Yes, but it isn't simply not (IMO) useful -- it is (IMO) inconvenient. It means that I cannot have dashed arrows without having very strange-looking arrowheads. Again, it would seem useful to be able to specify the styles of the arrowhead separately from the rest of the arrow. > > 3. Why must deco.earrow.normal be instantiated to be used, while > > (e.g.) color.rgb.red must not? (A glitch in CVS? Or am I missing > > something?) >=20 > This important point is really worth a separate mail, which I will > send tomorrow. Ah. OK. Looking forward to it. > > - Magnus, a happy PyX user :) >=20 > That's always nice to hear! :) Being able to write this sort of thing in Python is such a relief. I'm getting sort of used to MetaPost, but it is, of course, nowhere near as convenient (for a Python user, anyway). > J=F6rg --=20 Magnus Lie Hetland "The mind is not a vessel to be filled, http://hetland.org but a fire to be lighted." [Plutarch] |