diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgfplots/pgfplotscoordprocessing.code.tex')
-rw-r--r-- | Master/texmf-dist/tex/generic/pgfplots/pgfplotscoordprocessing.code.tex | 51 |
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% } |