summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/pgfplots/pgfplotscoordprocessing.code.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgfplots/pgfplotscoordprocessing.code.tex')
-rw-r--r--Master/texmf-dist/tex/generic/pgfplots/pgfplotscoordprocessing.code.tex51
1 files changed, 44 insertions, 7 deletions
diff --git a/Master/texmf-dist/tex/generic/pgfplots/pgfplotscoordprocessing.code.tex b/Master/texmf-dist/tex/generic/pgfplots/pgfplotscoordprocessing.code.tex
index 5ec05fd41a0..6518b542006 100644
--- a/Master/texmf-dist/tex/generic/pgfplots/pgfplotscoordprocessing.code.tex
+++ b/Master/texmf-dist/tex/generic/pgfplots/pgfplotscoordprocessing.code.tex
@@ -1341,9 +1341,13 @@
% #4: the argument supplied as coordinate on that axis.
% #5: the shift along the outer unit normal.
\def\pgfplotspointoutsideofaxis@#1#2#3\relax#4#5{%
+ %
+ \def\pgfplotspointoutsideofaxis@lineshift{}%
+ %
\if v#1%
\pgfplotspointoutsideofaxis@plug@getlimit{y}{#2}\let\pgfplots@loc@TMPa=\pgfmathresult
\pgfplotspointonorientedsurfaceabsetupforsety{\pgfplots@loc@TMPa}{#2}%
+ \def\pgfplotspointoutsideofaxis@lineshift{x}%
%
\pgfplotspointonorientedsurfaceabsetupfor xzy%
\pgfplotspointoutsideofaxis@plug@trafo{x}{#4}\let\pgfplots@loc@A=\pgfmathresult
@@ -1364,6 +1368,7 @@
\pgfplotspointonorientedsurfaceabsetupfor yxz%
\pgfplotspointoutsideofaxis@plug@trafo{y}{#4}\let\pgfplots@loc@A=\pgfmathresult
\pgfplotspointoutsideofaxis@plug@getlimit{x}{#1}\let\pgfplots@loc@B=\pgfmathresult
+ \def\pgfplotspointoutsideofaxis@lineshift{y}%
\else
\pgfplotspointoutsideofaxis@plug@getlimit{x}{#1}\let\pgfplots@loc@TMPa=\pgfmathresult
\pgfplotspointonorientedsurfaceabsetupforsetx{\pgfplots@loc@TMPa}{#1}%
@@ -1375,12 +1380,20 @@
\def\pgfplots@loc@A{0}%
\fi
\pgfplotspointoutsideofaxis@plug@getlimit{y}{#2}\let\pgfplots@loc@B=\pgfmathresult
+ \def\pgfplotspointoutsideofaxis@lineshift{z}%
\fi
\fi
%
% read dimen argument #5:
\afterassignment\pgfplots@gobble@until@relax
\pgf@xa=#5pt\relax
+ %
+ \pgfkeysgetvalue{/pgfplots/axis \pgfplotspointoutsideofaxis@lineshift\space line shift}\pgfmathresult
+ \ifx\pgfmathresult\pgfutil@empty
+ \else
+ \advance\pgf@xa by \pgfmathresult pt %
+ \fi
+ %
\edef\pgfplots@loc@distalong@normal{\pgf@sys@tonumber\pgf@xa}%
%
%\message{pgfplotspointoutsideofaxis{#1#2#3}{#4}{#5}: A = \pgfplots@loc@A, B = \pgfplots@loc@B.^^J}%
@@ -2987,7 +3000,9 @@
% empty line=scanline
% class:
\def\pgfplotsscanlinelength@scanline@initzero{%
- \c@pgfplots@scanlineindex=0
+ \c@pgfplots@scanlineindex=0 % the index _inside_ of the current scanline
+ \def\pgfplotsscanlinecurrentlength{\the\c@pgfplots@scanlineindex}%
+ \def\pgfplotsscanlineindex{0}% 0 is the first scanline, 1 the second, and so on
\def\pgfplots@scanlinelength{-1}%
}
\def\pgfplotsscanlinelength@scanline@increase{%
@@ -3022,6 +3037,7 @@
\fi
\fi
\c@pgfplots@scanlineindex=0
+ \pgfplotsutil@advancestringcounter\pgfplotsscanlineindex%
}
\def\pgfplotsscanlinelength@scanline@cleanup{%
\ifnum\c@pgfplots@scanlineindex=0
@@ -3741,6 +3757,12 @@
\fi
\pgfplots@LUA@backend@supportedfalse
\fi
+ \pgfplotscolormapifisuniform{\pgfkeysvalueof{/pgfplots/colormap name}}{%
+ }{%
+ % FIXME : implement LUA for non-uniform colormaps
+ \pgfplots@LUA@survey@log@deactivation{non-uniform color maps unsupported currently}%
+ \pgfplots@LUA@backend@supportedfalse
+ }%
%
\ifpgfplots@LUA@backend@supported
\edef\pgfplots@LUA@backend@plotnum{\pgfutil@directlua{tex.sprint(\pgfplotsHASH pgfplots.gca.plothandlers)}}%
@@ -5337,7 +5359,11 @@
% FIXME : verify this case
\else
\pgfkeyssetvalue{/pgfplots/mesh/rows}{\pgfkeysvalueof{/pgfplots/samples y}}%
- \pgfkeyssetvalue{/pgfplots/mesh/cols}{\pgfkeysvalueof{/pgfplots/samples}}%
+ \ifx\pgfplots@plot@samples@at\pgfutil@empty
+ \pgfkeyssetvalue{/pgfplots/mesh/cols}{\pgfkeysvalueof{/pgfplots/samples}}%
+ \else
+ % FIXME : count number of samples in 'samples at'!
+ \fi
\fi
\if1\b@pgfplots@should@sample@LINE
\pgfkeyssetvalue{/pgfplots/sample dim}{1}%
@@ -5434,9 +5460,14 @@
}%
\pgfplots@addplotimpl@expression@split@yz#2\pgfplots@EOI%
%
- % we don't have 'samples at' for 3D plots -> use domain!
- \expandafter\pgfplots@domain@to@foreach\pgfplots@plot@domain\relax{\pgfplots@plot@samples}%
- \let\pgfplots@expression@xdomain=\pgfplotsretval
+ \ifx\pgfplots@plot@samples@at\pgfutil@empty
+ % we don't have 'samples at' -> use domain!
+ \expandafter\pgfplots@domain@to@foreach\pgfplots@plot@domain\relax{\pgfplots@plot@samples}%
+ \let\pgfplots@expression@xdomain=\pgfplotsretval
+ \else
+ % use 'samples at':
+ \let\pgfplots@expression@xdomain=\pgfplots@plot@samples@at
+ \fi
%
% do we have '\y' as y coordinate?
\expandafter\def\expandafter\pgfplots@loc@TMPb\expandafter{\pgfplots@plot@var@y}%
@@ -5655,6 +5686,12 @@
}%
\fi
%
+ \ifx\pgfplots@plot@samples@at\pgfutil@empty
+ \else
+ \def\pgfplotsretval{0}%
+ \pgfplots@LUA@plotexpression@log@deactivation{samples at unsupported (yet)}%
+ \fi
+ %
\if1\pgfplots@addplotimpl@expression@hasuniform@y
\else
\expandafter\pgfplotsutilifcontainsmacro\expandafter{\pgfplots@addplotimpl@expression@yEXPR}{%
@@ -6030,7 +6067,7 @@
}%
\def\pgfplots@identify@gnuplot@logbehavior@checkversion{%
\begingroup
- \immediate\write18{gnuplot -V >\pgfplots@plot@filename.vrs}%
+ \pgfplots@shellescape{gnuplot -V >\pgfplots@plot@filename.vrs}%
\openin\r@pgfplots@reada=\pgfplots@plot@filename.vrs\relax
\ifeof\r@pgfplots@reada
\pgfplotswarning{gnuplot -V impossible}\pgfeov
@@ -9340,6 +9377,6 @@
\immediate\openout\pgf@shellwrite=#1.sh
\immediate\write\pgf@shellwrite{#2}%
\immediate\closeout\pgf@shellwrite%
- \immediate\write18{sh #1.sh > #1.out}
+ \pgfplots@shellescape{sh #1.sh > #1.out}
\fi%
}