diff options
Diffstat (limited to 'Master/texmf/asymptote/plain_boxes.asy')
-rw-r--r-- | Master/texmf/asymptote/plain_boxes.asy | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/Master/texmf/asymptote/plain_boxes.asy b/Master/texmf/asymptote/plain_boxes.asy index ff82a0b0b32..0c6401311d8 100644 --- a/Master/texmf/asymptote/plain_boxes.asy +++ b/Master/texmf/asymptote/plain_boxes.asy @@ -4,7 +4,8 @@ path box(frame dest, frame src=dest, real xmargin=0, real ymargin=xmargin, { pair z=(xmargin,ymargin); int sign=filltype == NoFill ? 1 : -1; - path g=box(min(src)+0.5*sign*min(p)-z,max(src)+0.5*sign*max(p)+z); + pair h=0.5*sign*(max(p)-min(p)); + path g=box(min(src)-h-z,max(src)+h+z); frame F; if(above == false) { filltype.fill(F,g,p); @@ -45,8 +46,8 @@ path ellipse(frame dest, frame src=dest, real xmargin=0, real ymargin=xmargin, pair D=M-m; static real factor=0.5*sqrt(2); int sign=filltype == NoFill ? 1 : -1; - path g=ellipse(0.5*(M+m),factor*D.x+0.5*sign*max(p).x+xmargin, - factor*D.y+0.5*sign*max(p).y+ymargin); + pair h=0.5*sign*(max(p)-min(p)); + path g=ellipse(0.5*(M+m),factor*D.x+h.x+xmargin,factor*D.y+h.y+ymargin); frame F; if(above == false) { filltype.fill(F,g,p); |