diff options
author | Karl Berry <karl@freefriends.org> | 2019-10-06 17:17:34 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-10-06 17:17:34 +0000 |
commit | 7f9f7dad00ea5f025578c491005835740f9ffd90 (patch) | |
tree | 011a87a78042a82ea3a18f5c08e60f6a3930bf0b /Build/source/utils/asymptote/base/three.asy | |
parent | 37d8fb68e502daabe6aa5f5ae9fb78191f275742 (diff) |
asy 2.56 sources
git-svn-id: svn://tug.org/texlive/trunk@52300 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/utils/asymptote/base/three.asy')
-rw-r--r-- | Build/source/utils/asymptote/base/three.asy | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Build/source/utils/asymptote/base/three.asy b/Build/source/utils/asymptote/base/three.asy index 8070526deac..2b32fd16125 100644 --- a/Build/source/utils/asymptote/base/three.asy +++ b/Build/source/utils/asymptote/base/three.asy @@ -2813,6 +2813,9 @@ object embed(string prefix=outprefix(), string label=prefix, P=modelview*P; Q=P.copy(); + if(Q.t[2][3] == -1) // PRC can't handle oblique projections + Q=orthographic(P.camera,P.up,P.target,P.zoom,P.viewportshift, + P.showtarget,P.center); if(P.infinity) { triple m=min3(S.f); triple M=max3(S.f); @@ -2884,10 +2887,13 @@ object embed(string prefix=outprefix(), string label=prefix, m -= margin; } else if(M.z >= 0) abort("camera too close"); + if(settings.outformat == "html") + format="html"; + shipout3(prefix,f,preview ? nativeformat() : format, S.width-defaultrender.margin,S.height-defaultrender.margin, P.infinity ? 0 : 2aTan(Tan(0.5*P.angle)*P.zoom), - P.zoom,m,M,P.viewportshift, + P.zoom,m,M,P.viewportshift,S.viewportmargin, tinv*inv*shift(0,0,zcenter),Light.background(),Light.position, Light.diffuse,Light.specular, view && !preview); |