[NTG-context] MetaPost cutdraw
mickep at gmail.com
Wed Jul 6 23:04:00 CEST 2022
On Wed, Jul 6, 2022 at 11:29 AM Henning Hraban Ramm via ntg-context
<ntg-context at ntg.nl> wrote:
> Am 06.07.22 um 09:15 schrieb Hans Hagen via ntg-context:
> > On 7/6/2022 7:10 AM, Aditya Mahajan via ntg-context wrote:
> >> On Wed, 6 Jul 2022, Henning Hraban Ramm via ntg-context wrote:
> >>> Hi, I’m trying to understand MetaPost better.
> >>> I’d like to draw a fat line that’s cut at its end points.
> >> You mean like linecap = butt?
> Yes, but that doesn’t behave differently.
> > \startMPpage[offset=5mm]
> > path p;
> > p := origin -- (7cm,0);
> > interim linecap := squared;
> > draw p withpen ((pensquare ) scaled 5mm) withcolor red ;
> > draw envelope ((pensquare ) scaled 5mm) of p withcolor
> > green ;
> > draw envelope ((pensquare rotated eps) scaled 5mm) of p withcolor
> > blue ;
> > \stopMPpage
> > (there is an "ontarget" chapter about envelopes; mikael and i spent
> > quite some time figuring out a few things but in the end conclused that
> > mp des the right thing given the strategy it folows but it definitely
> > has side effects)
> Thank you for the insight, but does that mean I can’t get my “butt
> capped” lines and I must shorten the lines by half the pen size?
> If your question is of interest to others as well, please add an entry to the Wiki!
> maillist : ntg-context at ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
> webpage : http://www.pragma-ade.nl / http://context.aanhet.net
> archive : https://bitbucket.org/phg/context-mirror/commits/
> wiki : http://contextgarden.net
with the new upload you can do
pickup pencircle scaled 4 ;
path p ; p := origin -- (20,0) ;
draw p withcolor darkyellow ;
draw p yshifted 5 withlinecap butt withcolor darkred ;
draw p yshifted -5 withlinecap squared withcolor darkgreen ;
for i within currentpicture :
drawpoints pathpart i withpen pencircle scaled 1 ;
That is, you can set linecap for each draw. I hope it helps.
More information about the ntg-context