diff options
author | Karl Berry <karl@freefriends.org> | 2010-05-16 18:38:18 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-05-16 18:38:18 +0000 |
commit | 9b042a93e8f489c694af2e2e121e5aedd7671d8a (patch) | |
tree | 4b4e6b79f46eb1faf6b5ca4b5318ae907daf38bc /Master/texmf/asymptote/plain_Label.asy | |
parent | 165b3785f8aa3ff267097b479870e9a39ba5c14b (diff) |
asymptote 1.94
git-svn-id: svn://tug.org/texlive/trunk@18288 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf/asymptote/plain_Label.asy')
-rw-r--r-- | Master/texmf/asymptote/plain_Label.asy | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/Master/texmf/asymptote/plain_Label.asy b/Master/texmf/asymptote/plain_Label.asy index b75d0de3967..6e6f231375a 100644 --- a/Master/texmf/asymptote/plain_Label.asy +++ b/Master/texmf/asymptote/plain_Label.asy @@ -75,11 +75,19 @@ transform scaleless(transform t) A=conj(U)*A*U; real D=abs(A[0][0]); - if(D != 0) A[0][0] /= D; + if(D != 0) { + A[0][0] /= D; + A[0][1] /= D; + } + D=abs(A[1][1]); - if(D != 0) A[1][1] /= D; + if(D != 0) { + A[1][0] /= D; + A[1][1] /= D; + } A=U*A*conj(U); + return (0,0,A[0][0].x,A[0][1].x,A[1][0].x,A[1][1].x); } @@ -209,7 +217,8 @@ transform Slant(transform t) {return scaleless(t);} transform Scale(transform t) {return t;} embed Rotate(pair z) { - return new transform(transform t) {return rotate(degrees(shiftless(t)*z));}; + return new transform(transform t) {return rotate(degrees(shiftless(t)*z, + warn=false));}; } struct Label { @@ -288,7 +297,7 @@ struct Label { void label(frame f, transform t=identity(), pair position, pair align) { pen p0=p == nullpen ? currentpen : p; - align=length(align)*unit(scaleless(shiftless(t))*align); + align=length(align)*unit(shiftless(t)*align); label(f,s,size,embed(t)*shiftless(T), t*position+align*labelmargin(p0)+shift(T)*0,align,p0); } |