summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.ternary.code.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.ternary.code.tex')
-rw-r--r--Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.ternary.code.tex32
1 files changed, 26 insertions, 6 deletions
diff --git a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.ternary.code.tex b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.ternary.code.tex
index dfb520af190..7000f8c13cf 100644
--- a/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.ternary.code.tex
+++ b/Master/texmf-dist/tex/generic/pgfplots/libs/tikzlibrarypgfplots.ternary.code.tex
@@ -86,11 +86,14 @@
\def\pgfplots@drawaxis@innerlines@onorientedsurf##1##2##3{}%
\let\pgfplots@draw@axis@post=\pgfplots@draw@axis@post@ternary
\let\pgfplots@initsizes=\pgfplots@initsizes@ternary
+ \let\pgfplots@limits@ready=\pgfplots@limits@ready@ternary
\let\pgfplotspoint@initialisation@axes=\pgfplotspoint@initialisation@axes@ternary
\let\pgfplotspoint@initialisation@units=\pgfplotspoint@initialisation@units@ternary
\let\pgfplots@initsizes@setunitvector=\pgfplots@initsizes@setunitvector@ternary
+ \let\pgfplots@computeunitvectorlengths=\pgfplots@computeunitvectorlengths@ternary
\let\pgfplotspointouternormalvectorofaxis@=\pgfplotspointouternormalvectorofaxis@ternary
\let\pgfplots@prepare@ZERO@coordinates=\pgfplots@prepare@ZERO@coordinates@ternary
+ \def\pgfplots@scaleaxes@to@BB@##1##2{}%
\let\pgfplotsgetnormalforcurrentview=\relax
\def\pgfplots@drawtickgridlines@INSTALLCLIP@onorientedsurf##1{}%
\let\pgfplots@clippath@prepare@for@axistype=\pgfplots@clippath@prepare@for@axistype@ternary
@@ -280,10 +283,6 @@
\else
\pgfplots@error{Sorry, 'axis type=ternary' needs a three dimensional axes. Make sure you supplied three dimensional coordinates (using \string\addplot3, for example). This error is critical; I can't recover}%
\fi
-%\message{ternary with limits x=[\pgfplots@xmin:\pgfplots@xmax], y=[\pgfplots@ymin:\pgfplots@ymax]; z=[\pgfplots@zmin:\pgfplots@zmax].}%
- \pgfplots@ternary@init@map@to@unit x
- \pgfplots@ternary@init@map@to@unit y
- \pgfplots@ternary@init@map@to@unit z
%
\pgfplots@initsizes@get@width@withoutlabels
\pgf@x=\pgfmathresult
@@ -293,6 +292,17 @@
%
}%
+\let\pgfplots@limits@ready@original=\pgfplots@limits@ready
+
+\def\pgfplots@limits@ready@ternary{%
+ \pgfplots@limits@ready@original
+ %
+%\message{ternary with limits x=[\pgfplots@xmin:\pgfplots@xmax], y=[\pgfplots@ymin:\pgfplots@ymax]; z=[\pgfplots@zmin:\pgfplots@zmax].}%
+ \pgfplots@ternary@init@map@to@unit x%
+ \pgfplots@ternary@init@map@to@unit y%
+ \pgfplots@ternary@init@map@to@unit z%
+}%
+
\def\pgfplots@ternary@init@map@to@unit#1{%
\begingroup
\pgfmath@basic@subtract@
@@ -311,7 +321,7 @@
\def\pgfplots@initsizes@setunitvector@ternary#1#2#3#4{%
% ternary axis are DIFFERENT here.
% They don't use the (xx,xy), (yx,yy), (zx,zy) vectors, so we can
- % use them to realize *cartesian* coordinates.
+ % use them to implement *cartesian* coordinates.
%
% Thus, any \draw (0,0) inside of a ternary axis will yield
% cartesian coordinates.
@@ -343,6 +353,17 @@
{\global\pgfplots@ternary@next@is@unitintervaltrue\pgfplotsqpointxyz@ternary001}%
\fi
\expandafter\xdef\csname pgfplotspoint#1axis\endcsname{\noexpand\pgf@x=\the\pgf@x\space\noexpand\pgf@y=\the\pgf@y\space}%
+ %
+%\message{-> got unitvector(#1) = (\the\csname pgf@#1x\endcsname, \the\csname pgf@#1y\endcsname).}%
+}%
+
+\def\pgfplots@computeunitvectorlengths@ternary{%
+ \pgfplots@computeunitvectorlengths@ternary@ x%
+ \pgfplots@computeunitvectorlengths@ternary@ y%
+ \pgfplots@computeunitvectorlengths@ternary@ z%
+}
+\def\pgfplots@computeunitvectorlengths@ternary@#1{%
+ \csname pgfplotspoint#1axis\endcsname
\pgfmathveclen{\pgf@x}{\pgf@y}%
\expandafter\let\csname pgfplots@#1@veclength\endcsname=\pgfmathresult
\pgfplotsmath@ifzero{\pgfmathresult}{%
@@ -353,7 +374,6 @@
}%
\expandafter\xdef\csname pgfplotspoint#1axislength\endcsname{\pgfplots@x@veclength pt}%
%
-%\message{-> got unitvector(#1) = (\the\csname pgf@#1x\endcsname, \the\csname pgf@#1y\endcsname).}%
}%
\newif\ifpgfplots@ternary@next@is@unitinterval