From c2175edc7aa44ca0b526f008d473d6f8a8ac4933 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 14 Jun 2010 23:14:16 +0000 Subject: asy 1.98 git-svn-id: svn://tug.org/texlive/trunk@18982 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/utils/asymptote/base/three_surface.asy | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'Build/source/utils/asymptote/base/three_surface.asy') diff --git a/Build/source/utils/asymptote/base/three_surface.asy b/Build/source/utils/asymptote/base/three_surface.asy index e00acfa8367..c4f05c7882f 100644 --- a/Build/source/utils/asymptote/base/three_surface.asy +++ b/Build/source/utils/asymptote/base/three_surface.asy @@ -1431,8 +1431,12 @@ void label(frame f, Label L, triple position, align align=NoAlign, L.T3=transform3(P); begingroup3(f,name == "" ? L.s : name,render); if(is3D()) { - for(patch S : surface(L,position).s) + bool lighton=light.on(); + for(patch S : surface(L,position).s) { draw3D(f,S,position,L.p,light,interaction); + if(render.labelfill && !lighton) // Fill subdivision cracks + _draw(f,S.external(),position,L.p,interaction.type); + } } else { pen p=color(L.T3*Z,L.p,light,shiftless(P.T.modelview)); if(L.defaulttransform3) { @@ -1475,10 +1479,15 @@ void label(picture pic=currentpicture, Label L, triple position, surface S=surface(L,v); begingroup3(f,name == "" ? L.s : name,render,v,interaction.type); - if(is3D()) - for(patch S : surface(L,v).s) + bool lighton=light.on(); + if(is3D()) { + for(patch S : surface(L,v).s) { draw3D(f,S,v,L.p,light,interaction); - + if(render.labelfill && !lighton) // Fill subdivision cracks + _draw(f,S.external(),v,L.p,interaction.type); + } + } + if(pic != null) { pen p=color(L.T3*Z,L.p,light,shiftless(P.T.modelview)); if(L.defaulttransform3) { -- cgit v1.2.3