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?
\startMPpage[offset=5mm] path p;
p := origin -- (7cm,0); interim linecap := butt; draw p withpen pencircle scaled 5mm;
p := p shifted (0,2cm); interim linecap := rounded; draw p withpen pencircle scaled 5mm;
p := p shifted (0,2cm); interim linecap := squared; draw p withpen pencircle scaled 5mm;
\stopMPpage
I learned, “cutdraw” should do the trick, but I get a parallelogram instead of a rectangle.
Seems to be something weird with pensquare:
\startMPpage[offset=5mm] path p;
p := origin -- (7cm,0); % interim linecap := butt; cutdraw p withpen pensquare scaled 5mm;
p := p shifted (0,2cm); interim linecap := rounded; draw p withpen pensquare scaled 5mm;
p := p shifted (0,2cm); interim linecap := squared; draw p withpen pensquare scaled 5mm;
\stopMPpage \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) Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------