diff options
author | Karl Berry <karl@freefriends.org> | 2019-01-05 22:40:38 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-01-05 22:40:38 +0000 |
commit | 22536bb2b5257046d271b1eaa11b4a275d5ec041 (patch) | |
tree | 2500eaf5c26b11e00ebd33a64fccfa332cd5a66c /Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz | |
parent | cf794f0e2db6857972a9d48d4466a4f03a7057a0 (diff) |
pgf (5jan19)
git-svn-id: svn://tug.org/texlive/trunk@49607 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz')
75 files changed, 6032 insertions, 4582 deletions
diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.code.tex index e8aeabd2468..56a5340f99e 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{decorations.markings,calc} +\usetikzlibrary{calc,decorations.markings}% % @@ -23,7 +23,7 @@ \def\tikz@lib@circ@end{-- (\tikztotarget) \tikztonodes} } } -} +}% \newif\iftikz@lib@circ@on@to @@ -75,10 +75,10 @@ \pgfkeysalso{#1} \fi } -} +}% \newcount\tikz@lib@circ@count -\def\tikz@zero@text{0.0} -\def\tikz@one@text{1.0} +\def\tikz@zero@text{0.0}% +\def\tikz@one@text{1.0}% \def\tikz@lib@circ@compute@direction#1{% \tikz@scan@one@point\tikz@lib@circ@save@start(\tikztostart)% @@ -86,9 +86,9 @@ \pgf@process{\pgfpointnormalised{\pgfpointdiff{\tikz@lib@circ@start}{\tikz@lib@circ@target}}}% \pgf@ya=-\pgf@y% \pgftransformcm{\the\pgf@x}{\the\pgf@y}{\the\pgf@ya}{\the\pgf@x}{#1}% -} -\def\tikz@lib@circ@save@start#1{\def\tikz@lib@circ@start{#1}} -\def\tikz@lib@circ@save@target#1{\def\tikz@lib@circ@target{#1}} +}% +\def\tikz@lib@circ@save@start#1{\def\tikz@lib@circ@start{#1}}% +\def\tikz@lib@circ@save@target#1{\def\tikz@lib@circ@target{#1}}% \tikzset{ circuits/pos grabber/.is family, @@ -100,7 +100,7 @@ near end/.belongs to family=/tikz/circuits/pos grabber, very near end/.belongs to family=/tikz/circuits/pos grabber, at end/.belongs to family=/tikz/circuits/pos grabber -} +}% % @@ -126,7 +126,7 @@ % node look like the symbol. For instance, for a resistor that is % rendered as a rectangle, this keys can be set, basically, to % "rectangle,draw". Set this key to use a different appearance for - % symbols of kind #1. + % symbols of kind #1. % % every #1 % This style will be included with every symbols of this kind and @@ -154,7 +154,7 @@ medium circuit symbols/.style={circuit symbol unit=7pt}, small circuit symbols/.style={circuit symbol unit=6pt}, tiny circuit symbols/.style={circuit symbol unit=5pt}, -} +}% \newdimen\tikzcircuitssizeunit \tikzcircuitssizeunit=7pt @@ -199,7 +199,7 @@ /utils/exec={\pgfsetarrowoptions{direction ee}{.4*\the\tikzcircuitssizeunit+.3*\the\pgflinewidth}}, >=direction ee } -} +}% @@ -211,7 +211,7 @@ point down/.style={rotate=-90}, point left/.style={rotate=180}, point right/.style={} -} +}% @@ -225,7 +225,7 @@ circuit symbol filled/.style={draw,fill=black}, circuit symbol lines/.style={draw}, circuit symbol wires/.style={draw}, -} +}% @@ -242,28 +242,25 @@ info' sloped/.code={\pgfutil@ifnextchar[\tikz@lib@circ@lab@slopedp@plain{\tikz@lib@circ@lab@slopedp@plain[]}#1\pgf@stop},%} circuit declare unit/.style 2 args={ % - % Defines four styles that can be used to add labels to a node. + % Defines four styles that can be used to add labels to a node. % #1/.code={\pgfutil@ifnextchar[\tikz@lib@circ@lab{\tikz@lib@circ@lab[]}##1\pgf@stop{#2}{#1}},%} #1 sloped/.code={\pgfutil@ifnextchar[\tikz@lib@circ@lab@sloped{\tikz@lib@circ@lab@sloped[]}##1\pgf@stop{#2}{#1}},%} - #1'/.code={\pgfutil@ifnextchar[\tikz@lib@circ@labp{\tikz@lib@circ@labp[]}##1\pgf@stop{#2}{#1}},%} + #1'/.code={\pgfutil@ifnextchar[\tikz@lib@circ@labp{\tikz@lib@circ@labp[]}##1\pgf@stop{#2}{#1}},%} #1' sloped/.code={\pgfutil@ifnextchar[\tikz@lib@circ@lab@slopedp{\tikz@lib@circ@lab@slopedp[]}##1\pgf@stop{#2}{#1}}%} } -} +}% -\def\tikz@lib@circ@lab[#1]#2\pgf@stop#3#4{\tikzset{label={[every info/.try,every #4/.try,#1]$\mathrm{#2#3}$}}} -\def\tikz@lib@circ@lab@sloped[#1]#2\pgf@stop#3#4{\tikzset{label={[every info/.try,every #4/.try,transform shape,#1]$\mathrm{#2#3}$}}} -\def\tikz@lib@circ@labp[#1]#2\pgf@stop#3#4{\tikzset{label={[label position=below,every info/.try,every #4/.try,#1]$\mathrm{#2#3}$}}} -\def\tikz@lib@circ@lab@slopedp[#1]#2\pgf@stop#3#4{\tikzset{label={[label -position=below,every info/.try,every #4/.try,transform shape,#1]$\mathrm{#2#3}$}}} +\def\tikz@lib@circ@lab[#1]#2\pgf@stop#3#4{\tikzset{label={[every info/.try,every #4/.try,#1]$\mathrm{#2#3}$}}}% +\def\tikz@lib@circ@lab@sloped[#1]#2\pgf@stop#3#4{\tikzset{label={[every info/.try,every #4/.try,transform shape,#1]$\mathrm{#2#3}$}}}% +\def\tikz@lib@circ@labp[#1]#2\pgf@stop#3#4{\tikzset{label={[label position=below,every info/.try,every #4/.try,#1]$\mathrm{#2#3}$}}}% +\def\tikz@lib@circ@lab@slopedp[#1]#2\pgf@stop#3#4{\tikzset{label={[label position=below,every info/.try,every #4/.try,transform shape,#1]$\mathrm{#2#3}$}}}% -\def\tikz@lib@circ@lab@plain[#1]#2\pgf@stop{\tikzset{label={[every info/.try,#1]#2}}} -\def\tikz@lib@circ@lab@sloped@plain[#1]#2\pgf@stop{\tikzset{label={[every info/.try,transform shape,#1]#2}}} -\def\tikz@lib@circ@labp@plain[#1]#2\pgf@stop{\tikzset{label={[label position=below,every info/.try,#1]#2}}} -\def\tikz@lib@circ@lab@slopedp@plain[#1]#2\pgf@stop{\tikzset{label={[label -position=below,every info/.try,transform shape,#1]#2}}} +\def\tikz@lib@circ@lab@plain[#1]#2\pgf@stop{\tikzset{label={[every info/.try,#1]#2}}}% +\def\tikz@lib@circ@lab@sloped@plain[#1]#2\pgf@stop{\tikzset{label={[every info/.try,transform shape,#1]#2}}}% +\def\tikz@lib@circ@labp@plain[#1]#2\pgf@stop{\tikzset{label={[label position=below,every info/.try,#1]#2}}}% +\def\tikz@lib@circ@lab@slopedp@plain[#1]#2\pgf@stop{\tikzset{label={[label position=below,every info/.try,transform shape,#1]#2}}}% \endinput - diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.IEC.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.IEC.code.tex index 1de9232e63c..75457107643 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.IEC.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.IEC.code.tex @@ -7,10 +7,10 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{circuits.ee} -\usetikzlibrary{arrows} +\usetikzlibrary{arrows}% +\usetikzlibrary{circuits.ee}% -\usepgflibrary{shapes.gates.ee.IEC} +\usepgflibrary{shapes.gates.ee.IEC}% % @@ -38,8 +38,8 @@ set current source graphic = current source IEC graphic, set make contact graphic = make contact IEC graphic, set break contact graphic = break contact IEC graphic, - } -} + }, +}% % @@ -51,7 +51,7 @@ circuit symbol open, circuit symbol size=width 4 height 1, shape=rectangle ee, - transform shape + transform shape, }, var resistor IEC graphic/.style={ circuit symbol lines, @@ -59,9 +59,9 @@ shape=var resistor IEC, transform shape, outer sep=0pt, - cap=round - } -} + cap=round, + }, +}% @@ -76,15 +76,15 @@ transform shape, shape=inductor IEC, outer sep=0pt, - cap=round + cap=round, }, var inductor IEC graphic/.style={ circuit symbol filled, circuit symbol size=width 4 height 1, transform shape, - shape=rectangle ee - } -} + shape=rectangle ee, + }, +}% @@ -97,9 +97,9 @@ circuit symbol lines, circuit symbol size=width .5 height 2, transform shape, - shape=capacitor IEC - } -} + shape=capacitor IEC, + }, +}% @@ -112,9 +112,9 @@ circuit symbol lines, circuit symbol size=width .75 height 2, transform shape, - shape=ground IEC - } -} + shape=ground IEC, + }, +}% @@ -129,9 +129,9 @@ circuit symbol size=width .5 height 2.5, transform shape, shape=battery IEC, - transform shape - } -} + transform shape, + }, +}% @@ -156,9 +156,9 @@ }, var diode IEC graphic/.style={ diode IEC graphic, - circuit symbol filled - } -} + circuit symbol filled, + }, +}% \tikzset{ % @@ -175,9 +175,9 @@ }, var Zener diode IEC graphic/.style={ Zener diode IEC graphic, - circuit symbol filled - } -} + circuit symbol filled, + }, +}% \tikzset{ % @@ -197,9 +197,9 @@ }, var Schottky diode IEC graphic/.style={ Schottky diode IEC graphic, - circuit symbol filled - } -} + circuit symbol filled, + }, +}% \tikzset{ % @@ -217,12 +217,12 @@ }, var tunnel diode IEC graphic/.style={ tunnel diode IEC graphic, - circuit symbol filled - } -} + circuit symbol filled, + }, +}% \tikzset{ - % + % % backward diode % backward diode IEC graphic/.style={ @@ -239,9 +239,9 @@ }, var backward diode IEC graphic/.style={ backward diode IEC graphic, - circuit symbol filled - } -} + circuit symbol filled, + }, +}% \tikzset{ @@ -256,9 +256,9 @@ }, var breakdown diode IEC graphic/.style={ breakdown diode IEC graphic, - circuit symbol filled - } -} + circuit symbol filled, + }, +}% @@ -271,15 +271,15 @@ circuit symbol filled, circuit symbol size=width .5 height .5, shape=circle ee, - outer sep=.25\pgflinewidth + outer sep=.25\pgflinewidth, }, % connection IEC graphic/.style={ % circuit symbol open, % circuit symbol size=width 1 height 1, % shape=circle ee, -% outer sep=.25\pgflinewidth -% } -} +% outer sep=.25\pgflinewidth, +% }, +}% % @@ -298,9 +298,9 @@ \pgfpathlineto{\pgfpointpolar{135}{1pt}} \pgfusepathqstroke }, - transform shape - } -} + transform shape, + }, +}% % @@ -317,7 +317,7 @@ \pgfpathlineto{\pgfqpoint{0pt}{1pt}} \pgfusepathqstroke }, - transform shape + transform shape, }, voltage source IEC graphic/.style={ circuit symbol lines, @@ -328,9 +328,9 @@ \pgfpathlineto{\pgfqpoint{1pt}{0pt}} \pgfusepathqstroke }, - transform shape - } -} + transform shape, + }, +}% @@ -345,7 +345,7 @@ transform shape, shape=make contact IEC, outer sep=0pt, - cap=round + cap=round, }, var make contact IEC graphic/.style={ circuit symbol wires, @@ -353,9 +353,9 @@ transform shape, shape=var make contact IEC, outer sep=0pt, - cap=round - } -} + cap=round, + }, +}% \tikzset{ @@ -365,12 +365,11 @@ transform shape, shape=break contact IEC, outer sep=0pt, - cap=round + cap=round, }, -} +}% \endinput - diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.code.tex index d8337acefcd..9a7108aebfb 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.ee.code.tex @@ -8,8 +8,8 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{circuits} -\usepgflibrary{shapes.gates.ee} +\usetikzlibrary{circuits}% +\usepgflibrary{shapes.gates.ee}% % @@ -20,7 +20,7 @@ circuit, every circuit ee/.try } -} +}% % @@ -50,7 +50,7 @@ % set current direction graphic = current direction ee graphic, set current direction' graphic = current direction' ee graphic, -} +}% % @@ -68,7 +68,7 @@ circuit declare unit={voltampere}{VA}, circuit declare unit={watt}{W}, circuit declare unit={hertz}{Hz}, -} +}% @@ -85,7 +85,7 @@ >=direction ee, direction ee arrow = direction ee, } -} +}% @@ -103,7 +103,7 @@ current direction ee graphic, rotate=180 } -} +}% @@ -137,8 +137,7 @@ [shift=(\tikzlastnode.center)] (-1.5\tikzcircuitssizeunit,1.5\tikzcircuitssizeunit) edge[line to] (1.5\tikzcircuitssizeunit,-1.5\tikzcircuitssizeunit) } -} +}% \endinput - diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.CDH.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.CDH.code.tex index 4fe276ff0a0..c0168992532 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.CDH.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.CDH.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{circuits.logic.US} +\usetikzlibrary{circuits.logic.US}% \tikzset{ circuit logic CDH/.style = @@ -16,14 +16,13 @@ set and gate graphic = and gate CDH graphic, set nand gate graphic = nand gate CDH graphic, } -} +}% \tikzset{ circuit logic US make graphic=and gate CDH, circuit logic US make graphic=nand gate CDH, -} +}% \endinput - diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.IEC.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.IEC.code.tex index 64d1f764b71..54a1068eb4c 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.IEC.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.IEC.code.tex @@ -7,8 +7,8 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{circuits.logic} -\usepgflibrary{shapes.gates.logic.IEC} +\usetikzlibrary{circuits.logic}% +\usepgflibrary{shapes.gates.logic.IEC}% % @@ -37,7 +37,7 @@ not gate IEC symbol = {$\scriptstyle1$}, buffer gate IEC symbol = {$\scriptstyle1$}, }, -} +}% % @@ -54,7 +54,7 @@ inner sep=.5ex } } -} +}% \tikzset{ @@ -68,9 +68,8 @@ circuit logic IEC make graphic=buffer gate IEC, circuit logic IEC make graphic=and gate CDH, circuit logic IEC make graphic=nand gate CDH, -} +}% \endinput - diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.US.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.US.code.tex index 1f724912549..76d48c863ab 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.US.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.US.code.tex @@ -7,8 +7,8 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{circuits.logic} -\usepgflibrary{shapes.gates.logic.US} +\usetikzlibrary{circuits.logic}% +\usepgflibrary{shapes.gates.logic.US}% % @@ -28,7 +28,7 @@ set not gate graphic = not gate US graphic, set buffer gate graphic = buffer gate US graphic } -} +}% % @@ -45,7 +45,7 @@ transform shape } } -} +}% \tikzset{ @@ -57,9 +57,8 @@ circuit logic US make graphic=xnor gate US, circuit logic US make graphic=not gate US, circuit logic US make graphic=buffer gate US, -} +}% \endinput - diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.code.tex index 0fc662f92c5..fb896e6a065 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/circuits/tikzlibrarycircuits.logic.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{circuits} +\usetikzlibrary{circuits}% @@ -22,7 +22,7 @@ logic gate inverted radius=.25\tikzcircuitssizeunit, every circuit logic/.try, } -} +}% @@ -39,8 +39,7 @@ circuit declare symbol = xnor gate, circuit declare symbol = not gate, circuit declare symbol = buffer gate -} +}% \endinput - diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.3d.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.3d.code.tex index 8018de58018..a01a5720c54 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.3d.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.3d.code.tex @@ -7,9 +7,9 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.3d.code.tex,v 1.1 2008/12/17 22:48:46 tantau Exp $ +\ProvidesFileRCS{tikzlibrarydatavisualization.3d.code.tex} -\usetikzlibrary{datavisualization} +\usetikzlibrary{datavisualization}% @@ -38,9 +38,9 @@ % visualize ticks={common={x axis={goto=0},y axis={goto=0},direction axis=y axis}} }, new line plot, - every school book plot/.try - } -} + every school book plot/.try, + }, +}% % A 3d version of the scientific plot @@ -58,23 +58,22 @@ visualize axis={y axis={goto=min},z axis={goto=min}}, visualize axis={y axis={goto=max},z axis={goto=min}}, visualize axis={y axis={goto=min},z axis={goto=max}}, - visualize axis={y axis={goto=max},z axis={goto=max}} + visualize axis={y axis={goto=max},z axis={goto=max}}, }, y axis={ length=\pgfkeysvalueof{/tikz/data visualization/scientific 3d plot/length}, visualize axis={x axis={goto=min},z axis={goto=min}}, visualize axis={x axis={goto=max},z axis={goto=min}}, visualize axis={x axis={goto=min},z axis={goto=max}}, - visualize axis={x axis={goto=max},z axis={goto=max}} + visualize axis={x axis={goto=max},z axis={goto=max}}, }, z axis={ length=\pgfkeysvalueof{/tikz/data visualization/scientific 3d plot/length}, visualize axis={x axis={goto=min},y axis={goto=min}}, visualize axis={x axis={goto=max},y axis={goto=min}}, visualize axis={x axis={goto=min},y axis={goto=max}}, - visualize axis={x axis={goto=max},y axis={goto=max}} + visualize axis={x axis={goto=max},y axis={goto=max}}, }, - new line plot - } -} - + new line plot, + }, +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.barcharts.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.barcharts.code.tex index 40fa0e87169..3eefe0f81a7 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.barcharts.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.barcharts.code.tex @@ -7,10 +7,10 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.barcharts.code.tex,v 1.2 2008/07/21 06:22:22 tantau Exp $ +\ProvidesFileRCS{tikzlibrarydatavisualization.barcharts.code.tex} -\usetikzlibrary{datavisualization} -\usepgflibrary{datavisualization.barcharts} +\usetikzlibrary{datavisualization}% +\usepgflibrary{datavisualization.barcharts}% \tikzdatavisualizationset{% @@ -37,7 +37,7 @@ }, }, index/source/.initial=index, -} +}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.code.tex index ba79c22b33f..7f26cc00177 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.code.tex @@ -7,15 +7,15 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.code.tex,v 1.48 2015/05/18 17:01:16 tantau Exp $ +\ProvidesFileRCS{tikzlibrarydatavisualization.code.tex} -\usepgfmodule{datavisualization} -\usetikzlibrary{backgrounds} +\usepgfmodule{datavisualization}% +\usetikzlibrary{backgrounds}% \tikzset{/tikz/data visualization/.is family, /tikz/data visualization/.unknown/.code={ - \let\tikz@dv@key\pgfkeyscurrentname% + \let\tikz@dv@key\pgfkeyscurrentname% \pgfkeys{/tikz/\tikz@dv@key/.try={#1}}% \ifpgfkeyssuccess% \else% @@ -25,17 +25,17 @@ }, /tikz/data visualization/data/.unknown/.code={% % Redirect to /pgf/data - \let\tikz@dv@key\pgfkeyscurrentname% + \let\tikz@dv@key\pgfkeyscurrentname% \pgfkeys{/pgf/data/\tikz@dv@key/.try={#1}}% \ifpgfkeyssuccess% \else% \edef\pgf@temp{/errors/unknown key={/pgf/data/\tikz@dv@key}}% \expandafter\pgfkeys\expandafter{\pgf@temp{#1}}% \fi% - } -} + }, +}% -\def\tikzdatavisualizationset{\pgfqkeys{/tikz/data visualization}} +\def\tikzdatavisualizationset{\pgfqkeys{/tikz/data visualization}}% @@ -53,7 +53,7 @@ % "data" blocks. % % Syntax: data [options] % options specify an external source -% Syntax: data [options] { inline data } +% Syntax: data [options] { inline data } % % The optional arguments may either specify an % external data source or the data may follow inline. @@ -67,7 +67,7 @@ % % Syntax: data set [options] {name} = { ... } % Syntax: data set [options] {name} += { ... } -% Syntax: data set [options] {name} +% Syntax: data set [options] {name} % % The first syntax allows you to define a data set. The data block % inside {...} will be stored inside the data set @@ -83,7 +83,7 @@ % % A block starting with "info" or "info'" may contain any code. It % will be executed after the visualization (info) or before the -% visualization (info'). +% visualization (info'). % % % Options blocks. @@ -176,9 +176,9 @@ \pgfset{/pgf/data/continue code=\tikz@lib@dv@parse@loop}% % Now enter parse loop \tikz@lib@dv@parse@loop -} +}% -\def\tikz@lib@dv@parse@loop{% +\def\tikz@lib@dv@parse@loop{% \pgfutil@ifnextchar d\tikz@lib@dv@handle@data{% \pgfutil@ifnextchar ;\tikz@lib@dv@parse@end{% \pgfutil@ifnextchar \par\tikz@lib@dv@handle@par{% @@ -195,25 +195,25 @@ }% }% }% -} +}% \def\tikz@lib@dv@parse@end;{% % Go! \tikz@main@dv.survey()% \tikz@main@dv.visualize()% \endgroup% \tikz@path@do@at@end% -} -\def\tikz@lib@dv@handle@par\par{\tikz@lib@dv@parse@loop} +}% +\def\tikz@lib@dv@handle@par\par{\tikz@lib@dv@parse@loop}% \def\tikz@lib@dv@handle@options[#1]{% \tikzdatavisualizationset{#1}% \tikz@lib@dv@parse@loop% -} +}% \def\tikz@lib@dv@handle@beginscope scope{% \begingroup% \pgfutil@ifnextchar[\tikz@lib@dv@beg@opt{\tikz@lib@dv@beg@opt[]}%} -} +}% \def\tikz@lib@dv@beg@opt[#1]{% \pgfkeys{/pgf/data/.cd,/pgf/every data/.try,#1}% \pgf@dv@do@adddata{\pgfkeysvalueof{/pgf/data visualization/obj}.add data({{\begingroup\pgfkeys{/pgf/data/.cd,/pgf/every data/.try,#1}}})}% @@ -224,30 +224,30 @@ \tikzerror{Opening brace expected}% \tikz@lib@dv@parse@loop% }% -} +}% \def\tikz@lib@dv@handle@endscope{% \pgf@dv@do@adddata{\pgfkeysvalueof{/pgf/data visualization/obj}.add data(\endgroup)}% \endgroup% \afterassignment\tikz@lib@dv@parse@loop% \let\tikz@dummy=%get rid of \egroup -} +}% \def\tikz@lib@dv@handle@data data{% \pgfutil@ifnextchar g{\tikz@lib@dv@handle@data@group}{% \pgfutil@ifnextchar p{\tikz@lib@dv@handle@data@point}{% - \pgfdata}}} + \pgfdata}}}% -\def\tikz@lib@dv@handle@data@group group{\pgfutil@ifnextchar[{\tikz@lib@dv@handle@data@group@opt}{\tikz@lib@dv@handle@data@group@opt[]}}%} +\def\tikz@lib@dv@handle@data@group group{\pgfutil@ifnextchar[{\tikz@lib@dv@handle@data@group@opt}{\tikz@lib@dv@handle@data@group@opt[]}}%}% \def\tikz@lib@dv@handle@data@group@opt[#1]#2{% \pgfutil@ifnextchar={\tikz@lib@dv@handle@data@group@def{#1}{#2}}{% \pgfutil@ifnextchar+{\tikz@lib@dv@handle@data@group@extend{#1}{#2}}{% - \tikz@lib@dv@handle@data@group@use{#1}{#2}}}} + \tikz@lib@dv@handle@data@group@use{#1}{#2}}}}% \def\tikz@lib@dv@handle@data@group@def#1#2={% \pgfkeys{/pgf/data/new group=#2}% \tikz@lib@dv@handle@data@group@extend{#1}{#2}+=% -} +}% \def\tikz@lib@dv@handle@data@group@extend#1#2+={% \pgfutil@ifnextchar\bgroup{ @@ -260,40 +260,40 @@ \tikzerror{Opening brace expected}% \tikz@lib@dv@parse@loop% }% -} +}% \def\tikz@lib@dv@handle@data@group@use#1#2{% \pgfdata[#1,use group=#2]% -} +}% -\def\tikz@lib@dv@handle@data@point point{\pgfutil@ifnextchar[{\tikz@lib@dv@handle@data@point@opt}{\tikz@lib@dv@handle@data@point@opt[]}}%] +\def\tikz@lib@dv@handle@data@point point{\pgfutil@ifnextchar[{\tikz@lib@dv@handle@data@point@opt}{\tikz@lib@dv@handle@data@point@opt[]}}%]% \def\tikz@lib@dv@handle@data@point@opt[#1]{% - \pgf@dv@do@adddata{\pgfkeysvalueof{/pgf/data visualization/obj}.add data({{\bgroup\pgfkeys{/data point/.cd,#1}\pgfdatapoint\egroup}})}% - \tikz@lib@dv@parse@loop% -} + \pgf@dv@do@adddata{\pgfkeysvalueof{/pgf/data visualization/obj}.add data({{\bgroup\pgfkeys{/data point/.cd,#1}\pgfdatapoint\egroup}})}% + \tikz@lib@dv@parse@loop% +}% \def\tikz@lib@dv@handle@info info{% - \pgfutil@ifnextchar'{\tikz@lib@dv@handle@info@prime}{\tikz@lib@dv@handle@info@noprime}} + \pgfutil@ifnextchar'{\tikz@lib@dv@handle@info@prime}{\tikz@lib@dv@handle@info@noprime}}% \def\tikz@lib@dv@handle@info@noprime{% - \pgfutil@ifnextchar[{\tikz@lib@dv@handle@info@block@opt}{\tikz@lib@dv@handle@info@block@opt[]}}%} + \pgfutil@ifnextchar[{\tikz@lib@dv@handle@info@block@opt}{\tikz@lib@dv@handle@info@block@opt[]}}%}% \def\tikz@lib@dv@handle@info@block@opt[#1]#2{% \tikz@main@dv.after visualization({\scope[#1]#2\endscope})% \tikz@lib@dv@parse@loop -} +}% \def\tikz@lib@dv@handle@info@prime'{% - \pgfutil@ifnextchar[{\tikz@lib@dv@handle@info@block@opt@prime}{\tikz@lib@dv@handle@info@block@opt@prime[]}}%} + \pgfutil@ifnextchar[{\tikz@lib@dv@handle@info@block@opt@prime}{\tikz@lib@dv@handle@info@block@opt@prime[]}}%}% \def\tikz@lib@dv@handle@info@block@opt@prime[#1]#2{% \tikz@main@dv.before visualization({\scope[#1]#2\endscope})% \tikz@lib@dv@parse@loop -} +}% -\pgfset{/pgf/every data/.style={/tikz/every data/.try,/tikz/data visualization/every data/.try}} +\pgfset{/pgf/every data/.style={/tikz/every data/.try,/tikz/data visualization/every data/.try}}% % % Performing before/after stuff via keys -% +% \tikzdatavisualizationset{ before survey/.code=\tikz@main@dv.before survey({#1}), @@ -304,26 +304,26 @@ at end survey/.code=\tikz@main@dv.at end survey({#1}), at start visualization/.code=\tikz@main@dv.at start visualization({#1}), at end visualization/.code=\tikz@main@dv.at end visualization({#1}), -} +}% \def\tikz@lib@dv@alias@dv@bb{ \pgfnodealias{data bounding box}{data visualization bounding box}% \pgfkeys{/pgf/freeze local bounding box=data bounding box}% -} +}% % % The data point key % \tikzdatavisualizationset{ data point/.code={ - \pgf@dv@do@adddata{\pgfkeysvalueof{/pgf/data visualization/obj}.add data({{\bgroup\pgfkeys{/data point/.cd,#1}\pgfdatapoint\egroup}})}% + \pgf@dv@do@adddata{\pgfkeysvalueof{/pgf/data visualization/obj}.add data({{\bgroup\pgfkeys{/data point/.cd,#1}\pgfdatapoint\egroup}})}% } -} +}% % -% Object setup +% Object setup % % The following key is used to create objects for the rendering @@ -348,10 +348,10 @@ % The following styles may be useful: % % arg1 from key = use the contents of the given key as arg1. Similar -% for other args +% for other args % arg1 handle from key = the contents of the given key should contain % an object. Then arg1 will be a handle to this -% object. Similar for other args +% object. Similar for other args \tikzdatavisualizationset{% new object/.code={% @@ -368,7 +368,7 @@ new object/grab/store/.store in=\tikz@dv@grabbed@store, new object/grab/when/.store in=\tikz@dv@grabbed@when, new object/grab/.unknown/.code={},%ignore -} +}% \def\tikz@dv@newobject#1#2{% \def\tikz@dv@new@obj@store{#1}% @@ -406,8 +406,8 @@ \fi% \tikz@dv@new@after% \fi -} -\def\tikz@lib@notused{\tikz@lib@notused} +}% +\def\tikz@lib@notused{\tikz@lib@notused}% \def\tikz@dv@add@arg#1#2{% \ifx#2\tikz@lib@notused% @@ -416,7 +416,7 @@ \expandafter\expandafter\expandafter\pgf@marshal% \expandafter\expandafter\expandafter{\expandafter\pgf@marshal#1#2}% \fi% -} +}% \tikzdatavisualizationset{% new object/parse/.cd, @@ -449,12 +449,12 @@ arg6 handle from key/.code=\tikz@dv@handle@from@key{#1}{\tikz@dv@handle@f}{\tikz@dv@arg@f}, arg7 handle from key/.code=\tikz@dv@handle@from@key{#1}{\tikz@dv@handle@g}{\tikz@dv@arg@g}, arg8 handle from key/.code=\tikz@dv@handle@from@key{#1}{\tikz@dv@handle@h}{\tikz@dv@arg@h} -} +}% \def\tikz@dv@handle@from@key#1#2#3{% \pgfkeysvalueof{#1}.get handle(#2)% \def#3{#2}% -} +}% @@ -472,7 +472,7 @@ {% \tikzset{/data point/.cd,#1}% \pgfpointdvlocaldatapoint% -} +}% @@ -592,21 +592,21 @@ at ticks/.code={% \expandafter\pgfkeysalso\expandafter{\tikz@lib@dv@ticks@default@at}% \expandafter\pgfkeysalso\expandafter{\tikz@lib@dv@ticks@at}}, -} +}% -\def\tikz@lib@dv@add@#1#2{\pgfkeysaddvalue{/tikz/data visualization/#1}{}{,#2}} +\def\tikz@lib@dv@add@#1#2{\pgfkeysaddvalue{/tikz/data visualization/#1}{}{,#2}}% \def\tikz@dv@lib@parse@scaling#1 at#2and #3 at#4\pgf@stop{% \pgfmathsetmacro{\tikz@dv@lib@min@at}{#2} \pgfmathsetmacro{\tikz@dv@lib@max@at}{#4} \edef\tikz@temp{#1 at \tikz@dv@lib@min@at and #3 at \tikz@dv@lib@max@at}% -} +}% % Ticks at \tikzdatavisualizationset{ at/.code={\def\tikz@dv@at@list{#1}}, - also at/.code={\expandafter\def\expandafter\tikz@dv@at@list\expandafter{\tikz@dv@at@list,{#1}}}, + also at/.code={\expandafter\def\expandafter\tikz@dv@at@list\expandafter{\tikz@dv@at@list,#1}}, major at/.style={major={at={#1}}}, minor at/.style={minor={at={#1}}}, subminor at/.style={subminor={at={#1}}}, @@ -615,19 +615,19 @@ subminor also at/.style={subminor={also at={#1}}}, options at/.code={\expandafter\def\expandafter\tikz@dv@style@at@list\expandafter{\tikz@dv@style@at@list,{#1}}}, no tick text at/.style={options at={#1 as [no tick text]}} -} +}% \def\tikz@lib@dv@do@axis#1{% \def\tikz@marshal{#1=} \expandafter\expandafter\expandafter\tikzdatavisualizationset% \expandafter\expandafter\expandafter{\expandafter\tikz@marshal\expandafter{\tikz@lib@dv@args}} -} +}% \def\tikz@do@axis@options#1#2{ \pgfkeys{/tikz/data visualization/axis options/.cd,#2} \def\tikz@dv@axis{#1} -} +}% \let\tikz@dv@axis\pgfutil@empty \tikzdatavisualizationset{ @@ -656,7 +656,7 @@ font=\pgfutil@font@small, } } -} +}% \tikzset{ @@ -707,22 +707,22 @@ grid/.style={\tikz@dv@axis/grid at/.append={,#1}}, grid/.default=at default ticks, visualize grid/.code=\expandafter\tikz@lib@dv@gv\expandafter{\tikz@dv@axis}{#1}, - % + % ticks and grid/.style={\tikz@dv@axis/ticks at/.append={,#1},\tikz@dv@axis/grid at/.append={,#1}}, - % + % % Visualizing axis labels - % + % visualize label/.code=\expandafter\tikz@lib@dv@lv\expandafter{\tikz@dv@axis}{#1}, -} +}% -\def\tikz@lib@dv@auto@attribute{\tikz@lib@dv@auto@attribute} +\def\tikz@lib@dv@auto@attribute{\tikz@lib@dv@auto@attribute}% % Range options \tikzdatavisualizationset{ axis options/.cd, - % - % Including a value in the range + % + % Including a value in the range % include value/.style={% /tikz/data visualization/before survey/.expanded={% @@ -732,9 +732,9 @@ }% }% }, - % + % % Directly setting the min or max - % + % min value/.style={ /tikz/data visualization/at end survey/.expanded={% \noexpand\pgfkeysgetvalue{\tikz@dv@axis/scaling mapper}\noexpand\tikz@dv@axis@mapper% @@ -747,13 +747,13 @@ \noexpand\tikz@lib@dv@set\noexpand\tikz@dv@axis@mapper{#1}{max}% } }, -} +}% \def\tikz@lib@dv@set#1#2#3{% \pgfdvmathenter{\pgf@dv@value}{#2}% #1.get in range interval()% \pgfdvinrangeinterval.let #3(\pgf@dv@value)% -} +}% % Layer options \tikzdatavisualizationset{ @@ -761,7 +761,7 @@ ticks layer/.style=on background layer, ticks node layer/.style=, grid layer/.style=on background layer, -} +}% % Axis visualization @@ -773,7 +773,7 @@ \tikzdatavisualizationset{ axes actions/.append={\tikz@lib@dv@show@axis{#1}{#2}} } -} +}% \def\tikz@lib@dv@show@axis#1#2{% \scope[data visualization/axis layer,/tikz/data visualization/.cd,low=min,high=max,every axis/.try,#2] @@ -793,7 +793,7 @@ } }; \endscope -} +}% \def\tikz@dv@goto#1#2{% \edef\pgf@@temp{#2}% @@ -814,23 +814,23 @@ \pgfkeysvalueof{#1/scaling mapper}.set in to(#2)% \fi% \fi% -} +}% \def\tikz@dv@goto@pos#1#2{% \pgfkeyssetvalue{/data point/\pgfkeysvalueof{#1/attribute}/out pos}{#2}% -} +}% + +\def\tikz@lib@dv@padded@min@text{padded min}% +\def\tikz@lib@dv@padded@max@text{padded max}% -\def\tikz@lib@dv@padded@min@text{padded min} -\def\tikz@lib@dv@padded@max@text{padded max} - \def\tikz@lib@dv@special@at#1#2{% % Ok, calculate direction vector: \tikzpointandanchordirection{\pgfkeysvalueof{#1/scaling mapper}.set in to(min)}{\pgfkeysvalueof{#1/scaling mapper}.set in to(max)} \tikzset{anchor/.expanded=#2} -} +}% -% Ticks visualization +% Ticks visualization % % #1 = name of axis on which ticks should be shown % #2 = options for the visualization @@ -842,7 +842,7 @@ minor ticks actions/.append={\tikz@lib@dv@show@ticks{minor}{#1}{#2}}, subminor ticks actions/.append={\tikz@lib@dv@show@ticks{subminor}{#1}{#2}} } -} +}% \def\tikz@lib@dv@default@action#1#2#3{% \let\tikz@marshal\pgfutil@empty% @@ -867,7 +867,7 @@ \fi }% \pgfkeyslet{#2/default #1 at}\tikz@marshal -} +}% \def\tikz@lib@dv@show@ticks#1#2#3{% % First, check whether there is anything to do at all: @@ -896,7 +896,7 @@ \expandafter\tikzdatavisualizationset\expandafter{\tikz@temp} \pgfkeysgetvalue{/tikz/data visualization/\pgfkeysvalueof{/tikz/data visualization/direction axis}/scaling mapper}\pgf@dv@tick@dir@mapper % Ok, now it's time to draw the ticks! - \foreach \tikz@dv@tick@pos[count=\tikz@dv@tick@count] in \tikz@dv@at@list + \foreach \tikz@dv@tick@pos[count=\tikz@dv@tick@count] in \tikz@dv@at@list { \ifx\tikz@dv@tick@pos\pgfutil@empty \c@pgf@counta=\tikz@dv@tick@count\relax% @@ -948,32 +948,32 @@ \path [/tikz/data visualization/styling] (\tikz@dv@max@tick) \tikz@dv@handle@tick{\tikz@dv@max@anchor}; \endscope \fi - \fi + \fi } \endscope } \fi -} +}% \def\tikz@lib@dv@parse#1\pgf@stop{% \pgfutil@in@{as}{#1}% \ifpgfutil@in@% - \tikz@lib@dv@parse@as#1\pgf@stop% + \tikz@lib@dv@parse@as#1\pgf@stop% \else% \tikz@lib@dv@parse@as#1as\tikz@lib@dv@typeset\pgf@stop% \fi% -} +}% \def\tikz@lib@dv@parse@as#1as{% \def\tikz@dv@tick@pos{#1}% \pgfutil@ifnextchar[{\tikz@lib@dv@parse@as@opt}{\tikz@lib@dv@parse@as@opt[]}%] -} +}% \def\tikz@lib@dv@parse@as@opt[#1]{% \def\tikz@lib@dv@tick@opt{#1}% \pgfutil@ifnextchar\pgf@stop{\tikz@lib@dv@parse@as@text\tikz@lib@dv@typeset}{\tikz@lib@dv@parse@as@text} -} +}% \def\tikz@lib@dv@parse@as@text#1\pgf@stop{% \def\tikz@lib@dv@tick@text{#1}% -} +}% \def\tikz@lib@dv@typeset{% \pgfdvmathenter{\tikz@lib@dv@typesetnum}{\tikz@dv@tick@pos}% @@ -981,7 +981,7 @@ \pgfkeysvalueof{/tikz/data visualization/tick prefix}% \pgfkeys{/tikz/data visualization/tick typesetter=\tikz@lib@dv@typesetnum}% \pgfkeysvalueof{/tikz/data visualization/tick suffix}% -} +}% \newif\iftikz@dv@min@tick@node \newif\iftikz@dv@max@tick@node @@ -996,7 +996,7 @@ \fi \expandafter}% \tikz@dv@tick@marshal -} +}% \def\tikz@lib@handle@at@style{% @@ -1016,7 +1016,7 @@ \expandafter\tikzdatavisualizationset\expandafter{\tikz@dv@lib@this@at@style}% \fi% \fi% -} +}% \def\tikz@dv@lib@handle@one@at@style#1as#2[#3]#4\tikz@stop{% \pgfdvmathenter{\tikz@lib@dv@at@math@var}{#1}% @@ -1025,7 +1025,7 @@ % Bingo! \expandafter\gdef\expandafter\tikz@dv@lib@this@at@style\expandafter{\tikz@dv@lib@this@at@style,#3}% \fi% -} +}% % Help function @@ -1042,12 +1042,12 @@ \tikz@auto@anchor@prime \xdef\tikz@dv@min@anchor{\tikz@anchor} } -} +}% -% Grid visualization +% Grid visualization % % #1 = name of axis on which grid lines should be shown % #2 = options for the visualization @@ -1059,7 +1059,7 @@ minor grid actions/.append={\tikz@lib@dv@show@grid{minor}{#1}{#2}}, subminor grid actions/.append={\tikz@lib@dv@show@grid{subminor}{#1}{#2}}, } -} +}% \def\tikz@lib@dv@show@grid#1#2#3{% % First, check whether there is anything to do at all: @@ -1090,7 +1090,7 @@ \expandafter\tikzdatavisualizationset\expandafter{\tikz@temp} \edef\tikz@lib@dv@dir@axis{/tikz/data visualization/\pgfkeysvalueof{/tikz/data visualization/direction axis}}% % Ok, now it's time to draw the grid! - \foreach \tikz@dv@grid@pos in \tikz@dv@at@list + \foreach \tikz@dv@grid@pos in \tikz@dv@at@list { \ifx\tikz@dv@grid@pos\pgfutil@empty \else @@ -1110,7 +1110,7 @@ \endscope } \fi -} +}% @@ -1120,15 +1120,15 @@ -% -% Label visualization +% +% Label visualization % \def\tikz@lib@dv@lv#1#2{ \tikzdatavisualizationset{ label actions/.append={\tikz@lib@dv@show@label{#1}{#2}} } -} +}% \def\tikz@lib@dv@show@label#1#2{% % First, check whether there is anything to do at all: @@ -1140,14 +1140,14 @@ \expandafter\tikz@lib@dv@parse@node\tikz@dv@lib@label\pgf@stop \endscope \fi -} +}% -\def\tikz@lib@dv@parse@node{\pgfutil@ifnextchar[\tikz@lib@dv@parse@node@opt{\tikz@lib@dv@parse@node@opt[]}}%} +\def\tikz@lib@dv@parse@node{\pgfutil@ifnextchar[\tikz@lib@dv@parse@node@opt{\tikz@lib@dv@parse@node@opt[]}}%}% \def\tikz@lib@dv@parse@node@opt[#1]#2\pgf@stop{ \tikzdatavisualizationset{#1} - \pgftransformshift{\pgfpointdvlocaldatapoint}% + \pgftransformshift{\pgfpointdvlocaldatapoint}% \node [/tikz/data visualization/node styling] {#2}; -} +}% @@ -1164,8 +1164,8 @@ tick typesetter/.code=\pgfmathprintnumber{#1}, tick prefix/.initial=, tick suffix/.initial=, - tick unit/.style={tick suffix={$\,\rm#1$}},% this is an alias -} + tick unit/.style={tick suffix={$\,\pgfutil@font@normalfont#1$}},% this is an alias +}% \def\tikz@lib@dv@compute@at@linear{% % Setup about: @@ -1221,14 +1221,14 @@ \pgfdvmathadd{\tikz@lib@dv@current}{\tikz@lib@dv@current}{\tikz@dv@lib@step}% \pgfdvmathifless{\tikz@lib@dv@current}{\tikz@lib@dv@max@plus@epsilon}{\tikz@lib@dv@continuetrue}{\tikz@lib@dv@continuefalse}% \iftikz@lib@dv@continue% - \repeat% + \repeat% \tikzdatavisualizationset{major/.expanded={at={\tikz@lib@dv@ats}},minor/.expanded={at={\tikz@lib@dv@minor@ats}}}% }{% \pgfdvmathexitbyserializing{\tikz@temp}{\pgfdvmin}% \tikzdatavisualizationset{major/.expanded={at={\tikz@temp}}}% - }% + }% \fi% -} +}% \newif\iftikz@lib@dv@continue \def\tikz@lib@dv@subloop{ @@ -1243,13 +1243,13 @@ \let\tikz@lib@dv@next=\relax \fi \tikz@lib@dv@next -} +}% % % Ticks about settings -% +% \tikzdatavisualizationset{ about/.style={compute step=\tikz@lib@dv@compute@about{#1}}, @@ -1265,7 +1265,7 @@ few/.style={about=3}, some/.style={about=5}, many/.style={about=10}, -} +}% \def\tikz@lib@dv@about@linear#1{% \tikz@lib@dv@mapper.get in range interval()% @@ -1287,18 +1287,18 @@ \ifdim\pgf@xc<10pt% \pgfmathfloatcreate{\tikz@lib@dv@flags}{\pgf@sys@tonumber{\pgf@xc}}{\tikz@lib@dv@exp}% \else - \begingroup - \c@pgf@countd=\tikz@lib@dv@exp - \advance\c@pgf@countd by1 - \edef\tikz@lib@dv@exp{\the\c@pgf@countd}% - \pgfmath@smuggleone\tikz@lib@dv@exp - \endgroup - \divide\pgf@xc by 10\relax + \begingroup + \c@pgf@countd=\tikz@lib@dv@exp + \advance\c@pgf@countd by1 + \edef\tikz@lib@dv@exp{\the\c@pgf@countd}% + \pgfmath@smuggleone\tikz@lib@dv@exp + \endgroup + \divide\pgf@xc by 10\relax \pgfmathfloatcreate{\tikz@lib@dv@flags}{\pgf@sys@tonumber{\pgf@xc}}{\tikz@lib@dv@exp}% \fi \pgfmathfloattofixed{\pgfmathresult}% \let\tikz@lib@dv@step=\pgfmathresult -} +}% @@ -1319,7 +1319,7 @@ \tikz@dv@axis/scaling/default=1 at 0 and 10 at 1, exponential steps } -} +}% \def\tikz@lib@dv@compute@at@log{% % Setup about: @@ -1376,10 +1376,10 @@ \pgfdvmathadd{\tikz@lib@dv@current}{\tikz@lib@dv@current}{\tikz@dv@lib@step}% \pgfdvmathifless{\tikz@lib@dv@current}{\tikz@lib@dv@max@plus@epsilon}{\tikz@lib@dv@continuetrue}{\tikz@lib@dv@continuefalse}% \iftikz@lib@dv@continue% - \repeat% + \repeat% \tikzdatavisualizationset{major/.expanded={at={\tikz@lib@dv@ats}},minor/.expanded={at={\tikz@lib@dv@minor@ats}}}% \fi% -} +}% \newif\iftikz@lib@dv@continue @@ -1407,7 +1407,7 @@ \fi% \pgfmathfloattofixed{\pgfmathresult} \let\tikz@lib@dv@step=\pgfmathresult -} +}% @@ -1431,7 +1431,7 @@ #1/scaling/default/.initial=0 at 0 and 1 at 1cm, #1/unit vector/.initial=\pgfqpoint{1pt}{0pt}, } -} +}% \tikzset{ /tikz/data visualization/axis options/.cd, @@ -1439,11 +1439,11 @@ length/.style={\tikz@dv@axis/scaling=min at 0 and max at #1}, unit length/.code={\tikz@dv@parse@unit@length{#1}}, power unit length/.style={\tikz@dv@axis/scaling=1 at 0 and 10 at #1} -} +}% \def\tikz@lib@dv@uv#1{% \pgfkeyssetvalue{\tikz@dv@axis/unit vector}{#1} -} +}% \def\tikz@dv@parse@unit@length#1{ \pgfutil@in@{per}{#1} @@ -1452,14 +1452,14 @@ \else% \tikz@dv@parse@unit@length@#1per1units\pgf@stop% \fi% -} +}% \def\tikz@dv@parse@unit@length@#1per#2units\pgf@stop{ \pgfkeysalso{\tikz@dv@axis/scaling=0 at 0 and #2 at #1} -} +}% -% -% Common visualizer interface +% +% Common visualizer interface % \tikzdatavisualizationset{ @@ -1492,7 +1492,7 @@ }, style sheet/.style={/data point/set/.style sheet={#1}}, /pgf/data/set/.style={/data point/set=#1}, -} +}% \tikzdatavisualizationset{ new sub visualizer/.style n args={4}{ @@ -1516,14 +1516,14 @@ /tikz/data visualization/visualizers/#4/#1/styling/.style=, /tikz/data visualization/visualizers/#4/#1/label in legend options/.style={#3}, } -} +}% \def\tikz@do@visualizer#1#2{% \tikzdatavisualizationset{ #2=#1 } -} +}% \newcount\tikzdvvisualizercounter @@ -1542,12 +1542,12 @@ polygon/.style={straight cycle},% alias gap line/.style={@set={\pgfplothandlergaplineto}{default label in legend path}}, gap cycle/.style={@set={\pgfplothandlergapcycle}{gap circular label in legend line}} -} +}% -% -% Label visualizer +% +% Label visualizer % \tikzdatavisualizationset{ @@ -1595,7 +1595,7 @@ }, % Label style text colored/.style={node style={text=visualizer color}} -} +}% \def\tikz@create@label@count#1{ \tikzdatavisualizationset{ @@ -1607,7 +1607,7 @@ after creation={\tikzdvobj.set filter(\pgfdvvisualizerfilter{#1})} } } -} +}% \pgfkeys{ /tikz/data visualization/visualizer label options/.cd, @@ -1635,7 +1635,7 @@ text colored/.style=/tikz/data visualization/text colored, pin angle/.store in=\tikz@lib@dv@pin@dir, pin length/.style={node style={pin distance={#1}}}, -} +}% \let\tikz@lib@dv@pin@sign\pgfutil@empty @@ -1688,8 +1688,8 @@ #1/anchor/.initial=west, #1/at/.initial=(data visualization bounding box.east), #1/matrix node styling/.style={row sep=0pt,column sep=.8em}, - % - % + % + % % #1/.code={ \let\tikz@temp\tikz@dv@legend% @@ -1703,12 +1703,12 @@ new legend, main legend={#1} } -} +}% \def\tikz@do@legend@options#1#2{ \pgfkeys{/tikz/data visualization/legend options/.cd,#2} \def\tikz@dv@legend{#1} -} +}% \let\tikz@dv@legend\pgfutil@empty @@ -1731,9 +1731,9 @@ left then down/.style={\tikz@dv@legend/@strategy=left then down}, right then up/.style={\tikz@dv@legend/@strategy=right then up}, left then up/.style={\tikz@dv@legend/@strategy=left then up}, - % - % Where to put the legend - % + % + % Where to put the legend + % anchor/.style={\tikz@dv@legend/anchor={#1}}, at/.style={\tikz@dv@legend/at={#1}}, % Outer placements @@ -1789,9 +1789,9 @@ anchor=south, }, every new legend/.style={east outside,label style=text right}, - % + % % Inner placements - % + % % First, styling every legend inside/.style={ opaque=white, @@ -1905,19 +1905,19 @@ anchor=north east, every legend inside }, - % % - % - % Label text styling - % + % + % + % Label text styling + % label style/.style={ matrix node style={/tikz/data visualization/every label in legend/.append style={#1}} }, - % - % Styling + % + % Styling % matrix node style/.style={\tikz@dv@legend/matrix node styling/.append style={#1}}, -} +}% \tikzdatavisualizationset{ @@ -1925,25 +1925,25 @@ \begingroup \pgfkeys{/tikz/data visualization/legend entry options/.cd,#1} \pgfkeysgetvalue{/tikz/data visualization/legend entry options/legend}\tikz@dv@temp@legend - \global\let\tikz@dv@temp@legend\tikz@dv@temp@legend + \global\let\tikz@dv@temp@legend\tikz@dv@temp@legend \endgroup \tikzdatavisualizationset{new legend/.expanded=\tikz@dv@temp@legend}% \expandafter\tikz@dv@add@legend@entry\expandafter{\tikz@dv@temp@legend}{#1} } -} +}% \def\tikz@dv@add@legend@entry#1#2{ \tikz@main@dv.at start survey({ \pgfkeysgetvalue{/tikz/data visualization/#1/obj}\pgf@temp \pgf@temp.add entry(\tikz@dv@render@legend@entry{legend=#1,#2}) }) -} +}% \def\tikz@dv@render@legend@entry#1{ \pgfkeys{/tikz/data visualization/.cd,every data set label} \pgfkeys{/tikz/data visualization/legend entry options/.cd, /tikz/data visualization/every label in legend,#1}% - \pgfkeysgetvalue{/tikz/data visualization/legend entry options/text}\tikz@dv@temp@lab + \pgfkeysgetvalue{/tikz/data visualization/legend entry options/text}\tikz@dv@temp@lab \pgfkeysgetvalue{/tikz/data visualization/@node styling}\tikz@dv@temp@style \pgfkeysgetvalue{/tikz/data visualization/legend entry options/setup}\tikz@dv@temp@setup \pgfkeysgetvalue{/tikz/data visualization/legend entry options/visualizer in legend styling}\tikz@dv@temp@visual@styling @@ -1959,18 +1959,18 @@ \fi \endscope \endscope -} +}% -\def\tikz@dv@pre@height{\hbox{\vrule height .75em width0pt}} -\def\tikz@dv@post@height{\hbox{\vrule depth .25em width0pt}} +\def\tikz@dv@pre@height{\hbox{\vrule height .75em width0pt}}% +\def\tikz@dv@post@height{\hbox{\vrule depth .25em width0pt}}% \pgfkeys{ /tikz/data visualization/legend entry options/.cd, - % + % % General options - % + % text/.initial=, node style/.style={/tikz/data visualization/node style={#1}}, legend/.initial=main legend, @@ -1978,9 +1978,9 @@ visualizer in legend/.initial=, visualizer in legend styling/.initial=, visualizer in legend style/.style={visualizer in legend styling/.append={,#1}}, - % + % % Legend visualizers for plots - % + % text right/.style={ node style={anchor=mid west,inner ysep=1pt,inner xsep=0pt,reset cm,xshift=.333em}, visualizer in legend style={reset cm}, @@ -1995,7 +1995,7 @@ /utils/exec=\tikz@lib@dv@text@onlytrue }, text colored/.style=/tikz/data visualization/text colored, -} +}% \let\tikz@lib@dv@pin@dir\pgfutil@empty \newif\iftikz@lib@dv@text@only @@ -2028,7 +2028,7 @@ style/.style={/tikz/data visualization/visualizers/\tikz@visualizer/styling/.append style={,#1}}, label in legend options/.style={/tikz/data visualization/visualizers/\tikz@visualizer/label in legend options/.append style={,#1}}, ignore style sheets/.style={/tikz/data visualization/visualizers/\tikz@visualizer/signal/.code=,/utils/exec=\advance\tikzdvvisualizercounter by -1\relax}, -} +}% \def\tikz@dv@new@label@in@legend@for@visualizer#1#2{ \tikzdatavisualizationset{ @@ -2043,7 +2043,7 @@ #2, } } -} +}% \def\tikz@dv@legend@entry@as@example{ \pgfkeysgetvalue{/data point/set}{\tikz@visualizer} @@ -2063,7 +2063,7 @@ { \pgfplotstreampoint{\expandafter\tikz@scan@one@point\expandafter\pgfutil@firstofone\coordinate} } \pgfplotstreamend \pgfkeysvalueof{/data point/\tikz@visualizer/execute at end} -} +}% \tikzdatavisualizationset{ @@ -2098,7 +2098,7 @@ ([xshift=-1em]270:.9em and .35ex),% ([xshift=-1em]315:.9em and .35ex)},% label in legend mark coordinates={([xshift=-1em]120:.9em and .35ex),([xshift=-1em]-60:.9em and .35ex)}, - }, + }, gap circular label in legend line/.style={ label in legend line coordinates={% ([xshift=-1em,yshift=.2ex]90:1.4ex and 0.9ex),% @@ -2112,15 +2112,15 @@ ([xshift=-1em,yshift=.2ex]234:1.4ex and 0.9ex),% ([xshift=-1em,yshift=.2ex]306:1.4ex and 0.9ex),% ([xshift=-1em,yshift=.2ex]18:1.4ex and 0.9ex)} - }, + }, default label in legend path/.style={zig zag label in legend line}, default label in legend closed path/.style={circular label in legend line}, default label in legend mark/.style={label in legend one mark}, -} +}% \def\tikz@dv@legend@entry@visualizer@visualizer{ -} +}% @@ -2171,7 +2171,7 @@ #1={no lines} }, visualize as scatter/.default=scatter -} +}% \def\tikz@dv@plot@mark@maker{ \let\tikz@options=\pgfutil@empty% @@ -2183,7 +2183,7 @@ \else \pgfplothandlermark{\tikz@transform\pgfuseplotmark{\tikz@plot@mark}} \fi -} +}% @@ -2211,13 +2211,13 @@ #1={} }, visualize as rectangles/.default=rectangles, - % - % + % + % % visualizer options/.cd, attribute 1/.style={/data point/\tikz@visualizer/attribute 1=#1}, attribute 2/.style={/data point/\tikz@visualizer/attribute 2=#1}, -} +}% @@ -2231,14 +2231,14 @@ { \pgfplotstreampoint{\expandafter\tikz@scan@one@point\expandafter\pgfutil@firstofone\coordinate} } \pgfplotstreamend \pgfkeysvalueof{/data point/\tikz@visualizer/execute at end} -} +}% % % Style sheets -% +% % Style sheet handler @@ -2248,20 +2248,20 @@ \noexpand \tikz@dv@temp.default connects() } \pgf@marshal -} +}% \tikzset{ visualizer color/.code=\colorlet{visualizer color}{#1}, visualizer color=black -} +}% % Default style sheets \pgfdvdeclarestylesheet{vary thickness} { default style/.style={line width={0.3pt+#1*0.2pt}} -} - +}% + \pgfdvdeclarestylesheet{vary dashing} { default style/.style=solid, @@ -2274,7 +2274,7 @@ 7/.style={dash pattern=on 8\pgflinewidth off 2\pgflinewidth on 1.5\pgflinewidth off 1.5\pgflinewidth on 1.5\pgflinewidth off 1.5\pgflinewidth on 1.5\pgflinewidth off 1.5\pgflinewidth} -} +}% \pgfdvdeclarestylesheet{vary thickness and dashing} { @@ -2336,8 +2336,8 @@ 1.5\pgflinewidth off 1.5\pgflinewidth on 1.5\pgflinewidth off 1.5\pgflinewidth on 1.5\pgflinewidth off 1.5\pgflinewidth, thick - } -} + } +}% \pgfdvdeclarestylesheet{strong colors} @@ -2349,7 +2349,7 @@ 4/.style={visualizer color=green!60!black}, 5/.style={visualizer color=orange!80!black}, 6/.style={visualizer color=black!60} -} +}% \pgfdvdeclarestylesheet{cross marks} @@ -2361,56 +2361,56 @@ 4/.style={mark=Mercedes star flipped,every mark/.append style=thin,mark size=2pt}, 5/.style={mark=star,every mark/.append style=thin,mark size=2pt}, 6/.style={mark=10-pointed star,every mark/.append style={line width=.3pt,mark size=1.8pt}} -} +}% \pgfdvdeclarestylesheet{* mark} { default style/.style={mark=*,every mark/.append style=thin,mark size=1.4pt}, -} +}% \pgfdvdeclarestylesheet{dot mark} { default style/.style={mark=*,every mark/.append style=thin,mark size=0.6pt}, -} +}% \pgfdvdeclarestylesheet{o mark} { default style/.style={mark=o,every mark/.append style=thin,mark size=1.4pt}, -} +}% % Declare a color series style sheet -% +% % #1 = name of the style sheet % #2 = color model % #3 = initial color % #4 = step -% +% % Description: -% +% % This function declares a style sheet that changes colors according % to the value of the attribute. No test is made that the attribute is % a number. -\def\tikzdvdeclarestylesheetcolorseries#1#2#3#4{ - \definecolorseries{tikzdvcolorseries#1}{#2}{step}[#2]{#3}{#4} - \resetcolorseries{tikzdvcolorseries#1} +\def\tikzdvdeclarestylesheetcolorseries#1#2#3#4{% + \definecolorseries{tikzdvcolorseries#1}{#2}{step}[#2]{#3}{#4}% + \resetcolorseries{tikzdvcolorseries#1}% \pgfdvdeclarestylesheet{#1} { default style/.style={ /utils/exec=\colorlet{tikz@dv@temp}[rgb]{tikzdvcolorseries#1!![##1]}, visualizer color=tikz@dv@temp } - } -} + }% +}% -\tikzdvdeclarestylesheetcolorseries{vary hue}{hsb}{.4,0.9,0.8}{.213,0,0} -\tikzdvdeclarestylesheetcolorseries{shades of blue}{hsb}{.65,1.4,1}{0,-.4,-.0} -\tikzdvdeclarestylesheetcolorseries{shades of red}{hsb}{0,1.4,1}{0,-.4,-.0} -\tikzdvdeclarestylesheetcolorseries{gray scale}{hsb}{0,0,-.34}{0,0,.34} +\tikzdvdeclarestylesheetcolorseries{vary hue}{hsb}{.4,0.9,0.8}{.213,0,0}% +\tikzdvdeclarestylesheetcolorseries{shades of blue}{hsb}{.65,1.4,1}{0,-.4,-.0}% +\tikzdvdeclarestylesheetcolorseries{shades of red}{hsb}{0,1.4,1}{0,-.4,-.0}% +\tikzdvdeclarestylesheetcolorseries{gray scale}{hsb}{0,0,-.34}{0,0,.34}% @@ -2442,7 +2442,7 @@ v axis={attribute=v,unit vector={(0cm,1pt)}} }, uv axes/.style={u axis={#1},v axis={#1}}, -} +}% \tikzdatavisualizationset{ xyz Cartesian cabinet/.style={ @@ -2457,12 +2457,12 @@ w axis={attribute=w,unit vector={(-0.353553pt,-0.353553pt)}} } uvw axes/.style={u axis={#1},v axis={#1},w axis={#1}}, -} +}% -% -% Create a new axis system +% +% Create a new axis system % \tikzdatavisualizationset{ @@ -2477,7 +2477,7 @@ #4, } } -} +}% % The school book axes @@ -2489,9 +2489,9 @@ % scaling is done by default, rather one unit equals one 1cm. This % ensures that the even when multiple plots are created, the same % scaling will be used each time. -% +% % To change the scaling, say "all axes={unit length=1mm}" for -% instance. +% instance. \tikzdatavisualizationset{ new axis system={school book axes}{% @@ -2527,7 +2527,7 @@ }, school book axes/.cd, % Possible axis positionings: - % + % % Place labels at the ends of the axes % standard labels/.style={ @@ -2546,11 +2546,11 @@ } } }, - % - % Basic unit - % + % + % Basic unit + % unit/.initial=1, -} +}% @@ -2559,7 +2559,7 @@ % % The scientific axes is a 2d plot that has a predetermined width and % height. The data is then scaled in such a way that it fits inside -% this given rectangle. +% this given rectangle. \tikzdatavisualizationset{ new axis system={scientific axes}{% @@ -2641,8 +2641,8 @@ } }, % Possible axis positionings: - % - % Place axes labels below and left, where left label is rotated + % + % Place axes labels below and left, where left label is rotated % standard labels/.style={ /tikz/data visualization/@make labels/.style={ @@ -2668,7 +2668,7 @@ } } }, - % + % % Place axes labels below and left, no rotation % upright labels/.style={ @@ -2693,9 +2693,9 @@ } } } - } + } }, - % + % % Place axes at the ends of the axes % end labels/.style={ @@ -2722,9 +2722,8 @@ } } } -} +}% \endinput - diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.formats.functions.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.formats.functions.code.tex index 4a4d0896ec8..40632212a0d 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.formats.functions.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.formats.functions.code.tex @@ -7,10 +7,10 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.formats.functions.code.tex,v 1.1 2008/12/09 00:12:10 tantau Exp $ +\ProvidesFileRCS{tikzlibrarydatavisualization.formats.functions.code.tex} -\usetikzlibrary{datavisualization} -\usepgflibrary{datavisualization.formats.functions} +\usetikzlibrary{datavisualization}% +\usepgflibrary{datavisualization.formats.functions}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.polar.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.polar.code.tex index 1615f0d1bfc..137e9964cb7 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.polar.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.polar.code.tex @@ -7,10 +7,10 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.polar.code.tex,v 1.8 2011/05/06 11:15:33 tantau Exp $ +\ProvidesFileRCS{tikzlibrarydatavisualization.polar.code.tex} -\usetikzlibrary{datavisualization} -\usepgflibrary{datavisualization.polar} +\usetikzlibrary{datavisualization}% +\usepgflibrary{datavisualization.polar}% \tikzdatavisualizationset{% @@ -32,13 +32,13 @@ /tikz/data visualization/#1/unit vector 90 degrees/.initial=\pgfqpoint{0pt}{1pt}, }, new polar axes/.default={angle axis}{radius axis} -} +}% \def\tikz@lib@dv@polar@a#1{ \pgfkeyssetvalue{\tikz@dv@axis/unit vector 0 degrees}{#1} -} +}% \def\tikz@lib@dv@polar@b#1{ \pgfkeyssetvalue{\tikz@dv@axis/unit vector 90 degrees}{#1} -} +}% @@ -54,7 +54,7 @@ }, degrees/.style={\tikz@dv@axis/scaling=0 at 0 and 1 at 1}, radians/.style={\tikz@dv@axis/scaling=0 at 0 and 0.03141592653589793 at 1.8}, -} +}% @@ -150,27 +150,27 @@ }, major={ options at=6.2831985e0 as [{style={draw=none},no tick text}], - options at=6.2831192e0 as [{style={draw=none},no tick text}], - options at=6.2830794e0 as [{style={draw=none},no tick text}], - options at=6.2828787e0 as [{style={draw=none},no tick text}], - options at=6.2831598e0 as [{style={draw=none},no tick text}], + options at=6.2831192e0 as [{style={draw=none},no tick text}], + options at=6.2830794e0 as [{style={draw=none},no tick text}], + options at=6.2828787e0 as [{style={draw=none},no tick text}], + options at=6.2831598e0 as [{style={draw=none},no tick text}], options at=-3.1415991e0 as [{style={draw=none},no tick text}], options at=-3.1415802e0 as [{style={draw=none},no tick text}], options at=-3.1415602e0 as [{style={draw=none},no tick text}], options at=-3.14153961e0 as [{style={draw=none},no tick text}], options at=-3.1414406e0 as [{style={draw=none},no tick text}], - } + } } } }, @make labels/.style={}, -} +}% \tikzdatavisualizationset{ scientific polar axes/.cd, - % - % - % + % + % + % outer ticks/.style={ /tikz/data visualization/@make axes/.style={ radius axis={ @@ -233,8 +233,8 @@ /tikz/data visualization/@visualize zero/.style={@clean visualize zero={##1}}, }, radius/.initial=3.25cm, - % - % First quadrant + % + % First quadrant % 0 to pi half/.style={ @setup axes/.style={ @@ -282,8 +282,8 @@ } } }, - % - % Fourth quadrant + % + % Fourth quadrant % -pi half to 0/.style={ @setup axes/.style={ @@ -331,8 +331,8 @@ } } }, - % - % Upper half + % + % Upper half % 0 to pi/.style={ @setup axes/.style={ @@ -388,8 +388,8 @@ } } }, - % - % Lower half + % + % Lower half % lower half/.style={ @setup axes/.style={ @@ -417,7 +417,7 @@ } } }, - % + % % Right half % -pi half to pi half/.style={ @@ -474,8 +474,8 @@ } } }, - % - % Left half + % + % Left half % left half/.style={ @setup axes/.style={ @@ -503,9 +503,9 @@ } } }, - % - % Full circle - % + % + % Full circle + % 0 to 2pi/.style={ @setup axes/.style={ angle axis={min value=0, max value=6.283185307179586}, @@ -542,7 +542,7 @@ @clean radius axes at={{0}{low}{high}{}{}} } }, -} +}% @@ -557,7 +557,7 @@ full circle/.style={\tikz@dv@axis/scaling=min at 0 and max at 360}, half circle/.style={\tikz@dv@axis/scaling=min at 0 and max at 180}, quarter circle/.style={\tikz@dv@axis/scaling=min at 0 and max at 90} -} +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.sparklines.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.sparklines.code.tex index 69736423596..127b9805f23 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.sparklines.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.sparklines.code.tex @@ -7,14 +7,14 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/datavisualization/tikzlibrarydatavisualization.sparklines.code.tex,v 1.1 2008/12/17 22:48:46 tantau Exp $ +\ProvidesFileRCS{tikzlibrarydatavisualization.sparklines.code.tex} -\usetikzlibrary{datavisualization} +\usetikzlibrary{datavisualization}% -% +% % Sparklines (not yet usable...) % @@ -29,10 +29,9 @@ }, new line plot, every spark line plot/.try - } -} + } +}% \endinput - diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.code.tex index 3f17447fdda..27f0ed4aba5 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.code.tex @@ -8,14 +8,14 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.code.tex,v 1.44 2015/06/05 12:41:59 tantau Exp $ +\ProvidesFileRCS{tikzlibrarygraphs.code.tex} -% -% Interface keys +% +% Interface keys % -\def\tikzgraphsset{\pgfqkeys{/tikz/graphs}} +\def\tikzgraphsset{\pgfqkeys{/tikz/graphs}}% \tikzgraphsset{ new ->/.code n args={4}{% @@ -40,18 +40,18 @@ edge[#3] #4 (#2\tikzgraphrightanchor); } -} +}% \def\tikz@lib@graph@store@anchor#1#2{% - \def\tikz@temp{#1} + \def\tikz@temp{#1}% \ifx\tikz@temp\pgfutil@empty% \let#2\tikz@temp% \else% - \def\tikz@temp{.#1} + \def\tikz@temp{.#1}% \let#2\tikz@temp% - \fi% -} + \fi% +}% \tikzgraphsset{ default edge kind/.initial=--, @@ -65,17 +65,17 @@ right anchor/.code=\tikz@lib@graph@store@anchor{#1}{\tikzgraphrightanchor}, left anchor=, right anchor= -} +}% % % Keys for using nodes declared outside a graph inside a graph as if % it were declared there -% +% \tikzgraphsset{ use existing nodes/.is if=tikz@lib@graph@all -} +}% \tikzset{ new set/.code={ @@ -88,13 +88,13 @@ \expandafter\expandafter\expandafter\pgfutil@g@addto@macro\expandafter\pgf@temp\expandafter{\expandafter\tikz@lg@do\expandafter{\tikz@fig@name}}% }% },% -} +}% \newif\iftikz@lib@graph@all -% -% Simple versus multi graphs +% +% Simple versus multi graphs % \tikzgraphsset{ simple/.code={ @@ -108,7 +108,7 @@ multi/.code={ \tikz@lib@graph@simplefalse% } -} +}% \newif\iftikz@lib@graph@simple @@ -118,17 +118,17 @@ % #3 = to % #4 = options % #5 = edge nodes - % + % % Ok, first, test, whether edge exists: \ifcsname tikz@lg@e@#3@#2\endcsname% \expandafter\global\expandafter\let\csname tikz@lg@e@#3@#2\endcsname\relax% reset \fi% \expandafter\gdef\csname tikz@lg@e@#2@#3\endcsname{\tikz@lib@graph@make@simple@edge{#1}{#2}{#3}{#4}{#5}}% -} +}% \def\tikz@lib@graph@make@simple@edge#1#2#3#4#5{% \pgfqkeys{/tikz/graphs}{new #1={#2}{#3}{#4}{#5}}% -} +}% \def\tikz@lib@graph@simple@done{% @@ -137,26 +137,26 @@ \let\tikz@lg@do\tikz@lib@graph@simple@node% \tikz@lib@graph@node@list }% -} +}% \def\tikz@lib@graph@simple@node#1{% {% \def\tikz@lib@graph@simple@from@node{#1}% \let\tikz@lg@do\tikz@lib@graph@simple@other@node% \tikz@lib@graph@node@list% - }% -} + }% +}% \def\tikz@lib@graph@simple@other@node#1{% \ifcsname tikz@lg@e@\tikz@lib@graph@simple@from@node @#1\endcsname% \csname tikz@lg@e@\tikz@lib@graph@simple@from@node @#1\endcsname% \expandafter\global\expandafter\let\csname tikz@lg@e@\tikz@lib@graph@simple@from@node @#1\endcsname\relax% \fi% -} +}% -% -% Basic options +% +% Basic options % \tikzgraphsset{ @@ -172,7 +172,7 @@ @operators/.initial=, operator/.style={/tikz/graphs/@operators/.append={#1}}, @extra group options/.style=, -} +}% \def\tikzgraphinvokeoperator#1{% @@ -184,16 +184,16 @@ }% \tikz@lib@graph@temp% \global\let\tikz@lib@graph@temp\relax% -} +}% -% -% The parser +% +% The parser % \def\tikz@lib@graph@parser{% \pgfutil@ifnextchar[{\tikz@lib@graph@parser@}{\tikz@lib@graph@parser@[]}%] -} +}% \def\tikz@lib@graph@parser@[#1]{% \setbox\tikz@whichbox=\hbox\bgroup% @@ -208,7 +208,7 @@ \else% \expandafter\tikz@lib@graphs@normal@main% \fi% -} +}% \long\def\tikz@lib@graphs@normal@main#1{% \pgfkeysgetvalue{/tikz/graphs/@operators}\tikz@lib@graph@outer@operators% @@ -220,11 +220,11 @@ \tikz@lib@graph@start@hint@group% \tikz@lib@graph@parse@group{#1}% \tikz@lib@graph@end@hint@group - \tikz@lib@graph@outer@operators% + \tikz@lib@graph@outer@operators% \let\tikz@lg@do=\tikz@lib@graph@cleanup% \tikz@lib@graph@node@list% \tikz@lib@graph@main@done% -} +}% \def\tikz@lib@graph@main@done{% \endgroup% @@ -234,7 +234,7 @@ \egroup% \egroup% \tikz@lib@graph@parser@done% -} +}% @@ -245,13 +245,13 @@ \pgfkeyssetvalue{/tikz/graphs/placement/local width}{0}% \pgfkeyssetvalue{/tikz/graphs/placement/chain count}{0}% \pgfkeyssetvalue{/tikz/graphs/placement/element count}{0}% -} +}% \def\tikz@lib@graph@end@hint@group{% % Get local depth and width outside \xdef\tikz@lib@graph@group@depth{\pgfkeysvalueof{/tikz/graphs/placement/local depth}} \xdef\tikz@lib@graph@group@width{\pgfkeysvalueof{/tikz/graphs/placement/local width}} -} +}% \def\tikz@lib@graph@hint@aftergroup{% \pgfkeysgetvalue{/tikz/graphs/placement/width}\tikz@temp@h% @@ -263,13 +263,13 @@ \pgfkeyslet{/tikz/graphs/placement/width}\tikz@temp@h% \pgfkeyslet{/tikz/graphs/placement/local width}\tikz@temp@lh% \pgfkeyslet{/tikz/graphs/placement/local depth}\tikz@temp@lw% - % + % \pgfkeysgetvalue{/tikz/graphs/placement/element count}\tikz@temp% \c@pgf@counta=\tikz@temp\relax% \advance\c@pgf@counta by1\relax% \edef\tikz@temp{\the\c@pgf@counta}% - \pgfkeyslet{/tikz/graphs/placement/element count}\tikz@temp% -} + \pgfkeyslet{/tikz/graphs/placement/element count}\tikz@temp% +}% \def\tikz@lib@graph@placement@update{% \pgfkeys{/tikz/graphs/placement/logical node depth/.expand once=\tikz@lib@graph@name} @@ -286,13 +286,13 @@ \pgfkeyslet{/tikz/graphs/placement/width}\tikz@temp@h% \pgfkeyslet{/tikz/graphs/placement/local width}\tikz@temp@lh% \pgfkeyslet{/tikz/graphs/placement/local depth}\tikz@temp@lw% - % + % \pgfkeysgetvalue{/tikz/graphs/placement/element count}\tikz@temp% \c@pgf@counta=\tikz@temp\relax% \advance\c@pgf@counta by1\relax% \edef\tikz@temp{\the\c@pgf@counta}% - \pgfkeyslet{/tikz/graphs/placement/element count}\tikz@temp% -} + \pgfkeyslet{/tikz/graphs/placement/element count}\tikz@temp% +}% \def\tikz@lib@graph@placement@after@chain@update{% \pgfkeysgetvalue{/tikz/graphs/placement/depth}\tikz@temp@w% @@ -304,18 +304,18 @@ \pgfkeyslet{/tikz/graphs/placement/depth}\tikz@temp@w% \pgfkeyslet{/tikz/graphs/placement/local width}\tikz@temp@lh% \pgfkeyslet{/tikz/graphs/placement/local depth}\tikz@temp@lw% - % + % \pgfkeysgetvalue{/tikz/graphs/placement/chain count}\tikz@temp% \c@pgf@counta=\tikz@temp\relax% \advance\c@pgf@counta by1\relax% \edef\tikz@temp{\the\c@pgf@counta}% - \pgfkeyslet{/tikz/graphs/placement/chain count}\tikz@temp% -} + \pgfkeyslet{/tikz/graphs/placement/chain count}\tikz@temp% +}% % % Parse a group -% +% \long\def\tikz@lib@graph@parse@group#1{ \let\tikz@lib@graph@group@qa\pgfutil@empty% @@ -324,16 +324,16 @@ \let\tikz@lib@graph@group@cont\pgfutil@empty% \let\tikz@lib@graph@group@conta\pgfutil@empty% \tikz@lib@graph@group@check#1\par\pgf@stop@eogroup% -} +}% -% -% Start of a group +% +% Start of a group % \def\tikz@lib@graph@group@check{% \pgfutil@ifnextchar[\tikz@lib@graph@group@opt{\tikz@lib@graph@group@opt[]}%] -} +}% \def\tikz@lib@graph@group@opt[#1]{% \let\tikz@lib@graph@parse@extras\pgfutil@empty% @@ -344,38 +344,38 @@ @extra group options/.style=,% #1}% \expandafter\tikz@lib@graph@par\tikz@lib@graph@parse@extras% -} +}% \tikzgraphsset{ parse/.code={\expandafter\def\expandafter\tikz@lib@graph@parse@extras\expandafter{\tikz@lib@graph@parse@extras#1}}, -} +}% -% -% Remove \par +% +% Remove \par % \def\tikz@lib@graph@par{% \pgfutil@ifnextchar\bgroup{\tikz@lib@graph@par@@}{\tikz@lib@graph@par@}% -} +}% \long\def\tikz@lib@graph@par@#1\par{% \pgfutil@ifnextchar\pgf@stop@eogroup{% \expandafter\tikz@lib@graph@quotes\tikz@lib@graph@group@c#1"}{% \expandafter\def\expandafter\tikz@lib@graph@group@c\expandafter{\tikz@lib@graph@group@c#1}% \tikz@lib@graph@par% }% -} +}% \long\def\tikz@lib@graph@par@@#1{% \expandafter\def\expandafter\tikz@lib@graph@group@c\expandafter{\tikz@lib@graph@group@c{#1}}% \tikz@lib@graph@par -} +}% -% +% % Replace ..."..."... by ..."{...}"... -% +% \def\tikz@lib@graph@quotes{% \pgfutil@ifnextchar\bgroup{\tikz@lib@graph@quotes@@}{\tikz@lib@graph@quotes@}% }% @@ -386,30 +386,30 @@ \expandafter\def\expandafter\tikz@lib@graph@group@q\expandafter{\tikz@lib@graph@group@q#1"}% \tikz@lib@graph@quotes@cont% }% -} +}% \def\tikz@lib@graph@quotes@cont#1"#2"{% \pgfutil@ifnextchar\pgf@stop@eogroup{% \tikz@lib@graph@passon{{#1}"#2}}{% \expandafter\def\expandafter\tikz@lib@graph@group@q\expandafter{\tikz@lib@graph@group@q{#1}"#2"}% \tikz@lib@graph@quotes@cont}% -} +}% \def\tikz@lib@graph@quotes@@#1{% \expandafter\def\expandafter\tikz@lib@graph@group@q\expandafter{\tikz@lib@graph@group@q{#1}}% \tikz@lib@graph@quotes% -} +}% -% +% % Replace ..."..."... by ..."{...}"... (active version) % -{ +{% \catcode`\"=13\relax \gdef\tikz@lib@graph@passon#1{\expandafter\tikz@lib@graph@quotesactive\tikz@lib@graph@group@q#1"}% - + \gdef\tikz@lib@graph@quotesactive{% \pgfutil@ifnextchar\bgroup{\tikz@lib@graph@quotesactive@@}{\tikz@lib@graph@quotesactive@}% }% @@ -420,27 +420,27 @@ \expandafter\def\expandafter\tikz@lib@graph@group@qa\expandafter{\tikz@lib@graph@group@qa#1"}% \tikz@lib@graph@quotesactive@cont% }% - } - + }% + \gdef\tikz@lib@graph@quotesactive@cont#1"#2"{% \pgfutil@ifnextchar\pgf@stop@eogroup{% \expandafter\tikz@lib@graph@encloser\tikz@lib@graph@group@qa{#1}"#2[}{% \expandafter\def\expandafter\tikz@lib@graph@group@qa\expandafter{\tikz@lib@graph@group@qa{#1}"#2"}% \tikz@lib@graph@quotesactive@cont}% - } - + }% + \gdef\tikz@lib@graph@quotesactive@@#1{% \expandafter\def\expandafter\tikz@lib@graph@group@qa\expandafter{\tikz@lib@graph@group@qa{#1}}% \tikz@lib@graph@quotesactive% - } -} + }% +}% -% +% % Replace ...[...]... by ...[{...}]... -% +% \def\tikz@lib@graph@encloser{% \pgfutil@ifnextchar\bgroup{\tikz@lib@graph@encloser@@}{\tikz@lib@graph@encloser@}% }% @@ -451,45 +451,45 @@ \expandafter\def\expandafter\tikz@lib@graph@group@cont\expandafter{\tikz@lib@graph@group@cont#1[}%] \tikz@lib@graph@encloser@cont% }% -} +}% \def\tikz@lib@graph@encloser@cont#1]#2[{% \pgfutil@ifnextchar\pgf@stop@eogroup{% \expandafter\tikz@lib@graph@semi\tikz@lib@graph@group@cont{#1}]#2;}{% \expandafter\def\expandafter\tikz@lib@graph@group@cont\expandafter{\tikz@lib@graph@group@cont{#1}]#2[}% \tikz@lib@graph@encloser@cont}% -} +}% \def\tikz@lib@graph@encloser@@#1{% \expandafter\def\expandafter\tikz@lib@graph@group@cont\expandafter{\tikz@lib@graph@group@cont{#1}}% \tikz@lib@graph@encloser% -} +}% -% -% Replace ; by , +% +% Replace ; by , % \def\tikz@lib@graph@semi{% \pgfutil@ifnextchar\bgroup{\tikz@lib@graph@semi@@}{\tikz@lib@graph@semi@}% -} +}% \def\tikz@lib@graph@semi@#1;{% \pgfutil@ifnextchar\pgf@stop@eogroup{% \expandafter\tikz@lib@graph@main@parser\tikz@lib@graph@group@conta#1,}{% \expandafter\def\expandafter\tikz@lib@graph@group@conta\expandafter{\tikz@lib@graph@group@conta#1,}% \tikz@lib@graph@semi% }% -} +}% \def\tikz@lib@graph@semi@@#1{% \expandafter\def\expandafter\tikz@lib@graph@group@conta\expandafter{\tikz@lib@graph@group@conta{#1}}% \tikz@lib@graph@semi% -} +}% -% -% Main parse +% +% Main parse % \def\tikz@lib@graph@main@parser{% @@ -499,23 +499,23 @@ \let\tikz@lib@graph@stored@actions\pgfutil@empty% \let\tikz@lib@graph@node@list\pgfutil@empty% reset \tikz@lib@graph@main@parser@start% -} +}% \def\tikz@lib@graph@main@parser@start{% \pgfutil@ifnextchar\bgroup{\tikz@lib@graph@protect@group}{\tikz@lib@graph@main@parser@cont}% -} +}% \def\tikz@lib@graph@protect@group#1{% skip space \pgfutil@ifnextchar\relax{\tikz@lib@graph@main@parser@cont{{#1}}}{\tikz@lib@graph@main@parser@cont{{#1}}}% -} +}% -\def\tikz@lib@graph@main@parser@cont{\tikz@lib@graph@check@quotes\tikz@lib@graph@main@parser@cont@normal} +\def\tikz@lib@graph@main@parser@cont{\tikz@lib@graph@check@quotes\tikz@lib@graph@main@parser@cont@normal}% \def\tikz@lib@graph@main@parser@cont@normal#1,{% \tikz@lib@graph@parse@one#1-\pgf@stop@eodashes% -} +}% \def\tikz@lib@graph@parse@one{% \pgfutil@ifnextchar\bgroup\tikz@lib@graph@scope\tikz@lib@graph@node% -} +}% @@ -524,50 +524,50 @@ \def\tikz@lib@graph@check@quotes#1{% \let\tikz@lib@graph@cont@quote#1% \pgfutil@ifnextchar"{\begingroup\pgfkeys@temptoks{}\pgfutil@empty\tikz@lib@graph@quote@parser}{\tikz@lib@graph@check@quotes@active}% -} -{ +}% +{% \catcode`\"=13\relax \gdef\tikz@lib@graph@check@quotes@active{% \pgfutil@ifnextchar"{\begingroup\pgfkeys@temptoks{}\pgfutil@empty\tikz@lib@graph@quote@parser@active}{\tikz@lib@graph@cont@quote}% - } + }% \gdef\tikz@lib@graph@quote@parser@active"#1"{% \pgfkeys@temptoks\expandafter{\the\pgfkeys@temptoks #1}% \pgfutil@ifnextchar"{\pgfkeys@temptoks\expandafter{\the\pgfkeys@temptoks "}\tikz@lib@graph@quote@parser@active}{\tikz@lib@graph@quote@parser@done}% - } -} + }% +}% \def\tikz@lib@graph@quote@parser"#1"{% \pgfkeys@temptoks\expandafter{\the\pgfkeys@temptoks #1}% \pgfutil@ifnextchar"{\pgfkeys@temptoks\expandafter{\the\pgfkeys@temptoks "}\tikz@lib@graph@quote@parser}{\tikz@lib@graph@quote@parser@done}% -} +}% \def\tikz@lib@graph@quote@parser@done{% {\expandafter\scantokens\expandafter{% \expandafter\expandafter\expandafter\tikzlibgraphactivations\expandafter\expandafter\expandafter\tikzlibgraphdoedef\expandafter{\the\pgfkeys@temptoks}% }}% - {\expandafter\scantokens\expandafter{\expandafter\tikzlibgraphactivationsbrace\expandafter\xdef\expandafter\tikzlibgraphreplaced\expandafter<\tikzlibgraphreplaced>\catcode`\}=2\relax}}% + {\expandafter\scantokens\expandafter{\expandafter\tikzlibgraphactivationsbrace\expandafter\xdef\expandafter\tikzlibgraphreplaced\expandafter<\tikzlibgraphreplaced>\catcode`\}=2\relax}}% \edef\tikzlibgraphreplaced{\expandafter\detokenize\expandafter{\tikzlibgraphreplaced}} \pgfutil@ifnextchar/\tikz@lib@graph@quotes@slash\tikz@lib@graph@quotes@no@slash% -} +}% \def\tikz@lib@graph@quotes@no@slash{% \expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter% \tikz@smuggle\expandafter\expandafter\expandafter{\expandafter\tikzlibgraphreplaced\expandafter/\expandafter{\the\pgfkeys@temptoks}}% \expandafter\endgroup\expandafter\tikz@lib@graph@cont@quote\tikz@smuggle% -} +}% \def\tikz@lib@graph@quotes@slash/{% \pgfutil@ifnextchar/% Ah, double slash... {\tikz@lib@graph@quotes@no@slash/}{\expandafter\endgroup\expandafter\tikz@lib@graph@cont@quote\tikzlibgraphreplaced/}% -} -\def\tikzlibgraphdoedef{\xdef\tikzlibgraphreplaced} +}% +\def\tikzlibgraphdoedef{\xdef\tikzlibgraphreplaced}% \def\tikz@lib@prepare@active#1#2#3{% {% \catcode`#1=13\relax% \scantokens{\gdef\tikzlibgraphactivator{\def#2{@#3@}}}% - } - \pgfutil@g@addto@macro\tikzlibgraphactivations{\catcode`#1=13\relax} - \expandafter\pgfutil@g@addto@macro\expandafter\tikzlibgraphactivations\expandafter{\tikzlibgraphactivator} -} + }% + \pgfutil@g@addto@macro\tikzlibgraphactivations{\catcode`#1=13\relax}% + \expandafter\pgfutil@g@addto@macro\expandafter\tikzlibgraphactivations\expandafter{\tikzlibgraphactivator}% +}% \let\tikzlibgraphactivations\pgfutil@empty @@ -575,7 +575,7 @@ % Remove \outer from \+ for plain TeX % -\outer\def\tikz@lib@outer@test{\tabalign} +\outer\def\tikz@lib@outer@test{\tabalign}% \ifx\+\tikz@lib@outer@test \def\+{\tabalign} \fi @@ -612,69 +612,69 @@ \tikz@lib@prepare@active{\#}{#}{NUMBER SIGN} } -\pgfutil@g@addto@macro\tikzlibgraphactivations{\catcode`\\=13\relax} -{ +\pgfutil@g@addto@macro\tikzlibgraphactivations{\catcode`\\=13\relax}% +{% \catcode`\|=0\relax \catcode`\\=13\relax - |pgfutil@g@addto@macro|tikzlibgraphactivations{|def\{@REVERSE SOLIDUS@}} -} -{ - \gdef\tikzlibgraphscommercialat{@COMMERCIAL AT@} - \let\g=\pgfutil@g@addto@macro + |pgfutil@g@addto@macro|tikzlibgraphactivations{|def\{@REVERSE SOLIDUS@}}% +}% +{% + \gdef\tikzlibgraphscommercialat{@COMMERCIAL AT@}% + \let\g=\pgfutil@g@addto@macro \catcode`\@=13\relax - \g\tikzlibgraphactivations{\catcode`\@=13\relax\let@=\tikzlibgraphscommercialat} -} + \g\tikzlibgraphactivations{\catcode`\@=13\relax\let@=\tikzlibgraphscommercialat}% +}% \def\tikzlibgraphactivationsbrace{% \catcode`\{=13\relax% \catcode`\}=13\relax% \catcode`\<=1\relax% \catcode`\>=2\relax% -} -{ +}% +{% \catcode`\{=13\relax% \catcode`\}=13\relax% \catcode`\<=1\relax% \catcode`\>=2\relax% \pgfutil@g@addto@macro\tikzlibgraphactivationsbrace<\def{<@LEFT CURLY BRACE@>> %} \pgfutil@g@addto@macro\tikzlibgraphactivationsbrace<\def}<@RIGHT CURLY BRACE@>> %{ -> +>% % A normal node % First, check for special quote syntax: -\def\tikz@lib@graph@node{\tikz@lib@graph@check@quotes\tikz@lib@graph@node@normal} +\def\tikz@lib@graph@node{\tikz@lib@graph@check@quotes\tikz@lib@graph@node@normal}% \def\tikz@lib@graph@node@normal#1-{% % Detect trailing < \tikz@lib@graph@@node#1<\pgf@stop% -} +}% \def\tikz@lib@graph@@node#1<#2\pgf@stop% { - % + % % #1 will be a node (not a group) - % + % % Syntax: node name [options] - % + % % Grab node name \tikz@lib@graph@grab@name#1\pgf@stop% \tikz@lib@graph@stored@actions% \pgfutil@ifnextchar\pgf@stop@eodashes{% \tikz@lib@graph@graph@done% }{% - % - % Now, get arrow kind - % - \def\pgf@test{#2}% + % + % Now, get arrow kind + % + \def\pgf@test{#2}% \ifx\pgf@test\pgfutil@empty% \expandafter\tikz@lib@graph@no@back@arrow% \else% \expandafter\tikz@lib@graph@back@arrow% \fi% }% -} +}% \def\tikz@lib@graph@no@back@arrow{% \pgfutil@ifnextchar>\tikz@lib@graph@forward@arrow{% @@ -685,52 +685,52 @@ }% }% }% -} +}% \def\tikz@lib@graph@undirected@arrow-{% \def\tikz@lib@graph@arrow@type{--}% \tikz@lib@graph@after@arrow% -} +}% \def\tikz@lib@graph@forward@arrow>{% \def\tikz@lib@graph@arrow@type{->}% \tikz@lib@graph@after@arrow% -} +}% \def\tikz@lib@graph@bi@arrow>{% \def\tikz@lib@graph@arrow@type{<->}% \tikz@lib@graph@after@arrow% -} +}% \def\tikz@lib@graph@no@arrow!-{% \def\tikz@lib@graph@arrow@type{-!-}% \tikz@lib@graph@after@arrow% -} +}% \def\tikz@lib@graph@back@arrow{% \pgfutil@ifnextchar>{\tikz@lib@graph@bi@arrow}{% \def\tikz@lib@graph@arrow@type{<-}% \tikz@lib@graph@after@arrow% }% -} +}% \def\tikz@lib@graph@after@arrow{% \pgfutil@ifnextchar[{\tikz@lib@graph@after@arrow@opt}{\tikz@lib@graph@after@arrow@opt[]}%] -} +}% \def\tikz@lib@graph@after@arrow@opt[#1]{% - % - % Ok, first recolor + % + % Ok, first recolor % \tikzgraphinvokeoperator{recolor source by=source''} \tikzgraphinvokeoperator{recolor target by=target'} % Save action for next node \expandafter\def\expandafter\tikz@lib@graph@stored@actions\expandafter{% \expandafter\tikz@lib@graph@joiner\expandafter{\tikz@lib@graph@arrow@type}{#1}}% - % + % \tikzgdeventgroupcallback{descendants}% \tikz@lib@graph@parse@one% -} +}% \def\tikz@lib@graph@joiner#1#2{% \tikzgraphinvokeoperator{recolor source by=source'} @@ -749,35 +749,35 @@ \pgf@temp% }% \tikzgraphinvokeoperator{not source',not target'} -} +}% \def\tikz@lib@graph@unknown@edge@option#1{% \def\tikz@temp{/tikz/graphs/@edges styling/.append=} \expandafter\expandafter\expandafter\pgfkeys% \expandafter\expandafter\expandafter{\expandafter\tikz@temp\expandafter{\expandafter,\pgfkeyscurrentname={#1}}} -} +}% \def\tikz@lib@graph@graph@done\pgf@stop@eodashes{% % Get local depth and width outside \xdef\tikz@lib@graph@chain@depth{\pgfkeysvalueof{/tikz/graphs/placement/local depth}} \xdef\tikz@lib@graph@chain@width{\pgfkeysvalueof{/tikz/graphs/placement/local width}} % Get node list outside... - \expandafter% + \expandafter% \endgroup% \expandafter\expandafter\expandafter\def% \expandafter\expandafter\expandafter\tikz@lib@graph@node@list% \expandafter\expandafter\expandafter{\expandafter\tikz@lib@graph@node@list\tikz@lib@graph@node@list}% % Compute new local depth and width of group... \tikz@lib@graph@placement@after@chain@update - % + % \pgfutil@ifnextchar\pgf@stop@eogroup% \tikz@lib@graph@graph@group@done% \tikz@lib@graph@main@parser% -} +}% \def\tikz@lib@graph@graph@group@done\pgf@stop@eogroup{% \pgfkeysvalueof{/tikz/graphs/@operators}% -} +}% @@ -786,14 +786,14 @@ % \def\tikz@lib@graph@grab@name{% \pgfutil@ifnextchar\foreach\tikz@lib@graph@do@foreach\tikz@lib@graph@parse@node@text% -} +}% \def\tikz@lib@graph@do@foreach\foreach#1in{% \pgfutil@ifnextchar\bgroup{\tikz@lib@graph@do@foreach@normal{#1}}{\def\tikz@temp{#1}\tikz@lib@graph@do@foreach@macro}% -} +}% \def\tikz@lib@graph@do@foreach@macro#1{% \expandafter\expandafter\expandafter\tikz@lib@graph@do@foreach@normal\expandafter\tikz@temp\expandafter{#1}% -} +}% \def\tikz@lib@graph@do@foreach@normal#1#2#3\pgf@stop{% % Ok, we do a parse on a foreach loop. @@ -823,13 +823,13 @@ % TODO: Need to also save hints! \global\let\tikz@lib@graph@node@list@saved\tikz@lib@graph@node@list% }% - \expandafter% + \expandafter% \endgroup% \expandafter\expandafter\expandafter\def% \expandafter\expandafter\expandafter\tikz@lib@graph@node@list% - \expandafter\expandafter\expandafter{\expandafter\tikz@lib@graph@node@list\tikz@lib@graph@node@list@saved}% + \expandafter\expandafter\expandafter{\expandafter\tikz@lib@graph@node@list\tikz@lib@graph@node@list@saved}% \expandafter\tikz@lib@graph@setup@placement\tikz@lib@graph@saved@placement% -} +}% \def\tikz@lib@graph@setup@placement#1#2#3#4#5#6{% \pgfkeyssetvalue{/tikz/graphs/placement/local depth}{#1}% @@ -838,15 +838,15 @@ \pgfkeyssetvalue{/tikz/graphs/placement/element count}{#4}% \pgfkeyssetvalue{/tikz/graphs/placement/width}{#5}% \pgfkeyssetvalue{/tikz/graphs/placement/depth}{#6}% -} +}% \def\tikz@lib@graph@parse@node@text#1\pgf@stop{% - % - % Ok, first test whether #1 contains "//" - % + % + % Ok, first test whether #1 contains "//" + % \pgfutil@in@{//}{#1 } \ifpgfutil@in@% - % Ok, a layout node: + % Ok, a layout node: \tikz@lib@parse@layout@node#1\pgf@stop% \else% \tikz@lib@graph@fake@nodefalse @@ -854,7 +854,7 @@ \def\tikz@lib@graph@empty@node@parsed{\tikzgdeventcallback{node}{}}% \tikz@lib@parse@normal@node#1[\pgf@stop% \fi% -} +}% \newif\iftikzgraphsautonumbernodes \newcount\tikz@lib@auto@number @@ -865,16 +865,16 @@ \edef\tikz@lib@graph@name@only{\tikz@lib@graph@name@only\tikz@lib@auto@sep\the\tikz@lib@auto@number}% \global\advance\tikz@lib@auto@number by1\relax% \fi% -} +}% -% -% Parse the normal part of a node (name and, possibly, text after slash) -% +% +% Parse the normal part of a node (name and, possibly, text after slash) +% \def\tikz@lib@parse@normal@node#1[{ - % - % Test whether #1 contains "/" or "__" - % + % + % Test whether #1 contains "/" or "__" + % \pgfutil@in@{/}{#1}% \ifpgfutil@in@% \tikz@lib@parse@node@with@slash#1\pgf@stop% @@ -888,25 +888,25 @@ \edef\tikz@lib@graph@name{\tikz@lib@graph@path\tikz@lib@graph@name@only}% \fi% \fi% - \tikz@lib@graph@handle@node@cont% -} + \tikz@lib@graph@handle@node@cont% +}% \def\tikz@lib@parse@node@with@slash#1/{ \pgfkeys@spdef\tikz@lib@graph@name@only{#1}% \ifx\tikz@lib@graph@name@only\pgfutil@empty% \global\advance\tikz@fig@count by1\relax \edef\tikz@lib@graph@name@only{tikz@f@\the\tikz@fig@count}% - \fi% + \fi% \edef\tikz@lib@graph@name{\tikz@lib@graph@path\tikz@lib@graph@name@only}% \pgfutil@ifnextchar"\tikz@lg@slash@quote{\pgfutil@ifnextchar\tikz@active@quotes@token\tikz@lg@slash@quote@active\tikz@lg@slash@cont} -} +}% \def\tikz@lg@slash@quote"#1"#2\pgf@stop{% \iftikz@handle@active@nodes% \def\tikz@lib@graph@node@text{\scantokens{#1}}% \else \def\tikz@lib@graph@node@text{#1}% \fi% -} +}% {\catcode`\"=13\relax \gdef\tikz@lg@slash@quote@active"#1"#2\pgf@stop{% \iftikz@handle@active@nodes% @@ -914,27 +914,27 @@ \else \def\tikz@lib@graph@node@text{#1}% \fi% - } -} + }% +}% \def\tikz@lg@slash@cont#1\pgf@stop{% \iftikz@handle@active@nodes% \def\tikz@lib@graph@node@text{\scantokens{#1}}% \else \def\tikz@lib@graph@node@text{#1}% \fi% -} +}% -\def\tikz@lib@parse@node@with@doubleunder#1__{\tikz@lib@parse@node@with@slash{#1}/} +\def\tikz@lib@parse@node@with@doubleunder#1__{\tikz@lib@parse@node@with@slash{#1}/}% \def\tikz@lg@find@fresh@name{% \edef\tikz@lib@graph@name@only{\tikz@lib@graph@name@only'}% \edef\tikz@lib@graph@name{\tikz@lib@graph@path\tikz@lib@graph@name@only}% \tikz@lg@if@local@node{\tikz@lib@graph@name}{\tikz@lg@find@fresh@name}{}% -} +}% -% -% We have now parsed everything up to the opening "[". We continue +% +% We have now parsed everything up to the opening "[". We continue % \def\tikz@lib@graph@handle@node@cont{% @@ -952,22 +952,22 @@ \expandafter\tikz@lib@graph@node@opt\expandafter[\expandafter]\expandafter[% \fi% }{\tikz@lib@graph@node@opt[}% -} +}% \def\tikzgraphnodeas@default{% \tikz@lib@graph@typesetter% -} +}% \let\tikz@lib@graph@empty@node@parsed\relax% \def\tikz@lib@graph@node@opt[#1]#2[\pgf@stop{% \tikz@lib@graph@node@parsed{#1}% -} +}% -\def\tikz@lib@graph@node@empty@done\pgf@stop{\tikz@lib@graph@empty@node@parsed} +\def\tikz@lib@graph@node@empty@done\pgf@stop{\tikz@lib@graph@empty@node@parsed}% -% -% Parse a layout node +% +% Parse a layout node % \def\tikz@lib@parse@layout@node#1//{% @@ -975,33 +975,33 @@ \let\tikz@lib@graph@node@parsed\tikz@lib@layout@node@parsed% \let\tikz@lib@graph@empty@node@parsed\tikz@lib@graph@empty@layout@node@parsed \tikz@lib@parse@normal@node#1[\pgf@stop% -} +}% \newif\ifpgf@lib@graph@empty@layout@node \def\tikz@lib@layout@node@parsed{% \tikz@lib@layout@parse@rest% -} +}% \def\tikz@lib@graph@empty@layout@node@parsed{% \pgf@lib@graph@empty@layout@nodetrue \tikz@lib@layout@parse@rest{}% -} +}% \def\tikz@lib@layout@parse@rest#1{% \def\tikz@lib@layout@node@options{#1}% \pgfutil@ifnextchar[{\tikz@lib@layout@node@opt}{\tikz@lib@layout@node@opt[]}%} -} +}% \def\tikz@lib@layout@node@parsed#1{% \def\tikz@lib@layout@node@options{#1}% \pgfutil@ifnextchar[{\tikz@lib@layout@node@opt}{\tikz@lib@layout@node@opt[]}%} -} +}% \def\tikz@lib@layout@node@opt[#1]{% \def\tikz@lib@layout@options{#1}% \pgfutil@ifnextchar\bgroup{\tikz@lib@layout@start}{\tikzerror{Opening brace at beginning of sublayout expected}}% -} +}% % @@ -1029,7 +1029,7 @@ \c@pgf@counta=\tikz@temp\relax% \advance\c@pgf@counta by1\relax% \edef\tikz@temp{\the\c@pgf@counta}% - \pgfkeyslet{/tikz/graphs/placement/level}\tikz@temp% + \pgfkeyslet{/tikz/graphs/placement/level}\tikz@temp% \tikzgraphsset{ level/.try=\pgfkeysvalueof{/tikz/graphs/placement/level}, level \pgfkeysvalueof{/tikz/graphs/placement/level}/.try @@ -1059,7 +1059,7 @@ /tikz/graphs/@nodes styling,% #1}% \pgfkeysgetvalue{/tikz/graphs/@operators}\tikz@lib@graph@op@save% - \global\let\tikz@lib@graph@op@save\tikz@lib@graph@op@save% + \global\let\tikz@lib@graph@op@save\tikz@lib@graph@op@save% }% \else% \node [% @@ -1089,30 +1089,30 @@ \iftikz@lib@graph@trie\tikzgraphsset{name=\tikz@lib@graph@name@only}\fi% \else % The name of the node is a graph name - \tikz@lib@graph@handle@graph{#1}% + \tikz@lib@graph@handle@graph{#1}% \fi - \fi% -} + \fi% +}% \newif\iftikz@lib@graph@fake@node \newif\iftikz@lib@graph@use@list \def\tikz@lib@graph@test@use@list{% \pgfutil@ifnextchar({\tikz@lib@graph@use@list@grap}{\tikz@lib@graph@test@use@list@done}%) -} +}% -\def\tikz@lib@graph@test@use@list@done#1\pgf@stop{\tikz@lib@graph@use@listfalse} -\def\tikz@lib@graph@use@list@grap(#1)\pgf@stop{\def\tikz@lib@graph@use@list{#1}\tikz@lib@graph@use@listtrue} +\def\tikz@lib@graph@test@use@list@done#1\pgf@stop{\tikz@lib@graph@use@listfalse}% +\def\tikz@lib@graph@use@list@grap(#1)\pgf@stop{\def\tikz@lib@graph@use@list{#1}\tikz@lib@graph@use@listtrue}% -% -% Typeset a layout node +% +% Typeset a layout node % \def\tikz@lib@layout@start#1#2\pgf@stop{% \tikz@lib@ensure@gd@loaded% % Parameters are: - % + % % Node name is \tikz@lib@graph@name@only % Node text is \tikz@lib@graph@node@text % Node options are \tikz@lib@layout@node@options @@ -1130,8 +1130,8 @@ \fi% \fi% \edef\tikz@lib@graph@name{\tikz@lib@graph@path\tikz@lib@graph@name@only}% - % - % Prepare tikz node options + % + % Prepare tikz node options % \expandafter\expandafter\expandafter\def% \expandafter\expandafter\expandafter\tikz@lib@layout@node@options\expandafter\expandafter\expandafter{\expandafter\tikz@lib@layout@startup@node@options\tikz@lib@layout@node@options,}% @@ -1147,8 +1147,8 @@ \expandafter\expandafter\expandafter{% \expandafter\tikz@lib@graph@node@text\expandafter}\expandafter{\tikz@lib@layout@node@options} \fi% - % - % Here comes the scope: + % + % Here comes the scope: % \expandafter\expandafter\expandafter\scope\expandafter\expandafter\expandafter[\expandafter\tikz@lib@layout@node@options@prefix\tikz@lib@layout@options] \tikzgdeventgroupcallback{array}% @@ -1162,33 +1162,33 @@ \tikz@lib@graph@node@list% \def\tikz@lg@old@col{\tikz@lgc@target@true}% \tikz@lib@graph@node@list% - \expandafter% + \expandafter% \endscope\expandafter% \endgroup% \expandafter\expandafter\expandafter\def% \expandafter\expandafter\expandafter\tikz@lib@graph@node@list% \expandafter\expandafter\expandafter{\expandafter\tikz@lib@graph@node@list\tikz@lib@graph@node@list}% \tikz@lib@graph@hint@aftergroup% -} +}% \def\tikz@lib@make@subgraph@node#1#2#3{% \pgfgdsubgraphnode{#1}{#3}{\pgfgdsubgraphnodecontents{#2}}% -} +}% \def\tikz@lib@layout@startup@node@options{% /utils/exec=\tikzlibignorecomparisonsINTERNAL, /tikz/graphs/.cd,% redirect unknown to tikz,% anchor=base,% /tikz/every subgraph node/.try,% -} +}% \def\tikzlibignorecomparisonsINTERNAL{% \pgfkeys{/handlers/first char syntax=true} \pgfkeyssetvalue{/handlers/first char syntax/the character >}{\pgfutil@gobble}% \pgfkeyssetvalue{/handlers/first char syntax/the character <}{\pgfutil@gobble}% -} -\def\tikz@lib@layout@node@options@prefix{graphs/.cd,} +}% +\def\tikz@lib@layout@node@options@prefix{graphs/.cd,}% \ifx\tikz@lib@ensure@gd@loaded\pgfutil@undefined% -\def\tikz@lib@ensure@gd@loaded{\tikzerror{You must say \string\usetikzlibrary{graphdrawing} to use the (sub)layout syntax}} +\def\tikz@lib@ensure@gd@loaded{\tikzerror{You must say \string\usetikzlibrary{graphdrawing} to use the (sub)layout syntax}}% \fi \def\tikz@lg@local@node@handle#1{% @@ -1198,46 +1198,46 @@ \tikzgdlatenodeoptionacallback{\tikz@lib@graph@name}% \node also[graphs/redirect unknown to tikz,/tikz/graphs/.cd,#1](\tikz@lib@graph@name);% \pgfkeysvalueof{/tikz/graphs/@operators}% -} +}% \tikzgraphsset{redirect unknown to tikz/.style={ /tikz/graphs/.unknown/.code={% - \let\tikz@key\pgfkeyscurrentname% + \let\tikz@key\pgfkeyscurrentname% \pgfkeys{tikz/.cd,\tikz@key={##1},/tikz/graphs/.cd}% }} -} +}% \def\tikz@lib@activate@source@target@edge@syntax{% \pgfkeys{/handlers/first char syntax=true} \pgfkeyssetvalue{/handlers/first char syntax/the character >}{\tikz@lg@parse@more}% \pgfkeyssetvalue{/handlers/first char syntax/the character <}{\tikz@lg@parse@less}% -} +}% -\def\tikz@lg@parse@less#1{\tikz@lg@parse@less@#1\pgf@stop} -\def\tikz@lg@parse@less@<{\pgfutil@ifnextchar"{\tikz@lg@parse@quote{source}}{\tikz@lg@parse@noquote{source}}} -\def\tikz@lg@parse@more#1{\tikz@lg@parse@more@#1\pgf@stop} -\def\tikz@lg@parse@more@>{\pgfutil@ifnextchar"{\tikz@lg@parse@quote{target}}{\tikz@lg@parse@noquote{target}}} +\def\tikz@lg@parse@less#1{\tikz@lg@parse@less@#1\pgf@stop}% +\def\tikz@lg@parse@less@<{\pgfutil@ifnextchar"{\tikz@lg@parse@quote{source}}{\tikz@lg@parse@noquote{source}}}% +\def\tikz@lg@parse@more#1{\tikz@lg@parse@more@#1\pgf@stop}% +\def\tikz@lg@parse@more@>{\pgfutil@ifnextchar"{\tikz@lg@parse@quote{target}}{\tikz@lg@parse@noquote{target}}}% -\def\tikz@lg@parse@noquote#1#2\pgf@stop{{\tikzgraphsset{#1 edge style={#2}}}} +\def\tikz@lg@parse@noquote#1#2\pgf@stop{{\tikzgraphsset{#1 edge style={#2}}}}% \def\tikz@lg@parse@quote#1#2\pgf@stop{% {\tikzgraphsset{/tikz/node quotes mean={#1 edge node={node [every edge quotes,##2]{##1}}},/utils/exec=\tikz@enable@node@quotes,#2}}% -} +}% \tikzgraphsset{ clear >/.style=target edge clear, clear </.style=source edge clear -} +}% % Positioning -\def\tikz@lib@graph@x{0} -\def\tikz@lib@graph@y{0} +\def\tikz@lib@graph@x{0}% +\def\tikz@lib@graph@y{0}% \tikzgraphsset{ x/.code=\def\tikz@lib@graph@x{#1}\tikz@lib@graphs@check@at, y/.code=\def\tikz@lib@graph@y{#1}\tikz@lib@graphs@check@at -} +}% \def\tikz@lib@graphs@check@at{% \expandafter\expandafter\expandafter\def% \expandafter\expandafter\expandafter\tikz@temp% @@ -1246,7 +1246,7 @@ \expandafter\expandafter\expandafter{\expandafter\tikz@lib@graph@x\expandafter}% \expandafter,\expandafter{\tikz@lib@graph@y})}% \pgfqkeys{/tikz}{at/.expand once=\tikz@temp}% -} +}% \newif\iftikz@lib@graph@trie @@ -1259,24 +1259,24 @@ edge quotes/.style={/tikz/every edge quotes/.style={#1}}, edge quotes center/.style={edge quotes={anchor=center}}, edge quotes mid/.style={edge quotes={anchor=mid}} -} +}% \def\tikz@lg@make@edge@node#1#2{% \def\pgf@marshal{node[#2]}% \expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter\pgf@marshal\expandafter\expandafter\expandafter{\expandafter\pgf@marshal\expandafter{\tikzgraphnodetext}}% \pgfkeysalso{#1 edge node/.expand once=\pgf@marshal,as=}% -} +}% \newif\iftikz@lib@graph@fresh@node -\tikzgraphsset{fresh nodes/.is if=tikz@lib@graph@fresh@node} +\tikzgraphsset{fresh nodes/.is if=tikz@lib@graph@fresh@node}% \tikzgraphsset{number nodes/.code=% \pgfmathsetcount\tikz@lib@auto@number{#1}% \tikzgraphsautonumbernodestrue,% number nodes/.default=1,% number nodes sep/.code=\def\tikz@lib@auto@sep{#1} -} -\def\tikz@lib@auto@sep{\space} +}% +\def\tikz@lib@auto@sep{\space}% \newif\iftikz@lib@graph@node@created @@ -1284,26 +1284,26 @@ % Is #1 the name of a node set? \expandafter\let\expandafter\pgf@temp\csname tikz@lg@node@set #1\endcsname \ifx\pgf@temp\relax - \pgfutil@g@addto@macro\tikz@lg@temp{\tikz@lg@do{#1}} + \pgfutil@g@addto@macro\tikz@lg@temp{\tikz@lg@do{#1}} \else% \expandafter\pgfutil@g@addto@macro\expandafter\tikz@lg@temp\expandafter{\pgf@temp} - \fi -} + \fi +}% \def\tikz@lib@graph@do@use#1{% \tikz@lg@init@color{#1}{\tikz@lgc@all@true\tikz@lgc@source@true\tikz@lgc@target@true}% -} +}% \tikzgraphsset{ typeset/.store in=\tikz@lib@graph@typesetter, math nodes/.style={/tikz/graphs/typeset=$\tikzgraphnodetext$}, empty nodes/.style={/tikz/graphs/typeset=}, typeset=\tikzgraphnodetext -} +}% -% -% Handle scope +% +% Handle scope % \def\tikz@lib@graph@scope#1{ \begingroup% @@ -1312,7 +1312,7 @@ \tikz@lib@graph@start@hint@group% \tikz@lib@graph@parse@group{#1}% \tikz@lib@graph@end@hint@group% - \expandafter% + \expandafter% \endgroup% \expandafter\expandafter\expandafter\def% \expandafter\expandafter\expandafter\tikz@lib@graph@node@list% @@ -1324,7 +1324,7 @@ \tikzerror{One of the arrow types <-, --, ->, -!-, or <-> expected}% }% }% -} +}% \def\tikz@lib@graph@scope@minus-{ \pgfutil@ifnextchar>\tikz@lib@graph@forward@arrow{% @@ -1337,20 +1337,20 @@ }% }% }% -} +}% \def\tikz@lib@graph@scope@less<-{\tikz@lib@graph@back@arrow}% -% -% Predefining graphs -% +% +% Predefining graphs +% \tikzgraphsset{ declare/.code 2 args={\expandafter\def\csname tikz@lib@graph@def@#1\endcsname{\tikz@lib@graph@do@graph{#2}}}% -} +}% \def\tikz@lib@graph@handle@graph#1{% \begingroup% @@ -1359,17 +1359,17 @@ \tikz@lib@graph@start@hint@group% \csname tikz@lib@graph@def@\tikz@lib@graph@name@only\endcsname% \tikz@lib@graph@end@hint@group% - \expandafter% + \expandafter% \endgroup% \expandafter\expandafter\expandafter\def% \expandafter\expandafter\expandafter\tikz@lib@graph@node@list% - \expandafter\expandafter\expandafter{\expandafter\tikz@lib@graph@node@list\tikz@lib@graph@node@list}% + \expandafter\expandafter\expandafter{\expandafter\tikz@lib@graph@node@list\tikz@lib@graph@node@list}% \tikz@lib@graph@hint@aftergroup% -} +}% \def\tikz@lib@graph@do@graph#1{% \tikz@lib@graph@parse@group{#1}% -} +}% \let\tikz@lib@graph@path\pgfutil@empty @@ -1379,13 +1379,13 @@ name/.code={% \edef\tikz@lib@graph@path{\tikz@lib@graph@path#1\tikz@lib@graph@name@separator}% }% -} +}% % % Colors -% -\def\tikz@lg@newif{\csname newif\endcsname} +% +\def\tikz@lg@newif{\csname newif\endcsname}% \tikzgraphsset{ as/.code=\def\tikzgraphnodeas{#1},% color class/.style={% @@ -1415,17 +1415,17 @@ color class=target, color class=target', color class=all -} +}% \def\tikz@lg@init@color#1#2{% \expandafter\gdef\csname tikz@lgc@#1\endcsname{#2}% -} +}% \def\tikz@lib@graph@cleanup#1{% \expandafter\global\expandafter\let\csname tikz@lgc@#1\endcsname\relax% \ifcsname tikz@lgca@@#1\endcsname\expandafter\global\expandafter\let\csname tikz@lgca@@#1\endcsname\relax\fi% \ifcsname tikz@lgcb@@#1\endcsname\expandafter\global\expandafter\let\csname tikz@lgcb@@#1\endcsname\relax\fi% -} +}% \def\tikz@lg@colorize#1{% \expandafter\let\expandafter\pgf@temp\csname tikz@lgc@#1\endcsname% @@ -1434,14 +1434,14 @@ \expandafter\expandafter\expandafter{% \expandafter\tikz@lg@col\pgf@temp}% \expandafter\global\expandafter\let\csname tikz@lgc@#1\endcsname\pgf@temp% -} +}% \def\tikz@lg@change@color#1{% \def\tikz@lg@temp@save{#1}% \let\tikz@lg@collect\pgfutil@empty% \expandafter\let\expandafter\pgf@temp\csname tikz@lgc@#1\endcsname% \expandafter\tikz@lg@change@check\pgf@temp\pgf@stop% -} +}% \def\tikz@lg@change@check#1{% \ifx#1\pgf@stop% \tikz@lg@change@write@back% @@ -1454,14 +1454,14 @@ \fi% \expandafter\tikz@lg@change@check \fi% -} +}% \def\tikz@lg@change@add#1{% \expandafter\def\expandafter\tikz@lg@collect\expandafter{\tikz@lg@collect#1}% -} +}% \def\tikz@lg@change@write@back{% \expandafter\global\expandafter\let\csname tikz@lgc@\tikz@lg@temp@save\endcsname\tikz@lg@collect% -} +}% @@ -1479,25 +1479,25 @@ \fi% }% \iftikz@color@test#3\else#4\fi% -} +}% \newif\iftikz@color@test -\def\tikz@lg@if@local@node#1#2#3{\expandafter\ifx\csname tikz@lgc@#1\endcsname\relax#3\else#2\fi} +\def\tikz@lg@if@local@node#1#2#3{\expandafter\ifx\csname tikz@lgc@#1\endcsname\relax#3\else#2\fi}% -\def\tikz@lib@reset@temp{\let\pgf@temp\iffalse} +\def\tikz@lib@reset@temp{\let\pgf@temp\iffalse}% -% -% Handle connection annotations +% +% Handle connection annotations % \def\tikz@lib@annotate@#1#2#3#4{% \expandafter\ifx\csname tikz@lgc#1@@#2\endcsname\relax% \expandafter\gdef\csname tikz@lgc#1@@#2\endcsname{{#3}{#4}}% - \else% + \else% \expandafter\expandafter\expandafter\tikz@lib@annotate@read\csname tikz@lgc#1@@#2\endcsname{#3}{#4}% \expandafter\global\expandafter\let\csname tikz@lgc#1@@#2\endcsname\pgf@temp% \fi% -} -\def\tikz@lib@annotate@read#1#2#3#4{\def\pgf@temp{{#1,#3}{#2#4}}} +}% +\def\tikz@lib@annotate@read#1#2#3#4{\def\pgf@temp{{#1,#3}{#2#4}}}% \tikzgraphsset{ source edge style/.code=\tikz@lib@annotate@{a}{\tikz@lib@graph@name}{#1}{}, @@ -1525,7 +1525,7 @@ \expandafter }\expandafter% \def\expandafter\tikz@lib@graph@node@list\expandafter{\tikz@lg@packed}% -} +}% \def\tikz@lg@packer#1{% \expandafter\ifx\csname tikz@lg@p@#1\endcsname\pgf@stop% @@ -1533,7 +1533,7 @@ \expandafter\let\csname tikz@lg@p@#1\endcsname\pgf@stop% \expandafter\def\expandafter\tikz@lg@packed\expandafter{\tikz@lg@packed\tikz@lg@do{#1}} \fi -} +}% % % Color functions @@ -1543,11 +1543,11 @@ % % #1 = the color name % #2 = a macro -% +% % Description: -% +% % For each node having color #1, the macro #2 will be called. This -% macro should take a single parameter, which will be set +% macro should take a single parameter, which will be set % to the node's name. \def\tikzgraphforeachcolorednode#1#2{% @@ -1555,8 +1555,8 @@ \expandafter\def\expandafter\iftikz@lib@graph@color@picker\expandafter{\csname iftikz@lgc@#1@\endcsname}% \let\tikz@lib@graph@action#2% \let\tikz@lg@do\tikz@lg@pick% - \tikz@lib@graph@node@list% -} + \tikz@lib@graph@node@list% +}% \def\tikz@lg@pick#1{ {% \csname tikz@lgc@#1\endcsname% @@ -1567,18 +1567,18 @@ \fi% }% \iftikz@color@test\tikz@lib@graph@action{#1}\fi% -} +}% -% Prepare a color +% Prepare a color % % #1 is the color name % #2 is a counter % #3 is a prefix -% +% % Description: -% +% % You can call this function inside a connector. It will do the % following: First, its counts how many nodes exist that have color % #1. This number is stored in the counter passed as #2. Furthermore, @@ -1587,7 +1587,7 @@ % and the third red node is called foo and if #3 is "bar", then a % macro called "\bar3" is set to "foo" as if you had said % "\expandafter\def\csname bar3\endcsname{foo}". -% +% % The bottom line of all this is that after a preparation you can % easily iterate over nodes having a certain color. If you wish to % iterate over a single color, it will be quicker and easier to call @@ -1599,18 +1599,18 @@ \tikz@lib@graph@count0\relax \def\tikz@lib@graph@prefix{#3}% \tikzgraphforeachcolorednode{#1}\tikz@lib@graph@prepare% -} +}% \def\tikz@lib@graph@prepare#1{% \advance\tikz@lib@graph@count by1\relax% \expandafter\def\csname\tikz@lib@graph@prefix\the\tikz@lib@graph@count\endcsname{#1}% -} +}% -% -% The bipartite connector +% +% The bipartite connector % \tikzgraphsset{ @@ -1625,21 +1625,21 @@ complete bipartite={#1}{#2} }, induced complete bipartite/.default={target'}{source'}, -} +}% \def\tikz@lib@graph@bipartite@outer#1{% \def\tikz@lib@graph@from{#1}% {% \tikzgraphforeachcolorednode{\tikz@lg@shoreb}\tikz@lib@graph@bipartite@inner% }% -} +}% \def\tikz@lib@graph@bipartite@inner#1{% \def\pgf@temp{#1}% \ifx\pgf@temp\tikz@lib@graph@from\else% \tikz@lib@graph@default@new@edge{\tikz@lib@graph@from}{#1}% \fi% -} +}% \def\tikz@lib@graph@default@new@edge#1#2{% \pgfkeysgetvalue{/tikz/graphs/@edges styling}\pgf@temp @@ -1652,7 +1652,7 @@ \expandafter\expandafter\expandafter{\expandafter\pgf@temp\tikz@lib@add@temp}% \expandafter\expandafter\expandafter\tikz@lib@graph@default@new@edge@% \expandafter\expandafter\expandafter{\expandafter\pgf@temp\expandafter}\expandafter{\pgf@temp@b}{#1}{#2}% -} +}% \def\tikz@lib@graph@default@new@edge@#1#2#3#4{% \iftikz@lib@graph@simple% \edef\tikz@temp{{\pgfkeysvalueof{/tikz/graphs/default edge kind}}{#3}{#4}} @@ -1660,24 +1660,24 @@ \else% \pgfkeys{/tikz/graphs/.cd,new \pgfkeysvalueof{/tikz/graphs/default edge kind}={#3}{#4}{#1}{#2}}% \fi% -} +}% \def\tikz@lib@graph@add@edge@annotations#1#2{% \ifcsname tikz@lgc#1@@#2\endcsname% \expandafter\let\expandafter\tikz@lg@temp@\csname tikz@lgc#1@@#2\endcsname% \ifx\tikz@lg@temp@\relax\else \expandafter\tikz@lib@graph@add@edge@annotations@\tikz@lg@temp@% - \let\tikz@lib@add@temp\tikz@lib@final@edge@style + \let\tikz@lib@add@temp\tikz@lib@final@edge@style \fi% \fi% -} +}% \def\tikz@lib@graph@add@edge@annotations@#1#2{ \expandafter\def\expandafter\pgf@temp\expandafter{\pgf@temp,#1}% \expandafter\def\expandafter\pgf@temp@b\expandafter{\pgf@temp@b#2}% -} -\def\tikz@lib@final@edge@style{,after source and target edge/.try} +}% +\def\tikz@lib@final@edge@style{,after source and target edge/.try}% -% -% The clique connector +% +% The clique connector % \tikzgraphsset{ @@ -1686,7 +1686,7 @@ \tikz@lg@clique@loop% }}, clique/.default=all -} +}% \def\tikz@lg@clique@loop{% \ifnum\c@pgf@counta=0\relax% @@ -1696,7 +1696,7 @@ \advance\c@pgf@counta by-1\relax% \expandafter\tikz@lg@clique@loop% \fi% -} +}% \def\tikz@lg@clique@loop@inner{% \advance\c@pgf@countb by-1\relax% @@ -1704,11 +1704,11 @@ \tikz@lib@graph@default@new@edge{\csname tikz@lg\the\c@pgf@countb\endcsname}{\csname tikz@lg\the\c@pgf@counta\endcsname}% \expandafter\tikz@lg@clique@loop@inner% \fi% -} +}% -% -% The independent set connector +% +% The independent set connector % \tikzgraphsset{ @@ -1720,7 +1720,7 @@ \pgfkeyslet{/tikz/graphs/default edge kind}\tikz@lg@default% }}, induced independent set/.default=all -} +}% \def\tikz@lg@indep@loop{% \ifnum\c@pgf@counta=0\relax% @@ -1730,7 +1730,7 @@ \advance\c@pgf@counta by-1\relax% \expandafter\tikz@lg@indep@loop% \fi% -} +}% \def\tikz@lg@indep@loop@inner{% \advance\c@pgf@countb by-1\relax% @@ -1738,22 +1738,22 @@ \tikz@lib@graph@default@new@edge{\csname tikz@lg\the\c@pgf@counta\endcsname}{\csname tikz@lg\the\c@pgf@countb\endcsname}% \expandafter\tikz@lg@indep@loop@inner% \fi% -} +}% -% -% The path connector +% +% The path connector % \tikzgraphsset{ path/.style={operator={% \let\tikz@lg@prev\relax% \tikzgraphforeachcolorednode{#1}\tikz@lib@graph@path@do% - }}, + }}, path/.default=all, induced path/.style={induced independent set={#1},path={#1}}, induced path/.default=all, -} +}% \def\tikz@lib@graph@path@do#1{% \ifx\tikz@lg@prev\relax% @@ -1761,11 +1761,11 @@ \tikz@lib@graph@default@new@edge{\tikz@lg@prev}{#1}% \fi \def\tikz@lg@prev{#1}% -} +}% -% -% The cycle connector +% +% The cycle connector % \tikzgraphsset{ @@ -1781,7 +1781,7 @@ cycle/.default=all, induced cycle/.style={induced independent set={#1},cycle={#1}}, induced cycle/.default=all, -} +}% \def\tikz@lib@graph@cycle@do#1{% \ifx\tikz@lg@prev\relax% @@ -1791,13 +1791,13 @@ \tikz@lib@graph@default@new@edge{\tikz@lg@prev}{#1}% \def\tikz@lg@prev{#1}% \fi% -} +}% -% -% The matching and star connector +% +% The matching and star connector % \tikzgraphsset{ @@ -1811,7 +1811,7 @@ }% }, matching and star/.default={target'}{source'} -} +}% \def\tikz@lib@graph@flow@do#1{% \advance\c@pgf@countb by1\relax% @@ -1822,7 +1822,7 @@ \tikz@lib@graph@default@new@edge{\csname tikz@lg\the\c@pgf@countb\endcsname}{#1}% \fi% \def\tikz@lg@prev{#1}% -} +}% \def\tikz@lib@graph@flow@rest{% \ifnum\c@pgf@countb<\c@pgf@counta\relax% @@ -1832,12 +1832,12 @@ \expandafter\tikz@lib@graph@flow@rest% \fi% \fi% -} +}% -% -% The matching connector +% +% The matching connector % \tikzgraphsset{ @@ -1849,7 +1849,7 @@ }% }, matching/.default={target'}{source'} -} +}% \def\tikz@lib@graph@matching@do#1{% \advance\c@pgf@countb by1\relax% @@ -1857,14 +1857,14 @@ \else% \tikz@lib@graph@default@new@edge{\csname tikz@lg\the\c@pgf@countb\endcsname}{#1}% \fi% -} +}% -% -% The butterfly connector +% +% The butterfly connector % \tikzgraphsset{ @@ -1889,7 +1889,7 @@ butterfly/to/.initial=source', butterfly'/.style={operator={}{\tikz@butterfly@primetrue\pgfkeysalso{butterfly={#1}}}}, butterfly'/.default=, -} +}% \newif\iftikz@butterfly@prime @@ -1924,15 +1924,15 @@ \c@pgf@countc=\c@pgf@counta\relax% \fi% \tikz@lib@graph@default@new@edge{\csname tikz@lg\the\c@pgf@countc\endcsname}{#1}% -} +}% -% -% The no edges connector % -\tikzgraphsset{no edges/.style={operator=\relax}} +% The no edges connector +% +\tikzgraphsset{no edges/.style={operator=\relax}}% @@ -1949,7 +1949,7 @@ }% }, grid/.default=all -} +}% \def\tikzgraphpreparewrapafter{% \pgfkeysgetvalue{/tikz/graphs/wrap after}\tikz@temp% @@ -1960,7 +1960,7 @@ \else% \edef\tikzgraphwrapafter{\tikz@temp} \fi% -} +}% \def\tikz@lg@grid@loop{% \ifnum\c@pgf@counta=0\relax% @@ -1982,7 +1982,7 @@ \advance\c@pgf@counta by-1\relax% \expandafter\tikz@lg@grid@loop% \fi% -} +}% @@ -1992,32 +1992,32 @@ % It is not the job of the graph library to compute good positions for % nodes in a graph. However, some basic support is provided for simple % cases. -% +% % The idea is at follows: Graphs are specified hierarchically. For % instance, consider the following graph specification: -% +% % graph { a, b, c -> d -> {e -> f -> g, h} -> i, j -> k } -% +% % Here, we have the *group* {e->f->g,h} inside the larger graph % specification. Each group consists of sequence of *chains* like % e->f->g or j->k. -% +% % In order to facilitate the automatic positioning of nodes, the graph % library will provide you with information about the position of % nodes inside their groups and chains. -% +% % As a chain is being parsed, a counter stored in % /tikz/graphs/placement/element count is available that is advanced for -% each element in the chain. -% +% each element in the chain. +% % Additionally, a counter stored in placement/width is % available. This "logical" width is defined recursively as follows: The % width of a single node is computed by calling the key % placement/logical node width, which should return a real or logical -% width of the node passed as a parameter in the macor \pgfmathresult. The +% width of the node passed as a parameter in the macro \pgfmathresult. The % width of a chain is the sum of the widths of its elements. The % width of a group is the maximum of the widths of its elements. -% +% % % Symmetrically, as a group is being constructed, a counter stored in % placement/chain count is available that is advanced for each chain @@ -2025,21 +2025,21 @@ % recursively as follows: For a single node, the depth is % computed by the key placement/logical node depth. The depth % of a group is the sum of the depths of its elements. The depth of a -% chain is the maximum of the depth of its elements. +% chain is the maximum of the depth of its elements. +% % -% % The above keys get updated automatically. You should setup the key % placement/compute position such that it uses the above keys to % compute a good position for a new node based on the above % keys. Typically, this key should execute node={shift=(...)} to setup % the necessary shift for a new node. -% +% % The key placement/compute position should not be called % directly. Instead, the key placement/place should be used. This key % has two effects: First, it calls placement/compute position. Second, % it resets the length and normal counters. It will setup a completely % new counting of lengths and counters inside the current scope. -% +% % The placmenet/place key is executed automatically whenever a new % node is automatically created. Furthermore, placement strategies % will call this key. @@ -2064,20 +2064,20 @@ level/.initial=0, logical node depth/.code=\def\pgfmathresult{1}, logical node width/.code=\def\pgfmathresult{1}, -} +}% \def\tikz@lib@graph@reset@locals{% \gdef\tikz@lib@graph@group@depth{0}% \gdef\tikz@lib@graph@group@width{0}% -} +}% -% Arrange nodes evenly -% +% Arrange nodes evenly +% % This strategy works as follows: You specify a "chain shift vector" % and a "group shift vector". Then each new element on a chain is % shifted by the chain shift vector relative to the previous element -% on the chain. Similarly for each new element of a group. +% on the chain. Similarly for each new element of a group. \tikzgraphsset{ Cartesian placement/.style={ @@ -2142,9 +2142,9 @@ placement/logical node depth/.code=\def\pgfmathresult{1} }, branch down/.default=1, - % - % Sep shifts - % + % + % Sep shifts + % grow right sep/.style={ Cartesian placement, chain shift={(1pt,0)}, @@ -2217,26 +2217,26 @@ nodes={anchor=\csname tikz@lib@graph@auto@\tikz@lib@graph@auto@h @\tikz@lib@graph@auto@v\endcsname}, /utils/exec=\def\tikz@lib@graph@auto@v{#1} }, - % - % + % + % no placement/.style={ placement/place, placement/compute position/.code=% } -} +}% -\def\tikz@lib@graph@auto@h{center} -\def\tikz@lib@graph@auto@v{center} +\def\tikz@lib@graph@auto@h{center}% +\def\tikz@lib@graph@auto@v{center}% -\def\tikz@lib@graph@auto@center@center{center} -\def\tikz@lib@graph@auto@west@center{west} -\def\tikz@lib@graph@auto@east@center{east} -\def\tikz@lib@graph@auto@center@north{north} -\def\tikz@lib@graph@auto@west@north{north west} -\def\tikz@lib@graph@auto@east@north{north east} -\def\tikz@lib@graph@auto@center@south{south} -\def\tikz@lib@graph@auto@west@south{south west} -\def\tikz@lib@graph@auto@east@south{south east} +\def\tikz@lib@graph@auto@center@center{center}% +\def\tikz@lib@graph@auto@west@center{west}% +\def\tikz@lib@graph@auto@east@center{east}% +\def\tikz@lib@graph@auto@center@north{north}% +\def\tikz@lib@graph@auto@west@north{north west}% +\def\tikz@lib@graph@auto@east@north{north east}% +\def\tikz@lib@graph@auto@center@south{south}% +\def\tikz@lib@graph@auto@west@south{south west}% +\def\tikz@lib@graph@auto@east@south{south east}% \def\tikz@lib@graph@linear@pos{% \pgfkeysgetvalue{/tikz/graphs/chain shift}\tikz@temp @@ -2251,29 +2251,29 @@ \advance\pgf@ya by\pgf@y% \edef\tikz@lib@graph@shift{(\the\pgf@xa,\the\pgf@ya)} \pgfkeys{/tikz/graphs/nodes/.expanded={shift={\tikz@lib@graph@shift}}} -} +}% \def\tikz@lib@graph@width@sep#1#2{% \pgf@process{\pgfpointdiff{\pgfpointanchor{#1}{west}}{\pgfpointanchor{#1}{east}}}% \pgfmathparse{#2+\the\pgf@x}% -} +}% \def\tikz@lib@graph@depth@sep#1#2{% \pgf@process{\pgfpointdiff{\pgfpointanchor{#1}{south}}{\pgfpointanchor{#1}{north}}}% \pgfmathparse{#2+\the\pgf@y}% -} +}% -% Circular arrangements -% +% Circular arrangements +% % This strategy works a bit like the arrange evenly strategy, but in % polar coordinates. Both for the chains and the groups you specify a % polar shift, which must be in the form "(delta degree:delta % distance)". For each element in a chain, the delta degree is added % to the chain degree, likewise for each element the delta distance is % added. Similarly for groups. -% +% % There is an initial degree and radius, stored in the key "phase" and % "radius". @@ -2298,7 +2298,7 @@ group polar shift/.initial={(60:0)}, radius/.initial=1cm, phase/.initial=90, -} +}% \def\tikz@lib@graph@circular@pos{% \pgfkeysgetvalue{/tikz/graphs/chain polar shift}\tikz@temp @@ -2316,13 +2316,13 @@ \pgfmathsetmacro\tikz@temp{\the\pgf@xa+\pgfkeysvalueof{/tikz/graphs/phase}}% \edef\tikz@lib@graph@shift{(\tikz@temp:\the\pgf@ya)} \pgfkeys{/tikz/graphs/nodes/.expanded={shift={\tikz@lib@graph@shift}}} -} +}% \def\tikz@lib@graph@decompose@polar(#1:#2){% \pgfmathsetlength\pgf@x{#1}% \pgfmathsetlength\pgf@y{#2}% -} +}% % Grid arrangements @@ -2332,7 +2332,7 @@ placement/place, placement/compute position/.code=\tikz@lib@graph@grid@pos,% }, -} +}% \def\tikz@lib@graph@grid@pos{% @@ -2355,33 +2355,33 @@ \pgfkeysgetvalue{/tikz/graphs/group shift}\tikz@temp% \expandafter\tikz@scan@one@point\expandafter\tikz@lib@graph@grid@pos@a\tikz@temp% \pgfkeysgetvalue{/tikz/graphs/chain shift}\tikz@temp% - \expandafter\tikz@scan@one@point\expandafter\tikz@lib@graph@grid@pos@b\tikz@temp% + \expandafter\tikz@scan@one@point\expandafter\tikz@lib@graph@grid@pos@b\tikz@temp% % % apply the shift % \edef\tikz@lib@graph@shift{(\the\pgf@xa,\the\pgf@ya)} \pgfkeys{/tikz/graphs/nodes/.expanded={shift={\tikz@lib@graph@shift}}} -} +}% -\def\tikz@lib@graph@grid@pos@a#1{\pgf@process{\pgfpointscale{\tikz@temp@row}{#1}}\pgf@xa=\pgf@x\relax\pgf@ya=\pgf@y\relax} +\def\tikz@lib@graph@grid@pos@a#1{\pgf@process{\pgfpointscale{\tikz@temp@row}{#1}}\pgf@xa=\pgf@x\relax\pgf@ya=\pgf@y\relax}% \def\tikz@lib@graph@grid@pos@b#1{\pgf@process{\pgfpointscale{\tikz@temp@col}{#1}}% \advance\pgf@xa by\pgf@x\relax - \advance\pgf@ya by\pgf@y\relax} + \advance\pgf@ya by\pgf@y\relax}% \tikzgraphsset{ % Grids: wrap after/.initial=0, % Node sets: V/.code={% - \def\tikzgraphV{#1} - \c@pgf@counta=0\foreach \tikz@dummy in {#1} {\global\advance\c@pgf@counta by1\relax} + \def\tikzgraphV{#1}% + \c@pgf@counta=0\foreach \tikz@dummy in {#1} {\global\advance\c@pgf@counta by1\relax}% \edef\tikzgraphVnum{\the\c@pgf@counta} }, V={1}, n/.style={V={1,...,#1},name shore V/.style={name=V}}, W/.code={% - \def\tikzgraphW{#1} - \c@pgf@counta=0\foreach \tikz@dummy in {#1} {\global\advance\c@pgf@counta by1\relax} + \def\tikzgraphW{#1}% + \c@pgf@counta=0\foreach \tikz@dummy in {#1} {\global\advance\c@pgf@counta by1\relax}% \edef\tikzgraphWnum{\the\c@pgf@counta} }, W={1}, @@ -2389,7 +2389,7 @@ % Shores: name shore V/.style=, name shore W/.style=, -} +}% @@ -2439,7 +2439,7 @@ % % % Things that are allowed in the normal syntax, but not in the quick -% syntax, include: +% syntax, include: % % - Connecting a node and a group as in a->{b,c}. % - Node names without quotation marks. @@ -2464,7 +2464,7 @@ % % -\tikzgraphsset{quick/.is if=tikz@graph@quick} +\tikzgraphsset{quick/.is if=tikz@graph@quick}% \newif\iftikz@graph@quick \def\tikz@lib@graphs@parse@quick@graph{ @@ -2475,21 +2475,21 @@ \let\tikzgraphnodepath\pgfutil@empty% \tikz@q@outertrue% \afterassignment\tikz@lib@graphs@quick@main\let\pgf@temp=% -} +}% \newcount\tikz@qnode@count \newif\iftikz@q@outer \def\tikz@lib@graphs@quick@main{% \afterassignment\tikz@lib@graphs@quick@handle\let\pgf@let@token=% -} +}% \def\tikz@lib@graphs@quick@handle{% \ifx\pgf@let@token"% \expandafter\tikz@lib@graphs@quick@first@node% \else% \expandafter\tikz@lib@graphs@quick@other% \fi% -} +}% \def\tikz@lib@graphs@quick@other{% \let\tikz@next\tikz@lib@graphs@quick@error% \ifx\pgf@let@token\egroup% @@ -2502,22 +2502,22 @@ \let\tikz@next\tikz@lib@graphs@quick@main% \fi% \fi - \fi% + \fi% \tikz@next% -} +}% -\def\tikz@lib@graphs@quick@error#1{\tikzerror{Unexpected token '\string#1' in quick graph syntax}\tikz@lib@graphs@quick@main} +\def\tikz@lib@graphs@quick@error#1{\tikzerror{Unexpected token '\string#1' in quick graph syntax}\tikz@lib@graphs@quick@main}% \def\tikz@lib@graphs@quick@start@group{% \pgfutil@ifnextchar[\tikz@lib@graphs@quick@start@group@{\tikzerror{Group in quick graph syntax must start with options.}} -} +}% \def\tikz@lib@graphs@quick@start@group@[#1]{% \begingroup% \tikz@q@outerfalse% \tikzgraphsset{#1}% \tikz@lib@graphs@quick@main% -} +}% \def\tikz@lib@graphs@quick@end@group{% \iftikz@q@outer% \endgroup% @@ -2526,27 +2526,27 @@ \ifnum\tikz@qnode@count>0\relax% \expandafter\global\expandafter\let\csname tikz@gr@q@@\csname tikz@gr@qn@@\the\tikz@qnode@count\endcsname\endcsname\relax% \expandafter\global\expandafter\let\csname tikz@gr@qn@@\the\tikz@qnode@count\endcsname\relax% - \global\advance\tikz@qnode@count by-1\relax% + \global\advance\tikz@qnode@count by-1\relax% \pgfutil@repeat% \expandafter\tikz@lib@graph@main@done% \else% \endgroup% - \expandafter\tikz@lib@graphs@end@group@% - \fi% -} + \expandafter\tikz@lib@graphs@end@group@% + \fi% +}% \def\tikz@lib@graphs@end@group@{% \pgfutil@ifnextchar;{\expandafter\tikz@lib@graphs@quick@main\pgfutil@gobble}{% \pgfutil@ifnextchar,{\expandafter\tikz@lib@graphs@quick@main\pgfutil@gobble}{% \tikzerror{Graph groups in quick syntax must be followed by a semicolon or a comma.}% }% }% -} +}% \def\tikz@lib@graphs@quick@first@node{% \let\tikz@quick@prev@node\relax% \tikz@lib@graphs@quick@node% -} +}% \def\tikz@lib@graphs@quick@node#1"{% \def\tikzgraphnodename{#1}% @@ -2556,14 +2556,14 @@ \global\advance\tikz@lib@auto@number by1\relax% \fi \pgfutil@ifnextchar/\tikz@lib@graphs@quick@text\tikz@lib@graphs@quick@opt% -} +}% \def\tikz@lib@graphs@quick@text/"#1"{% \def\tikzgraphnodetext{#1}% \tikz@lib@graphs@quick@opt% -} +}% \def\tikz@lib@graphs@quick@opt{% \pgfutil@ifnextchar[\tikz@lib@graphs@quick@withopt{\tikz@lib@graphs@quick@withopt[]}%] -} +}% \def\tikz@lib@graphs@quick@withopt[#1]{% % Test, whether node already exists \expandafter\ifx\csname tikz@gr@q@@\tikzgraphnodename\endcsname\relax% @@ -2583,56 +2583,56 @@ \tikzgraphnodeas% };% \else% - % + % % Handle late options and operators \tikzgdlatenodeoptionacallback{\tikzgraphnodename}% \node also[graphs/redirect unknown to tikz,/tikz/graphs/.cd,#1](\tikzgraphnodename);% \fi% - % Connect, if necessary + % Connect, if necessary \tikz@lig@graph@quikc@make@edge@if@necessary% \tikz@lib@graphs@quick@scan@after@node% -} +}% \def\tikz@lig@graph@quikc@make@edge@if@necessary{% \ifx\tikz@quick@prev@node\relax% \else% \tikz@lib@graphs@quick@make@edge% \fi% -} +}% \def\tikz@lib@graphs@quick@scan@after@node{% \pgfutil@ifnextchar,\tikz@lib@graphs@quick@comma{% \pgfutil@ifnextchar;\tikz@lib@graphs@quick@semi{% \pgfutil@ifnextchar\egroup{\tikz@lib@graphs@quick@semi;}{% \pgfutil@ifnextchar\par{\expandafter\tikz@lib@graphs@quick@scan@after@node\tikz@lib@graphs@quick@gobble@par}% - \tikz@lib@graphs@quick@connector}}}% -} + \tikz@lib@graphs@quick@connector}}}% +}% \long\def\tikz@lib@graphs@quick@gobble@par#1{}% -\def\tikz@lib@graphs@quick@comma,{\tikz@lib@graphs@quick@main} -\def\tikz@lib@graphs@quick@semi;{\tikz@lib@graphs@quick@main} +\def\tikz@lib@graphs@quick@comma,{\tikz@lib@graphs@quick@main}% +\def\tikz@lib@graphs@quick@semi;{\tikz@lib@graphs@quick@main}% \def\tikz@lib@graphs@quick@connector#1#2{% \def\tikz@lib@graphs@quick@edge@kind{#1#2}% \pgfutil@ifnextchar>\tikz@lib@graphs@back@edge{% \pgfutil@ifnextchar[\tikz@lib@graphs@quick@connector@handle@opt{\tikz@lib@graphs@quick@connector@handle@opt[]}%] }% -} +}% \def\tikz@lib@graphs@back@edge#1{% \expandafter\def\expandafter\tikz@lib@graphs@quick@edge@kind\expandafter{\tikz@lib@graphs@quick@edge@kind#1}% \pgfutil@ifnextchar[\tikz@lib@graphs@quick@connector@handle@opt{\tikz@lib@graphs@quick@connector@handle@opt[]}%] -} +}% \def\tikz@lib@graphs@quick@connector@handle@opt[#1]{% \def\tikz@lib@graphs@quick@edge@options{#1}% \let\tikz@quick@prev@node\tikzgraphnodename% \tikz@lib@graphs@quick@scan@after@connector% -} +}% \def\tikz@lib@graphs@quick@scan@after@connector{% \pgfutil@ifnextchar\par{\expandafter\tikz@lib@graphs@quick@scan@after@connector\tikz@lib@graphs@quick@gobble@par}{% \pgfutil@ifnextchar"{\expandafter\tikz@lib@graphs@quick@node\pgfutil@gobble}{% \tikzerror{Quotation marks expected after edge connector}% }% }% -} +}% \def\tikz@lib@graphs@quick@make@edge{% { @@ -2640,22 +2640,22 @@ \expandafter\expandafter\expandafter\tikz@lib@graphs@quick@make@edge@for% \expandafter\expandafter\expandafter{\expandafter\tikz@quick@prev@node\expandafter}\expandafter{\tikzgraphnodename}% } -} +}% \def\tikz@lib@graphs@quick@make@edge@styling#1{% \tikz@enable@edge@quotes% \tikzgraphsset{.unknown/.code=\tikz@lib@graph@unknown@edge@option{##1},#1}% -} +}% \def\tikz@lib@graphs@quick@make@edge@for#1#2{% \pgfkeysgetvalue{/tikz/graphs/@edges styling}\pgf@tempa \pgfkeysgetvalue{/tikz/graphs/@edges node}\pgf@temp@b \expandafter\expandafter\expandafter\tikz@lib@graphs@quick@make@edge@for@with% \expandafter\expandafter\expandafter{\expandafter\pgf@tempa\expandafter}\expandafter{\pgf@temp@b}{#1}{#2}% -} +}% \def\tikz@lib@graphs@quick@make@edge@for@with#1#2#3#4{% \tikzgraphsset{new \tikz@lib@graphs@quick@edge@kind={#3}{#4}{#1}{#2}}% -} +}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.standard.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.standard.code.tex index a56702bcf96..bfceb3769a5 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.standard.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.standard.code.tex @@ -8,7 +8,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/graphs/tikzlibrarygraphs.standard.code.tex,v 1.9 2012/02/27 20:00:11 tantau Exp $ +\ProvidesFileRCS{tikzlibrarygraphs.standard.code.tex} % @@ -43,16 +43,16 @@ }, % % A complete bipartite graph with shores V and W. - % + % declare={subgraph K_nm}% { - [color class=shore V, + [color class=shore V, color class=shore W, complete bipartite={shore V}{shore W}] subgraph I_n [name shore V, shore V] -- [no edges] subgraph I_n [name shore W, V/.expand once=\tikzgraphW, shore W] }, - % + % % A cycle with n nodes. % declare={subgraph C_n}% @@ -60,9 +60,9 @@ [cycle] subgraph I_n }, - % + % % A path with n nodes. - % + % declare={subgraph P_n}% { [path] @@ -78,8 +78,8 @@ }, % % A random graph according to the G_{n,p} model: For each pair of - % vertices there is an edge between them with probability p. - % + % vertices there is an edge between them with probability p. + % p/.initial=0.5, declare={subgraph G_np}% { @@ -105,8 +105,4 @@ [parse/.expand once=\tikz@lg@temp] } }, -} - - - - +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzexternalshared.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzexternalshared.code.tex index 50829d90f46..645191dbabf 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzexternalshared.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzexternalshared.code.tex @@ -37,6 +37,9 @@ \newif\iftikzexternal@export@enabled \tikzexternal@export@enabledtrue +% must be numeric! +\gdef\c@tikzexternal@version{2} + % This 'if' can be used as part of the public user interface. % % It is set by the 'remake next' key. @@ -138,7 +141,7 @@ mode/list only/.code = {\def\tikzexternal@opmode{3}\tikzexternal@genfigurelisttrue}, mode/convert with system call/.code={% \def\tikzexternal@opmode{4}% - \pgfkeysalso{/tikz/external/figure list=false,/pgf/images/aux in dpth=true}% ATTENTION: this *can't* work if \label{} contains pictures! + \pgfkeysalso{/tikz/external/figure list=false,/pgf/images/aux in dpth=true}% }, mode/list and make/.code = {% \def\tikzexternal@opmode{5}% @@ -147,6 +150,9 @@ mode=convert with system call, force remake/.is if=tikzexternal@force@remake, force remake/.default=true, + % + % DEPRECATED: this here will work out-of-the box (provided that + % 'aux in dpth' is active): failed ref warnings for/.initial={\ref,\cite,\pageref}, export next/.is if=tikzexternalexportnext, export/.is if=tikzexternal@export@enabled, @@ -268,6 +274,11 @@ up to date check=md5, } +\expandafter\def\csname tikzexternal@driver@pgfsys-luatex.def\endcsname{% + \pgfkeyssetvalue{/tikz/external/system call}{% + lualatex \tikzexternalcheckshellescape -halt-on-error -interaction=batchmode -jobname "\image" "\texsource"% + }% +}% \expandafter\def\csname tikzexternal@driver@pgfsys-pdftex.def\endcsname{% \pgfutil@IfUndefined{directlua}{% \pgfkeyssetvalue{/tikz/external/system call}{% @@ -444,8 +455,7 @@ \tikzexternalauxlock@getlockvalue \if1\tikzexternallocked \pgfexternalreadmainauxfalse - % the main .aux file won't be read. Handle \ref commands: - \tikzexternalauxlock@handleref + % the main .aux file won't be read right now. \else \pgfexternalreadmainauxtrue \fi @@ -484,79 +494,10 @@ } -% Installs a special \ref{} command such that externalized pictures -% can use \ref and the user gets a warning if something fails. -% -% The special \ref handling is installed for every reference command -% in the list '/tikz/external/failed ref warnings for' which contains -% '\ref,\pageref,\cite'. -% -% For use in the aux lock handling only. -% -% ATTENTION: this is used if and only if *all* references are broken -% (because the .aux file is NOT read at all)! -\def\tikzexternalauxlock@handleref{% - \let\pgf@external@grab@refundefinedtrue=\pgf@external@grab@refundefinedtrue@orig - % - \pgfkeysgetvalue{/tikz/external/failed ref warnings for}\tikzexternal@temp - \expandafter\tikzexternalauxlock@handleref@loop\tikzexternal@temp,\@EOI,% -} -\def\tikzexternalauxlock@handleref@loop#1,{% - \def\tikzexternal@temp{#1}% - \ifx\tikzexternal@temp\pgfutil@empty - \expandafter\tikzexternalauxlock@handleref@loop - \else - \ifx#1\@EOI - \else - {% - % strip the leading '\' - % this allows proper \protect ion when you write - % \caption{...\cite{..}} and #1=\cite - \escapechar=-1 - \xdef\pgf@temp{\string#1}% - }% - \expandafter\let\csname tikzexternalauxlock@handleref@orig@\pgf@temp\endcsname=#1% - \edef#1{\noexpand\pgf@texdist@protect\noexpand\tikzexternalauxlock@handleref@repl{\pgf@temp}}% - \expandafter\expandafter\expandafter\tikzexternalauxlock@handleref@loop - \fi - \fi -}% -\def\tikzexternalauxlock@handleref@repl#1{% - \pgfutil@ifnextchar[{\tikzexternalauxlock@handleref@gobble@opt{#1}}{\tikzexternalauxlock@handleref@repl@{#1}}% -}% -% silently discard the options. We merely need to generate a warning. -\def\tikzexternalauxlock@handleref@gobble@opt#1[#2]{% - % there may be more than one set of options (biblatex's \cite): - \pgfutil@ifnextchar[{\tikzexternalauxlock@handleref@gobble@opt{#1}}{\tikzexternalauxlock@handleref@repl@{#1}}% -}% -\def\tikzexternalauxlock@handleref@repl@#1#2{% - \tikzifexternalizingcurrent{% - % note that '#1' is NO control sequence! it is a protected string - \csname tikzexternalauxlock@handleref@orig@#1\endcsname{#2}% - \begingroup - \def\n{\pgfexternal@hat\pgfexternal@hat J}% - \tikzexternal@assemble@systemcall{\pgfactualjobname}{\pgf@tempa}% - \def\space{\noexpand\space}% - \pgfexternalstorecommand{% - \noexpand\begingroup - \noexpand\toks0={\pgf@tempa}% - \noexpand\immediate\noexpand\write16{\tikzexternalauxlock@handleref@warning{#2}{\noexpand\the\noexpand\toks0}}% - \noexpand\G@refundefinedtrue - \noexpand\endgroup - }% - \endgroup - }{% - % ok. We are not externalizing this part of the document. - % Throw the citation away without further notice. - }% +% this is a hook into pgfcoreexternal.code.tex: +\def\pgf@external@grab@refundefinedtrue@code{% + \gdef\noexpand\tikzexternal@systemcall@reschedule@to@end@document{1}% }% -\def\tikzexternalauxlock@handleref@warning#1#2{% - \n - LaTeX Warning: Reference `#1' in external picture `\pgfactualjobname' could not be resolved\noexpand\on@line.\n - This is because the \tikzexternal@realjob.aux file is not accessable in this context, you will need to issue the externalize command\n - \space\space\space#2\n - manually.\n% -} % Expands to the default image extension (it is set by % \tikzexternalize). @@ -884,7 +825,7 @@ \fi }{}% \iftikzexternal@verboseio - \immediate\write16{Writing '#1' to '\tikzexternal@realjob.figlist'.}% + \pgf@typeout{Writing '#1' to '\tikzexternal@realjob.figlist'.}% \fi \immediate\write\tikzexternal@outfile{#1}% \if\tikzexternal@opmode5% mode='list and make' @@ -901,7 +842,7 @@ \expandafter\tikzexternal@tempb\expandafter{\pgf@tempa}% \let\pgf@tempa=\pgfretval \iftikzexternal@verboseio - \immediate\write16{Writing '#1' to '\tikzexternal@realjob.makefile'.}% + \pgf@typeout{Writing '#1' to '\tikzexternal@realjob.makefile'.}% \fi \global\tikzexternal@file@isuptodatetrue% only check for force remake: \tikzexternal@checkforceremake% @@ -912,7 +853,7 @@ \def\tikzexternal@list@and@make@prepare{% \iftikzexternal@verboseio - \immediate\write16{Opening '\tikzexternal@realjob.makefile' for writing.}% + \pgf@typeout{Opening '\tikzexternal@realjob.makefile' for writing.}% \fi \begingroup % this makes \tikzexternal@outmakefile global: @@ -937,7 +878,7 @@ \immediate\write\tikzexternal@outmakefile{}% \tikzexternal@outmakefile@pendingcommands \pgfutil@ifundefined{AtEndDocument}{}{% - \AtEndDocument{\immediate\write16{===== mode=`list and make': Use 'make -f \tikzexternal@realjob.makefile' to generate all images. Then, re-run (pdf)latex \tikzexternal@realjob. =====}}% + \AtEndDocument{\pgf@typeout{===== mode=`list and make': Use 'make -f \tikzexternal@realjob.makefile' to generate all images. Then, re-run (pdf)latex \tikzexternal@realjob. =====}}% }% }% \def\tikzexternaldepext{dep} @@ -1173,7 +1114,7 @@ \begingroup \toks0={#1[#2]#3}% \iftikzexternal@verbose@optimize - \immediate\write16{The command '\the\toks0' has been optimized away. Use '/tikz/external/optimize=false' to disable this.}% + \pgf@typeout{The command '\the\toks0' has been optimized away. Use '/tikz/external/optimize=false' to disable this.}% \fi \endgroup \begingroup @@ -1189,7 +1130,7 @@ }% \long\def\tikzexternal@optimize@away@latex@env@close#1{% \iftikzexternal@verbose@optimize - \immediate\write16{The complete contents of \string\begin{tikzexternal@optimize@away@latex@env@} up to the next \end{tikzexternal@optimize@away@latex@env@} has been optimized away because it does not contribute to the exported PDF. Use '/tikz/external/optimize=false' to disable this.}% + \pgf@typeout{The complete contents of \string\begin{tikzexternal@optimize@away@latex@env@} up to the next \end{tikzexternal@optimize@away@latex@env@} has been optimized away because it does not contribute to the exported PDF. Use '/tikz/external/optimize=false' to disable this.}% \fi \endgroup % we still need to invoke \end{<name>} in latex because \begin{<name>} @@ -1226,7 +1167,7 @@ } \long\def\tikzexternal@skipfigure@@#1{% \iftikzexternal@verbose@optimize - \immediate\write16{A tikzpicture has been optimized away. Use '/tikz/external/optimize=false' to disable this.}% + \pgf@typeout{A tikzpicture has been optimized away. Use '/tikz/external/optimize=false' to disable this.}% \fi \tikzexternal@closeenvironments \pgfkeysvalueof{/tikz/external/optimize away text/.@cmd}tikzpicture\pgfeov% @@ -1285,7 +1226,7 @@ } \def\tikzexternal@forceremake@undefined@reference@handler{% - \immediate\write16{===== 'mode=list and make': encountered undefined reference in current picture. Adding dependency to FORCEREMAKE. Rerun make to update the picture.' ========^^J}% + \pgf@typeout{===== 'mode=list and make': encountered undefined reference in current picture. Adding dependency to FORCEREMAKE. Rerun make to update the picture.' ========^^J}% \tikzpicturedependsonfile{FORCEREMAKE}% }% @@ -1321,11 +1262,21 @@ \fi }% +\def\tikzexternal@externalizefig@before@grab{% + \pgfutil@IfUndefined{TP@holdbox}{% + }{% + % \usepackage[absolute]{textpos} + % populates this box -- and would inject unwanted material into our images. Reset it: + \global\setbox\TP@holdbox\vbox{}% + }% +}% + \def\tikzexternal@externalizefig@GRAB{% - \iftikzexternal@optimize - \ifpgf@external@grabshipout + \ifpgf@external@grabshipout + \iftikzexternal@optimize \tikzexternal@optimize@RESTORE \fi + \tikzexternal@externalizefig@before@grab \fi \def\tikzpicture{% \def\tikzpicture{% make sure that nested \tikzpicture are processed normally. @@ -1438,59 +1389,83 @@ }% \long\def\tikzexternal@externalizefig@systemcall@@#1{% \tikzexternal@externalizefig@systemcall@uptodatecheck{#1}% + \tikzexternal@assemble@systemcall{\tikzexternal@curfilename}{\pgf@tempa}% + \global\let\tikzexternal@cursyscall=\pgf@tempa + \gdef\tikzexternal@typeset@picture@on@failure{1}% \iftikzexternal@file@isuptodate \iftikzexternal@verboseio - \immediate\write16{===== Image '\tikzexternal@curfilename' is up-to-date. ======}% + \pgf@typeout{===== Image '\tikzexternal@curfilename' is up-to-date. ======}% \fi \let\pgf@filename=\tikzexternal@curfilename \else \begingroup % no such image. Generate it! - \tikzexternal@assemble@systemcall{\tikzexternal@curfilename}{\pgf@tempa}% - \iftikzexternal@verboseio - \immediate\write16{===== 'mode=convert with system call': Invoking '\pgf@tempa' ========}% - \fi % \tikzexternalauxlock@setlock1% - \immediate\write18{\pgf@tempa}% + \tikzexternal@externalizefig@systemcall@call{\tikzexternal@cursyscall}% \tikzexternalauxlock@setlock0% - \expandafter\tikzexternal@externalizefig@systemcall@assertsuccess\expandafter{\pgf@tempa}% + \expandafter\tikzexternal@externalizefig@systemcall@assertsuccess\expandafter{\tikzexternal@cursyscall}% \pgfmath@smuggleone\pgf@filename \endgroup \fi \ifx\pgf@filename\pgfutil@empty - % error recovery: something did not work! Try to load it - % anyway. Perhaps it was just that shell-escape wasn't - % enabled. - \begingroup - \toks0={% - \tikzexternaldisable - \pgfutil@ifundefined{scantokens}{\long\def\scantokens##1{##1}}{}% - }% - % FIXME : THIS WILL FAIL IF THERE IS '##' INSIDE OF '#1'! - % for example something like /.style={#1} in the picture environment *will* fail. - \toks1={% - \tikzpicture#1% - }% - \toks2={% - \tikzexternal@TEXDIALECT@endpicture - \tikzexternalenable - }% - \xdef\tikzexternal@externalizefig@systemcall@next{% - \the\toks0 - % try reading them again as if they were in the input file. - \noexpand\scantokens{\the\toks1 }% - \the\toks2 - }% - \endgroup + \if1\tikzexternal@typeset@picture@on@failure + % error recovery: something did not work! Try to load it + % anyway. Perhaps it was just that shell-escape wasn't + % enabled. + \begingroup + \toks0={% + \tikzexternaldisable + \pgfutil@ifundefined{scantokens}{\long\def\scantokens##1{##1}}{}% + }% + % FIXME : THIS WILL FAIL IF THERE IS '##' INSIDE OF '#1'! + % for example something like /.style={#1} in the picture environment *will* fail. + \toks1={% + \tikzpicture + #1% + }% + \toks2={% + \tikzexternal@TEXDIALECT@endpicture + \tikzexternalenable + }% + \xdef\tikzexternal@externalizefig@systemcall@next{% + \the\toks0 + % try reading them again as if they were in the input file. + \noexpand\scantokens{\the\toks1 }% + \the\toks2 + }% + \endgroup + \else + % Ah -- this picture failed, but the failure has already + % been handled somehow. Do not typeset it again! + % + % A use-case is that the picture has been rescheduled for + % \end{document}. + \gdef\tikzexternal@externalizefig@systemcall@next{\tikzexternal@closeenvironments}% + \fi \else % ok, take the image! + \gdef\tikzexternal@systemcall@reschedule@to@end@document{0}% \expandafter\pgfincludeexternalgraphics\expandafter{\tikzexternal@curfilename}% + \if1\tikzexternal@systemcall@reschedule@to@end@document + \pgfutil@IfUndefined{AtVeryEndDocument}{% + }{% + \pgf@typeout{===== The previous system call resulted in undefined references inside of the output file. Rescheduling it for \string\end{document}. ========}% + \expandafter\tikzexternal@externalizefig@systemcall@reschedule\expandafter{\tikzexternal@cursyscall}% + }% + \fi \gdef\tikzexternal@externalizefig@systemcall@next{\tikzexternal@closeenvironments}% \fi \tikzexternal@externalizefig@systemcall@next }% +\def\tikzexternal@externalizefig@systemcall@call#1{% + \iftikzexternal@verboseio + \pgf@typeout{===== 'mode=convert with system call': Invoking '#1' ========}% + \fi + \pgfutil@shellescape{#1}% +}% + % Sets \iftikzexternal@file@isuptodate to false if one of the "force % remake" things is active. \def\tikzexternal@checkforceremake{% @@ -1550,7 +1525,7 @@ \def\tikzexternal@check@uptodate@ext{.md5} \def\tikzexternal@check@uptodate@mode@warn@fallback{% - \message{! Package tikz Warning: The key 'up to date check=md5' is impossible, there is no macro to compute MD5. Falling back to 'up to date check=diff'.}% + \message{Package tikz Warning: The key 'up to date check=md5' is impossible, there is no macro to compute MD5. Falling back to 'up to date check=diff'.}% % % warn only once: \global\let\tikzexternal@check@uptodate@mode@warn@fallback=\relax @@ -1609,7 +1584,7 @@ \edef\tikzexternal@lastkey@normalized{\meaning\tikzexternal@lastkey}% \edef\tikzexternal@lastkey@new@normalized{\meaning\tikzexternal@lastkey@new}% \iftikzexternal@verboseuptodate - \immediate\write16{Up-to-date check of \tikzexternal@curfilename: new \tikzexternal@lastkey@new@normalized; old \tikzexternal@lastkey@normalized.^^J}% + \pgf@typeout{Up-to-date check of \tikzexternal@curfilename: new \tikzexternal@lastkey@new@normalized; old \tikzexternal@lastkey@normalized.^^J}% \fi \ifx\tikzexternal@lastkey@normalized\tikzexternal@lastkey@new@normalized \tikzexternal@file@isuptodatetrue @@ -1631,11 +1606,9 @@ % It returns \iftikzexternal@file@isuptodate accordingly. % #1: the picture-content \long\def\tikzexternal@externalizefig@systemcall@uptodatecheck#1{% + \tikzexternal@check@uptodate@mode{#1}% \tikzexternal@checkforceremake \iftikzexternal@file@isuptodate - \tikzexternal@check@uptodate@mode{#1}% - \fi - \iftikzexternal@file@isuptodate % check if there is already a file. % In that case, use it. If that is not the case, generate it and include it afterwards. \gdef\pgf@filename{}% @@ -1654,14 +1627,70 @@ \xdef\pgf@tempa{\noexpand\pgf@findfile\pgfsys@imagesuffixlist:+{\tikzexternal@curfilename}}% \pgf@tempa \ifx\pgf@filename\pgfutil@empty% - \tikzerror{Sorry, the system call '#1' did NOT result in a usable output file '\tikzexternal@curfilename' (expected one of \pgfsys@imagesuffixlist). Please verify that you have enabled system calls. For pdflatex, this is 'pdflatex -shell-escape'. Sometimes it is also named 'write 18' or something like that. Or maybe the command simply failed? Error messages can be found in '\tikzexternal@curfilename.log'. If you continue now, I'll try to typeset the picture}{}% + \tikzexternal@externalizefig@systemcall@handleexception{#1}% \fi }% +\def\tikzexternal@externalizefig@systemcall@handleexception@msg#1{% + \tikzerror{Sorry, the system call '#1' did NOT result in a usable output file '\tikzexternal@curfilename' (expected one of \pgfsys@imagesuffixlist). Please verify that you have enabled system calls. For pdflatex, this is 'pdflatex -shell-escape'. Sometimes it is also named 'write 18' or something like that. Or maybe the command simply failed? Error messages can be found in '\tikzexternal@curfilename.log'. If you continue now, I'll try to typeset the picture}{}% +} +\def\tikzexternal@externalizefig@systemcall@handleexception@retry@later#1{% + \gdef\tikzexternal@systemcall@reschedule@to@end@document{0}% + \expandafter\pgfexternalreaddpth\expandafter{\tikzexternal@curfilename}% + \if1\tikzexternal@systemcall@reschedule@to@end@document + \pgfutil@IfUndefined{AtVeryEndDocument}{% + \tikzexternal@externalizefig@systemcall@handleexception@msg{#1}% + }{% + \pgf@typeout{===== The last system call resulted in an EMPTY output file. Maybe it is part of \string\ref. Rescheduling it for \string\end{document}. ========}% + \gdef\tikzexternal@typeset@picture@on@failure{0}% + \tikzexternal@externalizefig@systemcall@reschedule{#1}% + }% + \else + \tikzexternal@externalizefig@systemcall@handleexception@msg{#1}% + \fi +} + +% reschedules the externalization of the current file to +% \AtVeryEndDocument. +% +% This hook allows to execute code AFTER the main .aux file is +% finished; it will even re-read the main aux file. +\def\tikzexternal@externalizefig@systemcall@reschedule#1{% + \t@tikzexternal@tmpb={% + \global\let\tikzexternal@externalizefig@systemcall@handleexception=\tikzexternal@externalizefig@systemcall@handleexception@msg% + % ... no auxlocks! + \tikzexternal@externalizefig@systemcall@call{#1}% + \tikzexternal@externalizefig@systemcall@assertsuccess{#1}% + }% + \xdef\pgfutil@tempa{% + \noexpand\def\noexpand\tikzexternal@curfilename{\tikzexternal@curfilename}% + \the\t@tikzexternal@tmpb + }% + \expandafter\AtVeryEndDocument\expandafter{\pgfutil@tempa}% + \gdef\tikzexternal@has@rescheduled@something{1}% +}% +\let\tikzexternal@externalizefig@systemcall@handleexception=\tikzexternal@externalizefig@systemcall@handleexception@retry@later% + +\def\tikzexternal@has@rescheduled@something{0}% +\pgfutil@IfUndefined{AtVeryEndDocument}{}{% + \AtVeryEndDocument{% + \if1\tikzexternal@has@rescheduled@something + \pgf@typeout{===== tikzexternal: \string\end{document} reached. Working on rescheduled images to resolve references... ========}% + \fi + }% +} % Overwrite error message of pgf. % This happens if the generated image was empty, i.e. if there was no \shipout. \def\pgfexternal@error@no@shipout{% \begingroup + \begingroup + % overwrite .dpth file in order to flag the file as "need to be scheduled + % for \AtVeryEndDocument" : + \immediate\openout\pgf@plotwrite=\pgfactualjobname.dpth + \let\w@pgfexternal@auxout=\pgf@plotwrite + \pgfexternalstorecommand@isexporting{\gdef\noexpand\tikzexternal@systemcall@reschedule@to@end@document{1}}% + \immediate\closeout\pgf@plotwrite + \endgroup \tikzexternal@assemble@systemcall{\pgfactualjobname}{\pgf@tempa}% \toks0=\expandafter{\pgf@tempa}% \tikzerror{Sorry, image externalization failed: the resulting image was EMPTY. I tried to externalize '\pgfactualjobname', but it seems there is no such image in the document!? diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex index c6c998e4b6a..aee687e274b 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrary3d.code.tex,v 1.2 2013/07/17 10:36:34 tantau Exp $ +\ProvidesFileRCS{tikzlibrary3d.code.tex} @@ -17,64 +17,67 @@ {% \pgfset{/tikz/cs/.cd,angle=0,radius=0,z=0,#1}% \pgfpointcylindrical{\tikz@cs@angle}{\tikz@cs@xradius}{\tikz@cs@z}% -} +}% \tikzdeclarecoordinatesystem{xyz spherical} {% \pgfset{/tikz/cs/.cd,angle=0,radius=0,latitude=0,longitude=0,#1}% \pgfpointspherical{\tikz@cs@angle}{\tikz@cs@latitude}{\tikz@cs@xradius}% -} +}% -\pgfset{/tikz/cs/longitude/.store in=\tikz@cs@angle} -\pgfset{/tikz/cs/latitude/.store in=\tikz@cs@latitude} +\pgfset{/tikz/cs/longitude/.store in=\tikz@cs@angle}% +\pgfset{/tikz/cs/latitude/.store in=\tikz@cs@latitude}% % Options for transforming into a plane: -\tikzoption{plane origin}{\def\tikz@plane@origin{\tikz@scan@one@point\pgfutil@firstofone#1}} -\tikzoption{plane x}{\def\tikz@plane@x{\tikz@scan@one@point\pgfutil@firstofone#1}} -\tikzoption{plane y}{\def\tikz@plane@y{\tikz@scan@one@point\pgfutil@firstofone#1}} +\tikzoption{plane origin}{\def\tikz@plane@origin{\tikz@scan@one@point\pgfutil@firstofone#1}}% +\tikzoption{plane x}{\def\tikz@plane@x{\tikz@scan@one@point\pgfutil@firstofone#1}}% +\tikzoption{plane y}{\def\tikz@plane@y{\tikz@scan@one@point\pgfutil@firstofone#1}}% \let\tikz@plane@origin=\pgfpointorigin -\def\tikz@plain@x{\pgfpointxy{1}{0}} -\def\tikz@plain@y{\pgfpointxy{0}{1}} +\def\tikz@plane@x{\pgfpointxy{1}{0}}% +\def\tikz@plane@y{\pgfpointxy{0}{1}}% \tikzoption{canvas is plane}[]{ \tikz@canvas@is@plane -} -\tikzoption{canvas is xy plane at z}{% - \tikz@addtransform{\pgftransformshift{\pgfpointxyz{0}{0}{#1}}}% -} +}% +\tikzoption{canvas is xy plane at z}[]{% + \def\tikz@plane@origin{\pgfpointxyz{0}{0}{#1}}% + \def\tikz@plane@x{\pgfpointxyz{1}{0}{#1}}% + \def\tikz@plane@y{\pgfpointxyz{0}{1}{#1}}% + \tikz@canvas@is@plane +}% \tikzoption{canvas is yx plane at z}[]{% \def\tikz@plane@origin{\pgfpointxyz{0}{0}{#1}}% \def\tikz@plane@x{\pgfpointxyz{0}{1}{#1}}% \def\tikz@plane@y{\pgfpointxyz{1}{0}{#1}}% \tikz@canvas@is@plane -} +}% \tikzoption{canvas is xz plane at y}[]{% \def\tikz@plane@origin{\pgfpointxyz{0}{#1}{0}}% \def\tikz@plane@x{\pgfpointxyz{1}{#1}{0}}% \def\tikz@plane@y{\pgfpointxyz{0}{#1}{1}}% \tikz@canvas@is@plane -} +}% \tikzoption{canvas is zx plane at y}[]{% \def\tikz@plane@origin{\pgfpointxyz{0}{#1}{0}}% \def\tikz@plane@x{\pgfpointxyz{0}{#1}{1}}% \def\tikz@plane@y{\pgfpointxyz{1}{#1}{0}}% \tikz@canvas@is@plane -} +}% \tikzoption{canvas is yz plane at x}[]{% \def\tikz@plane@origin{\pgfpointxyz{#1}{0}{0}}% \def\tikz@plane@x{\pgfpointxyz{#1}{1}{0}}% \def\tikz@plane@y{\pgfpointxyz{#1}{0}{1}}% \tikz@canvas@is@plane -} +}% \tikzoption{canvas is zy plane at x}[]{% \def\tikz@plane@origin{\pgfpointxyz{#1}{0}{0}}% \def\tikz@plane@x{\pgfpointxyz{#1}{0}{1}}% \def\tikz@plane@y{\pgfpointxyz{#1}{1}{0}}% \tikz@canvas@is@plane -} +}% @@ -99,7 +102,7 @@ \noexpand\pgfsetzvec{\noexpand\pgfpoint{0cm}{0cm}}% }}% \pgf@marshal% -} +}% + - \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryangles.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryangles.code.tex index 2ac3ebc7b22..364468a2eb4 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryangles.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryangles.code.tex @@ -1,4 +1,5 @@ % Copyright 2013 by Till Tantau +% Copyright 2018 by Kroum Tzanev % % This file may be distributed and/or modified % @@ -7,26 +8,31 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryangles.code.tex,v 1.1 2013/08/28 15:24:27 tantau Exp $ +\ProvidesFileRCS{tikzlibraryangles.code.tex} \tikzset{ pics/angle/.style = { setup code = \tikz@lib@angle@parse#1\pgf@stop, background code = \tikz@lib@angle@background#1\pgf@stop, - foreground code = \tikz@lib@angle@foreground#1\pgf@stop, + foreground code = \tikz@lib@angle@foreground#1\pgf@stop, + }, + pics/right angle/.style = { + setup code = \tikz@lib@angle@parse#1\pgf@stop, + background code = \tikz@lib@rightangle@background#1\pgf@stop, + foreground code = \tikz@lib@rightangle@foreground#1\pgf@stop, }, pics/angle/.default=A--B--C, angle eccentricity/.initial=.6, - angle radius/.initial=5mm -} + angle radius/.initial=5mm, +}% \def\tikz@lib@angle@background#1--#2--#3\pgf@stop{% \path [name prefix ..] [pic actions, draw=none] (#2.center) -- ++(\tikz@start@angle@temp:\tikz@lib@angle@rad pt) arc [start angle=\tikz@start@angle@temp, end angle=\tikz@end@angle@temp, radius=\tikz@lib@angle@rad pt] -- cycle; -} +}% \def\tikz@lib@angle@foreground#1--#2--#3\pgf@stop{% \path [name prefix ..] [pic actions, fill=none, shade=none] @@ -39,8 +45,28 @@ eccentricity}*\tikz@lib@angle@rad pt)}]#2.center)}]} \expandafter\pgf@temp\expandafter[\tikzpictextoptions]{\tikzpictext};% \fi -} +}% + +\def\tikz@lib@rightangle@background#1--#2--#3\pgf@stop{% + \path [name prefix ..] [pic actions, draw=none] (#2.center) + -- ++(\tikz@start@angle@temp:\tikz@lib@angle@rad pt) + -- ++(\tikz@end@angle@temp:\tikz@lib@angle@rad pt) + -- ++(\tikz@start@angle@temp:-\tikz@lib@angle@rad pt) + -- cycle; +}% +\def\tikz@lib@rightangle@foreground#1--#2--#3\pgf@stop{% + \path [name prefix ..] [pic actions, fill=none, shade=none] + ([shift={(\tikz@start@angle@temp:\tikz@lib@angle@rad pt)}]#2.center) + -- ++(\tikz@end@angle@temp:\tikz@lib@angle@rad pt) + -- ++(\tikz@start@angle@temp:-\tikz@lib@angle@rad pt); + \ifx\tikzpictext\relax\else% + \def\pgf@temp{\node()[name prefix + ..,at={([shift={({.5*\tikz@start@angle@temp+.5*\tikz@end@angle@temp}:\pgfkeysvalueof{/tikz/angle + eccentricity}*sqrt(1/2)*\tikz@lib@angle@rad pt)}]#2.center)}]} + \expandafter\pgf@temp\expandafter[\tikzpictextoptions]{\tikzpictext};% + \fi +}% \def\tikz@lib@angle@parse#1--#2--#3\pgf@stop{% % Compute radius: @@ -64,8 +90,8 @@ \pgfmathsetmacro{\tikz@end@angle@temp}{atan2(\the\pgf@yc,\the\pgf@xc)} \ifdim\tikz@end@angle@temp pt<\tikz@start@angle@temp pt% \pgfmathsetmacro{\tikz@start@angle@temp}{\tikz@start@angle@temp-360}% - \fi% -} + \fi% +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryanimations.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryanimations.code.tex new file mode 100644 index 00000000000..f4dd1716932 --- /dev/null +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryanimations.code.tex @@ -0,0 +1,904 @@ +% Copyright 2016 by Till Tantau +% +% This file may be distributed and/or modified +% +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Public License. +% +% See the file doc/generic/pgf/licenses/LICENSE for more details. + +\ProvidesFileRCS{tikzlibraryanimations.code.tex} + +\usepgfmodule{animations}% + + + +% Scope syntax extension: + +\def\tikz@collect@scope@anims#1{% + \let\tikz@scope@anims\pgfutil@empty% + \let\tikz@collect@command#1% + \tikz@collect@scope@anims@parse% +}% +\def\tikz@collect@scope@anims@parse{% + \pgfutil@ifnextchar[{\tikz@collect@scope@anims@opt}{% + \pgfutil@ifnextchar:{\tikz@collect@scope@anims@go}{% + \tikz@collect@scope@anims@done}}%] +}% +\def\tikz@collect@scope@anims@done{% + \expandafter\tikz@collect@command\expandafter[\tikz@scope@anims]% +}% +\def\tikz@collect@scope@anims@opt[{%] + \expandafter\tikz@collect@command\expandafter[\tikz@scope@anims%] +}% +\def\tikz@collect@scope@anims@go:#1=#2{% + \expandafter\def\expandafter\tikz@scope@anims\expandafter{\tikz@scope@anims animate={myself:={:{#1}={#2}}},}% + \tikz@collect@scope@anims@parse% +}% + + + + +% +% The main keys: +% + +\def\tikzanimateset{\pgfqkeys{/tikz/animate}}% +\tikzanimateset{ + .code={ + \pgfkeys{/handlers/first char syntax=true} + \pgfkeyssetvalue{/handlers/first char syntax/the character "}{\tikz@animation@value}% + \def\tikz@anim@t{0}% + \def\tikz@anim@t@base{0}% + \def\tikz@anim@t@current{0}% + \tikzanimateset{#1} + }, + scope/.code=\tikz@anim@scope{#1}{}{}, + sync/.code=\tikz@anim@sync@scope{#1}{}{}, + entry/.code=\tikz@anim@make@entry, + object/.code=\tikz@anim@set@object{#1}, + attribute/.code=\tikz@anim@set@attr{#1}, + id/.code=\tikz@anim@set@id{#1}, + time/.code=\tikz@anim@set@time{#1}, + value/.code=\tikz@anim@add{\tikz@anim@value{#1}},% + remember/.code=\pgfmathadd@{\tikz@anim@t}{\tikz@anim@t@base}\global\let#1\pgfmathresult, + resume/.code=\tikz@anim@resume{#1}, + fork/.code={\tikz@anim@parse@time{#1}\pgfmathadd@\tikz@anim@t\tikz@anim@t@base\let\tikz@anim@t@base\pgfmathresult\def\tikz@anim@t{0}}, + fork/.default = 0later, + base/.style={scope={/utils/exec=\let\tikz@animation@time\tikz@anim@base@text,#1,entry}}, +}% + +\tikzset{ + make snapshot of/.code=\edef\tikz@temp{#1}\ifx\tikz@temp\pgfutil@empty\else\pgfsnapshot{#1}\fi, + make snapshot after/.code=\edef\tikz@temp{#1}\ifx\tikz@temp\pgfutil@empty\else\pgfsnapshotafter{#1}\fi, + make snapshot if necessary/.code=\ifpgfsysanimationsupported\else\pgfsnapshot{#1}\fi, + make snapshot if necessary/.default=0s, +}% + +\def\tikz@anim@scope#1#2#3{% + {#2\tikzanimateset{#1}#3}% +}% +\def\tikz@anim@sync@scope#1#2#3{% + {% + #2% + \tikzanimateset{#1}% + #3% + \pgfmathadd@{\tikz@anim@t}{\tikz@anim@t@base}% + \expandafter% + }\expandafter\pgfmathsubtract@\expandafter{\pgfmathresult}{\tikz@anim@t@base}% + \tikz@anim@set@time{\pgfmathresult}% +}% + +\def\tikz@anim@set@time#1{% + \tikz@anim@parse@time{#1}% + \let\tikz@anim@t@current\tikz@anim@t% + \pgfmathadd@\tikz@anim@t\tikz@anim@t@base% + \let\tikz@animation@time\pgfmathresult% +}% + +\def\tikz@anim@value#1{% + \def\tikz@anim@result{#1} + \ifx\tikz@anim@result\pgf@special@current@text% + \else% + \ifx\tikz@animation@parser\relax% + \else% + \tikz@animation@parser{#1}% + \fi% + \fi% +}% + + +\def\tikz@anim@resume#1{% + \pgfparsetime{#1}% + \pgfmathsubtract@{\pgftimeresult}{\tikz@anim@t@base}% + \tikz@anim@set@time{\pgfmathresult}% +}% + + +% The object--attribute entries are of the following forms: +% +% objects:attributes +% objects:attributes_id +% + +\def\tikz@animation@syntax@check#1#2{% + \def\tikz@animation@rest{#1}% + \expandafter\pgfutil@in@\expandafter:\expandafter{\tikz@key}% + \ifpgfutil@in@% + \expandafter\tikz@anim@parse@colon\tikz@key\pgf@stop% + \else% + #2% + \fi% +}% + +\def\tikz@anim@parse@colon#1:#2\pgf@stop{% + \expandafter\tikz@anim@sync@scope\expandafter{\tikz@animation@rest}{% + \tikz@anim@set@object{#1}% + \pgfutil@in@_{#2}% + \ifpgfutil@in@% + \tikz@anim@parse@under#2\pgf@stop% + \else% + \tikz@anim@parse@under#2_\pgf@stop% + \fi% + }{\tikz@anim@make@entry}% +}% + +\def\tikz@anim@parse@under#1_#2\pgf@stop{% + \tikz@anim@set@attr{#1}% + \tikz@anim@set@id{#2}% +}% + +\def\tikz@anim@set@attr#1{% + \pgfkeys@spdef\tikz@anim@a{#1}% + \ifx\tikz@anim@a\pgfutil@empty% + \else% + \let\tikz@anim@tl@attributes\tikz@anim@a% + \fi% +}% + +\def\tikz@anim@set@id#1{% + \pgfkeys@spdef\tikz@anim@a{#1}% + \ifx\tikz@anim@a\pgfutil@empty% + \else% + \let\tikz@anim@tl@id\tikz@anim@a% + \fi% +}% + +\def\tikz@anim@set@object#1{% + \pgfkeys@spdef\tikz@anim@a{#1}% + \ifx\tikz@anim@a\pgfutil@empty% + \else% + \let\tikz@anim@tl@objects\tikz@anim@a% + \fi% +}% + + +% +% Parsing of values +% + +\def\tikz@animation@value#1{% + \tikz@animation@value@parser#1\pgf@stop% +}% + +\def\tikz@animation@value@parser"#1"{% + \def\tikz@animation@value@head{#1}% + \pgfutil@ifnextchar\pgf@stop{\tikz@animation@value@rest=}{% + \pgfutil@ifnextchar b\tikz@animation@value@rest@base\tikz@animation@value@rest% + }% +}% +\def\tikz@animation@value@rest=#1\pgf@stop{% + \tikz@anim@sync@scope{#1}{\expandafter\tikz@anim@add\expandafter{\expandafter\tikz@anim@value\expandafter{\tikz@animation@value@head}}}{\tikz@anim@make@entry}% +}% + +\def\tikz@animation@value@rest@base base{% + \tikz@anim@sync@scope{}{/utils/exec=\let\tikz@animation@time\tikz@anim@base@text\expandafter\tikz@anim@add\expandafter{\expandafter\tikz@anim@value\expandafter{\tikz@animation@value@head}}}{\tikz@anim@make@entry}% + \pgfutil@ifnextchar\pgf@stop{\tikz@animation@value@rest=}{\tikz@animation@value@rest}% +}% + + + + +% +% The parsers +% + +\def\tikz@anim@simple@parse#1{} % nothing to do, \def\tikz@anim@result{#1} is already done + +\def\tikz@anim@slant@parse#1{\pgfmathsetmacro\tikz@anim@result{atan(#1)}}% + +\def\tikz@anim@dashpattern@parse#1{% + \pgfmathsetmacro\tikz@anim@dash@phase{\tikz@dashphase}% + \def\tikz@dashpattern{}% + \expandafter\tikz@scandashon\pgfutil@gobble#1o\@nil% + \edef\tikz@anim@result{{\tikz@dashpattern}{\tikz@anim@dash@phase pt}}% +}% +\def\tikz@anim@dashoffset@parse#1{% + \pgfmathparse{#1}% + \edef\tikz@anim@result{{\tikz@dashpattern}{\pgfmathresult pt}}% +}% +\def\tikz@anim@dash@parse#1{% + \tikz@anim@dash@parse@#1\pgf@stop% +}% +\def\tikz@anim@dash@parse@#1phase#2\pgf@stop{% + \pgfmathsetmacro\tikz@anim@dash@phase{#2}% + \def\tikz@dashpattern{}% + \expandafter\tikz@scandashon\pgfutil@gobble#1o\@nil% + \edef\tikz@anim@result{{\tikz@dashpattern}{\tikz@anim@dash@phase pt}}% +}% + +\def\tikz@anim@xshift@parse#1{\pgfmathparse{#1}\edef\tikz@anim@result{\noexpand\pgfqpoint{\pgfmathresult pt}{0pt}}}% +\def\tikz@anim@yshift@parse#1{\pgfmathparse{#1}\edef\tikz@anim@result{\noexpand\pgfqpoint{0pt}{\pgfmathresult pt}}}% + +\def\tikz@anim@xscale@parse#1{\pgfmathparse{#1}\edef\tikz@anim@result{\pgfmathresult,1}}% +\def\tikz@anim@yscale@parse#1{\pgfmathparse{#1}\edef\tikz@anim@result{1,\pgfmathresult}}% + +\def\tikz@anim@shift@parse#1{\tikz@scan@one@point\tikz@anim@do@shift#1}% +\def\tikz@anim@do@shift#1{\def\tikz@anim@result{#1}}% + +\def\tikz@anim@position@parse#1{% + \begingroup% + \let\tikz@transform=\relax% + \pgf@xc-\pgf@pt@x% + \pgf@yc-\pgf@pt@y% + \pgfsettransform\tikz@anim@saved@transform% + \tikz@scan@one@point\tikz@anim@do@position#1}% +\def\tikz@anim@do@position#1{% + \pgf@process{\pgfpointtransformed{#1}}% + \advance\pgf@x by\pgf@xc% + \advance\pgf@y by\pgf@yc% + \xdef\tikz@anim@temp{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}% + \endgroup% + \let\tikz@anim@result\tikz@anim@temp% +}% + +\def\tikz@anim@view@parse#1{\tikz@anim@view@parse@#1\pgf@stop}% +\def\tikz@anim@view@parse@{% + \pgfutil@ifnextchar({\tikz@scan@one@point\tikz@anim@view@parse@a}{\tikz@anim@view@node}% +}% +\def\tikz@anim@view@parse@a#1{% + \def\tikz@anim@result{{#1}}% + \pgfutil@ifnextchar r{\tikz@anim@view@parsed@rec}{\tikz@scan@one@point\tikz@anim@view@parse@b}% +}% +\def\tikz@anim@view@parsed@rec rectangle{\tikz@scan@one@point\tikz@anim@view@parse@b}% +\def\tikz@anim@view@parse@b#1{% + \expandafter\def\expandafter\tikz@anim@result\expandafter{\tikz@anim@result{#1}}% + \pgfutil@ifnextchar\pgf@stop\pgfutil@gobble{\tikzerror{Wrong view syntax}}% +}% +\def\tikz@anim@view@node#1\pgf@stop{% + \expandafter\ifx\csname pgf@sh@ns@#1\endcsname\relax% + \tikzerror{Undefined node '#1'}% + \else% + % Compute a bounding box for the node: + {% + \pgf@process{\pgfpointanchor{#1}{west}}% + \pgf@xa\pgf@x \pgf@ya\pgf@y + \pgf@xb\pgf@x \pgf@yb\pgf@y + \pgf@process{\pgfpointanchor{#1}{north}}% + \ifdim\pgf@x<\pgf@xa \pgf@xa=\pgf@x\fi% + \ifdim\pgf@x>\pgf@xb \pgf@xb=\pgf@x\fi% + \ifdim\pgf@y<\pgf@ya \pgf@ya=\pgf@y\fi% + \ifdim\pgf@y>\pgf@yb \pgf@yb=\pgf@y\fi% + \pgf@process{\pgfpointanchor{#1}{south}}% + \ifdim\pgf@x<\pgf@xa \pgf@xa=\pgf@x\fi% + \ifdim\pgf@x>\pgf@xb \pgf@xb=\pgf@x\fi% + \ifdim\pgf@y<\pgf@ya \pgf@ya=\pgf@y\fi% + \ifdim\pgf@y>\pgf@yb \pgf@yb=\pgf@y\fi% + \pgf@process{\pgfpointanchor{#1}{east}}% + \ifdim\pgf@x<\pgf@xa \pgf@xa=\pgf@x\fi% + \ifdim\pgf@x>\pgf@xb \pgf@xb=\pgf@x\fi% + \ifdim\pgf@y<\pgf@ya \pgf@ya=\pgf@y\fi% + \ifdim\pgf@y>\pgf@yb \pgf@yb=\pgf@y\fi% + \xdef\tikz@anim@result{{\noexpand\pgfqpoint{\the\pgf@xa}{\the\pgf@ya}}{\noexpand\pgfqpoint{\the\pgf@xb}{\the\pgf@yb}}} + }% + \fi% +}% + +\def\tikz@anim@path@parse#1{% + {% + \setbox0=\hbox{{% protext against side effects + \pgfinterruptpath% + \expandafter\tikz@scan@next@command#1\pgf@stop% + \pgfsyssoftpath@getcurrentpath\tikz@anim@result% + \pgfprocessround{\tikz@anim@result}{\tikz@anim@result}% + \global\let\tikz@anim@result\tikz@anim@result% + \endpgfinterruptpath% + }}% + }% +}% + +% The special along parser + + +\def\tikz@anim@along#1#2{% + % Parse the path... + {% + \setbox0=\hbox{{% protect against side effects + \pgfinterruptpath% + \pgf@relevantforpicturesizefalse% + \iftikz@anim@is@position% + \let\tikz@transform=\relax% + \pgf@x-\pgf@pt@x% + \pgf@y-\pgf@pt@y% + \edef\tikz@anim@along@shift{\pgf@xc\the\pgf@x\pgf@yc\the\pgf@y}% + \pgfsettransformentries#1% + \else% + \pgftransformreset% + \fi + \tikz@scan@next@command#2\pgf@stop% + \pgfsyssoftpath@getcurrentpath\tikz@anim@parsed@path% + \pgfprocessround{\tikz@anim@parsed@path}{\tikz@anim@parsed@path}% + \iftikz@anim@is@position% + \tikz@anim@shift@path% + \global\let\tikz@anim@parsed@path\tikz@anim@patched@path% + \else% + \global\let\tikz@anim@parsed@path\tikz@anim@parsed@path% + \fi% + \endpgfinterruptpath% + }}% + }% + \pgfanimationset{along softpath/.expand once=\tikz@anim@parsed@path}% +}% + +\def\tikz@anim@shift@path{% + \let\tikz@anim@patched@path\pgfutil@empty% + \tikz@anim@along@shift% + \expandafter\tikz@anim@shift@path@\tikz@anim@parsed@path\pgf@stop% +}% +\def\tikz@anim@shift@path@{% + \pgfutil@ifnextchar\pgf@stop\pgfutil@gobble{% + \pgfutil@ifnextchar\bgroup\tikz@anim@shift@path@sub\tikz@anim@shift@path@copy}% +}% +\def\tikz@anim@shift@path@copy#1{% + \expandafter\def\expandafter\tikz@anim@patched@path\expandafter{\tikz@anim@patched@path#1}% + \tikz@anim@shift@path@% +}% +\def\tikz@anim@shift@path@sub#1#2{% + \pgf@x#1% + \pgf@y#2% + \advance\pgf@x by\pgf@xc% + \advance\pgf@y by\pgf@yc% + \edef\tikz@temp{{\the\pgf@x}{\the\pgf@y}}% + \expandafter\tikz@anim@shift@path@copy\expandafter{\tikz@temp}% +}% + + + +\def\tikz@anim@parse@origin#1{% + \tikz@scan@one@point\tikz@anim@parse@origin@#1\relax% +}% +\def\tikz@anim@parse@origin@#1{\tikz@anim@add{\pgfanimationset{origin={#1}}}}% + + +% Internals + +\def\tikz@anim@tl@objects{}% +\def\tikz@anim@tl@attributes{}% +\def\tikz@anim@tl@id{default}% + +\let\tikz@anim@tl@exec@options\pgfutil@empty +\let\tikz@anim@tl@early@options\pgfutil@empty + +\def\tikz@anim@add@early#1{\expandafter\def\expandafter\tikz@anim@tl@early@options\expandafter{\tikz@anim@tl@early@options#1}}% +\def\tikz@anim@add@once@early#1{% + \global\advance\tikz@anim@once@count by1\relax% + \expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter\tikz@anim@tl@early@options% + \expandafter\expandafter\expandafter{\expandafter\tikz@anim@tl@early@options\expandafter\tikz@anim@exec@once\expandafter{\the\tikz@anim@once@count}{#1}}% +}% +\def\tikz@anim@add#1{\expandafter\def\expandafter\tikz@anim@tl@exec@options\expandafter{\tikz@anim@tl@exec@options#1}}% +\def\tikz@anim@add@once#1{% + \global\advance\tikz@anim@once@count by1\relax% + \expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter\tikz@anim@tl@exec@options% + \expandafter\expandafter\expandafter{\expandafter\tikz@anim@tl@exec@options\expandafter\tikz@anim@exec@once\expandafter{\the\tikz@anim@once@count}{#1}}% +}% +\newcount\tikz@anim@once@count% +\def\tikz@anim@exec@once#1#2{% + \expandafter\ifx\csname tikz@anim@once@#1\endcsname\pgf@stop% + \else% + \expandafter\let\csname tikz@anim@once@#1\endcsname\pgf@stop% + #2% + \fi% +}% + +\newif\iftikz@anim@do@entry + +\def\tikz@anim@make@entry{% + \tikz@anim@do@entrytrue% + \ifx\tikz@anim@tl@objects\pgfutil@empty\tikz@anim@do@entryfalse\fi% + \ifx\tikz@anim@tl@attributes\pgfutil@empty\tikz@anim@do@entryfalse\fi% + \ifx\tikz@anim@tl@exec@options\pgfutil@empty\ifx\tikz@anim@tl@early@options\pgfutil@empty\tikz@anim@do@entryfalse\fi\fi% + \iftikz@anim@do@entry% + \foreach\tikz@anim@tl@object in\tikz@anim@tl@objects{% + \expandafter\tikzanimationattributesset\expandafter{\tikz@anim@tl@attributes}% + }% + \fi% +}% + +\def\tikzanimationattributesset#1{\pgfqkeys{/tikz/animate/attributes}{#1}}% + +\tikzanimationattributesset{ + .unknown/.code={ + \let\tikz@anim@attribute@name\pgfkeyscurrentname + \expandafter\let\expandafter\pgf@temp\csname tikz@anim@def@pgf@attr@\tikz@anim@attribute@name\endcsname% + \ifx\pgf@temp\relax% + \tikzerror{Unknown animation attribute '\tikz@anim@attribute@name'}% + \else% + \expandafter\tikz@timeline@config\expandafter\tikz@anim@tl@object\expandafter\tikz@anim@attribute@name\expandafter\tikz@anim@tl@id\expandafter{\tikz@anim@configs}% + \edef\pgf@marshal{\noexpand\tikz@timeline@entry{\tikz@anim@tl@object}{\tikz@anim@attribute@name}{\tikz@anim@tl@id}}% + \expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter\pgf@marshal\expandafter\expandafter\expandafter{\expandafter\pgf@marshal\expandafter{\tikz@anim@tl@early@options}}% + \expandafter\expandafter\expandafter\pgf@marshal\expandafter\expandafter\expandafter{\expandafter\expandafter\expandafter\tikz@anim@entry\expandafter\expandafter\expandafter{\expandafter\tikz@anim@tl@exec@options\expandafter\def\expandafter\tikz@animation@time\expandafter{\tikz@animation@time}}}% + \fi% + } +}% +\let\tikz@anim@configs\pgfutil@empty + +\def\tikz@anim@entry#1{% + % Reset splines and value: + \let\tikz@anim@result\pgfutil@empty% + \pgf@anim@reset@linear% + #1% + \ifx\tikz@anim@result\pgfutil@empty% + \else% + \ifx\tikz@animation@time\pgfutil@empty% + \else% + \ifx\tikz@animation@time\tikz@anim@base@text% + \expandafter\pgf@anim@base\expandafter{\tikz@anim@result}% + \else% + \expandafter\expandafter\expandafter\pgf@anim@entry% + \expandafter\expandafter\expandafter{\expandafter\tikz@animation@time\expandafter}\expandafter{\tikz@anim@result}% + \fi% + \fi% + \fi% +}% +\let\tikz@animation@time\pgfutil@empty% +\def\tikz@anim@base@text{base}% + +\tikzanimateset{ + .unknown/.code={% + \let\tikz@key\pgfkeyscurrentname% + \tikz@animation@syntax@check{#1}{\tikz@anim@options{#1}}% + } +}% + + +\def\tikz@anim@options#1{ + \let\tikz@anim@key\pgfkeyscurrentname% + \pgfqkeys{/tikz/animate/options}{\tikz@anim@key/.try={#1}}% + \ifpgfkeyssuccess% + \else% + \def\tikz@anim@unparsed@value{#1}% + \expandafter\tikz@anim@time@test\tikz@anim@key\pgf@stop% + \fi% +}% + +\tikzanimateset{ + options/.cd, + name/.code=\tikz@anim@add{\pgfanimationset{name={#1}}}, + forever/.code=\tikz@anim@add{\pgfanimationset{freeze at end}}, + freeze/.code=\tikz@anim@add{\pgfanimationset{freeze at end}}, + restart/.code=\tikz@anim@add{\pgfanimationset{restart={#1}}}, + repeats/.code=\tikz@anim@add{\pgfanimationset{repeats={#1}}}, + repeats/.default=, + repeat/.code=\tikz@anim@add{\pgfanimationset{repeats={#1}}}, + repeat/.default=, + begin/.code=\tikz@anim@add@once{\pgfanimationset{begin={#1}}}, + end/.code=\tikz@anim@add@once{\pgfanimationset{end={#1}}}, + begin on/.code=\tikz@anim@event{begin}{#1}, + end on/.code=\tikz@anim@event{begin}{#1}, + begin snapshot/.code=\tikz@anim@add{\pgfanimationset{begin snapshot={#1}}}, + origin/.code=\tikz@anim@parse@origin{#1}, + transform/.code=\tikz@anim@add{\pgfanimationset{transform={\let\tikz@transform\relax\tikzset{#1}}}}, + along/.code=\tikz@anim@handle@along#1\pgf@stop, + entry control/.code=\tikz@anim@add{\pgfanimationset{entry control=#1}}, + exit control/.code=\tikz@anim@add{\pgfanimationset{exit control=#1}}, + stay/.code=\tikz@anim@add{\pgfanimationset{stay}}, + jump/.code=\tikz@anim@add{\pgfanimationset{jump}}, + ease/.style={ + entry control={1-(#1)}{1}, + exit control={#1}{0} + }, + ease/.default=0.5, + ease in/.style={ + entry control={1-(#1)}{1}, + }, + ease in/.default=0.5, + ease out/.style={ + exit control={#1}{0}, + }, + ease out/.default=0.5, + arrows/.code=\tikz@anim@add@early{\pgfanimationset{arrows={#1}}}, + shorten >/.code=\tikz@anim@add@early{\pgfanimationset{shorten >={#1}}}, + shorten </.code=\tikz@anim@add@early{\pgfanimationset{snorten <={#1}}}, +}% +\newif\iftikz@anim@along + +\def\tikz@anim@t{0}% + +\def\tikz@anim@handle@along#1{% + \pgfutil@ifnextchar s{\tikz@anim@handle@sloped{#1}}{\tikz@anim@handle@upright{#1}}% +}% +\def\tikz@anim@handle@sloped#1sloped{% + \pgfgettransform\tikz@anim@trans@pre% + \expandafter\tikz@anim@add@once% + \expandafter{% + \expandafter\tikz@anim@along\expandafter{\tikz@anim@trans@pre}{#1}% + \pgfsysanimkeycanvastransform{% + \pgf@xc\pgf@pt@x% + \pgf@yc\pgf@pt@y% + \pgftransformreset% + \pgf@pt@x\pgf@xc% + \pgf@pt@y\pgf@yc% + {\pgflowlevelsynccm}% + }{\pgftransforminvert\pgflowlevelsynccm}% + \pgfanimationset{rotate along=true}% + }% + \def\tikz@anim@configs{\tikz@anim@alongtrue}% + \tikz@anim@handle@in% +}% +\def\tikz@anim@handle@upright#1upright{% + \pgfgettransform\tikz@anim@trans@pre% + \expandafter\tikz@anim@add@once% + \expandafter{% + \expandafter\tikz@anim@along\expandafter{\tikz@anim@trans@pre}{#1}% + \pgfsysanimkeycanvastransform{}{}% + }% + \def\tikz@anim@configs{\tikz@anim@alongtrue}% + \tikz@anim@handle@in% +}% +\def\tikz@anim@handle@in{% + \pgfutil@ifnextchar i{\tikz@anim@handle@in@yes}{\tikz@anim@handle@in@no}% +}% +\def\tikz@anim@handle@in@no\pgf@stop{}% +\def\tikz@anim@handle@in@yes in#1\pgf@stop{% + \tikzanimateset{scope={time=0,value=0,entry,time=#1,value=1,entry}}% +}% + + + +\def\tikz@anim@event#1#2{% + {% + % evaluate #2 once to determine the id now + \let\pgf@anim@id\pgfutil@empty% + \pgfqkeys{/pgf/animation/events}{#2}% + \expandafter}% + \expandafter\def\expandafter\tikz@anim@temp@id\expandafter{\pgf@anim@id}% + \ifx\tikz@anim@temp@id\pgfutil@empty% + \def\tikz@temp{#1 on={of id=\tikz@anim@current@id,#2}}% + \else + \expandafter\tikz@anim@event@setter\expandafter{\tikz@anim@temp@id}{#1}{#2}% + \fi% + \expandafter\tikz@anim@add@once\expandafter{\expandafter\pgfanimationset\expandafter{\tikz@temp}}% +}% +\def\tikz@anim@event@setter#1#2#3{% + \def\tikz@temp{#2 on={#3,of id=#1}}% +}% + +\def\tikz@anim@time@test#1#2\pgf@stop{% + \edef\tikz@temp{\meaning#1}% + \expandafter\ifx\csname tikz@anim@test@\tikz@temp\endcsname\relax% + \tikzerror{I do not know the timing key '#1#2' to which you passed '\tikz@anim@unparsed@value'}% + \else% + \expandafter\tikz@anim@sync@scope\expandafter{\tikz@anim@unparsed@value}{\tikz@anim@set@time{#1#2}}{\tikz@anim@make@entry}% + \fi% +}% + +\def\tikz@anim@parse@time#1{% + \pgfutil@in@{later\pgf@stop}{#1\pgf@stop}% + \ifpgfutil@in@% + \tikz@anim@parse@later#1\pgf@stop% + \else% + \pgfparsetime{#1}\let\tikz@anim@t\pgftimeresult% + \fi% +}% +\def\tikz@anim@parse@later#1later\pgf@stop{% + \pgfparsetime{#1+\tikz@anim@t@current}\let\tikz@anim@t\pgftimeresult% +}% + +\expandafter\let\csname tikz@anim@test@the character 0\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character 1\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character 2\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character 3\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character 4\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character 5\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character 6\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character 7\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character 8\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character 9\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character -\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character +\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character .\endcsname\pgfutil@empty +\expandafter\let\csname tikz@anim@test@the character (\endcsname\pgfutil@empty + + + + + +% Configure an animation attribute +% +% #1 = tikz attribute name +% #2 = configuration +% +% Description: +% +% Sets up internals for the tikz attribute. + +\def\tikzanimationdefineattribute#1#2{% + \expandafter\def\csname tikz@anim@def@pgf@attr@#1\endcsname{#1}% + \expandafter\let\csname tikz@anim@def@no@node@#1\endcsname\pgfutil@empty + \expandafter\let\csname tikz@anim@def@is@node@#1\endcsname\pgfutil@empty + \expandafter\let\csname tikz@anim@def@code@#1\endcsname\pgfutil@empty + \expandafter\let\csname tikz@anim@def@parser@#1\endcsname\tikz@anim@simple@parse + \def\tikz@anim@attr{#1}% + \pgfkeys{/tikz/animate/@attrdef/.cd,#2}% +}% + +\pgfkeys{/tikz/animate/@attrdef/.cd, + pgf attribute name/.code=\expandafter\def\csname tikz@anim@def@pgf@attr@\tikz@anim@attr\endcsname{#1}, + pgf attribute name scope/.code=\expandafter\def\csname tikz@anim@def@pgf@attr@@scope@\tikz@anim@attr\endcsname{#1}, + pgf attribute name node/.code=\expandafter\def\csname tikz@anim@def@pgf@attr@@node@\tikz@anim@attr\endcsname{#1}, + scope type/.code=\expandafter\def\csname tikz@anim@def@no@node@\tikz@anim@attr\endcsname{#1}, + node type/.code=\expandafter\def\csname tikz@anim@def@is@node@\tikz@anim@attr\endcsname{#1}, + code/.code=\expandafter\def\csname tikz@anim@def@code@\tikz@anim@attr\endcsname{#1}, + setup/.code=\expandafter\def\csname tikz@anim@def@setup@\tikz@anim@attr\endcsname{#1}, + parser/.code=\expandafter\def\csname tikz@anim@def@parser@\tikz@anim@attr\endcsname{#1}, +}% + + +% Configure an animation attribute list +% +% #1 = tikz attribute list name +% #2 = list of tikz attributes +% +% Description: +% +% Sets up internals for the tikz attribute. + +\def\tikzanimationdefineattributelist#1#2{% + \tikzanimationattributesset{#1/.style={#2}}% +}% + + + + +% Definition of the tikz attributes + + +\tikzanimationdefineattributelist{color}{@color,text}% +\tikzanimationdefineattribute{@color}{pgf attribute name=color,node type=.background}% +\tikzanimationdefineattribute{dash pattern}{pgf attribute name=dash,parser=dashpattern, node type=.background}% +\tikzanimationdefineattribute{dash phase}{pgf attribute name=dash,parser=dashoffset, node type=.background}% +\tikzanimationdefineattribute{dash}{parser=dash, node type=.background}% +\tikzanimationdefineattribute{draw opacity}{pgf attribute name=stroke opacity}% +\tikzanimationdefineattribute{draw}{pgf attribute name=stroke, node type=.background}% +\tikzanimationdefineattribute{fill opacity}{}% +\tikzanimationdefineattribute{fill}{node type=.background}% +\tikzanimationdefineattribute{line width}{node type=.background}% +\tikzanimationdefineattribute{path}{pgf attribute name=softpath, scope type=.path, node type=.background.path, parser=path}% +\tikzanimationdefineattribute{opacity}{}% +\tikzanimationdefineattribute{position}{% + pgf attribute name=\iftikz@anim@along motion\else translate\fi, + parser=\iftikz@anim@along simple\else position\fi, + setup=\tikz@anim@position@setup, +}% +\tikzanimationdefineattribute{rotate}{}% +\tikzanimationdefineattribute{scale}{}% +\tikzanimationdefineattribute{shift}{ + pgf attribute name=\iftikz@anim@along motion\else translate\fi, + parser=\iftikz@anim@along simple\else shift\fi +}% +\tikzanimationdefineattribute{stage}{}% +\tikzanimationdefineattribute{text opacity}{pgf attribute name=fill opacity, node type=.text, pgf attribute name scope=none}% +\tikzanimationdefineattribute{text}{pgf attribute name=color, node type=.text, pgf attribute name scope=none}% +\tikzanimationdefineattribute{view}{scope type=.view, parser=view}% +\tikzanimationdefineattribute{visible}{}% +\tikzanimationdefineattribute{xshift}{pgf attribute name=translate, parser=xshift}% +\tikzanimationdefineattribute{xscale}{pgf attribute name=scale, parser=xscale}% +\tikzanimationdefineattribute{xskew}{}% +\tikzanimationdefineattribute{xslant}{pgf attribute name=xskew, parser=slant}% +\tikzanimationdefineattribute{yshift}{pgf attribute name=translate, parser=yshift}% +\tikzanimationdefineattribute{yskew}{}% +\tikzanimationdefineattribute{yslant}{pgf attribute name=yskew, parser=slant}% +\tikzanimationdefineattribute{yscale}{pgf attribute name=scale, parser=yscale}% + + +\def\tikz@anim@position@setup{% + \pgfgettransform\tikz@anim@saved@transform% + \expandafter\def\expandafter\tikz@temp\expandafter{% + \expandafter\def\expandafter\tikz@anim@saved@transform\expandafter{\tikz@anim@saved@transform}% + \pgfsysanimkeycanvastransform{}{}% + \tikz@anim@is@positiontrue% + }% + \expandafter\expandafter\expandafter\def% + \expandafter\expandafter\expandafter\tikz@anim@initial@options% + \expandafter\expandafter\expandafter{\expandafter\tikz@temp\tikz@anim@initial@options}% +}% +\newif\iftikz@anim@is@position + + +% The TikZ animation callbacks +% +% Description: +% +% The callbacks called by tikz.code.tex whenever an object is +% created. These callbacks will add the accumulated animation code. + +\def\tikz@anim@id@hook{% + \expandafter\ifx\csname tikz@anim@att@\tikz@id@name\endcsname\relax% + % No named animation: + % Now, check for auto animation: + \expandafter\ifx\csname tikz@anim@att@\tikz@auto@id\endcsname\relax% + \else% + % Auto animation% + \ifx\tikz@id@name\pgfutil@empty% Id set? + % No, so set it + \def\tikz@id@name{@auto}% + \fi% + \pgfidrefnextuse\tikz@anim@current@id\tikz@id@name% + \csname tikz@anim@att@\tikz@auto@id\endcsname% + \expandafter\global\expandafter\let\csname tikz@anim@att@\tikz@auto@id\endcsname\relax% + \fi% + \else% + % Named animation: + \pgfidrefnextuse\tikz@anim@current@id\tikz@id@name% + \csname tikz@anim@att@\tikz@id@name\endcsname% + \csname tikz@anim@att@\tikz@auto@id\endcsname% and unnamed animation + \expandafter\global\expandafter\let\csname tikz@anim@att@\tikz@id@name\endcsname\relax% + \expandafter\global\expandafter\let\csname tikz@anim@att@\tikz@auto@id\endcsname\relax% + \fi% +}% + +% Add hook: +\expandafter\def\expandafter\tikz@id@hook\expandafter{\tikz@id@hook\tikz@anim@id@hook}% + + + +% Attaches an animation to a named object (named in tikz) +% +% #1 = name of the object. If equal to the special text "myself", the +% next created object is meant. +% #2 = Animation code. When this code is executed, the following +% things will be setup: +% +% \iftikz@is@node will be set to true or false +% depending on whether the name references a node. +% +% \tikz@id@name will be set to the name of the object, +% typically #1, except when #1 was ".", in this case another +% name may have been used by the user, which will be used +% instead. +% +% Description: +% +% After the call, the next time an object named #1 is created in TikZ +% (using name=#1), the code #2 will be executed inside a scope to +% create an animation of the object. + +\def\tikzanimationattachto#1#2{% + {% + \def\tikz@anim@name{#1}% + \ifx\tikz@anim@name\pgfutil@empty% + \tikzerror{Trying to attach an animation to an unnamed object. This should not happen.}% + \else% + \expandafter\ifx\csname tikz@anim@att@\tikz@anim@name\endcsname\relax% + \expandafter\gdef\csname tikz@anim@att@\tikz@anim@name\endcsname{#2}% + \else% + \expandafter\let\expandafter\tikz@temp\csname tikz@anim@att@\tikz@anim@name\endcsname% + \expandafter\def\expandafter\tikz@temp\expandafter{\tikz@temp#2}% + \expandafter\global\expandafter\let\csname tikz@anim@att@\tikz@anim@name\endcsname\tikz@temp% + \fi% + \fi% + }% +}% +\def\tikz@auto@id{myself}% +\expandafter\let\csname tikz@anim@att@\tikz@auto@id\endcsname\relax% + + +% Add config code to a timeline +% +% #1 = The object (may be "myself") +% #2 = The attribute (see pgfanimateattribute) +% #3 = Timeline sequence identifier +% #4 = code +% +% Description: +% +% This commands adds the code to the timeline configuration, which is +% code that gets executed before the rest of entries of the timeline +% are executed. + +\def\tikz@timeline@config#1#2#3#4{% + \expandafter\def\expandafter\tikz@temp\expandafter{\csname tikz@a@conf@#1@#2@#3\endcsname}% + \expandafter\ifx\tikz@temp\relax% + \expandafter\expandafter\expandafter\expandafter\expandafter\expandafter\expandafter\gdef\expandafter\expandafter\expandafter\tikz@temp\expandafter\expandafter\expandafter{\expandafter\expandafter\expandafter\global\expandafter\let\tikz@temp\relax}% + \fi% + \expandafter\expandafter\expandafter\expandafter\expandafter\expandafter\expandafter\gdef\expandafter\expandafter\expandafter\tikz@temp\expandafter\expandafter\expandafter{\tikz@temp#4}% +}% + + + +% Add a timeline entry +% +% #1 = The object (may be "myself") +% #2 = The attribute (see pgfanimateattribute) +% #3 = Timeline sequence identifier +% #4 = early code +% #5 = later code +% +% Description: +% +% This command stores an option with a timeline of an object. For each +% object--attribute--identifier tuple a timeline can be created, for +% which the values of #4 and #5 are collected. Later on, \pgfanimateattribute +% will be called for the pgf attribute associated with tikz attribute, +% the type associated with it and initial code, followed by the +% accumulated values of #4 and then the accumulated values of #5. + +\def\tikz@timeline@entry#1#2#3#4#5{% + % First, does the object have an animation already attached? + \expandafter\ifx\csname tikz@a@tlo@#1\endcsname\relax% + % No, first entry! + % Create call: + \edef\pgf@marshal{\noexpand\tikzanimationattachto{#1}{\expandafter\noexpand\csname tikz@a@tlo@#1\endcsname}}% + \pgf@marshal% + \expandafter\gdef\csname tikz@a@tlo@#1\endcsname{\tikz@anim@cleanup{#1}}% + \fi% + % Second, does the timeline exist? + \expandafter\ifx\csname tikz@a@tlc@#1@#2@#3\endcsname\relax% + % No, first entry! + \def\tikz@anim@initial@early@options{#4}% + \def\tikz@anim@initial@options{#5}% + \csname tikz@anim@def@setup@#2\endcsname% + % Create timeline... + \expandafter\global\expandafter\let\csname tikz@a@tlc@#1@#2@#3\endcsname\tikz@anim@initial@options% + \expandafter\global\expandafter\let\csname tikz@a@tld@#1@#2@#3\endcsname\tikz@anim@initial@early@options% + % ...and add to calls + \expandafter\let\expandafter\pgf@temp\csname tikz@a@tlo@#1\endcsname% + \expandafter\def\expandafter\pgf@temp@name\expandafter{\tikz@anim@create{#1}{#2}{#3}}% + \expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter\pgf@temp\expandafter\expandafter\expandafter{\expandafter\pgf@temp\pgf@temp@name}% + \expandafter\global\expandafter\let\csname tikz@a@tlo@#1\endcsname\pgf@temp% + \else% + % Add to timeline: + \expandafter\let\expandafter\pgf@temp\csname tikz@a@tld@#1@#2@#3\endcsname% + \expandafter\def\expandafter\pgf@temp\expandafter{\pgf@temp#4}% + \expandafter\global\expandafter\let\csname tikz@a@tld@#1@#2@#3\endcsname\pgf@temp% + \expandafter\let\expandafter\pgf@temp\csname tikz@a@tlc@#1@#2@#3\endcsname% + \expandafter\def\expandafter\pgf@temp\expandafter{\pgf@temp#5}% + \expandafter\global\expandafter\let\csname tikz@a@tlc@#1@#2@#3\endcsname\pgf@temp% + \fi% +}% + + +\def\tikz@anim@cleanup#1{% + \expandafter\global\expandafter\let\csname tikz@a@tlo@#1\endcsname\relax% +}% + +\def\tikz@anim@create#1#2#3{% + \csname tikz@a@conf@#1@#2@#3\endcsname% + \iftikz@is@node% + \expandafter\let\expandafter\tikz@temp\csname tikz@anim@def@pgf@attr@@node@#2\endcsname% + \else% + \expandafter\let\expandafter\tikz@temp\csname tikz@anim@def@pgf@attr@@scope@#2\endcsname% + \fi% + \ifx\tikz@temp\relax% + \expandafter\let\expandafter\tikz@temp\csname tikz@anim@def@pgf@attr@#2\endcsname% + \fi% + \expandafter\pgfanimateattributecode\expandafter{\tikz@temp}{% + \iftikz@is@node% + \edef\tikz@anim@whom{\tikz@id@name\csname tikz@anim@def@is@node@#2\endcsname}% + \else% + \edef\tikz@anim@whom{\tikz@id@name\csname tikz@anim@def@no@node@#2\endcsname}% + \fi% + \pgfanimationset{whom=\tikz@anim@whom}% + \expandafter\let\expandafter\tikz@animation@parser\csname tikz@anim@\csname tikz@anim@def@parser@#2\endcsname @parse\endcsname% + \csname tikz@anim@def@code@#2\endcsname% + \csname tikz@a@tld@#1@#2@#3\endcsname% + \csname tikz@a@tlc@#1@#2@#3\endcsname% + }% + \expandafter\global\expandafter\let\csname tikz@a@tlc@#1@#2@#3\endcsname\relax% + \expandafter\global\expandafter\let\csname tikz@a@tld@#1@#2@#3\endcsname\relax% +}% + + + + +\endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex index 7926021f8e6..946f87455e7 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex @@ -7,8 +7,8 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryarrows.code.tex,v 1.1 2008/01/09 17:57:15 tantau Exp $ +\ProvidesFileRCS{tikzlibraryarrows.code.tex} -\usepgflibrary{arrows} +\usepgflibrary{arrows}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryautomata.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryautomata.code.tex index d2aa190d618..93dc77be779 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryautomata.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryautomata.code.tex @@ -7,18 +7,18 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryautomata.code.tex,v 1.3 2008/07/14 10:30:36 tantau Exp $ +\ProvidesFileRCS{tikzlibraryautomata.code.tex} -\usetikzlibrary{shapes.multipart} +\usetikzlibrary{shapes.multipart}% % Styles for states: -\tikzstyle{every state}= [] +\tikzset{every state/.style= {}}% -\tikzstyle{state without output}= [circle,draw,minimum size=2.5em,every state] -\tikzstyle{state with output}= [circle split,draw,minimum size=2.5em,every state] +\tikzset{state without output/.style= {circle,draw,minimum size=2.5em,every state}}% +\tikzset{state with output/.style= {circle split,draw,minimum size=2.5em,every state}}% -\tikzstyle{accepting by arrow}= [after node path= +\tikzset{accepting by arrow/.style= {after node path= { { [to path= @@ -30,11 +30,11 @@ }] edge () } -}] -\tikzstyle{every accepting by arrow}=[] -\tikzstyle{accepting by double}= [double,outer sep=.5\pgflinewidth+.3pt] % .3pt is half double width distance +}}}% +\tikzset{every accepting by arrow/.style={}}% +\tikzset{accepting by double/.style= {double,outer sep=.5\pgflinewidth+.3pt}} % .3pt is half double width distance -\tikzstyle{initial by arrow}= [after node path= +\tikzset{initial by arrow/.style= {after node path= { { [to path= @@ -45,60 +45,60 @@ -- (\tikztostart)}] edge () } -}] -\tikzstyle{every initial by arrow}=[] +}}}% +\tikzset{every initial by arrow/.style={}}% -\tikzstyle{initial by diamond}=[shape=diamond] +\tikzset{initial by diamond/.style={shape=diamond}}% -\tikzoption{initial text}{\tikzaddafternodepathoption{\def\tikz@initial@text{#1}}} -\tikzoption{accepting text}{\tikzaddafternodepathoption{\def\tikz@accepting@text{#1}}} +\tikzoption{initial text}{\tikzaddafternodepathoption{\def\tikz@initial@text{#1}}}% +\tikzoption{accepting text}{\tikzaddafternodepathoption{\def\tikz@accepting@text{#1}}}% -\tikzoption{initial where}{\tikzaddafternodepathoption{\csname tikz@initial@compute@#1\endcsname}} -\tikzoption{accepting where}{\tikzaddafternodepathoption{\csname tikz@accepting@compute@#1\endcsname}} +\tikzoption{initial where}{\tikzaddafternodepathoption{\csname tikz@initial@compute@#1\endcsname}}% +\tikzoption{accepting where}{\tikzaddafternodepathoption{\csname tikz@accepting@compute@#1\endcsname}}% -\tikzoption{initial distance}{\tikzaddafternodepathoption{\def\tikz@initial@distance{#1}}} -\tikzoption{accepting distance}{\tikzaddafternodepathoption{\def\tikz@accepting@distance{#1}}} +\tikzoption{initial distance}{\tikzaddafternodepathoption{\def\tikz@initial@distance{#1}}}% +\tikzoption{accepting distance}{\tikzaddafternodepathoption{\def\tikz@accepting@distance{#1}}}% -\def\tikz@initial@text{start} -\def\tikz@accepting@text{} +\def\tikz@initial@text{start}% +\def\tikz@accepting@text{}% -\def\tikz@initial@distance{3ex} -\def\tikz@accepting@distance{3ex} +\def\tikz@initial@distance{3ex}% +\def\tikz@accepting@distance{3ex}% -\def\tikz@initial@compute@above{\def\tikz@initial@angle{90}\def\tikz@initial@anchor{south}} -\def\tikz@initial@compute@below{\def\tikz@initial@angle{270}\def\tikz@initial@anchor{north}} -\def\tikz@initial@compute@left{\def\tikz@initial@angle{180}\def\tikz@initial@anchor{east}} -\def\tikz@initial@compute@right{\def\tikz@initial@angle{0}\def\tikz@initial@anchor{west}} +\def\tikz@initial@compute@above{\def\tikz@initial@angle{90}\def\tikz@initial@anchor{south}}% +\def\tikz@initial@compute@below{\def\tikz@initial@angle{270}\def\tikz@initial@anchor{north}}% +\def\tikz@initial@compute@left{\def\tikz@initial@angle{180}\def\tikz@initial@anchor{east}}% +\def\tikz@initial@compute@right{\def\tikz@initial@angle{0}\def\tikz@initial@anchor{west}}% -\def\tikz@initial@angle{180} -\def\tikz@initial@anchor{east} +\def\tikz@initial@angle{180}% +\def\tikz@initial@anchor{east}% -\def\tikz@accepting@compute@above{\def\tikz@accepting@angle{90}\def\tikz@accepting@anchor{south}} -\def\tikz@accepting@compute@below{\def\tikz@accepting@angle{270}\def\tikz@accepting@anchor{north}} -\def\tikz@accepting@compute@left{\def\tikz@accepting@angle{180}\def\tikz@accepting@anchor{east}} -\def\tikz@accepting@compute@right{\def\tikz@accepting@angle{0}\def\tikz@accepting@anchor{west}} +\def\tikz@accepting@compute@above{\def\tikz@accepting@angle{90}\def\tikz@accepting@anchor{south}}% +\def\tikz@accepting@compute@below{\def\tikz@accepting@angle{270}\def\tikz@accepting@anchor{north}}% +\def\tikz@accepting@compute@left{\def\tikz@accepting@angle{180}\def\tikz@accepting@anchor{east}}% +\def\tikz@accepting@compute@right{\def\tikz@accepting@angle{0}\def\tikz@accepting@anchor{west}}% -\def\tikz@accepting@angle{0} -\def\tikz@accepting@anchor{west} +\def\tikz@accepting@angle{0}% +\def\tikz@accepting@anchor{west}% -\tikzstyle{initial above}= [initial by arrow,initial where=above] -\tikzstyle{initial below}= [initial by arrow,initial where=below] -\tikzstyle{initial left}= [initial by arrow,initial where=left] -\tikzstyle{initial right}= [initial by arrow,initial where=right] +\tikzset{initial above/.style= {initial by arrow,initial where=above}}% +\tikzset{initial below/.style= {initial by arrow,initial where=below}}% +\tikzset{initial left/.style= {initial by arrow,initial where=left}}% +\tikzset{initial right/.style= {initial by arrow,initial where=right}}% -\tikzstyle{accepting above}= [accepting by arrow,accepting where=above] -\tikzstyle{accepting below}= [accepting by arrow,accepting where=below] -\tikzstyle{accepting left}= [accepting by arrow,accepting where=left] -\tikzstyle{accepting right}= [accepting by arrow,accepting where=right] +\tikzset{accepting above/.style= {accepting by arrow,accepting where=above}}% +\tikzset{accepting below/.style= {accepting by arrow,accepting where=below}}% +\tikzset{accepting left/.style= {accepting by arrow,accepting where=left}}% +\tikzset{accepting right/.style= {accepting by arrow,accepting where=right}}% % Defaults: -\tikzstyle{state}= [state without output] -\tikzstyle{accepting}= [accepting by double] -\tikzstyle{initial}= [initial by arrow] +\tikzset{state/.style= {state without output}}% +\tikzset{accepting/.style= {accepting by double}}% +\tikzset{initial/.style= {initial by arrow}}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybabel.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybabel.code.tex index 37b5ae20231..cf307cf6a8c 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybabel.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybabel.code.tex @@ -7,11 +7,11 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybabel.code.tex,v 1.1 2013/06/24 11:49:06 tantau Exp $ +\ProvidesFileRCS{tikzlibrarybabel.code.tex} \tikzset{ handle active characters in code, - handle active characters in nodes -} + handle active characters in nodes, +}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex index 6302b629ae4..690953b8054 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex @@ -7,13 +7,13 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybackgrounds.code.tex,v 1.3 2013/07/18 17:07:38 tantau Exp $ +\ProvidesFileRCS{tikzlibrarybackgrounds.code.tex} % Layers -\pgfdeclarelayer{background} -\pgfsetlayers{background,main} +\pgfdeclarelayer{background}% +\pgfsetlayers{background,main}% % Switch command @@ -25,49 +25,49 @@ \tikz@options}, execute at end scope={\endpgfonlayer} } -} +}% % Main style -\tikzstyle{background rectangle}= [draw] -\tikzstyle{background top}= [draw] -\tikzstyle{background bottom}= [draw] -\tikzstyle{background left}= [draw] -\tikzstyle{background right}= [draw] -\tikzstyle{background grid}= [help lines,draw] +\tikzset{background rectangle/.style= {draw}}% +\tikzset{background top/.style= {draw}}% +\tikzset{background bottom/.style= {draw}}% +\tikzset{background left/.style= {draw}}% +\tikzset{background right/.style= {draw}}% +\tikzset{background grid/.style= {help lines,draw}}% -\tikzoption{inner frame sep}{\def\tikz@framexsep{#1}\def\tikz@frameysep{#1}} -\tikzoption{inner frame xsep}{\def\tikz@framexsep{#1}} -\tikzoption{inner frame ysep}{\def\tikz@frameysep{#1}} -\def\tikz@framexsep{1ex} -\def\tikz@frameysep{1ex} +\tikzoption{inner frame sep}{\def\tikz@framexsep{#1}\def\tikz@frameysep{#1}}% +\tikzoption{inner frame xsep}{\def\tikz@framexsep{#1}}% +\tikzoption{inner frame ysep}{\def\tikz@frameysep{#1}}% +\def\tikz@framexsep{1ex}% +\def\tikz@frameysep{1ex}% -\tikzoption{outer frame sep}{\def\tikz@outerframexsep{#1}\def\tikz@outerframeysep{#1}} -\tikzoption{outer frame xsep}{\def\tikz@outerframexsep{#1}} -\tikzoption{outer frame ysep}{\def\tikz@outerframeysep{#1}} -\def\tikz@outerframexsep{0ex} -\def\tikz@outerframeysep{0ex} +\tikzoption{outer frame sep}{\def\tikz@outerframexsep{#1}\def\tikz@outerframeysep{#1}}% +\tikzoption{outer frame xsep}{\def\tikz@outerframexsep{#1}}% +\tikzoption{outer frame ysep}{\def\tikz@outerframeysep{#1}}% +\def\tikz@outerframexsep{0ex}% +\def\tikz@outerframeysep{0ex}% % Looseness -\tikzstyle{loose background}= [inner frame sep=2ex] -\tikzstyle{tight background}= [inner frame sep=0ex] +\tikzset{loose background/.style= {inner frame sep=2ex}}% +\tikzset{tight background/.style= {inner frame sep=0ex}}% % Showing background styles -\tikzstyle{framed}= [style=show background rectangle] -\tikzstyle{gridded}= [style=show background grid] +\tikzset{framed/.style= {style=show background rectangle}}% +\tikzset{gridded/.style= {style=show background grid}}% -\tikzstyle{show background rectangle}=[execute at end picture=\tikz@background@framed] -\tikzstyle{show background top}= [execute at end picture=\tikz@background@top] -\tikzstyle{show background bottom}= [execute at end picture=\tikz@background@bottom] -\tikzstyle{show background left}= [execute at end picture=\tikz@background@left] -\tikzstyle{show background right}= [execute at end picture=\tikz@background@right] -\tikzstyle{show background grid}= [execute at end picture=\tikz@background@grid] +\tikzset{show background rectangle/.style={execute at end picture=\tikz@background@framed}}% +\tikzset{show background top/.style= {execute at end picture=\tikz@background@top}}% +\tikzset{show background bottom/.style= {execute at end picture=\tikz@background@bottom}}% +\tikzset{show background left/.style= {execute at end picture=\tikz@background@left}}% +\tikzset{show background right/.style= {execute at end picture=\tikz@background@right}}% +\tikzset{show background grid/.style= {execute at end picture=\tikz@background@grid}}% % Implementation @@ -100,49 +100,49 @@ \edef\tikz@bg@outermaxx{\the\pgf@xc}% \edef\tikz@bg@outermaxy{\the\pgf@yc}% \fi% -} +}% \def\tikz@background@framed{% \tikz@background@save% \pgfonlayer{background} \path[style=background rectangle] (\tikz@bg@minx,\tikz@bg@miny) rectangle (\tikz@bg@maxx,\tikz@bg@maxy); \endpgfonlayer -} +}% \def\tikz@background@top{% \tikz@background@save% \pgfonlayer{background} \path[style=background top] (\tikz@bg@outerminx,\tikz@bg@maxy) -- (\tikz@bg@outermaxx,\tikz@bg@maxy); \endpgfonlayer -} +}% \def\tikz@background@bottom{% \tikz@background@save% \pgfonlayer{background} \path[style=background bottom] (\tikz@bg@outerminx,\tikz@bg@miny) -- (\tikz@bg@outermaxx,\tikz@bg@miny); \endpgfonlayer -} +}% \def\tikz@background@left{% \tikz@background@save% \pgfonlayer{background} \path[style=background left] (\tikz@bg@minx,\tikz@bg@outerminy) -- (\tikz@bg@minx,\tikz@bg@outermaxy); \endpgfonlayer -} +}% \def\tikz@background@right{% \tikz@background@save% \pgfonlayer{background} \path[style=background right] (\tikz@bg@maxx,\tikz@bg@outerminy) -- (\tikz@bg@maxx,\tikz@bg@outermaxy); \endpgfonlayer -} +}% \def\tikz@background@grid{% \tikz@background@save% \pgfonlayer{background} \path[style=background grid] (\tikz@bg@minx,\tikz@bg@miny) grid (\tikz@bg@maxx,\tikz@bg@maxy); \endpgfonlayer -} +}% + - \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex index 42a410ce4f5..be9c8bb707a 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex @@ -7,9 +7,9 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex,v 1.2 2013/09/17 22:00:21 tantau Exp $ +\ProvidesFileRCS{tikzlibrarybending.code.tex} -\usepgfmodule{bending} -\tikzset{arrows=[flex]} +\usepgfmodule{bending}% +\tikzset{arrows=[flex]}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalc.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalc.code.tex index 703494d2a64..561a725307f 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalc.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalc.code.tex @@ -7,12 +7,12 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalc.code.tex,v 1.9 2013/07/15 12:05:31 tantau Exp $ +\ProvidesFileRCS{tikzlibrarycalc.code.tex} % % % Part I: The let path command -% +% % @@ -21,11 +21,11 @@ % % Currently (this may get more fancy in the future), the (coord)s are % evaluated one by one. If the first evaluates to, say, (10pt,20pt), -% the macro \p{name1} is set to "10pt,20pt" (without parantheses), the +% the macro \p{name1} is set to "10pt,20pt" (without parentheses), the % macro \x{name1} is set to "10pt" and the macro \y{name1} is set to -% "20pt". +% "20pt". % -% If you use a number for {name}, you need no parantheses, so you +% If you use a number for {name}, you need no parentheses, so you % could write: % % \draw let @@ -40,7 +40,7 @@ \let\y=\tikz@cc@doy% \let\n=\tikz@cc@don% \pgfutil@ifnextchar i{\tikz@cc@stop@let}{\tikz@cc@handle@line}% -} +}% \def\tikz@cc@handle@line{% \pgfutil@ifnextchar\p{% \tikz@cc@handle@coor% @@ -51,34 +51,34 @@ \tikzerror{``\string\p'' or ``\string\n'' expected}% }% }% -} +}% \def\tikz@cc@handle@num\n#1#2=#3{% \pgfmathparse{#3}% \expandafter\edef\csname tikz@cc@n@#1\endcsname{\pgfmathresult\ifpgfmathunitsdeclared pt\fi} \pgfutil@ifnextchar,{\tikz@cc@handle@nextline}{\tikz@cc@stop@let}% -} +}% \def\tikz@cc@handle@coor\p#1#2={% \def\tikz@cc@coord@name{#1}% \tikz@scan@one@point\tikz@cc@dolet% -} +}% \def\tikz@cc@dolet#1{% \pgf@process{#1}% \expandafter\edef\csname tikz@cc@p@\tikz@cc@coord@name\endcsname{\the\pgf@x,\the\pgf@y}% \expandafter\edef\csname tikz@cc@x@\tikz@cc@coord@name\endcsname{\the\pgf@x}% \expandafter\edef\csname tikz@cc@y@\tikz@cc@coord@name\endcsname{\the\pgf@y}% \pgfutil@ifnextchar,{\tikz@cc@handle@nextline}{\tikz@cc@stop@let}% -} +}% \def\tikz@cc@handle@nextline,{% \tikz@cc@handle@line% -} +}% \def\tikz@cc@stop@let in{% \tikz@scan@next@command% }% -\def\tikz@cc@dop#1{\csname tikz@cc@p@#1\endcsname} -\def\tikz@cc@dox#1{\csname tikz@cc@x@#1\endcsname} -\def\tikz@cc@doy#1{\csname tikz@cc@y@#1\endcsname} -\def\tikz@cc@don#1{\csname tikz@cc@n@#1\endcsname} +\def\tikz@cc@dop#1{\csname tikz@cc@p@#1\endcsname}% +\def\tikz@cc@dox#1{\csname tikz@cc@x@#1\endcsname}% +\def\tikz@cc@doy#1{\csname tikz@cc@y@#1\endcsname}% +\def\tikz@cc@don#1{\csname tikz@cc@n@#1\endcsname}% @@ -93,12 +93,12 @@ \begingroup% % % Parse main computation. It's a series of optional factors in front - % of coordiantes. - % + % of coordinates. + % \pgf@xa=0pt% We accumulate the result in here. \pgf@ya=0pt% - \tikz@cc@parse+% -} + \tikz@cc@parse+% +}% \def\tikz@cc@parse{% \pgfutil@ifnextchar${%$ @@ -117,7 +117,7 @@ }% }% }% -} +}% % % The end is reached with $ @@ -126,7 +126,7 @@ \xdef\tikz@marshal{\noexpand\pgfqpoint{\the\pgf@xa}{\the\pgf@ya}}% \endgroup% \expandafter\tikz@cc@command\expandafter{\tikz@marshal}% -} +}% % @@ -135,15 +135,15 @@ \def\tikz@cc@add+{% \def\tikz@cc@factor{1}% \tikz@cc@factororcoordinate% -} +}% \def\tikz@cc@sub-{% \def\tikz@cc@factor{-1}% \tikz@cc@factororcoordinate% -} +}% % % Check for a factor: If we see a (, its a coordinate... -% +% \def\tikz@cc@factororcoordinate{% \pgfutil@ifnextchar({%) % Ok, found coordinate @@ -151,7 +151,7 @@ }{% \tikz@cc@parse@factor% }% -} +}% % % ... otherwise it's a factor. It ends at ...*( @@ -160,17 +160,17 @@ \pgfmathparse{#1*\tikz@cc@factor}% \let\tikz@cc@factor=\pgfmathresult% \tikz@cc@coordinate(%) -} +}% \def\tikz@cc@coordinate{% \tikz@scan@absolute\tikz@cc@after@coordinate% -} +}% \def\tikz@cc@after@coordinate#1{% \pgf@process{#1}% \pgf@xb=\pgf@x% \pgf@yb=\pgf@y% \tikz@cc@mid@checks% -} +}% % @@ -182,7 +182,8 @@ \expandafter\tikz@cc@mid@checks@active \else \expandafter\tikz@cc@mid@checks@nonactive - \fi} + \fi +}% \def\tikz@cc@mid@checks@nonactive{% \pgfutil@ifnextchar!{% @@ -192,7 +193,7 @@ \advance\pgf@ya by\tikz@cc@factor\pgf@yb \tikz@cc@parse% }% -} +}% \def\tikz@cc@mid@nonactive!{% \pgfutil@ifnextchar({% @@ -200,7 +201,7 @@ }{% \tikz@cc@mid@num@nonactive% }% -} +}% \begingroup \catcode`\!=\active @@ -212,7 +213,7 @@ \advance\pgf@ya by\tikz@cc@factor\pgf@yb \tikz@cc@parse% }% - } + }% \gdef\tikz@cc@mid@active!{% \pgfutil@ifnextchar({% @@ -220,7 +221,7 @@ }{% \tikz@cc@mid@num@active% }% - } + }% \endgroup % @@ -231,11 +232,11 @@ % is (b) % -\def\tikz@cc@mid@num@nonactive#1!{\tikz@cc@mid@num{#1}} +\def\tikz@cc@mid@num@nonactive#1!{\tikz@cc@mid@num{#1}}% \begingroup \catcode`\!=\active - \gdef\tikz@cc@mid@num@active#1!{\tikz@cc@mid@num{#1}} + \gdef\tikz@cc@mid@num@active#1!{\tikz@cc@mid@num{#1}}% \endgroup \def\tikz@cc@mid@num#1{% @@ -249,7 +250,7 @@ \let\tikz@cc@mid@factor@one=\pgfmathresult% \expandafter\tikz@cc@scan@rot\expandafter\tikz@cc@after@num% \fi% -} +}% \def\tikz@cc@after@num#1{% \pgf@process{#1}% @@ -258,7 +259,7 @@ \advance\pgf@xb by\tikz@cc@mid@factor\pgf@x% \advance\pgf@yb by\tikz@cc@mid@factor\pgf@y% \tikz@cc@mid@checks% -} +}% @@ -277,7 +278,7 @@ \advance\pgf@xb by\tikz@cc@mid@unit\pgf@x% \advance\pgf@yb by\tikz@cc@mid@unit\pgf@y% \tikz@cc@mid@checks% -} +}% % % Projection case: (a)!(p)!(b) @@ -302,13 +303,13 @@ \tikz@cc@scan@ex@nonactive}% \fi \tikz@next% -} +}% -\def\tikz@cc@scan@ex@nonactive!{} +\def\tikz@cc@scan@ex@nonactive!{}% \begingroup \catcode`\!=\active - \gdef\tikz@cc@scan@ex@active!{} + \gdef\tikz@cc@scan@ex@active!{}% \endgroup \def\tikz@cc@after@project#1{% @@ -326,7 +327,7 @@ \advance\pgf@xb by\pgf@sys@tonumber{\pgf@xc}\pgf@x% \advance\pgf@yb by\pgf@sys@tonumber{\pgf@xc}\pgf@y% \tikz@cc@mid@checks% -} +}% % % Rotational scanner: radius:(x) @@ -336,7 +337,7 @@ \pgfutil@ifnextchar({%) \tikz@scan@one@point#1% normal }% - { + {% \def\tikz@cc@scan@rot@cmd{#1}% \ifnum\the\catcode`\:=\active\relax \expandafter\tikz@cc@scan@one@rot@active% @@ -344,19 +345,19 @@ \expandafter\tikz@cc@scan@one@rot@nonactive% \fi }% -} +}% \def\tikz@cc@scan@one@rot@nonactive#1:{% \def\tikz@cc@scan@rot@angle{#1}% \tikz@scan@one@point\tikz@cc@handle@rot% -} +}% \begingroup \catcode`\:=\active \gdef\tikz@cc@scan@one@rot@active#1:{% \def\tikz@cc@scan@rot@angle{#1}% \tikz@scan@one@point\tikz@cc@handle@rot% - } + }% \endgroup \def\tikz@cc@handle@rot#1{% @@ -375,7 +376,7 @@ }% \edef\tikz@marshal{\noexpand\tikz@cc@scan@rot@cmd{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}}% \tikz@marshal% -} +}% @@ -383,32 +384,32 @@ % % % Part III: Calculation coordinate systems -% +% % % Tangent cs: Keys are a node and a point. Depending on the type of -% node, the appropriate tanent computation should be done. +% node, the appropriate tangent computation should be done. \tikzdeclarecoordinatesystem{tangent} {% \tikzset{cs/.cd,#1}% \expandafter\ifx\csname tikz@tangent@\tikz@cs@type\endcsname\relax% - \tikzerror{I do not know how to compute the tangent to + \tikzerror{I do not know how to compute the tangent to a \tikz@cs@type}% \pgfpointorigin% \else% - \expandafter\tikz@scan@one@point\expandafter\tikz@lib@do@tangent\tikz@cs@point% + \expandafter\tikz@scan@one@point\expandafter\tikz@lib@do@tangent\tikz@cs@point% \fi% -} +}% -\tikzset{cs/node/.code=\tikz@cs@unpack{\tikz@cs@node}{\tikz@cs@type}{#1}} -\tikzset{cs/point/.store in=\tikz@cs@point} +\tikzset{cs/node/.code=\tikz@cs@unpack{\tikz@cs@node}{\tikz@cs@type}{#1}}% +\tikzset{cs/point/.store in=\tikz@cs@point}% -\def\tikz@lib@do@tangent{\csname tikz@tangent@\tikz@cs@type\endcsname} +\def\tikz@lib@do@tangent{\csname tikz@tangent@\tikz@cs@type\endcsname}% \def\tikz@tangent@coordinate#1{% \pgfpointanchor{\tikz@cs@node}{center}% -} +}% \def\tikz@tangent@circle#1{% {% @@ -464,7 +465,7 @@ \pgftransforminvert% \pgf@process{\pgfpointtransformed{}}% }% -} +}% % Implementation of intersections @@ -502,7 +503,7 @@ \pgftransforminvert% \pgf@process{\pgfpointtransformed{}}% }% -} +}% \def\tikz@intersect@line@and@circle{% @@ -553,10 +554,10 @@ % and add \advance\pgf@xa by\pgf@sys@tonumber{\pgf@xc}\pgf@x% \advance\pgf@ya by\pgf@sys@tonumber{\pgf@xc}\pgf@y% - % + % % Now, we have a triangle with a right angle at (xa,ya). The % second point of the triangle is the origin. The third point is - % sought. + % sought. % Save x/y \pgf@xc=\pgf@x% \pgf@yc=\pgf@y% @@ -601,7 +602,7 @@ \pgftransforminvert% \pgf@process{\pgfpointtransformed{}}% }% -} +}% \def\tikz@intersect@circle@and@line{% % Swap @@ -610,5 +611,4 @@ \let\tikz@cs@line@a=\tikz@cs@line@b% \tikz@intersect@line@and@circle% }% -} - +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalendar.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalendar.code.tex index 02b4f00bb6f..f3e8439491f 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalendar.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalendar.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarycalendar.code.tex,v 1.3 2013/07/15 12:05:31 tantau Exp $ +\ProvidesFileRCS{tikzlibrarycalendar.code.tex} \pgfutil@usemodule{pgfcalendar} @@ -40,7 +40,7 @@ -% +% % Options affecting some calendars: % @@ -48,7 +48,7 @@ % Shifts and skips % -% Shift between days +% Shift between days \tikzoption{day xshift}{\def\tikz@lib@cal@xshift{#1}} \tikzoption{day yshift}{\def\tikz@lib@cal@yshift{#1}} @@ -72,16 +72,16 @@ \tikzoption{day code}{\def\tikzdaycode{#1}} \tikzoption{day text}{\def\tikzdaytext{#1}} -\tikzoption{days}{\tikzstyle{every day}+=[#1]} -\tikzstyle{every day}=[anchor=base east] +\tikzoption{days}{\tikzset{every day/.append style={#1}}} +\tikzset{every day/.style={anchor=base east}} \tikzoption{month code}{\def\tikzmonthcode{#1}} \tikzoption{month text}{\def\tikzmonthtext{#1}} -\tikzstyle{every month}=[] +\tikzset{every month/.style={}} \tikzoption{year code}{\def\tikzyearcode{#1}} \tikzoption{year text}{\def\tikzyeartext{#1}} -\tikzstyle{every year}=[] +\tikzset{every year/.style={}} \def\tikzdaycode{\node[name=\pgfcalendarsuggestedname,every day]{\tikzdaytext};} \def\tikzmonthcode{\node[every month]{\tikzmonthtext};} @@ -93,7 +93,7 @@ % Internal option for storing the "width" of a calendar as a number of -% days +% days \tikzoption{tikz@lib@cal@width}{\def\tikz@lib@cal@width{#1}} @@ -103,7 +103,7 @@ % Days on a line % -\tikzstyle{day list downward}=[% +\tikzset{day list downward/.style={% execute before day scope={ \ifdate{day of month=1}{\ifdate{equals=\pgfcalendarbeginiso}{} {% @@ -112,11 +112,11 @@ \pgftransformyshift{-\pgf@y} }% }{}% - }, + }, execute after day scope={\pgfmathsetlength{\pgf@y}{\tikz@lib@cal@yshift}\pgftransformyshift{-\pgf@y}}, tikz@lib@cal@width=1 -] -\tikzstyle{day list upward}=[% +}} +\tikzset{day list upward/.style={% execute before day scope={ \ifdate{day of month=1}{\ifdate{equals=\pgfcalendarbeginiso}{} {% @@ -124,11 +124,11 @@ \pgftransformyshift{\tikz@lib@cal@month@yshift}% }% }{}% - }, + }, execute after day scope={\pgftransformyshift\tikz@lib@cal@yshift}, tikz@lib@cal@width=1 -] -\tikzstyle{day list right}=[% +}} +\tikzset{day list right/.style={% execute before day scope={ \ifdate{day of month=1}{\ifdate{equals=\pgfcalendarbeginiso}{} {% @@ -136,12 +136,12 @@ \pgftransformxshift{\tikz@lib@cal@month@xshift}% }% }{}% - }, + }, execute after day scope={\pgftransformxshift\tikz@lib@cal@xshift}, tikz@lib@cal@width=30% not quite right, but close enough in most cases... -] +}} -\tikzstyle{day list left}=[% +\tikzset{day list left/.style={% execute before day scope={ \ifdate{day of month=1}{\ifdate{equals=\pgfcalendarbeginiso}{} {% @@ -150,13 +150,13 @@ \pgftransformxshift{-\pgf@x}% }% }{}% - }, + }, execute after day scope={ \pgfmathsetlength{\pgf@x}{\tikz@lib@cal@xshift} \pgftransformxshift{-\pgf@x}% }, tikz@lib@cal@width=30% not quite right, but close enough in most cases... -] +}} @@ -164,7 +164,7 @@ % Week list % -\tikzstyle{week list}=[% +\tikzset{week list/.style={% execute before day scope={% \ifdate{day of month=1}{\ifdate{equals=\pgfcalendarbeginiso}{} {% @@ -173,7 +173,7 @@ \pgftransformyshift{-\pgf@y} }% }{}% - }, + }, execute at begin day scope={% \pgfmathsetlength\pgf@x{\tikz@lib@cal@xshift}% \pgf@x=\pgfcalendarcurrentweekday\pgf@x% @@ -186,7 +186,7 @@ }{}% }, tikz@lib@cal@width=7 -] +}} @@ -194,7 +194,7 @@ % Month list % -\tikzstyle{month list}=[% +\tikzset{month list/.style={% execute before day scope={% \ifdate{day of month=1}{\ifdate{equals=\pgfcalendarbeginiso}{} {% @@ -219,7 +219,7 @@ }% \let\tikz@lib@cal@month@list@start=\pgf@temp% }{}% - }, + }, execute at begin day scope={% \pgfmathsetlength\pgf@xa{\tikz@lib@cal@xshift}% \pgf@xb=\pgfcalendarcurrentday\pgf@xa% @@ -228,7 +228,7 @@ \pgftransformxshift{\pgf@xb}% }, tikz@lib@cal@width=37 -] +}} @@ -237,17 +237,17 @@ % Month labels % -\tikzstyle{month label left}=[% +\tikzset{month label left/.style={% execute before day scope={\ifdate{day of month=1}{\tikzmonthcode}{}}, every month/.append style={anchor=base east,xshift=-3.5ex} -] +}} -\tikzstyle{month label left vertical}=[% +\tikzset{month label left vertical/.style={% execute before day scope={\ifdate{day of month=1}{\tikzmonthcode}{}}, every month/.append style={anchor=base east,xshift=-4.5ex,yshift=2.25ex,rotate=90} -] - -\tikzstyle{month label right}=[% +}} + +\tikzset{month label right/.style={% execute before day scope={\ifdate{day of month=1}{% {% \pgfmathsetlength{\pgf@xa}{\tikz@lib@cal@xshift}% @@ -256,9 +256,9 @@ execute before day scope={\ifdate{day of month=1}{% \tikzmonthcode% }}{}}, every month/.append style={anchor=base west,xshift=1ex} -] +}} -\tikzstyle{month label right vertical}=[% +\tikzset{month label right vertical/.style={% execute before day scope={\ifdate{day of month=1}{% {% \pgfmathsetlength{\pgf@xa}{\tikz@lib@cal@xshift}% @@ -267,9 +267,9 @@ execute before day scope={\ifdate{day of month=1}{% \tikzmonthcode% }}{}}, every month/.append style={anchor=base west,xshift=2ex,yshift=2.25ex,rotate=-90} -] +}} -\tikzstyle{month label above centered}=[% +\tikzset{month label above centered/.style={% execute before day scope={% \ifdate{day of month=1}{% { @@ -285,9 +285,9 @@ execute before day scope={\ifdate{day of month=1}{% } }{}}, every month/.append style={anchor=base} -] - -\tikzstyle{month label above left}=[% +}} + +\tikzset{month label above left/.style={% execute before day scope={% \ifdate{day of month=1}{% { @@ -298,11 +298,11 @@ execute before day scope={\ifdate{day of month=1}{% } }{}}, every month/.append style={anchor=base west} -] +}} -\tikzstyle{month label above right}=[% +\tikzset{month label above right/.style={% execute before day scope={% \ifdate{day of month=1}{% { @@ -316,9 +316,9 @@ execute before day scope={\ifdate{day of month=1}{% } }{}}, every month/.append style={anchor=base east} -] - -\tikzstyle{month label below centered}=[% +}} + +\tikzset{month label below centered/.style={% execute before day scope={% \ifdate{day of month=1}{% { @@ -334,9 +334,9 @@ execute before day scope={\ifdate{day of month=1}{% } }{}}, every month/.append style={anchor=base} -] - -\tikzstyle{month label below left}=[% +}} + +\tikzset{month label below left/.style={% execute before day scope={% \ifdate{day of month=1}{% { @@ -347,7 +347,7 @@ execute before day scope={\ifdate{day of month=1}{% } }{}}, every month/.append style={anchor=base west} -] +}} @@ -370,37 +370,37 @@ execute before day scope={\ifdate{day of month=1}{% } \def\tikz@lib@cal@handle{% - \let\@next=\tikz@lib@cal@expand% + \let\pgfutil@next=\tikz@lib@cal@expand% \ifx\pgf@let@token;% - \let\@next=\tikz@lib@cal@stop% + \let\pgfutil@next=\tikz@lib@cal@stop% \else% \ifx\pgf@let@token(%) - \let\@next=\tikz@lib@cal@name% + \let\pgfutil@next=\tikz@lib@cal@name% \else% \ifx\pgf@let@token a% - \let\@next=\tikz@lib@cal@at% + \let\pgfutil@next=\tikz@lib@cal@at% \else% \ifx\pgf@let@token[% - \let\@next=\tikz@lib@cal@option% + \let\pgfutil@next=\tikz@lib@cal@option% \else% \ifx\pgf@let@token i% - \let\@next=\tikz@lib@cal@if% + \let\pgfutil@next=\tikz@lib@cal@if% \fi% \fi% \fi% \fi% \fi% - \@next% + \pgfutil@next% } \def\tikz@lib@cal@expand{% \advance\tikz@expandcount by -1% \ifnum\tikz@expandcount<0\relax% \tikzerror{Giving up on this calendar}% - \let\@next=\tikz@lib@cal@end% + \let\pgfutil@next=\tikz@lib@cal@end% \else% - \let\@next=\tikz@lib@cal@@expand + \let\pgfutil@next=\tikz@lib@cal@@expand \fi% - \@next} + \pgfutil@next} \def\tikz@lib@cal@@expand{\expandafter\tikz@lib@cal@scanner\pgf@let@token} @@ -435,14 +435,14 @@ execute before day scope={\ifdate{day of month=1}{% \pgftransformshift{\tikz@node@at}% \expandafter\pgfcalendar\expandafter{\tikz@fig@name}{\tikz@lib@cal@start}{\tikz@lib@cal@end}% {% - \tikz@before@day% + \tikz@before@day% \scope% \tikz@atbegin@day% \tikz@lib@cal@ifs% \tikzdaycode% \tikz@atend@day% \endscope% - \tikz@after@day% + \tikz@after@day% }% \endgroup% } diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarychains.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarychains.code.tex index e2d12a0931a..c02f5207044 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarychains.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarychains.code.tex @@ -7,9 +7,9 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarychains.code.tex,v 1.6 2013/07/15 12:05:31 tantau Exp $ +\ProvidesFileRCS{tikzlibrarychains.code.tex} -\usetikzlibrary{positioning} +\usetikzlibrary{positioning}% \tikzset{start chain/.default=, start chain/.code={% @@ -52,8 +52,8 @@ \fi% }, join/.code=\tikz@lib@parse@join{#1}, - join/.default={}% -} + join/.default={}% +}% \def\tikz@lib@chain@parse#1{% \pgfutil@in@{going }{#1}% @@ -68,7 +68,7 @@ \let\tikz@lib@chain@direction\relax% \fi% \fi% -} +}% \def\tikz@lib@chain@going#1going #2\pgf@stop{% \def\tikz@lib@chain@name{#1}% @@ -82,8 +82,8 @@ \else% \tikz@lib@chain@place{#2}% \fi% - }% -} + }% +}% \def\tikz@lib@chain@positioning#1placed #2\pgf@stop{% \def\tikz@lib@chain@name{#1}% @@ -93,7 +93,7 @@ \fi% \tikz@lib@chain@is@goingfalse% \def\tikz@lib@chain@direction{\tikz@lib@chain@place{#2}}% -} +}% \newif\iftikz@lib@chain@is@going @@ -103,18 +103,18 @@ \let\tikz@lib@chain@default@direction=\tikz@lib@chain@direction% },% /tikz/chain default direction=going right -} +}% -\def\tikz@lib@current@chain{chain} +\def\tikz@lib@current@chain{chain}% -\pgfutil@g@addto@macro\tikz@node@reset@hook{\let\tikz@lib@chain@caller=\relax} -\pgfutil@g@addto@macro\tikz@node@begin@hook{\tikz@lib@chain@caller} +\pgfutil@g@addto@macro\tikz@node@reset@hook{\let\tikz@lib@chain@caller=\relax}% +\pgfutil@g@addto@macro\tikz@node@begin@hook{\tikz@lib@chain@caller}% \tikzset{ on chain/.default=, on chain/.code=\tikz@lib@on@chain{#1}% -} -\def\tikz@lib@on@chain#1{% +}% +\def\tikz@lib@on@chain#1{% \tikz@lib@chain@parse{#1}% \ifx\tikz@lib@chain@name\pgfutil@empty% \let\tikz@lib@chain@name\tikz@lib@current@chain% @@ -137,7 +137,7 @@ \fi% \edef\tikz@lib@chain@caller{\noexpand\tikz@lib@chain@last@found{\tikz@lib@chain@name}}% \fi% -} +}% \def\tikz@lib@chain@last@found#1{% % Increase the count and set name, if necessary. \c@pgf@counta\csname tikz@lib@chain@count@#1\endcsname\relax% @@ -146,12 +146,12 @@ \expandafter\xdef\csname tikz@lib@chain@count@#1\endcsname{\the\c@pgf@counta}% \ifnum\c@pgf@counta=1\relax% \tikzset{alias/.expanded=#1-begin} % Define pseudostart - \fi% + \fi% \tikzset{alias/.expanded=#1-end} % Define pseudostart \tikzset{alias/.expanded=#1-\the\c@pgf@counta} % Define pseudostart \tikz@lib@chain@direction% \tikzset{every on chain/.try}% -} +}% \def\tikz@lib@chain@place#1{% @@ -161,11 +161,11 @@ \else% \tikzset{#1=of \tikzchainprevious}% \fi% -} +}% \def\tikz@lib@chain@strip#1 \pgf@stop{% \def\tikz@lib@chain@name{#1}% -} +}% \def\tikz@lib@parse@join#1{% \def\tikz@temp{#1}% @@ -184,18 +184,18 @@ \tikz@lib@parse@join@by#1\pgf@stop% \fi% \fi% -} +}% \def\tikz@lib@parse@join@with@by with #1 by #2\pgf@stop{% \tikzset{after node path={(#1)edge[every join,#2](\tikzchaincurrent)}}% -} +}% \def\tikz@lib@parse@join@by by #1\pgf@stop{% \tikzset{after node path={\ifx\tikzchainprevious\pgfutil@empty\else (\tikzchainprevious)edge[every join,#1](\tikzchaincurrent)\fi}}% -} -\tikzset{every join/.style=} +}% +\tikzset{every join/.style=}% -\def\tikz@lib@chainin#1(#2){\pgfutil@ifnextchar[{\tikz@lib@chainin@{#2}}{\tikz@lib@chainin@{#2}[]}}%] -\def\tikz@lib@chainin@#1[#2]{\path[late options={name=#1,on chain,every chain in/.try,#2}]} +\def\tikz@lib@chainin#1(#2){\pgfutil@ifnextchar[{\tikz@lib@chainin@{#2}}{\tikz@lib@chainin@{#2}[]}}%]% +\def\tikz@lib@chainin@#1[#2]{\path[late options={name=#1,on chain,every chain in/.try,#2}]}% % @@ -208,7 +208,7 @@ \pgfkeysalso{/tikz/start chain/.expand once=\tikz@lib@current@chain/#1}% \path[late options={name=\tikz@lib@save@current-end,on chain}];% }% -} -\tikzset{continue branch/.style={continue chain/.expand once=\tikz@lib@current@chain/#1}} +}% +\tikzset{continue branch/.style={continue chain/.expand once=\tikz@lib@current@chain/#1}}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex index b27783b0009..4e61360ee3b 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usepgfmodule{decorations} +\usepgfmodule{decorations}% % Define the basic decoration stuff for tikz. Load more libraries to % "actually use" decorations @@ -26,9 +26,9 @@ \else% \let\tikz@dec@mirror=\relax% \fi% - \tikz@dec@trans% + \tikz@dec@trans% }, - /pgf/decoration/mirror/.default=true, + /pgf/decoration/mirror/.default=true, /pgf/decoration/transform/.code={% {% \pgftransformreset% @@ -43,37 +43,37 @@ /pgf/decoration/post/.initial=lineto, /pgf/decoration/pre length/.initial=0pt, /pgf/decoration/post length/.initial=0pt, -} +}% \let\tikz@decoration@name=\tikz@nonetext -\def\tikz@dec@trans{\pgfsetdecorationsegmenttransformation{\tikz@dec@user@transform\tikz@dec@mirror\tikz@dec@shift}} +\def\tikz@dec@trans{\pgfsetdecorationsegmenttransformation{\tikz@dec@user@transform\tikz@dec@mirror\tikz@dec@shift}}% \let\tikz@dec@user@transform=\relax \let\tikz@dec@shift=\relax \let\tikz@dec@mirror=\relax -\pgfdeclaremetadecoration{tikz@internal}{pre}{ +\pgfdeclaremetadecoration{tikz@internal}{pre}{% \state{pre}[width=\pgfkeysvalueof{/pgf/decoration/pre length}, next state=main] { \tikz@dec@trans \decoration{\pgfkeysvalueof{/pgf/decoration/pre}} - } + }% \state{main}[width=\pgfmetadecoratedremainingdistance-\pgfkeysvalueof{/pgf/decoration/post length}, next state=final] { \tikz@dec@trans \decoration{\tikz@decoration@name} - } + }% \state{final} { \tikz@dec@trans \decoration{\pgfkeysvalueof{/pgf/decoration/post}} - } -} + }% +}% \newif\iftikz@metadecoration -\def\tikz@lib@dec@addtomacro#1#2{\expandafter\def\expandafter#1\expandafter{#1#2}} +\def\tikz@lib@dec@addtomacro#1#2{\expandafter\def\expandafter#1\expandafter{#1#2}}% \def\tikz@lib@decoration[#1]{% \begingroup% @@ -99,7 +99,7 @@ \tikzerror{A decoration must begin with a brace}% \tikz@enddecoration% }% -} +}% \def\tikz@lib@do@dec{% % Ok, now what? \pgfifmetadecoration{\tikz@decoration@name}% @@ -113,7 +113,7 @@ \ifx\pgfdecorateexistingpath\pgfutil@empty% \pgfpathmoveto{\pgfqpoint{\the\tikz@lastxsaved}{\the\tikz@lastysaved}}% \fi% -} +}% \newbox\tikz@lib@dec@box \def\tikz@enddecoration{% \global\setbox\tikz@lib@dec@box=\box\tikz@tempbox% @@ -129,7 +129,7 @@ \fi \endgroup% \setbox\tikz@tempbox=\box\tikz@lib@dec@box% -} +}% \def\tikz@lib@dec@decorate@path{% @@ -138,7 +138,7 @@ \pgfgetpath\tikz@lib@dec@currentpath% \pgfsetpath\pgfutil@empty% \pgfifmetadecoration{\tikz@decoration@name} - { + { \expandafter\pgfmetadecoration\expandafter{\tikz@decoration@name}% \pgfsetpath\tikz@lib@dec@currentpath% \endpgfmetadecoration% @@ -156,9 +156,9 @@ } } \fi% -} +}% -\def\tikz@lib@dec@zpttext{0pt} +\def\tikz@lib@dec@zpttext{0pt}% \newif\iftikz@lib@dec@temp \def\tikz@lib@dec@startdecoration{% @@ -178,7 +178,7 @@ \else% \expandafter\pgfdecoration\expandafter{\expandafter{\tikz@decoration@name}{\pgfdecoratedpathlength}{}{}}% \fi% -} +}% \def\tikz@lib@dec@stopdecoration{% \iftikz@lib@dec@temp% @@ -186,7 +186,7 @@ \else% \endpgfdecoration% \fi% -} +}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.footprints.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.footprints.code.tex index e4295c10ea7..fe42e8b09be 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.footprints.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.footprints.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{decorations} -\usepgflibrary{decorations.footprints} +\usetikzlibrary{decorations}% +\usepgflibrary{decorations.footprints}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.fractals.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.fractals.code.tex index dd247ac7e3f..9bd837911bc 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.fractals.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.fractals.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{decorations} -\usepgflibrary{decorations.fractals} +\usetikzlibrary{decorations}% +\usepgflibrary{decorations.fractals}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex index eecdfb6ad3f..23dcf61da73 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.markings.code.tex @@ -7,25 +7,25 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{decorations} -\usepgflibrary{decorations.markings} +\usetikzlibrary{decorations}% +\usepgflibrary{decorations.markings}% % Upgrade \arrow command \def\pgf@lib@dec@doarrowhead{% \pgfutil@ifnextchar[{\tikz@lib@dec@doarrowhead}{\tikz@lib@dec@doarrowhead[]}%] -} +}% \def\tikz@lib@dec@doarrowhead[#1]#2{% \scope[#1] \pgf@lib@dec@arrowhead{1}{#2}% \endscope -} +}% \def\pgf@lib@dec@doarrowheadrev{% \pgfutil@ifnextchar[{\tikz@lib@dec@doarrowheadrev}{\tikz@lib@dec@doarrowheadrev[]}%] -} +}% \def\tikz@lib@dec@doarrowheadrev[#1]#2{% \scope[#1] \pgf@lib@dec@arrowhead{-1}{#2}% \endscope -} +}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathmorphing.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathmorphing.code.tex index 388f6395f8b..4d0eb26dd7a 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathmorphing.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathmorphing.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{decorations} -\usepgflibrary{decorations.pathmorphing} +\usetikzlibrary{decorations}% +\usepgflibrary{decorations.pathmorphing}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathreplacing.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathreplacing.code.tex index ec4c6001f55..cef15dcc5ec 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathreplacing.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.pathreplacing.code.tex @@ -7,30 +7,30 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{decorations} -\usepgflibrary{decorations.pathreplacing} +\usetikzlibrary{decorations}% +\usepgflibrary{decorations.pathreplacing}% \def\tikz@lib@dec@installinputsegmentpoints{% - \pgf@process{\pgf@decorate@inputsegment@first}% - \edef\tikzinputsegmentfirst{\the\pgf@x,\the\pgf@y}% - % - \pgf@process{\pgf@decorate@inputsegment@last}% - \edef\tikzinputsegmentlast{\the\pgf@x,\the\pgf@y}% - % - \pgf@process{\pgf@decorate@inputsegment@supporta}% - \edef\tikzinputsegmentsupporta{\the\pgf@x,\the\pgf@y}% - % - \pgf@process{\pgf@decorate@inputsegment@supportb}% - \edef\tikzinputsegmentsupportb{\the\pgf@x,\the\pgf@y}% -} + \pgf@process{\pgf@decorate@inputsegment@first}% + \edef\tikzinputsegmentfirst{\the\pgf@x,\the\pgf@y}% + % + \pgf@process{\pgf@decorate@inputsegment@last}% + \edef\tikzinputsegmentlast{\the\pgf@x,\the\pgf@y}% + % + \pgf@process{\pgf@decorate@inputsegment@supporta}% + \edef\tikzinputsegmentsupporta{\the\pgf@x,\the\pgf@y}% + % + \pgf@process{\pgf@decorate@inputsegment@supportb}% + \edef\tikzinputsegmentsupportb{\the\pgf@x,\the\pgf@y}% +}% \pgfkeys{ - /pgf/decoration/.cd, - moveto code/.code=\def\pgfdecoratedinputsegmentmovetocode{\tikz@lib@dec@installinputsegmentpoints#1}, - lineto code/.code=\def\pgfdecoratedinputsegmentlinetocode{\tikz@lib@dec@installinputsegmentpoints#1}, - curveto code/.code=\def\pgfdecoratedinputsegmentcurvetocode{\tikz@lib@dec@installinputsegmentpoints#1}, - closepath code/.code=\def\pgfdecoratedinputsegmentclosepathcode{\tikz@lib@dec@installinputsegmentpoints#1} -} + /pgf/decoration/.cd, + moveto code/.code=\def\pgfdecoratedinputsegmentmovetocode{\tikz@lib@dec@installinputsegmentpoints#1}, + lineto code/.code=\def\pgfdecoratedinputsegmentlinetocode{\tikz@lib@dec@installinputsegmentpoints#1}, + curveto code/.code=\def\pgfdecoratedinputsegmentcurvetocode{\tikz@lib@dec@installinputsegmentpoints#1}, + closepath code/.code=\def\pgfdecoratedinputsegmentclosepathcode{\tikz@lib@dec@installinputsegmentpoints#1} +}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.shapes.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.shapes.code.tex index d9306058442..e1ad8a5e12b 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.shapes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.shapes.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{decorations} -\usepgflibrary{decorations.shapes} +\usetikzlibrary{decorations}% +\usepgflibrary{decorations.shapes}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.text.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.text.code.tex index b75fcc6a562..50b9ebcba67 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.text.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarydecorations.text.code.tex @@ -7,67 +7,67 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usetikzlibrary{decorations} -\usepgflibrary{decorations.text} +\usetikzlibrary{decorations}% +\usepgflibrary{decorations.text}% % Code for the `text effects along path' decoration % Some text constants % To do: merge these with existing text constants -\def\tikz@lib@dec@te@space@text{space} -\def\tikz@lib@dec@align@left@text{left} -\def\tikz@lib@dec@align@right@text{right} -\def\tikz@lib@dec@align@center@text{center} -\def\tikz@lib@dec@te@none@text{none} +\def\tikz@lib@dec@te@space@text{space}% +\def\tikz@lib@dec@align@left@text{left}% +\def\tikz@lib@dec@align@right@text{right}% +\def\tikz@lib@dec@align@center@text{center}% +\def\tikz@lib@dec@te@none@text{none}% % Some ifs -\newif\iftikz@lib@dec@te@pathfromtext -\newif\iftikz@lib@dec@te@segmentfromwidth -\newif\iftikz@lib@dec@te@scaletexttopath -\newif\iftikz@lib@dec@te@fittexttopath -\newif\iftikz@lib@dec@te@wordsep -\newif\iftikz@lib@dec@te@finalletter +\newif\iftikz@lib@dec@te@pathfromtext% +\newif\iftikz@lib@dec@te@segmentfromwidth% +\newif\iftikz@lib@dec@te@scaletexttopath% +\newif\iftikz@lib@dec@te@fittexttopath% +\newif\iftikz@lib@dec@te@wordsep% +\newif\iftikz@lib@dec@te@finalletter% % Utility macros -% To do: integrate with exisiting pgf macros +% To do: integrate with existing pgf macros \def\tikz@lib@dec@te@addto@macro#1#2{% \expandafter\def\expandafter#1\expandafter{#1#2}% -} +}% \def\tikz@lib@dec@te@namelet#1#2{% \expandafter\expandafter\expandafter\let\expandafter\expandafter\csname\expandafter#1\expandafter\endcsname\expandafter=\csname#2\endcsname% -} +}% \def\tikz@lib@dec@te@advancecountmacro#1#2{% \pgfutil@tempcnta=#1\relax% \advance\pgfutil@tempcnta by#2\relax% \edef#1{\the\pgfutil@tempcnta}% -} +}% \def\tikz@lib@dec@te@advancedimenmacro#1#2{% \pgf@x=#1\relax% \advance\pgf@x by#2\relax% \edef#1{\the\pgf@x}% -} +}% % Macros for defining and updating text parameters \def\tikz@lib@dec@te@start@parameters#1{% \expandafter\let\csname tikz@lib@dec@te@character@#1\endcsname=\pgfutil@empty% -} +}% \def\tikz@lib@dec@te@addto@parameters#1#2{% \expandafter\tikz@lib@dec@te@addto@macro\expandafter% {\csname tikz@lib@dec@te@character@#1\endcsname}{#2}% -} +}% \def\tikz@lib@dec@te@addmacroto@parameters#1#2{% \def\tikz@lib@dec@te@marshal{\expandafter\tikz@lib@dec@te@addto@macro\expandafter% {\csname tikz@lib@dec@te@character@#1\endcsname}}% \expandafter\tikz@lib@dec@te@marshal\expandafter{\expandafter\def\expandafter#2\expandafter{#2}}% -} +}% -\def\tikz@lib@dec@te@getparameters#1{\csname tikz@lib@dec@te@character@#1\endcsname} +\def\tikz@lib@dec@te@getparameters#1{\csname tikz@lib@dec@te@character@#1\endcsname}% @@ -124,12 +124,12 @@ \fi}, word separator=space, character command/.code={% - \def\tikz@lib@dec@te@tmp{#1}% - \ifx\tikz@lib@dec@te@tmp\pgfutil@empty% - \def\tikz@lib@dec@te@charactercommand{\tikz@lib@dec@te@charactertypesetonly}% - \else% - \def\tikz@lib@dec@te@charactercommand{#1}% - \fi% + \def\tikz@lib@dec@te@tmp{#1}% + \ifx\tikz@lib@dec@te@tmp\pgfutil@empty% + \def\tikz@lib@dec@te@charactercommand{\tikz@lib@dec@te@charactertypesetonly}% + \else% + \def\tikz@lib@dec@te@charactercommand{#1}% + \fi% }, character command=, every character width/.style={/pgf/decoration/text effects/every character/.try}, @@ -146,14 +146,14 @@ repeat text/.store in=\tikz@lib@dec@te@repeattext, repeat text/.default=-1, repeat text=0, -} +}% -\def\tikz@lib@dec@te@charactertypesetonly#1{#1} +\def\tikz@lib@dec@te@charactertypesetonly#1{#1}% \tikzset{% text effects/.code={\pgfkeysalso{/pgf/decoration/text effects/.cd,#1}}, -} +}% @@ -163,7 +163,7 @@ % Prepare the decoration text % % This sets up all the character/letter/word, counts/totals -% and caluclates the default width of the characters/text +% and calculates the default width of the characters/text % (which may be modified later). % \def\tikz@lib@dec@te@preparetext{% @@ -201,13 +201,13 @@ \tikz@lib@dec@te@addto@parameters{\tikz@lib@dec@te@lastcharactercount}{\tikz@lib@dec@te@finallettertrue}% \fi \def\tikz@lib@dec@te@lettercount{0}% - \tikz@lib@dec@te@addto@parameters{\tikz@lib@dec@te@charactercount}{\tikz@lib@dec@te@wordseptrue}% + \tikz@lib@dec@te@addto@parameters{\tikz@lib@dec@te@charactercount}{\tikz@lib@dec@te@wordseptrue}% \else \ifnum\tikz@lib@dec@te@lettercount=0\relax% \tikz@lib@dec@te@advancecountmacro\tikz@lib@dec@te@wordcount{1}% \fi% \tikz@lib@dec@te@addto@parameters{\tikz@lib@dec@te@charactercount}{\tikz@lib@dec@te@finalletterfalse}% - \tikz@lib@dec@te@advancecountmacro{\tikz@lib@dec@te@lettercount}{1}% + \tikz@lib@dec@te@advancecountmacro{\tikz@lib@dec@te@lettercount}{1}% \tikz@lib@dec@te@addto@parameters{\tikz@lib@dec@te@charactercount}{\tikz@lib@dec@te@wordsepfalse}% \expandafter\let\csname tikz@lib@dec@te@word \tikz@lib@dec@te@wordcount @lettercount\endcsname=\tikz@lib@dec@te@lettercount% \fi% @@ -241,10 +241,10 @@ \expandafter\edef\csname tikz@lib@dec@te@character@\pgfmathcounter @postwidth\endcsname{\the\pgf@x}% \tikz@lib@dec@te@advancedimenmacro{\tikz@lib@dec@te@textwidth}{\tikz@lib@dec@te@characterwidth}% \repeatpgfmathloop% -} +}% % Does the category code of the space matter? -\def\tikz@lib@dec@te@spacetoken{ } +\def\tikz@lib@dec@te@spacetoken{ }% \let\tikz@lib@dec@te@wordsep=\tikz@lib@dec@te@spacetoken @@ -254,7 +254,7 @@ % Create macros \tikz@lib@dec@te@character@<n>@token containing % the nth character. % -% Total number of characters is store in +% Total number of characters is store in % \tikz@lib@dec@te@chractertotal@count % \def\tikz@lib@dec@te@scancharacters#1{% @@ -263,7 +263,7 @@ \expandafter\tikz@lib@dec@te@@scancharacters\tikz@lib@dec@te@text\tikz@lib@dec@te@scancharacters}% \def\tikz@lib@dec@te@@scancharacters{% - \futurelet\tikz@lib@dec@te@token\tikz@lib@dec@te@@@scancharacters} + \futurelet\tikz@lib@dec@te@token\tikz@lib@dec@te@@@scancharacters}% \def\tikz@lib@dec@te@@@scancharacters{% \ifx\tikz@lib@dec@te@token\tikz@lib@dec@te@scancharacters% @@ -281,31 +281,31 @@ \fi% \fi% \tikz@lib@dec@te@next% -} +}% \def\tikz@lib@dec@te@@@scancharacters@space{% \let\tikz@lib@dec@te@character=\tikz@lib@dec@te@spacetoken% \tikz@lib@dec@te@@@scancharacters@process% \pgfutil@ifnextchar x\tikz@lib@dec@te@@scancharacters\tikz@lib@dec@te@@scancharacters% -} +}% \def\tikz@lib@dec@te@@@scancharacters@bgroup#1{% \def\tikz@lib@dec@te@character{{#1}}% \tikz@lib@dec@te@@@scancharacters@process% \tikz@lib@dec@te@@scancharacters% -} +}% \def\tikz@lib@dec@te@@@scancharacters@normal#1{% \def\tikz@lib@dec@te@character{#1}% \tikz@lib@dec@te@@@scancharacters@process% \tikz@lib@dec@te@@scancharacters% -} +}% -\def\tikz@lib@dec@te@@@@scancharacters#1\tikz@lib@dec@te@scancharacters{} +\def\tikz@lib@dec@te@@@@scancharacters#1\tikz@lib@dec@te@scancharacters{}% -% Reverse the order of the scanned chracters in the text +% Reverse the order of the scanned characters in the text % (Actually reverse the ordering of the macros containing the characters) \def\tikz@lib@dec@te@reversetext{% \c@pgf@counta=\tikz@lib@dec@te@charactertotalcount% @@ -317,7 +317,7 @@ \tikz@lib@dec@te@namelet{tikz@lib@dec@te@character@\the\c@pgf@counta @token}{tikz@lib@dec@te@tmp}% \advance\c@pgf@counta by-1\relax% \repeatpgfmathloop% -} +}% % Group letters (i.e., anything that isn't the word separator) % as single characters (words). @@ -345,7 +345,7 @@ \fi% \repeatpgfmathloop% \edef\tikz@lib@dec@te@charactertotalcount{\the\c@pgf@counta}% -} +}% % Get width of node containing only the current character. @@ -362,7 +362,7 @@ \tikz@lib@dec@te@getcharacter@replacementwidth{\tikz@lib@dec@te@character}% \let\tikz@lib@dec@te@characterwidth=\tikz@lib@dec@te@character@replacementwidth% }% -} +}% % Update the character parameters with the widths. \def\tikz@lib@dec@te@addwidthstoparameters{% @@ -376,13 +376,13 @@ \tikz@lib@dec@te@addmacroto@parameters{\pgfmathcounter}{\tikz@lib@dec@te@characterprewidth}% \tikz@lib@dec@te@addmacroto@parameters{\pgfmathcounter}{\tikz@lib@dec@te@characterpostwidth}% \repeatpgfmathloop% -} +}% % Get the options to applied to a character node. \def\tikz@lib@dec@te@addoptions#1{% \expandafter\def\expandafter\tikz@lib@dec@te@options\expandafter{\tikz@lib@dec@te@options,#1}% -} +}% \def\tikz@lib@dec@te@getoptions#1{% \let\tikz@lib@dec@te@lastcharactercommand=\tikz@lib@dec@te@charactercommand% @@ -433,23 +433,23 @@ \ifx\tikz@lib@dec@te@character\tikz@lib@dec@te@wordsep% \tikz@lib@dec@te@addoptions{/pgf/decoration/text effects/every word separator/.try}% \else% - \ifnum\tikz@lib@dec@te@wordcount>0\relax% - \edef\tikz@lib@dec@te@tmp{every word/.try, word \tikz@lib@dec@te@wordcount/.try}% - \expandafter\tikz@lib@dec@te@addoptions\expandafter{\tikz@lib@dec@te@tmp}% - \ifnum\tikz@lib@dec@te@lettercount>0\relax% - \edef\tikz@lib@dec@te@tmp{every letter/.try,every \tikz@lib@dec@te@lettercount\space letter/.try}% - \expandafter\tikz@lib@dec@te@addoptions\expandafter{\tikz@lib@dec@te@tmp}% - \ifnum\tikz@lib@dec@te@lettercount=1\relax% - \edef\tikz@lib@dec@te@tmp{every first letter/.try}% - \expandafter\tikz@lib@dec@te@addoptions\expandafter{\tikz@lib@dec@te@tmp}% - \fi% - \iftikz@lib@dec@te@finalletter% - \tikz@lib@dec@te@addoptions{every final letter/.try}% - \fi% - \fi% - \fi% + \ifnum\tikz@lib@dec@te@wordcount>0\relax% + \edef\tikz@lib@dec@te@tmp{every word/.try, word \tikz@lib@dec@te@wordcount/.try}% + \expandafter\tikz@lib@dec@te@addoptions\expandafter{\tikz@lib@dec@te@tmp}% + \ifnum\tikz@lib@dec@te@lettercount>0\relax% + \edef\tikz@lib@dec@te@tmp{every letter/.try,every \tikz@lib@dec@te@lettercount\space letter/.try}% + \expandafter\tikz@lib@dec@te@addoptions\expandafter{\tikz@lib@dec@te@tmp}% + \ifnum\tikz@lib@dec@te@lettercount=1\relax% + \edef\tikz@lib@dec@te@tmp{every first letter/.try}% + \expandafter\tikz@lib@dec@te@addoptions\expandafter{\tikz@lib@dec@te@tmp}% + \fi% + \iftikz@lib@dec@te@finalletter% + \tikz@lib@dec@te@addoptions{every final letter/.try}% + \fi% + \fi% + \fi% \fi% -} +}% % Called by `late positioning' of the node % to get the width of the bounding box @@ -463,7 +463,7 @@ \advance\pgf@x by-\pgfpositionnodelaterminy\relax% \fi% \xdef\tikz@lib@dec@te@characterwidth@tmp{\the\pgf@x}% -} +}% \def\tikz@lib@dec@te@drawcharacter{% @@ -473,7 +473,7 @@ \pgfutil@ifundefined{tikz@lib@dec@te@character@replacements@\meaning\tikz@lib@dec@te@character @code}{% \expandafter\node\expandafter[\tikz@lib@dec@te@options, scale=\tikz@lib@dec@scaledcharacterwidthfactor]{\hbox{\tikz@lib@dec@te@charactercommand{\tikz@lib@dec@te@character}}};% }{\tikz@lib@dec@te@drawcharacter@replacement{\tikz@lib@dec@te@character}}% -} +}% % Replace the character #1 with a character@replacement % @@ -482,7 +482,7 @@ \expandafter\tikzset\expandafter{\tikz@lib@dec@te@options}% \csname tikz@lib@dec@te@character@replacements@\meaning#1@code\endcsname% \endpgfscope% -} +}% % Get the width of the character@replacement associated with % the character #1 @@ -497,7 +497,7 @@ \endpgfpicture}% \xdef\tikz@lib@dec@te@character@replacementwidth{\the\wd\tikz@lib@dec@te@box}% \endpgfinterruptpicture% -} +}% \def\tikz@lib@dec@scaledcharacterwidthfactor{1}% @@ -508,26 +508,26 @@ % The width of the text and characters has already been calculated. \else% \let\tikz@lib@dec@te@text=\pgfdecorationtext% - % Get the chracter tokens and the total number of characters. + % Get the character tokens and the total number of characters. \tikz@lib@dec@te@preparetext% \iftikz@lib@dec@te@scaletexttopath% % OK, *scaling* text to path is easy. % Simply divide the path length by the text width to - % obtain the scaling factor which will be applied + % obtain the scaling factor which will be applied % "at the last minute"... \pgfmathdivide{\pgfdecoratedpathlength}{\tikz@lib@dec@te@textwidth}% \let\tikz@lib@dec@scaledcharacterwidthfactor=\pgfmathresult% \expandafter\pgfkeys\expandafter{\tikz@lib@dec@te@tmp}% - % ... and recalulate the (pre and post) widths. + % ... and recalculate the (pre and post) widths. \pgfmathloop \ifnum\pgfmathcounter>\tikz@lib@dec@te@charactertotalcount% \else% \pgf@x=\csname tikz@lib@dec@te@character@\pgfmathcounter @prewidth\endcsname\relax% - \pgf@x=\tikz@lib@dec@scaledcharacterwidthfactor\pgf@x% + \pgf@x=\tikz@lib@dec@scaledcharacterwidthfactor\pgf@x% \expandafter\edef\csname tikz@lib@dec@te@character@\pgfmathcounter @prewidth\endcsname{\the\pgf@x}% % \pgf@x=\csname tikz@lib@dec@te@character@\pgfmathcounter @postwidth\endcsname\relax% - \pgf@x=\tikz@lib@dec@scaledcharacterwidthfactor\pgf@x% + \pgf@x=\tikz@lib@dec@scaledcharacterwidthfactor\pgf@x% \expandafter\edef\csname tikz@lib@dec@te@character@\pgfmathcounter @postwidth\endcsname{\the\pgf@x}% \repeatpgfmathloop% % Update parameters with thewidths. @@ -536,7 +536,7 @@ \else% \iftikz@lib@dec@te@fittexttopath% % *Fitting* text is less easy. - % The pre and post width of all except the first and last characters + % The pre and post width of all except the first and last characters % must be recalculated. % Only the post width of the first character and the pre width % of the final character are scaled as these characters should be @@ -554,18 +554,18 @@ \advance\pgf@y by-\pgf@xb% % \pgfmathdivide{\the\pgf@x}{\the\pgf@y}% - \let\tikz@lib@dec@characterwidthscale=\pgfmathresult% + \let\tikz@lib@dec@characterwidthscale=\pgfmathresult% \pgfmathloop \ifnum\pgfmathcounter>\tikz@lib@dec@te@charactertotalcount\relax% \else% \ifnum\pgfmathcounter>1\relax% \pgf@x=\csname tikz@lib@dec@te@character@\pgfmathcounter @prewidth\endcsname\relax% - \pgf@x=\tikz@lib@dec@characterwidthscale\pgf@x% + \pgf@x=\tikz@lib@dec@characterwidthscale\pgf@x% \expandafter\edef\csname tikz@lib@dec@te@character@\pgfmathcounter @prewidth\endcsname{\the\pgf@x}% \fi% \ifnum\pgfmathcounter<\tikz@lib@dec@te@charactertotalcount\relax% \pgf@x=\csname tikz@lib@dec@te@character@\pgfmathcounter @postwidth\endcsname\relax% - \pgf@x=\tikz@lib@dec@characterwidthscale\pgf@x% + \pgf@x=\tikz@lib@dec@characterwidthscale\pgf@x% \expandafter\edef\csname tikz@lib@dec@te@character@\pgfmathcounter @postwidth\endcsname{\the\pgf@x}% \fi% \repeatpgfmathloop% @@ -607,17 +607,17 @@ \fi% \fi% \fi% -} +}% % Evil hack into the decoration code. % % If the path contains single move to and the `path from text' -% key is set to true. The width of the text is calcuated here +% key is set to true. The width of the text is calculated here % and the (straight line) path automatically calculated. % \def\pgf@decorate@path@check@moveto#1{% - \expandafter\pgf@decorate@path@@check@moveto#1\pgf@decorate@stop\pgf@decorate@@stop} + \expandafter\pgf@decorate@path@@check@moveto#1\pgf@decorate@stop\pgf@decorate@@stop}% \def\pgf@decorate@token@stop{\pgf@decorate@stop}% \def\pgf@decorate@path@@check@moveto#1#2#3#4\pgf@decorate@@stop#5#6{% @@ -644,19 +644,19 @@ \tikz@lib@dec@te@pathfromtextfalse% #6% \fi% -} +}% -\pgfdeclaredecoration{text effects along path}{setup}{ +\pgfdeclaredecoration{text effects along path}{setup}{% \state{setup}[width=+0pt, next state=scan, persistent precomputation={% \tikz@lib@dec@te@state@setup@precomputation% - \def\tikz@lib@dec@te@charactercount{0}% - }]{} + \def\tikz@lib@dec@te@charactercount{0}% + }]{}% % \state{scan}[width=+0pt, next state=pre token, persistent precomputation={% \tikz@lib@dec@te@advancecountmacro\tikz@lib@dec@te@charactercount{1}% % Usual switch to final state is based on distance. - % Here we also need it to be on the number of the + % Here we also need it to be on the number of the % current character. \ifnum\tikz@lib@dec@te@charactercount>\tikz@lib@dec@te@charactertotalcount\relax% \ifnum\tikz@lib@dec@te@repeattext=0\relax% @@ -668,15 +668,15 @@ \fi% % Install parameters for this character. \csname tikz@lib@dec@te@character@\tikz@lib@dec@te@charactercount\endcsname% -}]{} +}]{}% % -\state{pre token}[width=+\tikz@lib@dec@te@characterprewidth, next state=token]{} +\state{pre token}[width=+\tikz@lib@dec@te@characterprewidth, next state=token]{}% \state{token}[width=+0pt, next state=post token] {% \tikz@lib@dec@te@drawcharacter% -} -\state{post token}[width=+\tikz@lib@dec@te@characterpostwidth, next state=scan]{} -} +}% +\state{post token}[width=+\tikz@lib@dec@te@characterpostwidth, next state=scan]{}% +}% % Parse styles for individual characters @@ -688,9 +688,9 @@ \tikz@lib@dec@te@scancharacters{% \pgfkeysalso{/pgf/decoration/text effects/character {\meaning\tikz@lib@dec@te@character}/.style={#2}}% }% -} +}% -% Parse replacment code for for individual characters +% Parse replacement code for for individual characters % #1 a string of characters (e.g., aieou{\"U}{\"a"}) % #2 the code to execute to each character. % @@ -699,6 +699,6 @@ \tikz@lib@dec@te@scancharacters{% \expandafter\def\csname tikz@lib@dec@te@character@replacements@\meaning\tikz@lib@dec@te@character @code\endcsname{#2}% }% -} +}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryer.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryer.code.tex index fcacb5d4399..a2a80a5f49f 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryer.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryer.code.tex @@ -7,32 +7,32 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryer.code.tex,v 1.2 2008/02/20 11:00:42 tantau Exp $ +\ProvidesFileRCS{tikzlibraryer.code.tex} -\usetikzlibrary{shapes.geometric} +\usetikzlibrary{shapes.geometric}% % Styles for entity types: -\tikzstyle{every entity}= [] -\tikzstyle{entity}= [rectangle,draw, +\tikzset{every entity/.style= {}}% +\tikzset{entity/.style= {rectangle,draw, minimum height=2\baselineskip, - minimum width=4\baselineskip,every entity] + minimum width=4\baselineskip,every entity}}% % Styles for relationship types: -\tikzstyle{every relationship}= [] -\tikzstyle{relationship}= [diamond,draw, +\tikzset{every relationship/.style= {}}% +\tikzset{relationship/.style= {diamond,draw, minimum size=1.5\baselineskip, inner sep=1pt, - every relationship] + every relationship}}% % Styles for relationship types: -\tikzstyle{every attribute}= [] -\tikzstyle{attribute}= [minimum size=1.5\baselineskip,ellipse,draw,every attribute] -\tikzstyle{key attribute}= [font=\itshape,attribute] +\tikzset{every attribute/.style= {}}% +\tikzset{attribute/.style= {minimum size=1.5\baselineskip,ellipse,draw,every attribute}}% +\tikzset{key attribute/.style= {font=\itshape,attribute}}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex index 589c3356f65..bec6487b98a 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex @@ -7,9 +7,9 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfadings.code.tex,v 1.2 2009/11/15 18:53:00 ludewich Exp $ +\ProvidesFileRCS{tikzlibraryfadings.code.tex} -\usepgflibrary{fadings} +\usepgflibrary{fadings}% % % Environments for creating fadings @@ -19,18 +19,18 @@ \begingroup% \setbox\pgfpic=\hbox\bgroup% \tikzpicture% -} +}% \def\endtikzfadingfrompicture{% \global\let\tikz@smuggle=\tikz@fig@name% \endtikzpicture \egroup% \pgfdeclarefading{\tikz@smuggle}{\box\pgfpic}% \endgroup% -} +}% % This makes it easier to maintain compatibility with the external lib: -\def\starttikzfadingfrompicture{\tikzfadingfrompicture} -\def\stopttikzfadingfrompicture{\endtikzfadingfrompicture} +\def\starttikzfadingfrompicture{\tikzfadingfrompicture}% +\def\stopttikzfadingfrompicture{\endtikzfadingfrompicture}% \def\tikzfading[#1]{% {% @@ -43,6 +43,6 @@ {\pgfuseshading{\tikz@shading}}; }% }% - \pgfdeclarefading{\tikz@smuggle}{\box\pgfpic}% + \pgfdeclarefading{\tikz@smuggle}{\box\pgfpic}% }% -} +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex index ef6a88dc1a9..4f3dc6be3de 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex @@ -7,13 +7,13 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfit.code.tex,v 1.5 2013/07/12 17:33:49 tantau Exp $ +\ProvidesFileRCS{tikzlibraryfit.code.tex} \pgfkeys{/tikz/fit/.code=\tikz@lib@fit{#1}, /tikz/rotate fit/.code=\def\tikz@lib@fit@rotate{#1}\pgfkeysalso{/tikz/rotate=#1} -} +}% -\def\tikz@lib@fit@rotate{0} +\def\tikz@lib@fit@rotate{0}% \def\tikz@lib@fit#1{% \pgf@xb=-16000pt\relax% @@ -25,7 +25,7 @@ % % Now iterate over the coordinates \tikz@lib@fit@scan#1\pgf@stop% - % Now, let's see what has happend + % Now, let's see what has happened \ifdim\pgf@xa>\pgf@xa% % Nothing... Ok, let's just ignore this. \else% @@ -39,7 +39,7 @@ \ifdim\tikz@lib@fit@rotate pt=0pt\relax% {% \pgftransforminvert% - \pgf@pos@transform{\pgf@xa}{\pgf@ya}% + \pgf@pos@transform{\pgf@xa}{\pgf@ya}% \global\pgf@xa\pgf@xa \global\pgf@ya\pgf@ya } @@ -68,15 +68,16 @@ \pgf@x=\pgf@y% \pgf@y=.5\pgf@y% \pgfkeysalso{ + /tikz/transform shape=false, /tikz/text height/.expanded=\the\pgf@y-.5\dp\pgfnodeparttextbox, /tikz/text depth/.expanded=\the\pgf@x-\noexpand\the\ht\pgfnodeparttextbox}% \pgfkeysalso{every fit/.try}% \fi% -} +}% \def\tikz@lib@fit@scan{% \pgfutil@ifnextchar\pgf@stop{\pgfutil@gobble} - {\tikz@scan@one@point\tikz@lib@fit@scan@handle}} + {\tikz@scan@one@point\tikz@lib@fit@scan@handle}}% \def\tikz@lib@fit@scan@handle#1{% \iftikz@shapeborder% @@ -89,7 +90,7 @@ \tikz@lib@fit@adjust{#1}% \fi% \tikz@lib@fit@scan% -} +}% \def\tikz@lib@fit@adjust#1{% \ifdim\tikz@lib@fit@rotate pt=0pt\relax% @@ -108,7 +109,7 @@ \pgfsettransform\tikz@lib@fit@transform% \pgf@pos@transform{\pgf@xc}{\pgf@yc}% \global\pgf@x=\pgf@xc% - \global\pgf@y=\pgf@yc% + \global\pgf@y=\pgf@yc% }% \fi% \ifdim\pgf@x<\pgf@xa% @@ -123,7 +124,7 @@ \ifdim\pgf@y>\pgf@yb% \pgf@yb=\pgf@y% \fi% -} +}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfixedpointarithmetic.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfixedpointarithmetic.code.tex index 56d35c5008b..8560ecfb59b 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfixedpointarithmetic.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfixedpointarithmetic.code.tex @@ -7,4 +7,4 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usepgflibrary{fixedpointarithmetic} +\usepgflibrary{fixedpointarithmetic}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex index 8cd08fc5cd0..143acd9e9e8 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex @@ -8,17 +8,18 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfolding.code.tex,v 1.5 2015/08/03 08:39:35 cfeuersaenger Exp $ +\ProvidesFileRCS{tikzlibraryfolding.code.tex} % % Length of a standard line in a folding -% +% -\tikzoption{folding line length}{\pgfmathsetlength\tikz@lib@fold@length{#1}} +\tikzoption{folding line length}{\pgfmathsetlength\tikz@lib@fold@length{#1}}% \newdimen\tikz@lib@fold@length \tikz@lib@fold@length=2cm + % Faces % ----- @@ -35,7 +36,7 @@ \scope[rotate=60] #4 \endscope -} +}% \def\tikz@lib@fold@square#1#2#3#4#5{% \scope[xshift=.5\tikz@lib@fold@length,yshift=.5\tikz@lib@fold@length] @@ -53,7 +54,7 @@ \scope[rotate=90] #5 \endscope -} +}% \def\tikz@lib@fold@pentagon#1#2#3#4#5#6{% \scope[xshift=.5\tikz@lib@fold@length,yshift=0.68819\tikz@lib@fold@length] @@ -74,7 +75,7 @@ \scope[shift={(108:\tikz@lib@fold@length)},rotate=36] #6 \endscope -} +}% \def\tikz@lib@fold@hexagon#1#2#3#4#5#6#7{% \scope @@ -113,7 +114,7 @@ rotate=60] #7 \endscope -} +}% \def\tikz@lib@fold@octagon#1#2#3#4#5#6#7#8#9{% \scope[xshift=.5\tikz@lib@fold@length,yshift=1.20711\tikz@lib@fold@length] @@ -143,7 +144,7 @@ \scope[xshift=-.70711\tikz@lib@fold@length,yshift=1.70711\tikz@lib@fold@length,rotate=45] #9 \endscope -} +}% \def\tikz@lib@fold@decagon#1#2#3#4#5#6#7{% \scope[shift={(72:1.61803\tikz@lib@fold@length)}] %decagon inside a circle with radius the golden ratio has side length 1 @@ -192,7 +193,7 @@ #7 \endscope \tikz@lib@fold@decagonbis -} +}% \def\tikz@lib@fold@decagonbis#1#2#3#4{% \scope @@ -217,119 +218,119 @@ rotate=36] #4 \endscope -} +}% -\def\tikz@lib@fold@path{\draw[every fold](0,0) -- (\tikz@lib@fold@length,0pt);} -\def\tikz@lib@fold@cut@path{\draw[every cut](0,0) -- (\tikz@lib@fold@length,0pt);} +\def\tikz@lib@fold@path{\draw[every fold](0,0) -- (\tikz@lib@fold@length,0pt);}% +\def\tikz@lib@fold@cut@path{\draw[every cut](0,0) -- (\tikz@lib@fold@length,0pt);}% \def\tikz@lib@fold@ear@path{ \path[every ear] (0,0) -- (.5\tikz@lib@fold@length,.2\tikz@lib@fold@length) --(\tikz@lib@fold@length,0pt) --(0,0) -- cycle; \draw[every fold](0,0) -- (\tikz@lib@fold@length,0pt); - \draw[every cut] (0,0) -- (.5\tikz@lib@fold@length,.2\tikz@lib@fold@length) --(\tikz@lib@fold@length,0pt);} + \draw[every cut] (0,0) -- (.5\tikz@lib@fold@length,.2\tikz@lib@fold@length) --(\tikz@lib@fold@length,0pt);}% \def\tikz@lib@fold@ear@custom@left@path#1{ \path[every ear] (0,0) -- (#1:.66\tikz@lib@fold@length) -- (\tikz@lib@fold@length,0pt) --(0,0) -- cycle; \draw[every fold](0,0) -- (\tikz@lib@fold@length,0pt); - \draw[every cut] (0,0) -- (#1:.66\tikz@lib@fold@length) -- (\tikz@lib@fold@length,0pt);} + \draw[every cut] (0,0) -- (#1:.66\tikz@lib@fold@length) -- (\tikz@lib@fold@length,0pt);}% \def\tikz@lib@fold@ear@custom@right@path#1{ \path[every ear] (0,0) -- (\tikz@lib@fold@length,0pt) -- ++(-#1:-.66\tikz@lib@fold@length) --(0,0) -- cycle; \draw[every fold](0,0) -- (\tikz@lib@fold@length,0pt); - \draw[every cut] (\tikz@lib@fold@length,0pt) -- ++(-#1:-.66\tikz@lib@fold@length) -- (0,0);} + \draw[every cut] (\tikz@lib@fold@length,0pt) -- ++(-#1:-.66\tikz@lib@fold@length) -- (0,0);}% -\tikzstyle{every ear}=[] -\tikzstyle{every cut}=[] -\tikzstyle{every fold}=[help lines] +\tikzset{every ear/.style={}}% +\tikzset{every cut/.style={}}% +\tikzset{every fold/.style={help lines}}% -\tikzoption{face 1}{\def\tikz@lib@fold@face@A{#1}} -\tikzoption{face 2}{\def\tikz@lib@fold@face@B{#1}} -\tikzoption{face 3}{\def\tikz@lib@fold@face@C{#1}} -\tikzoption{face 4}{\def\tikz@lib@fold@face@D{#1}} -\tikzoption{face 5}{\def\tikz@lib@fold@face@E{#1}} -\tikzoption{face 6}{\def\tikz@lib@fold@face@F{#1}} -\tikzoption{face 7}{\def\tikz@lib@fold@face@G{#1}} -\tikzoption{face 8}{\def\tikz@lib@fold@face@H{#1}} -\tikzoption{face 9}{\def\tikz@lib@fold@face@I{#1}} -\tikzoption{face 10}{\def\tikz@lib@fold@face@J{#1}} -\tikzoption{face 11}{\def\tikz@lib@fold@face@K{#1}} -\tikzoption{face 12}{\def\tikz@lib@fold@face@L{#1}} -\tikzoption{face 13}{\def\tikz@lib@fold@face@M{#1}} -\tikzoption{face 14}{\def\tikz@lib@fold@face@N{#1}} -\tikzoption{face 15}{\def\tikz@lib@fold@face@O{#1}} -\tikzoption{face 16}{\def\tikz@lib@fold@face@P{#1}} -\tikzoption{face 17}{\def\tikz@lib@fold@face@Q{#1}} -\tikzoption{face 18}{\def\tikz@lib@fold@face@R{#1}} -\tikzoption{face 19}{\def\tikz@lib@fold@face@S{#1}} -\tikzoption{face 20}{\def\tikz@lib@fold@face@T{#1}} -\tikzoption{face 21}{\def\tikz@lib@fold@face@U{#1}} -\tikzoption{face 22}{\def\tikz@lib@fold@face@V{#1}} -\tikzoption{face 23}{\def\tikz@lib@fold@face@W{#1}} -\tikzoption{face 24}{\def\tikz@lib@fold@face@X{#1}} -\tikzoption{face 25}{\def\tikz@lib@fold@face@Y{#1}} -\tikzoption{face 26}{\def\tikz@lib@fold@face@Z{#1}} -\tikzoption{face 27}{\def\tikz@lib@fold@face@AA{#1}} -\tikzoption{face 28}{\def\tikz@lib@fold@face@AB{#1}} -\tikzoption{face 29}{\def\tikz@lib@fold@face@AC{#1}} -\tikzoption{face 30}{\def\tikz@lib@fold@face@AD{#1}} -\tikzoption{face 31}{\def\tikz@lib@fold@face@AE{#1}} -\tikzoption{face 32}{\def\tikz@lib@fold@face@AF{#1}} -\tikzoption{face 33}{\def\tikz@lib@fold@face@AG{#1}} -\tikzoption{face 34}{\def\tikz@lib@fold@face@AH{#1}} -\tikzoption{face 35}{\def\tikz@lib@fold@face@AI{#1}} -\tikzoption{face 36}{\def\tikz@lib@fold@face@AJ{#1}} -\tikzoption{face 37}{\def\tikz@lib@fold@face@AK{#1}} -\tikzoption{face 38}{\def\tikz@lib@fold@face@AL{#1}} -\tikzoption{face 39}{\def\tikz@lib@fold@face@AM{#1}} -\tikzoption{face 40}{\def\tikz@lib@fold@face@AN{#1}} -\tikzoption{face 41}{\def\tikz@lib@fold@face@AO{#1}} -\tikzoption{face 42}{\def\tikz@lib@fold@face@AP{#1}} -\tikzoption{face 43}{\def\tikz@lib@fold@face@AQ{#1}} -\tikzoption{face 44}{\def\tikz@lib@fold@face@AR{#1}} -\tikzoption{face 45}{\def\tikz@lib@fold@face@AS{#1}} -\tikzoption{face 46}{\def\tikz@lib@fold@face@AT{#1}} -\tikzoption{face 47}{\def\tikz@lib@fold@face@AU{#1}} -\tikzoption{face 48}{\def\tikz@lib@fold@face@AV{#1}} -\tikzoption{face 49}{\def\tikz@lib@fold@face@AW{#1}} -\tikzoption{face 50}{\def\tikz@lib@fold@face@AX{#1}} -\tikzoption{face 51}{\def\tikz@lib@fold@face@AY{#1}} -\tikzoption{face 52}{\def\tikz@lib@fold@face@AZ{#1}} -\tikzoption{face 53}{\def\tikz@lib@fold@face@BA{#1}} -\tikzoption{face 54}{\def\tikz@lib@fold@face@BB{#1}} -\tikzoption{face 55}{\def\tikz@lib@fold@face@BC{#1}} -\tikzoption{face 56}{\def\tikz@lib@fold@face@BD{#1}} -\tikzoption{face 57}{\def\tikz@lib@fold@face@BE{#1}} -\tikzoption{face 58}{\def\tikz@lib@fold@face@BF{#1}} -\tikzoption{face 59}{\def\tikz@lib@fold@face@BG{#1}} -\tikzoption{face 60}{\def\tikz@lib@fold@face@BH{#1}} -\tikzoption{face 61}{\def\tikz@lib@fold@face@BI{#1}} -\tikzoption{face 62}{\def\tikz@lib@fold@face@BJ{#1}} -\tikzoption{face 63}{\def\tikz@lib@fold@face@BK{#1}} -\tikzoption{face 64}{\def\tikz@lib@fold@face@BL{#1}} -\tikzoption{face 65}{\def\tikz@lib@fold@face@BM{#1}} -\tikzoption{face 66}{\def\tikz@lib@fold@face@BN{#1}} -\tikzoption{face 67}{\def\tikz@lib@fold@face@BO{#1}} -\tikzoption{face 68}{\def\tikz@lib@fold@face@BP{#1}} -\tikzoption{face 69}{\def\tikz@lib@fold@face@BQ{#1}} -\tikzoption{face 70}{\def\tikz@lib@fold@face@BR{#1}} -\tikzoption{face 71}{\def\tikz@lib@fold@face@BS{#1}} -\tikzoption{face 72}{\def\tikz@lib@fold@face@BT{#1}} -\tikzoption{face 73}{\def\tikz@lib@fold@face@BU{#1}} -\tikzoption{face 74}{\def\tikz@lib@fold@face@BV{#1}} -\tikzoption{face 75}{\def\tikz@lib@fold@face@BW{#1}} -\tikzoption{face 76}{\def\tikz@lib@fold@face@BX{#1}} -\tikzoption{face 77}{\def\tikz@lib@fold@face@BY{#1}} -\tikzoption{face 78}{\def\tikz@lib@fold@face@BZ{#1}} -\tikzoption{face 79}{\def\tikz@lib@fold@face@CA{#1}} -\tikzoption{face 80}{\def\tikz@lib@fold@face@CB{#1}} -\tikzoption{face 81}{\def\tikz@lib@fold@face@CC{#1}} -\tikzoption{face 82}{\def\tikz@lib@fold@face@CD{#1}} -\tikzoption{face 83}{\def\tikz@lib@fold@face@CE{#1}} -\tikzoption{face 84}{\def\tikz@lib@fold@face@CF{#1}} -\tikzoption{face 85}{\def\tikz@lib@fold@face@CG{#1}} -\tikzoption{face 86}{\def\tikz@lib@fold@face@CH{#1}} -\tikzoption{face 87}{\def\tikz@lib@fold@face@CI{#1}} -\tikzoption{face 88}{\def\tikz@lib@fold@face@CJ{#1}} -\tikzoption{face 89}{\def\tikz@lib@fold@face@CK{#1}} -\tikzoption{face 90}{\def\tikz@lib@fold@face@CL{#1}} -\tikzoption{face 91}{\def\tikz@lib@fold@face@CM{#1}} -\tikzoption{face 92}{\def\tikz@lib@fold@face@CN{#1}} +\tikzoption{face 1}{\def\tikz@lib@fold@face@A{#1}}% +\tikzoption{face 2}{\def\tikz@lib@fold@face@B{#1}}% +\tikzoption{face 3}{\def\tikz@lib@fold@face@C{#1}}% +\tikzoption{face 4}{\def\tikz@lib@fold@face@D{#1}}% +\tikzoption{face 5}{\def\tikz@lib@fold@face@E{#1}}% +\tikzoption{face 6}{\def\tikz@lib@fold@face@F{#1}}% +\tikzoption{face 7}{\def\tikz@lib@fold@face@G{#1}}% +\tikzoption{face 8}{\def\tikz@lib@fold@face@H{#1}}% +\tikzoption{face 9}{\def\tikz@lib@fold@face@I{#1}}% +\tikzoption{face 10}{\def\tikz@lib@fold@face@J{#1}}% +\tikzoption{face 11}{\def\tikz@lib@fold@face@K{#1}}% +\tikzoption{face 12}{\def\tikz@lib@fold@face@L{#1}}% +\tikzoption{face 13}{\def\tikz@lib@fold@face@M{#1}}% +\tikzoption{face 14}{\def\tikz@lib@fold@face@N{#1}}% +\tikzoption{face 15}{\def\tikz@lib@fold@face@O{#1}}% +\tikzoption{face 16}{\def\tikz@lib@fold@face@P{#1}}% +\tikzoption{face 17}{\def\tikz@lib@fold@face@Q{#1}}% +\tikzoption{face 18}{\def\tikz@lib@fold@face@R{#1}}% +\tikzoption{face 19}{\def\tikz@lib@fold@face@S{#1}}% +\tikzoption{face 20}{\def\tikz@lib@fold@face@T{#1}}% +\tikzoption{face 21}{\def\tikz@lib@fold@face@U{#1}}% +\tikzoption{face 22}{\def\tikz@lib@fold@face@V{#1}}% +\tikzoption{face 23}{\def\tikz@lib@fold@face@W{#1}}% +\tikzoption{face 24}{\def\tikz@lib@fold@face@X{#1}}% +\tikzoption{face 25}{\def\tikz@lib@fold@face@Y{#1}}% +\tikzoption{face 26}{\def\tikz@lib@fold@face@Z{#1}}% +\tikzoption{face 27}{\def\tikz@lib@fold@face@AA{#1}}% +\tikzoption{face 28}{\def\tikz@lib@fold@face@AB{#1}}% +\tikzoption{face 29}{\def\tikz@lib@fold@face@AC{#1}}% +\tikzoption{face 30}{\def\tikz@lib@fold@face@AD{#1}}% +\tikzoption{face 31}{\def\tikz@lib@fold@face@AE{#1}}% +\tikzoption{face 32}{\def\tikz@lib@fold@face@AF{#1}}% +\tikzoption{face 33}{\def\tikz@lib@fold@face@AG{#1}}% +\tikzoption{face 34}{\def\tikz@lib@fold@face@AH{#1}}% +\tikzoption{face 35}{\def\tikz@lib@fold@face@AI{#1}}% +\tikzoption{face 36}{\def\tikz@lib@fold@face@AJ{#1}}% +\tikzoption{face 37}{\def\tikz@lib@fold@face@AK{#1}}% +\tikzoption{face 38}{\def\tikz@lib@fold@face@AL{#1}}% +\tikzoption{face 39}{\def\tikz@lib@fold@face@AM{#1}}% +\tikzoption{face 40}{\def\tikz@lib@fold@face@AN{#1}}% +\tikzoption{face 41}{\def\tikz@lib@fold@face@AO{#1}}% +\tikzoption{face 42}{\def\tikz@lib@fold@face@AP{#1}}% +\tikzoption{face 43}{\def\tikz@lib@fold@face@AQ{#1}}% +\tikzoption{face 44}{\def\tikz@lib@fold@face@AR{#1}}% +\tikzoption{face 45}{\def\tikz@lib@fold@face@AS{#1}}% +\tikzoption{face 46}{\def\tikz@lib@fold@face@AT{#1}}% +\tikzoption{face 47}{\def\tikz@lib@fold@face@AU{#1}}% +\tikzoption{face 48}{\def\tikz@lib@fold@face@AV{#1}}% +\tikzoption{face 49}{\def\tikz@lib@fold@face@AW{#1}}% +\tikzoption{face 50}{\def\tikz@lib@fold@face@AX{#1}}% +\tikzoption{face 51}{\def\tikz@lib@fold@face@AY{#1}}% +\tikzoption{face 52}{\def\tikz@lib@fold@face@AZ{#1}}% +\tikzoption{face 53}{\def\tikz@lib@fold@face@BA{#1}}% +\tikzoption{face 54}{\def\tikz@lib@fold@face@BB{#1}}% +\tikzoption{face 55}{\def\tikz@lib@fold@face@BC{#1}}% +\tikzoption{face 56}{\def\tikz@lib@fold@face@BD{#1}}% +\tikzoption{face 57}{\def\tikz@lib@fold@face@BE{#1}}% +\tikzoption{face 58}{\def\tikz@lib@fold@face@BF{#1}}% +\tikzoption{face 59}{\def\tikz@lib@fold@face@BG{#1}}% +\tikzoption{face 60}{\def\tikz@lib@fold@face@BH{#1}}% +\tikzoption{face 61}{\def\tikz@lib@fold@face@BI{#1}}% +\tikzoption{face 62}{\def\tikz@lib@fold@face@BJ{#1}}% +\tikzoption{face 63}{\def\tikz@lib@fold@face@BK{#1}}% +\tikzoption{face 64}{\def\tikz@lib@fold@face@BL{#1}}% +\tikzoption{face 65}{\def\tikz@lib@fold@face@BM{#1}}% +\tikzoption{face 66}{\def\tikz@lib@fold@face@BN{#1}}% +\tikzoption{face 67}{\def\tikz@lib@fold@face@BO{#1}}% +\tikzoption{face 68}{\def\tikz@lib@fold@face@BP{#1}}% +\tikzoption{face 69}{\def\tikz@lib@fold@face@BQ{#1}}% +\tikzoption{face 70}{\def\tikz@lib@fold@face@BR{#1}}% +\tikzoption{face 71}{\def\tikz@lib@fold@face@BS{#1}}% +\tikzoption{face 72}{\def\tikz@lib@fold@face@BT{#1}}% +\tikzoption{face 73}{\def\tikz@lib@fold@face@BU{#1}}% +\tikzoption{face 74}{\def\tikz@lib@fold@face@BV{#1}}% +\tikzoption{face 75}{\def\tikz@lib@fold@face@BW{#1}}% +\tikzoption{face 76}{\def\tikz@lib@fold@face@BX{#1}}% +\tikzoption{face 77}{\def\tikz@lib@fold@face@BY{#1}}% +\tikzoption{face 78}{\def\tikz@lib@fold@face@BZ{#1}}% +\tikzoption{face 79}{\def\tikz@lib@fold@face@CA{#1}}% +\tikzoption{face 80}{\def\tikz@lib@fold@face@CB{#1}}% +\tikzoption{face 81}{\def\tikz@lib@fold@face@CC{#1}}% +\tikzoption{face 82}{\def\tikz@lib@fold@face@CD{#1}}% +\tikzoption{face 83}{\def\tikz@lib@fold@face@CE{#1}}% +\tikzoption{face 84}{\def\tikz@lib@fold@face@CF{#1}}% +\tikzoption{face 85}{\def\tikz@lib@fold@face@CG{#1}}% +\tikzoption{face 86}{\def\tikz@lib@fold@face@CH{#1}}% +\tikzoption{face 87}{\def\tikz@lib@fold@face@CI{#1}}% +\tikzoption{face 88}{\def\tikz@lib@fold@face@CJ{#1}}% +\tikzoption{face 89}{\def\tikz@lib@fold@face@CK{#1}}% +\tikzoption{face 90}{\def\tikz@lib@fold@face@CL{#1}}% +\tikzoption{face 91}{\def\tikz@lib@fold@face@CM{#1}}% +\tikzoption{face 92}{\def\tikz@lib@fold@face@CN{#1}}% \let\tikz@lib@fold@face@A=\pgfutil@empty @@ -426,102 +427,102 @@ \let\tikz@lib@fold@face@CN=\pgfutil@empty -\tikzstyle{numbered faces}=[% - face 1={\node{1};}, - face 2={\node{2};}, - face 3={\node{3};}, - face 4={\node{4};}, - face 5={\node{5};}, - face 6={\node{6};}, - face 7={\node{7};}, - face 8={\node{8};}, - face 9={\node{9};}, - face 10={\node{10};}, - face 11={\node{11};}, - face 12={\node{12};}, - face 13={\node{13};}, - face 14={\node{14};}, - face 15={\node{15};}, - face 16={\node{16};}, - face 17={\node{17};}, - face 18={\node{18};}, - face 19={\node{19};}, - face 20={\node{20};}, - face 21={\node{21};}, - face 22={\node{22};}, - face 23={\node{23};}, - face 24={\node{24};}, - face 25={\node{25};}, - face 26={\node{26};}, - face 27={\node{27};}, - face 28={\node{28};}, - face 29={\node{29};}, - face 30={\node{30};}, - face 31={\node{31};}, - face 32={\node{32};}, - face 33={\node{33};}, - face 34={\node{34};}, - face 35={\node{35};}, - face 36={\node{36};}, - face 37={\node{37};}, - face 38={\node{38};}, - face 39={\node{39};}, - face 40={\node{40};}, - face 41={\node{41};}, - face 42={\node{42};}, - face 43={\node{43};}, - face 44={\node{44};}, - face 45={\node{45};}, - face 46={\node{46};}, - face 47={\node{47};}, - face 48={\node{48};}, - face 49={\node{49};}, - face 50={\node{50};}, - face 51={\node{51};}, - face 52={\node{52};}, - face 53={\node{53};}, - face 54={\node{54};}, - face 55={\node{55};}, - face 56={\node{56};}, - face 57={\node{57};}, - face 58={\node{58};}, - face 59={\node{59};}, - face 60={\node{60};}, - face 61={\node{61};}, - face 62={\node{62};}, - face 63={\node{63};}, - face 64={\node{64};}, - face 65={\node{65};}, - face 66={\node{66};}, - face 67={\node{67};}, - face 68={\node{68};}, - face 69={\node{69};}, - face 70={\node{70};}, - face 71={\node{71};}, - face 72={\node{72};}, - face 73={\node{73};}, - face 74={\node{74};}, - face 75={\node{75};}, - face 76={\node{76};}, - face 77={\node{77};}, - face 78={\node{78};}, - face 79={\node{79};}, - face 80={\node{80};}, - face 81={\node{81};}, - face 82={\node{82};}, - face 83={\node{83};}, - face 84={\node{84};}, - face 85={\node{85};}, - face 86={\node{86};}, - face 87={\node{87};}, - face 88={\node{88};}, - face 89={\node{89};}, - face 90={\node{90};}, - face 91={\node{91};}, - face 92={\node{92};}] - +\tikzset{numbered faces/.style={% + face 1={\node{1};}, + face 2={\node{2};}, + face 3={\node{3};}, + face 4={\node{4};}, + face 5={\node{5};}, + face 6={\node{6};}, + face 7={\node{7};}, + face 8={\node{8};}, + face 9={\node{9};}, + face 10={\node{10};}, + face 11={\node{11};}, + face 12={\node{12};}, + face 13={\node{13};}, + face 14={\node{14};}, + face 15={\node{15};}, + face 16={\node{16};}, + face 17={\node{17};}, + face 18={\node{18};}, + face 19={\node{19};}, + face 20={\node{20};}, + face 21={\node{21};}, + face 22={\node{22};}, + face 23={\node{23};}, + face 24={\node{24};}, + face 25={\node{25};}, + face 26={\node{26};}, + face 27={\node{27};}, + face 28={\node{28};}, + face 29={\node{29};}, + face 30={\node{30};}, + face 31={\node{31};}, + face 32={\node{32};}, + face 33={\node{33};}, + face 34={\node{34};}, + face 35={\node{35};}, + face 36={\node{36};}, + face 37={\node{37};}, + face 38={\node{38};}, + face 39={\node{39};}, + face 40={\node{40};}, + face 41={\node{41};}, + face 42={\node{42};}, + face 43={\node{43};}, + face 44={\node{44};}, + face 45={\node{45};}, + face 46={\node{46};}, + face 47={\node{47};}, + face 48={\node{48};}, + face 49={\node{49};}, + face 50={\node{50};}, + face 51={\node{51};}, + face 52={\node{52};}, + face 53={\node{53};}, + face 54={\node{54};}, + face 55={\node{55};}, + face 56={\node{56};}, + face 57={\node{57};}, + face 58={\node{58};}, + face 59={\node{59};}, + face 60={\node{60};}, + face 61={\node{61};}, + face 62={\node{62};}, + face 63={\node{63};}, + face 64={\node{64};}, + face 65={\node{65};}, + face 66={\node{66};}, + face 67={\node{67};}, + face 68={\node{68};}, + face 69={\node{69};}, + face 70={\node{70};}, + face 71={\node{71};}, + face 72={\node{72};}, + face 73={\node{73};}, + face 74={\node{74};}, + face 75={\node{75};}, + face 76={\node{76};}, + face 77={\node{77};}, + face 78={\node{78};}, + face 79={\node{79};}, + face 80={\node{80};}, + face 81={\node{81};}, + face 82={\node{82};}, + face 83={\node{83};}, + face 84={\node{84};}, + face 85={\node{85};}, + face 86={\node{86};}, + face 87={\node{87};}, + face 88={\node{88};}, + face 89={\node{89};}, + face 90={\node{90};}, + face 91={\node{91};}, + face 92={\node{92};}}}% + % The foldings defined here: - + \tikzset{ pics/dodecahedron folding/.style = {code=\tikzfoldingdodecahedron[];}, pics/tetrahedron folding/.style = {code=\tikzfoldingtetrahedron[];}, @@ -538,13 +539,13 @@ pics/rhombicuboctahedron folding/.style = {code=\tikzfoldingrhombicuboctahedron[];}, pics/snub cube folding/.style = {code=\tikzfoldingsnubcube[];}, pics/icosidodecahedron folding/.style = {code=\tikzfoldingicosidodecahedron[];} -} +}% + - % Platonic solids % --------------- - + \def\tikzfoldingdodecahedron#1[#2]#3;{% \begingroup% \tikzset{#2}% @@ -633,9 +634,9 @@ {\tikz@lib@fold@cut@path} } \endgroup -} +}% -%alternative dodecahedron: larger format possible +%alternative dodecahedron: larger format possible \def\tikzfoldingalternatedodecahedron#1[#2]#3;{% \begingroup% @@ -645,90 +646,90 @@ {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@B} {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@pentagon - {\tikz@lib@fold@face@C} - {\tikz@lib@fold@pentagon - {\tikz@lib@fold@face@D} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@pentagon - {\tikz@lib@fold@face@E} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@pentagon + {\tikz@lib@fold@face@C} + {\tikz@lib@fold@pentagon + {\tikz@lib@fold@face@D} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@pentagon + {\tikz@lib@fold@face@E} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@pentagon + {\tikz@lib@fold@face@F} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@pentagon + {\tikz@lib@fold@face@G} {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@pentagon - {\tikz@lib@fold@face@F} - {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@pentagon - {\tikz@lib@fold@face@G} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@ear@path} - } - } + } + } } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@pentagon {\tikz@lib@fold@face@H} - {\tikz@lib@fold@pentagon - {\tikz@lib@fold@face@I} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@pentagon - {\tikz@lib@fold@face@J} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@pentagon - {\tikz@lib@fold@face@K} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@pentagon - {\tikz@lib@fold@face@L} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - } + {\tikz@lib@fold@pentagon + {\tikz@lib@fold@face@I} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@pentagon + {\tikz@lib@fold@face@J} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@pentagon + {\tikz@lib@fold@face@K} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@pentagon + {\tikz@lib@fold@face@L} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + } } {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} \endgroup -} +}% -%tetrahedron +%tetrahedron \def\tikzfoldingtetrahedron#1[#2]#3;{% \begingroup% @@ -737,15 +738,15 @@ {\tikz@lib@fold@face@A} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@B} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@C} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@D} @@ -754,53 +755,53 @@ {\tikz@lib@fold@cut@path} } \endgroup -} +}% -%cube +%cube \def\tikzfoldingcube#1[#2]#3;{% \begingroup% \tikzset{#2}% \tikz@lib@fold@square{\tikz@lib@fold@face@A} { - \tikz@lib@fold@square{\tikz@lib@fold@face@B} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + \tikz@lib@fold@square{\tikz@lib@fold@face@B} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } { - \tikz@lib@fold@square{\tikz@lib@fold@face@C} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + \tikz@lib@fold@square{\tikz@lib@fold@face@C} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } { - \tikz@lib@fold@square{\tikz@lib@fold@face@D} - { - \tikz@lib@fold@square{\tikz@lib@fold@face@E} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + \tikz@lib@fold@square{\tikz@lib@fold@face@D} + { + \tikz@lib@fold@square{\tikz@lib@fold@face@E} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } { - \tikz@lib@fold@square{\tikz@lib@fold@face@F} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + \tikz@lib@fold@square{\tikz@lib@fold@face@F} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } \endgroup -} +}% -%octahedron +%octahedron \def\tikzfoldingoctahedron#1[#2]#3;{% \begingroup% @@ -809,47 +810,47 @@ {\tikz@lib@fold@face@A} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@B} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@C} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@D} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@C} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@D} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle {\tikz@lib@fold@face@E} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } + {\tikz@lib@fold@ear@path} + } } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@F} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@G} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@H} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@H} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } } \endgroup -} +}% -%icosahedron +%icosahedron \def\tikzfoldingicosahedron#1[#2]#3;{% \begingroup% @@ -858,109 +859,109 @@ {\tikz@lib@fold@face@A} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@B} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@C} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@D} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@E} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@F} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@G} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - } - } + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@C} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@D} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@E} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@F} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@G} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + } + } {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@H} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@I} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@J} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@K} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@L} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@M} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@N} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - } - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@I} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@J} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@K} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@L} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@M} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@N} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + } + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@O} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@P} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@Q} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@R} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@S} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@P} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@Q} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@R} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@S} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle {\tikz@lib@fold@face@T} {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - } - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + } + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } \endgroup -} +}% % Archimedean solids % ------------------ -%truncated tetrahedron +%truncated tetrahedron \def\tikzfoldingtruncatedtetrahedron#1[#2]#3;{% \begingroup% @@ -969,58 +970,58 @@ {\tikz@lib@fold@face@A} {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@B} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@C} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@D} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@E} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@hexagon {\tikz@lib@fold@face@F} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@G} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@G} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@H} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } \endgroup -} +}% -%cuboctahedron +%cuboctahedron \def\tikzfoldingcuboctahedron#1[#2]#3;{% \begingroup% @@ -1029,80 +1030,80 @@ {\tikz@lib@fold@face@A} {\tikz@lib@fold@triangle {\tikz@lib@fold@face@B} - {\tikz@lib@fold@square - {\tikz@lib@fold@face@C} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@D} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@square - {\tikz@lib@fold@face@E} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@square + {\tikz@lib@fold@face@C} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@D} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@square + {\tikz@lib@fold@face@E} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } - } - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@F} - {\tikz@lib@fold@square - {\tikz@lib@fold@face@G} + {\tikz@lib@fold@square + {\tikz@lib@fold@face@G} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@ear@path} {\tikz@lib@fold@path} {\tikz@lib@fold@ear@path} } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@H} - {\tikz@lib@fold@square - {\tikz@lib@fold@face@I} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@J} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@square + {\tikz@lib@fold@face@I} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@J} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@triangle {\tikz@lib@fold@face@K} - {\tikz@lib@fold@square - {\tikz@lib@fold@face@L} - {\tikz@lib@fold@triangle - {\tikz@lib@fold@face@M} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle + {\tikz@lib@fold@square + {\tikz@lib@fold@face@L} + {\tikz@lib@fold@triangle + {\tikz@lib@fold@face@M} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle {\tikz@lib@fold@face@N} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } \endgroup -} +}% %truncated cube @@ -1113,104 +1114,104 @@ {\tikz@lib@fold@face@A} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@B} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@triangle + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@triangle {\tikz@lib@fold@face@C} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@triangle + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@triangle {\tikz@lib@fold@face@D} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle {\tikz@lib@fold@face@E} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@triangle + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@triangle {\tikz@lib@fold@face@F} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@G} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@triangle + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@triangle {\tikz@lib@fold@face@H} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@I} - {\tikz@lib@fold@octagon + {\tikz@lib@fold@octagon {\tikz@lib@fold@face@J} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@triangle + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@triangle {\tikz@lib@fold@face@K} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle {\tikz@lib@fold@face@L} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} } - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@octagon {\tikz@lib@fold@face@M} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@triangle + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@triangle {\tikz@lib@fold@face@N} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} } - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} \endgroup -} +}% %truncated octahedron @@ -1319,7 +1320,7 @@ {\tikz@lib@fold@ear@path} {\tikz@lib@fold@cut@path} \endgroup -} +}% %rhombicuboctahedron @@ -1476,7 +1477,7 @@ {\tikz@lib@fold@ear@path} } \endgroup -} +}% %truncated cuboctahedron @@ -1489,88 +1490,88 @@ {\tikz@lib@fold@face@B} {\tikz@lib@fold@square {\tikz@lib@fold@face@C} - {\tikz@lib@fold@octagon - {\tikz@lib@fold@face@D} - {\tikz@lib@fold@square - {\tikz@lib@fold@face@E} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@hexagon - {\tikz@lib@fold@face@F} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@custom@right@path{15}} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@hexagon - {\tikz@lib@fold@face@G} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@custom@left@path{15}} - {\tikz@lib@fold@ear@path} - } - } - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@square - {\tikz@lib@fold@face@H} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@square - {\tikz@lib@fold@face@I} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@hexagon - {\tikz@lib@fold@face@J} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@custom@right@path{15}} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@custom@left@path{15}} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@hexagon - {\tikz@lib@fold@face@K} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@custom@right@path{15}} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@custom@left@path{15}} - {\tikz@lib@fold@ear@path} - } + {\tikz@lib@fold@octagon + {\tikz@lib@fold@face@D} + {\tikz@lib@fold@square + {\tikz@lib@fold@face@E} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@hexagon + {\tikz@lib@fold@face@F} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@custom@right@path{15}} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@hexagon + {\tikz@lib@fold@face@G} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@custom@left@path{15}} + {\tikz@lib@fold@ear@path} + } + } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@square + {\tikz@lib@fold@face@H} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@square + {\tikz@lib@fold@face@I} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@hexagon + {\tikz@lib@fold@face@J} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@custom@right@path{15}} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@custom@left@path{15}} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@hexagon + {\tikz@lib@fold@face@K} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@custom@right@path{15}} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@custom@left@path{15}} + {\tikz@lib@fold@ear@path} + } } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@L} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@M} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} } @@ -1587,86 +1588,86 @@ {\tikz@lib@fold@face@O} {\tikz@lib@fold@square {\tikz@lib@fold@face@P} - {\tikz@lib@fold@octagon - {\tikz@lib@fold@face@Q} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@square - {\tikz@lib@fold@face@R} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@square - {\tikz@lib@fold@face@S} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@hexagon - {\tikz@lib@fold@face@T} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@custom@right@path{15}} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@custom@left@path{15}} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@hexagon - {\tikz@lib@fold@face@U} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@ear@custom@right@path{15}} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@custom@left@path{15}} - {\tikz@lib@fold@ear@path} - } + {\tikz@lib@fold@octagon + {\tikz@lib@fold@face@Q} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@square + {\tikz@lib@fold@face@R} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@square + {\tikz@lib@fold@face@S} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@hexagon + {\tikz@lib@fold@face@T} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@custom@right@path{15}} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@custom@left@path{15}} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@hexagon + {\tikz@lib@fold@face@U} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@ear@custom@right@path{15}} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@custom@left@path{15}} + {\tikz@lib@fold@ear@path} + } } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@V} - {\tikz@lib@fold@octagon - {\tikz@lib@fold@face@W} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@octagon + {\tikz@lib@fold@face@W} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} {\tikz@lib@fold@path} {\tikz@lib@fold@cut@path} {\tikz@lib@fold@square {\tikz@lib@fold@face@X} - {\tikz@lib@fold@octagon - {\tikz@lib@fold@face@Y} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@octagon + {\tikz@lib@fold@face@Y} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } {\tikz@lib@fold@cut@path} } @@ -1680,9 +1681,9 @@ {\tikz@lib@fold@ear@path} } \endgroup -} +}% -%snub cube +%snub cube \def\tikzfoldingsnubcube#1[#2]#3;{% \begingroup% @@ -1690,200 +1691,200 @@ \tikz@lib@fold@square{\tikz@lib@fold@face@A} { \tikz@lib@fold@triangle{\tikz@lib@fold@face@B} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@C} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@D} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - { - \tikz@lib@fold@square{\tikz@lib@fold@face@E} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@F} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@G} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@H} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@I} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@J} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@C} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@D} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + { + \tikz@lib@fold@square{\tikz@lib@fold@face@E} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@F} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@G} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@H} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@I} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@J} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@K} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@L} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@M} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - { - \tikz@lib@fold@square{\tikz@lib@fold@face@N} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@O} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@P} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@Q} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@R} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@S} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@L} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@M} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + { + \tikz@lib@fold@square{\tikz@lib@fold@face@N} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@O} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@P} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@Q} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@R} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@S} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@T} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@U} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@V} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - { - \tikz@lib@fold@square{\tikz@lib@fold@face@W} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@X} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@Y} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@Z} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@AA} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@AB} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@U} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@V} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + { + \tikz@lib@fold@square{\tikz@lib@fold@face@W} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@X} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@Y} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@Z} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@AA} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@AB} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } { \tikz@lib@fold@triangle{\tikz@lib@fold@face@AC} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@AD} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@AE} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - { - \tikz@lib@fold@square{\tikz@lib@fold@face@AF} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@AG} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@AH} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@AI} - { - \tikz@lib@fold@square{\tikz@lib@fold@face@AJ} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@AK} - {\tikz@lib@fold@ear@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@ear@path} - } - {\tikz@lib@fold@path} - { - \tikz@lib@fold@triangle{\tikz@lib@fold@face@AL} - {\tikz@lib@fold@cut@path} - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - } - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} - } - {\tikz@lib@fold@path} - {\tikz@lib@fold@cut@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@AD} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@AE} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + { + \tikz@lib@fold@square{\tikz@lib@fold@face@AF} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@AG} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@AH} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@AI} + { + \tikz@lib@fold@square{\tikz@lib@fold@face@AJ} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@AK} + {\tikz@lib@fold@ear@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@ear@path} + } + {\tikz@lib@fold@path} + { + \tikz@lib@fold@triangle{\tikz@lib@fold@face@AL} + {\tikz@lib@fold@cut@path} + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + } + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} + } + {\tikz@lib@fold@path} + {\tikz@lib@fold@cut@path} } \endgroup -} +}% % icosidodecahedron @@ -2074,4 +2075,4 @@ {\tikz@lib@fold@cut@path} } \endgroup -} +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfpu.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfpu.code.tex index eda3ce51996..ad8d2671ee8 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfpu.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryfpu.code.tex @@ -7,4 +7,4 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usepgflibrary{fpu} +\usepgflibrary{fpu}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryintersections.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryintersections.code.tex index 361d961339b..f3e4f94144b 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryintersections.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryintersections.code.tex @@ -7,28 +7,28 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usepgflibrary{intersections} +\usepgflibrary{intersections}% % FIXME : the 'name path global' is not reset properly - and some % following 'name path' will append to it rather that reset it. \pgfkeys{% /tikz/name path global/.code={% - % reset any "old" variables inheritted from some other path - % - we do not accidentally want to append to an old path with the - % same name (or if someone provided the option twice)... - \expandafter\global\expandafter\let\csname tikz@intersect@path@name@#1\endcsname=\relax - \tikz@key@name@path{#1}{\gdef}% + % reset any "old" variables inherited from some other path + % - we do not accidentally want to append to an old path with the + % same name (or if someone provided the option twice)... + \expandafter\global\expandafter\let\csname tikz@intersect@path@name@#1\endcsname=\relax + \tikz@key@name@path{#1}{\gdef}% }, /tikz/name path local/.code={% \pgfkeys{/tikz/name path={#1}}% }, /tikz/name path/.code={% - % hm. Do we need this "reset old option" as in 'name path global' - % for this case as well? - \tikz@key@name@path{#1}{\def}% + % hm. Do we need this "reset old option" as in 'name path global' + % for this case as well? + \tikz@key@name@path{#1}{\def}% }, -} +}% % #1: the name to assign. % #2: one of '\def' or '\gdef'. @@ -51,27 +51,27 @@ \expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter\tikz@marshal% \expandafter\expandafter\expandafter{\expandafter\tikz@marshal\expandafter{\tikz@intersect@temppath}}% \expandafter\pgfutil@g@addto@macro\expandafter\tikz@intersect@namedpaths\expandafter{\tikz@marshal}% -} +}% \let\tikz@finish@orig=\tikz@finish \def\tikz@finish{% \tikz@finish@orig% \tikz@intersect@finish% -} +}% -\def\tikz@intersect@finish{% +\def\tikz@intersect@finish{% \ifx\tikz@intersect@namedpaths\pgfutil@empty% \else% \tikz@intersect@namedpaths% - % FIXME : it is reasonable to reset this globally as it is global - % in its nature. But the reset instruction should be moved to - % \endscope or something related. Resetting it here breaks the - % manual + % FIXME : it is reasonable to reset this globally as it is global + % in its nature. But the reset instruction should be moved to + % \endscope or something related. Resetting it here breaks the + % manual \let\tikz@intersect@namedpaths=\pgfutil@empty% \fi% -} - +}% + \let\tikz@intersect@namedpaths=\pgfutil@empty \let\tikz@intersect@path@a=\pgfutil@empty \let\tikz@intersect@path@b=\pgfutil@empty @@ -124,24 +124,24 @@ total/.store in=\tikz@intersect@total, by/.store in=\tikz@intersect@by, sort by/.code=\edef\tikz@intersect@sort@by{#1}\tikz@intersect@check@sort@by% -} +}% \def\tikz@intersect@check@sort@by{% - \ifx\tikz@intersect@sort@by\tikz@intersect@path@a% - \pgfintersectionsortbyfirstpath% - \else% - \ifx\tikz@intersect@sort@by\tikz@intersect@path@b% - \pgfintersectionsortbysecondpath% - \else% - \pgf@intersect@sortfalse% - \fi% - \fi% -} + \ifx\tikz@intersect@sort@by\tikz@intersect@path@a% + \pgfintersectionsortbyfirstpath% + \else% + \ifx\tikz@intersect@sort@by\tikz@intersect@path@b% + \pgfintersectionsortbysecondpath% + \else% + \pgf@intersect@sortfalse% + \fi% + \fi% +}% \def\tikz@intersect@path@names@parse#1 and #2\tikz@stop{% \def\tikz@intersect@path@a{#1}% \def\tikz@intersect@path@b{#2}% -} +}% \def\tikz@intersect@name@parse{\pgfutil@ifnextchar[\tikz@intersect@name@parse@opt{\tikz@intersect@name@parse@opt[]}}%} \def\tikz@intersect@name@parse@opt[#1]#2\pgf@stop{% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarylindenmayersystems.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarylindenmayersystems.code.tex index 4095f3a376c..89807c8e04d 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarylindenmayersystems.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarylindenmayersystems.code.tex @@ -7,75 +7,75 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usepgflibrary{lindenmayersystems} +\usepgflibrary{lindenmayersystems}% \def\tikz@@lsystem-system{% - \pgfutil@ifnextchar[{\tikz@lsystem@options}{\tikz@lsystem@options[]}} + \pgfutil@ifnextchar[{\tikz@lsystem@options}{\tikz@lsystem@options[]}}% \def\tikz@lsystem indenmayer system{% - \pgfutil@ifnextchar[{\tikz@lsystem@options}{\tikz@lsystem@options[]}} + \pgfutil@ifnextchar[{\tikz@lsystem@options}{\tikz@lsystem@options[]}}% \def\tikz@lsystem@options[#1]{% - \tikzset{#1}% - \ifx\tikz@lsystem@rules\pgfutil@empty% - \else% - \tikz@lsystem@declare% - \def\tikz@lsystem@name{tikz@temp}% - \fi% - \ifx\tikz@lsystem@anchor\pgfutil@empty% - \pgfpathmoveto{\pgfqpoint{\tikz@lastxsaved}{\tikz@lastysaved}}% - \pgflindenmayersystem{\tikz@lsystem@name}{\tikz@lsystem@axiom}{\tikz@lsystem@order}% - \else% - \pgfextract@process\tikz@lsystem@pos{\pgfqpoint{\tikz@lastxsaved}{\tikz@lastysaved}}% - \setbox\pgfnodeparttextbox=\hbox{% - \pgfinterruptpicture% - \pgfpicture% - \pgfpathmoveto{\pgfpointorigin}% - \pgflindenmayersystem{\tikz@lsystem@name}{\tikz@lsystem@axiom}{\tikz@lsystem@order}% - \begingroup% - \tikz@finish% - \endpgfpicture% - \endpgfinterruptpicture% - }% - {% - \pgftransformshift{\tikz@lsystem@pos}% - \tikzset{inner sep=0pt, outer sep=0pt, minimum size=0pt}% - \pgfmultipartnode{rectangle}{\tikz@lsystem@anchor}{lindenmayer system}{\pgfusepath{discard}}% - }% - \fi% - \tikz@scan@next@command} + \tikzset{#1}% + \ifx\tikz@lsystem@rules\pgfutil@empty% + \else% + \tikz@lsystem@declare% + \def\tikz@lsystem@name{tikz@temp}% + \fi% + \ifx\tikz@lsystem@anchor\pgfutil@empty% + \pgfpathmoveto{\pgfqpoint{\tikz@lastxsaved}{\tikz@lastysaved}}% + \pgflindenmayersystem{\tikz@lsystem@name}{\tikz@lsystem@axiom}{\tikz@lsystem@order}% + \else% + \pgfextract@process\tikz@lsystem@pos{\pgfqpoint{\tikz@lastxsaved}{\tikz@lastysaved}}% + \setbox\pgfnodeparttextbox=\hbox{% + \pgfinterruptpicture% + \pgfpicture% + \pgfpathmoveto{\pgfpointorigin}% + \pgflindenmayersystem{\tikz@lsystem@name}{\tikz@lsystem@axiom}{\tikz@lsystem@order}% + \begingroup% + \tikz@finish% + \endpgfpicture% + \endpgfinterruptpicture% + }% + {% + \pgftransformshift{\tikz@lsystem@pos}% + \tikzset{inner sep=0pt, outer sep=0pt, minimum size=0pt}% + \pgfmultipartnode{rectangle}{\tikz@lsystem@anchor}{lindenmayer system}{\pgfusepath{discard}}% + }% + \fi% + \tikz@scan@next@command}% \tikzset{% - lindenmayer system/.style={/pgf/lindenmayer system/.cd, #1,/tikz/.cd}, - l-system/.style={lindenmayer system={#1}}, -} + lindenmayer system/.style={/pgf/lindenmayer system/.cd, #1,/tikz/.cd}, + l-system/.style={lindenmayer system={#1}}, +}% \pgfkeys{/pgf/lindenmayer system/.cd, - name/.code=\edef\tikz@lsystem@name{#1}\let\tikz@lsystem@rules=\pgfutil@empty,% - axiom/.store in=\tikz@lsystem@axiom,% - order/.store in=\tikz@lsystem@order, - .unknown/.code={% - \pgfutil@ifundefined{pgf@lsystem@\pgfkeyscurrentname}{% - \pgfkeys{/errors/unknown key={/pgf/lindenmayer system/\pgfkeyscurrentname}{#1}}% - \let\tikz@lsystem@name=\pgfutil@empty% - }% - {\edef\tikz@lsystem@name{\pgfkeyscurrentname}} - },% - anchor/.store in=\tikz@lsystem@anchor,% - rule set/.store in=\tikz@lsystem@rules -} + name/.code=\edef\tikz@lsystem@name{#1}\let\tikz@lsystem@rules=\pgfutil@empty,% + axiom/.store in=\tikz@lsystem@axiom,% + order/.store in=\tikz@lsystem@order, + .unknown/.code={% + \pgfutil@ifundefined{pgf@lsystem@\pgfkeyscurrentname}{% + \pgfkeys{/errors/unknown key={/pgf/lindenmayer system/\pgfkeyscurrentname}{#1}}% + \let\tikz@lsystem@name=\pgfutil@empty% + }% + {\edef\tikz@lsystem@name{\pgfkeyscurrentname}} + },% + anchor/.store in=\tikz@lsystem@anchor,% + rule set/.store in=\tikz@lsystem@rules +}% \let\tikz@lsystem@anchor=\pgfutil@empty% \let\tikz@lsystem@rules=\pgfutil@empty% \def\tikz@lsystem@declare{% - \expandafter\let\csname pgf@lsystem@tikz@temp\endcsname=\relax% - \pgfdeclarelindenmayersystem{tikz@temp}{% - \expandafter\tikz@lsystem@parse@rules\tikz@lsystem@rules,\tikz@stop,% - }% -} + \expandafter\let\csname pgf@lsystem@tikz@temp\endcsname=\relax% + \pgfdeclarelindenmayersystem{tikz@temp}{% + \expandafter\tikz@lsystem@parse@rules\tikz@lsystem@rules,\tikz@stop,% + }% +}% \def\tikz@lsystem@parse@rules#1,{% - \ifx#1\tikz@stop% - \else% - \rule{#1}% - \expandafter\tikz@lsystem@parse@rules% - \fi% -} + \ifx#1\tikz@stop% + \else% + \rule{#1}% + \expandafter\tikz@lsystem@parse@rules% + \fi% +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymath.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymath.code.tex index 8ccdc64493a..bf95161576d 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymath.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymath.code.tex @@ -9,625 +9,631 @@ -\edef\tikz@math@at@catcode{\the\catcode`\@} +\edef\tikz@math@at@catcode{\the\catcode`\@}% \catcode`\@=11 -\def\tikz@math@gobblespaces#1{\pgfutil@ifnextchar x{#1}{#1}} +\def\tikz@math@gobblespaces#1{\pgfutil@ifnextchar x{#1}{#1}}% -\def\tikz@math@meaning@macro{macro} -\def\tikz@math@meaning@dimen{dimen} -\def\tikz@math@meaning@count{count} -\def\tikz@math@meaning@null{null} +\def\tikz@math@meaning@macro{macro}% +\def\tikz@math@meaning@dimen{dimen}% +\def\tikz@math@meaning@count{count}% +\def\tikz@math@meaning@null{null}% -\def\tikz@math@getmeaning#1{\expandafter\tikz@math@@getmeaning\meaning#1\tikz@math@getmeaning@stop} +\def\tikz@math@getmeaning#1{\expandafter\tikz@math@@getmeaning\meaning#1\tikz@math@getmeaning@stop}% \def\tikz@math@@getmeaning#1#2#3#4#5\tikz@math@getmeaning@stop{% - \if#1u% undefined - \let\tikz@math@meaning=\tikz@math@meaning@macro% - \else% - \if#1m% - \let\tikz@math@meaning=\tikz@math@meaning@macro% - \else% - \if#2d% - \let\tikz@math@meaning=\tikz@math@meaning@dimen% - \else% - \if#2c% - \let\tikz@math@meaning=\tikz@math@meaning@count% - \else% - \if#3k% A skip. Treat like a dimen. - \let\tikz@math@meaning=\tikz@math@meaning@dimen% - \else% - \let\tikz@math@meaning=\tikz@math@meaning@null% - \fi% - \fi% - \fi% - \fi% - \fi% -} - -\def\tikz@math@firstoftwo#1#2{#1} -\def\tikz@math@secondoftwo#1#2{#2} + \if#1u% undefined + \let\tikz@math@meaning=\tikz@math@meaning@macro% + \else% + \if#1m% + \let\tikz@math@meaning=\tikz@math@meaning@macro% + \else% + \if#2d% + \let\tikz@math@meaning=\tikz@math@meaning@dimen% + \else% + \if#2c% + \let\tikz@math@meaning=\tikz@math@meaning@count% + \else% + \if#3k% A skip. Treat like a dimen. + \let\tikz@math@meaning=\tikz@math@meaning@dimen% + \else% + \let\tikz@math@meaning=\tikz@math@meaning@null% + \fi% + \fi% + \fi% + \fi% + \fi% +}% + +\def\tikz@math@firstoftwo#1#2{#1}% +\def\tikz@math@secondoftwo#1#2{#2}% \def\tikz@math@getvarstring#1{% - \begingroup% - \escapechar=-1\relax% - \expandafter\tikz@math@@getvarstring\string#1\tikz@math} + \begingroup% + \escapechar=-1\relax% + \expandafter\tikz@math@@getvarstring\string#1\tikz@math}% \def\tikz@math@@getvarstring#1\tikz@math#2{% - \endgroup% - \def#2{#1}% -} + \endgroup% + \def#2{#1}% +}% \long\def\tikz@math@collecttosemicolon@other#1#2;{% - \def\tikz@math@collected{#2}#1} + \def\tikz@math@collected{#2}#1}% \def\tikz@math@semicolon@other{;}% {\catcode`\;=13 \long\gdef\tikz@math@collecttosemicolon@active#1#2;{% - \def\tikz@math@collected{#2}#1} + \def\tikz@math@collected{#2}#1}% \gdef\tikz@math@semicolon@active{;}% -} +}% \def\tikz@math@setvartype#1#2{% - \expandafter\let\csname tikz@math@var@vartype@\string#1\endcsname=#2% -} + \expandafter\let\csname tikz@math@var@vartype@\string#1\endcsname=#2% +}% \def\tikz@math@getvartype#1#2{% - \def\tikz@math@marshal{\let#1=}% - \expandafter\tikz@math@marshal\csname - tikz@math@var@vartype@\string#2\endcsname% -} + \def\tikz@math@marshal{\let#1=}% + \expandafter\tikz@math@marshal\csname + tikz@math@var@vartype@\string#2\endcsname% +}% \def\tikz@math@ifvarcoordinate#1{% - \expandafter\ifx\csname - tikz@math@var@vartype@\string#1\endcsname\tikz@math@keyword@coordinate% - \let\tikz@math@next=\tikz@math@firstoftwo% - \else% - \let\tikz@math@next=\tikz@math@secondoftwo% - \fi% - \tikz@math@next% -} + \expandafter\ifx\csname + tikz@math@var@vartype@\string#1\endcsname\tikz@math@keyword@coordinate% + \let\tikz@math@next=\tikz@math@firstoftwo% + \else% + \let\tikz@math@next=\tikz@math@secondoftwo% + \fi% + \tikz@math@next% +}% \def\tikz@math@ifvarinteger#1{% - \expandafter\ifx\csname - tikz@math@var@vartype@\string#1\endcsname\tikz@math@keyword@integer% - \let\tikz@math@next=\tikz@math@firstoftwo% - \else% - \let\tikz@math@next=\tikz@math@secondoftwo% - \fi% - \tikz@math@next% -} + \expandafter\ifx\csname + tikz@math@var@vartype@\string#1\endcsname\tikz@math@keyword@integer% + \let\tikz@math@next=\tikz@math@firstoftwo% + \else% + \let\tikz@math@next=\tikz@math@secondoftwo% + \fi% + \tikz@math@next% +}% \def\tikz@math@setvarindexed#1{% - \expandafter\let\csname - tikz@math@var@subtype@\string#1\endcsname=\tikz@math@subtype@indexed% -} + \expandafter\let\csname + tikz@math@var@subtype@\string#1\endcsname=\tikz@math@subtype@indexed% +}% \def\tikz@math@clearvarindexed#1{% - \expandafter\let\csname tikz@math@var@subtype@\string#1\endcsname=\relax% -} + \expandafter\let\csname tikz@math@var@subtype@\string#1\endcsname=\relax% +}% \def\tikz@math@ifvarindexed#1{% - \expandafter\ifx\csname tikz@math@var@subtype@\string#1\endcsname\relax% - \let\tikz@math@next=\tikz@math@secondoftwo% - \else% - \let\tikz@math@next=\tikz@math@firstoftwo% - \fi% - \tikz@math@next% -} + \expandafter\ifx\csname tikz@math@var@subtype@\string#1\endcsname\relax% + \let\tikz@math@next=\tikz@math@secondoftwo% + \else% + \let\tikz@math@next=\tikz@math@firstoftwo% + \fi% + \tikz@math@next% +}% -\def\tikz@math@stop{@} +\def\tikz@math@stop{@}% \let\tikz@math@parse@hook@before=\pgfutil@empty \let\tikz@math@parse@hook@after=\pgfutil@empty \def\tikz@math{% - \ifnum\catcode`\;=13\relax% - \let\tikz@math@semicolon=\tikz@math@semicolon@active% - \let\tikz@math@collecttosemicolon=\tikz@math@collecttosemicolon@active% - \else% - \let\tikz@math@semicolon=\tikz@math@semicolon@other% - \let\tikz@math@collecttosemicolon=\tikz@math@collecttosemicolon@other% - \fi% - \tikz@math@parse@hook@before% - \tikz@@math} + \ifnum\catcode`\;=13\relax% + \let\tikz@math@semicolon=\tikz@math@semicolon@active% + \let\tikz@math@collecttosemicolon=\tikz@math@collecttosemicolon@active% + \else% + \let\tikz@math@semicolon=\tikz@math@semicolon@other% + \let\tikz@math@collecttosemicolon=\tikz@math@collecttosemicolon@other% + \fi% + \tikz@math@parse@hook@before% + \tikz@@math}% \long\def\tikz@@math#1{% - \def\tikz@math@marshal{\tikz@math@parse#1}% - \expandafter\expandafter\expandafter\tikz@math@marshal\expandafter\tikz@math@stop\tikz@math@semicolon} - -\def\tikz@math@parse{\pgfutil@ifnextchar\bgroup\tikz@math@@parse@bgroup\tikz@math@@parse@nobgroup} + \def\tikz@math@marshal{\tikz@math@parse#1}% + \expandafter\expandafter\expandafter\tikz@math@marshal\expandafter\tikz@math@stop\tikz@math@semicolon}% + +\def\tikz@math@parse{\pgfutil@ifnextchar\bgroup\tikz@math@@parse@bgroup\tikz@math@@parse@nobgroup}% \def\tikz@math@@parse@bgroup{% - \tikz@math@collecttosemicolon{% - % MW: Don't know how reliable this test is. - \ifx\pgf@selectfontorig\tikz@math@undefined% - \begingroup\tikz@math@collected\endgroup% - \else% - \begingroup\csname nullfont\endcsname\tikz@math@collected\endgroup% - \fi\tikz@math@parse}} - + \tikz@math@collecttosemicolon{% + % MW: Don't know how reliable this test is. + \ifx\pgf@selectfontorig\tikz@math@undefined% + \begingroup\tikz@math@collected\endgroup% + \else% + \begingroup\csname nullfont\endcsname\tikz@math@collected\endgroup% + \fi\tikz@math@parse}}% + -\def\tikz@math@@parse@nobgroup{\tikz@math@collecttosemicolon{\tikz@math@@parse@@nobgroup}} +\def\tikz@math@@parse@nobgroup{\tikz@math@collecttosemicolon{\tikz@math@@parse@@nobgroup}}% \def\tikz@math@@parse@@nobgroup{% - \let\tikz@math@tmp=\tikz@math@collected% - \ifx\tikz@math@tmp\tikz@math@stop% - \def\tikz@math@next{\expandafter\tikz@math@parse@finish\tikz@math@semicolon}% - \else% - \def\tikz@math@next{\expandafter\expandafter\expandafter\tikz@math@parse@keyword@check\expandafter\tikz@math@tmp\tikz@math@semicolon}% - \fi% - \tikz@math@next% -} + \let\tikz@math@tmp=\tikz@math@collected% + \ifx\tikz@math@tmp\tikz@math@stop% + \def\tikz@math@next{\expandafter\tikz@math@parse@finish\tikz@math@semicolon}% + \else% + \def\tikz@math@next{\expandafter\expandafter\expandafter\tikz@math@parse@keyword@check\expandafter\tikz@math@tmp\tikz@math@semicolon}% + \fi% + \tikz@math@next% +}% \def\tikz@math@parse@finish{% - \tikz@math@collecttosemicolon{\tikz@math@parse@hook@after}% -} + \tikz@math@collecttosemicolon{\tikz@math@parse@hook@after}% +}% \newif\iftikz@math@let \def\tikz@math@parse@keyword@check#1{% - \tikz@math@letfalse% - \tikz@math@getmeaning{#1}% - \ifx\tikz@math@meaning\tikz@math@meaning@null% - \let\tikz@math@next=\tikz@math@parse@keyword% - \else% - \let\tikz@math@next=\tikz@math@parse@nokeyword% - \fi% - \tikz@math@next#1} + \tikz@math@letfalse% + \tikz@math@getmeaning{#1}% + \ifx\tikz@math@meaning\tikz@math@meaning@null% + \let\tikz@math@next=\tikz@math@parse@keyword% + \else% + \let\tikz@math@next=\tikz@math@parse@nokeyword% + \fi% + \tikz@math@next#1}% \def\tikz@math@parse@keyword{% - \let\tikz@math@parsed@keyword=\pgfutil@empty% - \futurelet\tikz@math@parse@token\tikz@math@@parse@keyword} + \let\tikz@math@parsed@keyword=\pgfutil@empty% + \futurelet\tikz@math@parse@token\tikz@math@@parse@keyword}% \def\tikz@math@@parse@keyword{% - \ifx\tikz@math@parse@token\pgfutil@sptoken% - \let\tikz@math@next=\tikz@math@@@parse@keyword% - \else% - \ifx\tikz@math@parse@token(% - \let\tikz@math@next=\tikz@math@@@parse@keyword% - \else% - \ifx\tikz@math@parse@token\bgroup% - \let\tikz@math@next=\tikz@math@@@parse@keyword% - \else% - \let\tikz@math@next=\tikz@math@@@@parse@keyword% - \fi% - \fi% - \fi% - \tikz@math@next} - -\def\tikz@math@error#1{\pgfutil@packageerror{tikz}{tikz math library: #1}{}} + \ifx\tikz@math@parse@token\pgfutil@sptoken% + \let\tikz@math@next=\tikz@math@@@parse@keyword% + \else% + \ifx\tikz@math@parse@token(% + \let\tikz@math@next=\tikz@math@@@parse@keyword% + \else% + \ifx\tikz@math@parse@token\bgroup% + \let\tikz@math@next=\tikz@math@@@parse@keyword% + \else% + \let\tikz@math@next=\tikz@math@@@@parse@keyword% + \fi% + \fi% + \fi% + \tikz@math@next}% + +\def\tikz@math@error#1{\pgfutil@packageerror{tikz}{tikz math library: #1}{}}% \def\tikz@math@@@parse@keyword{% - \expandafter\ifx\csname tikz@math@process@keyword@\tikz@math@parsed@keyword\endcsname\relax% - \expandafter\ifx\csname pgfmath\tikz@math@parsed@keyword\endcsname\relax% - \tikz@math@error{Unknown function or keyword '\tikz@math@parsed@keyword'}% - \else% - \def\tikz@math@next{\tikz@math@collecttosemicolon{\tikz@math@function@noassign}}% - \fi% - \else% - \expandafter\def\expandafter\tikz@math@next\expandafter{\csname tikz@math@process@keyword@\tikz@math@parsed@keyword\endcsname}% - \fi% - \tikz@math@next} - + \expandafter\ifx\csname tikz@math@process@keyword@\tikz@math@parsed@keyword\endcsname\relax% + \expandafter\ifx\csname pgfmath\tikz@math@parsed@keyword\endcsname\relax% + \tikz@math@error{Unknown function or keyword '\tikz@math@parsed@keyword'}% + \else% + \def\tikz@math@next{\tikz@math@collecttosemicolon{\tikz@math@function@noassign}}% + \fi% + \else% + \expandafter\def\expandafter\tikz@math@next\expandafter{\csname tikz@math@process@keyword@\tikz@math@parsed@keyword\endcsname}% + \fi% + \tikz@math@next}% + \def\tikz@math@@@@parse@keyword#1{% - \edef\tikz@math@parsed@keyword{\tikz@math@parsed@keyword#1}% - \futurelet\tikz@math@parse@token\tikz@math@@parse@keyword% -} + \edef\tikz@math@parsed@keyword{\tikz@math@parsed@keyword#1}% + \futurelet\tikz@math@parse@token\tikz@math@@parse@keyword% +}% \def\tikz@math@function@noassign{% - \pgfmathparse{\tikz@math@parsed@keyword\tikz@math@collected}% - \tikz@math@parse% -} - - - - -\def\tikz@math@process@keyword@count{\tikz@math@collecttosemicolon{\tikz@math@process@keyword@@count}} + \pgfmathparse{\tikz@math@parsed@keyword\tikz@math@collected}% + \tikz@math@parse% +}% + + + + +\def\tikz@math@process@keyword@count{\tikz@math@collecttosemicolon{\tikz@math@process@keyword@@count}}% \def\tikz@math@process@keyword@@count{% \def\tikz@math@assign@register{\csname newcount\endcsname}% -\expandafter\tikz@math@gobblespaces\expandafter\tikz@math@process@registers\tikz@math@collected,@,} +\expandafter\tikz@math@gobblespaces\expandafter\tikz@math@process@registers\tikz@math@collected,@,}% -\def\tikz@math@process@keyword@length{\tikz@math@collecttosemicolon{\tikz@math@process@keyword@@length}} +\def\tikz@math@process@keyword@length{\tikz@math@collecttosemicolon{\tikz@math@process@keyword@@length}}% \def\tikz@math@process@keyword@@length{% \def\tikz@math@assign@register{\csname newdimen\endcsname}% \show\tikz@math@collected -\expandafter\tikz@math@gobblespaces\expandafter\tikz@math@process@registers\tikz@math@collected,@,} +\expandafter\tikz@math@gobblespaces\expandafter\tikz@math@process@registers\tikz@math@collected,@,}% \def\tikz@math@process@registers#1#2,{% - \def\tikz@math@var{#1}% - \ifx\tikz@math@var\tikz@math@stop% - \let\tikz@math@next=\tikz@math@parse% - \else% - \tikz@math@assign@register#1\relax% - \let\tikz@math@next=\tikz@math@process@registers% - \fi% - \tikz@math@gobblespaces\tikz@math@next% -} + \def\tikz@math@var{#1}% + \ifx\tikz@math@var\tikz@math@stop% + \let\tikz@math@next=\tikz@math@parse% + \else% + \tikz@math@assign@register#1\relax% + \let\tikz@math@next=\tikz@math@process@registers% + \fi% + \tikz@math@gobblespaces\tikz@math@next% +}% \def\tikz@math@process@keyword@if#1then{% - \def\tikz@math@if@condition{#1}% - \tikz@math@gobblespaces\tikz@math@parse@if@iftrue% -} + \def\tikz@math@if@condition{#1}% + \tikz@math@gobblespaces\tikz@math@parse@if@iftrue% +}% \def\tikz@math@parse@if@iftrue#1{% - \def\tikz@math@if@trueaction{#1}% - \pgfutil@ifnextchar e{\tikz@math@parse@else}{\tikz@math@if@doif}} + \def\tikz@math@if@trueaction{#1}% + \pgfutil@ifnextchar e{\tikz@math@parse@else}{\tikz@math@if@doif}}% -\def\tikz@math@parse@else else{\tikz@math@gobblespaces\tikz@math@if@doifelse} +\def\tikz@math@parse@else else{\tikz@math@gobblespaces\tikz@math@if@doifelse}% -\def\tikz@math@if@doif{\tikz@math@collecttosemicolon{\tikz@math@if@@doif}} +\def\tikz@math@if@doif{\tikz@math@collecttosemicolon{\tikz@math@if@@doif}}% \def\tikz@math@if@@doif{% - \pgfmathparse{\tikz@math@if@condition}% - \ifdim\pgfmathresult pt=0pt\relax% - \else% - \expandafter\tikz@math\expandafter{\tikz@math@if@trueaction}% - \fi% - \tikz@math@parse% -} -\def\tikz@math@if@doifelse{\tikz@math@collecttosemicolon{\tikz@math@if@@doifelse}} + \pgfmathparse{\tikz@math@if@condition}% + \ifpgfmathfloatparseactive% + \pgfmathfloattofixed{\pgfmathresult}% + \fi% + \ifdim\pgfmathresult pt=0pt\relax% + \else% + \expandafter\tikz@math\expandafter{\tikz@math@if@trueaction}% + \fi% + \tikz@math@parse% +}% +\def\tikz@math@if@doifelse{\tikz@math@collecttosemicolon{\tikz@math@if@@doifelse}}% \def\tikz@math@if@@doifelse{% - \pgfmathparse{\tikz@math@if@condition}% - \let\tikz@math@if@falseaction=\tikz@math@collected% - \ifdim\pgfmathresult pt=0pt\relax% - \expandafter\tikz@math\expandafter{\tikz@math@if@falseaction}% - \else% - \expandafter\tikz@math\expandafter{\tikz@math@if@trueaction}% - \fi% - \tikz@math@parse% -} + \pgfmathparse{\tikz@math@if@condition}% + \ifpgfmathfloatparseactive% + \pgfmathfloattofixed{\pgfmathresult}% + \fi% + \let\tikz@math@if@falseaction=\tikz@math@collected% + \ifdim\pgfmathresult pt=0pt\relax% + \expandafter\tikz@math\expandafter{\tikz@math@if@falseaction}% + \else% + \expandafter\tikz@math\expandafter{\tikz@math@if@trueaction}% + \fi% + \tikz@math@parse% +}% \def\tikz@math@process@keyword@let{% - \tikz@math@lettrue% - \tikz@math@gobblespaces\tikz@math@parse@nokeyword% -} + \tikz@math@lettrue% + \tikz@math@gobblespaces\tikz@math@parse@nokeyword% +}% \def\tikz@math@parse@nokeyword#1{% - \def\tikz@math@var{#1}% - \tikz@math@getvarstring{#1}\tikz@math@varstring% - \let\tikz@math@vartype=\pgfutil@empty% - \ifx\tikz@math@var\tikz@math@stop% - \let\tikz@math@next=\tikz@math@parse@finish% - \else% + \def\tikz@math@var{#1}% + \tikz@math@getvarstring{#1}\tikz@math@varstring% + \let\tikz@math@vartype=\pgfutil@empty% + \ifx\tikz@math@var\tikz@math@stop% + \let\tikz@math@next=\tikz@math@parse@finish% + \else% \ifx\tikz@math@semicolon\tikz@math@var% - \let\tikz@math@next=\tikz@math@parse% - \else% - \let\tikz@math@next=\tikz@math@parse@index@check% - \fi% - \fi% - \tikz@math@next} + \let\tikz@math@next=\tikz@math@parse% + \else% + \let\tikz@math@next=\tikz@math@parse@index@check% + \fi% + \fi% + \tikz@math@next}% \def\tikz@math@parse@index@check{% - \pgfutil@ifnextchar={\tikz@math@parse@noindex}{\tikz@math@parse@index}} - + \pgfutil@ifnextchar={\tikz@math@parse@noindex}{\tikz@math@parse@index}}% + \def\tikz@math@parse@noindex{% - \expandafter\tikz@math@clearvarindexed\tikz@math@var% - \let\tikz@math@current@index=\pgfutil@empty% - \tikz@math@parse@afterindex% -} + \expandafter\tikz@math@clearvarindexed\tikz@math@var% + \let\tikz@math@current@index=\pgfutil@empty% + \tikz@math@parse@afterindex% +}% \def\tikz@math@parse@index#1{% - \def\tikz@math@tmp{#1}% - \expandafter\tikz@math@setvarindexed\tikz@math@var% {} - \edef\tikz@math@current@index{#1}% - \tikz@math@parse@afterindex% -} + \def\tikz@math@tmp{#1}% + \expandafter\tikz@math@setvarindexed\tikz@math@var% {} + \edef\tikz@math@current@index{#1}% + \tikz@math@parse@afterindex% +}% \def\tikz@math@parse@afterindex#1={\tikz@math@gobblespaces\tikz@math@parse@assignment}% -\def\tikz@math@parse@assignment{\tikz@math@collecttosemicolon{\tikz@math@parse@@assignment}} +\def\tikz@math@parse@assignment{\tikz@math@collecttosemicolon{\tikz@math@parse@@assignment}}% \def\tikz@math@parse@@assignment{% - \expandafter\expandafter\expandafter\tikz@math@doassignment\expandafter\expandafter\expandafter% - {\expandafter\tikz@math@var\expandafter}\expandafter{\tikz@math@collected}% - \tikz@math@parse% -} + \expandafter\expandafter\expandafter\tikz@math@doassignment\expandafter\expandafter\expandafter% + {\expandafter\tikz@math@var\expandafter}\expandafter{\tikz@math@collected}% + \tikz@math@parse% +}% -\def\tikz@math@dollar@char{$} +\def\tikz@math@dollar@char{$}% \def\tikz@math@dollar@char{$}% For annoying syntax highlighters \def\tikz@math@doassignment#1#2{% - \tikz@math@ifvarcoordinate{#1}{% - \def\tikz@math@var{#1}% Unfortunately, we must do this again. - \tikz@math@getvarstring{#1}\tikz@math@varstring% And this - \expandafter\pgfutil@in@\tikz@math@dollar@char{#2}% - \edef\tikz@math@expression{#2}% - \ifpgfutil@in@% - \expandafter\tikz@scan@one@point\expandafter\tikz@math@assign@coordinate\tikz@math@expression% - \else% - \expandafter\ifx\csname tikz@library@calc@loaded\endcsname\relax% - \expandafter\tikz@scan@one@point\expandafter\tikz@math@assign@coordinate\tikz@math@expression% - \else% - \expandafter\tikz@scan@one@point\expandafter\tikz@math@assign@coordinate\expandafter% - (\expandafter$\tikz@math@expression$)% - \fi% - \fi% - }{% - \iftikz@math@let% Not really a let - \ifx\tikz@math@current@index\pgfutil@empty% - \edef#1{#2}% - \else% - \edef\tikz@math@tmp{#2}% - \expandafter\expandafter\expandafter\tikz@math@assign@index\expandafter\expandafter\expandafter% - {\expandafter\tikz@math@varstring\expandafter}\expandafter{\tikz@math@tmp}% - \fi% - \tikz@math@letfalse% - \else% - \ifx\tikz@math@current@index\pgfutil@empty% - \tikz@math@getmeaning{#1}% - \ifx\tikz@math@meaning\tikz@math@meaning@dimen% - \pgfmathsetlength{#1}{#2}% - \let\tikz@math@last@assigned@value=\pgfmathresult% - \else% - \ifx\tikz@math@meaning\tikz@math@meaning@count% - \pgfmathsetcount{#1}{#2}% - \let\tikz@math@last@assigned@value=\pgfmathresult% - \else% - \tikz@math@ifvarinteger{#1}{\pgfmathparse{int(#2)}}{\pgfmathparse{#2}}% - \let\tikz@math@last@assigned@value=\pgfmathresult% - \let#1=\pgfmathresult% - \fi% - \fi% - \else% - \tikz@math@ifvarinteger{#1}{\pgfmathparse{int(#2)}}{\pgfmathparse{#2}}% - \expandafter\tikz@math@assign@index\expandafter{\tikz@math@varstring}\pgfmathresult% - \let\tikz@math@last@assigned@value=\pgfmathresult% - \fi% - \fi% - }% -} + \tikz@math@ifvarcoordinate{#1}{% + \def\tikz@math@var{#1}% Unfortunately, we must do this again. + \tikz@math@getvarstring{#1}\tikz@math@varstring% And this + \expandafter\pgfutil@in@\tikz@math@dollar@char{#2}% + \edef\tikz@math@expression{#2}% + \ifpgfutil@in@% + \expandafter\tikz@scan@one@point\expandafter\tikz@math@assign@coordinate\tikz@math@expression% + \else% + \expandafter\ifx\csname tikz@library@calc@loaded\endcsname\relax% + \expandafter\tikz@scan@one@point\expandafter\tikz@math@assign@coordinate\tikz@math@expression% + \else% + \expandafter\tikz@scan@one@point\expandafter\tikz@math@assign@coordinate\expandafter% + (\expandafter$\tikz@math@expression$)% + \fi% + \fi% + }{% + \iftikz@math@let% Not really a let + \ifx\tikz@math@current@index\pgfutil@empty% + \edef#1{#2}% + \else% + \edef\tikz@math@tmp{#2}% + \expandafter\expandafter\expandafter\tikz@math@assign@index\expandafter\expandafter\expandafter% + {\expandafter\tikz@math@varstring\expandafter}\expandafter{\tikz@math@tmp}% + \fi% + \tikz@math@letfalse% + \else% + \ifx\tikz@math@current@index\pgfutil@empty% + \tikz@math@getmeaning{#1}% + \ifx\tikz@math@meaning\tikz@math@meaning@dimen% + \pgfmathsetlength{#1}{#2}% + \let\tikz@math@last@assigned@value=\pgfmathresult% + \else% + \ifx\tikz@math@meaning\tikz@math@meaning@count% + \pgfmathsetcount{#1}{#2}% + \let\tikz@math@last@assigned@value=\pgfmathresult% + \else% + \tikz@math@ifvarinteger{#1}{\pgfmathparse{int(#2)}}{\pgfmathparse{#2}}% + \let\tikz@math@last@assigned@value=\pgfmathresult% + \let#1=\pgfmathresult% + \fi% + \fi% + \else% + \tikz@math@ifvarinteger{#1}{\pgfmathparse{int(#2)}}{\pgfmathparse{#2}}% + \expandafter\tikz@math@assign@index\expandafter{\tikz@math@varstring}\pgfmathresult% + \let\tikz@math@last@assigned@value=\pgfmathresult% + \fi% + \fi% + }% +}% \def\tikz@math@assign@index#1#2{% - \expandafter\def\csname#1\endcsname##1{\csname - tikz@math@var@indexed@#1@##1\endcsname}% - \expandafter\edef\csname - tikz@math@var@indexed@#1@\tikz@math@current@index\endcsname{#2}\relax% -} + \expandafter\def\csname#1\endcsname##1{\csname + tikz@math@var@indexed@#1@##1\endcsname}% + \expandafter\edef\csname + tikz@math@var@indexed@#1@\tikz@math@current@index\endcsname{#2}\relax% +}% \def\tikz@math@assign@coordinate#1{% - \pgf@process{#1}% - \ifx\tikz@math@current@index\pgfutil@empty% - \expandafter\edef\csname\tikz@math@varstring\endcsname{\the\pgf@x,\the\pgf@y}% - \expandafter\edef\csname\tikz@math@varstring x\endcsname{\the\pgf@x}% - \expandafter\edef\csname\tikz@math@varstring y\endcsname{\the\pgf@y}% - \else% - \expandafter\tikz@math@assign@index\expandafter{\tikz@math@varstring}{\the\pgf@x,\the\pgf@y}% - \expandafter\tikz@math@assign@index\expandafter{\tikz@math@varstring x}{\the\pgf@x}% - \expandafter\tikz@math@assign@index\expandafter{\tikz@math@varstring y}{\the\pgf@y}% - \fi% -} + \pgf@process{#1}% + \ifx\tikz@math@current@index\pgfutil@empty% + \expandafter\edef\csname\tikz@math@varstring\endcsname{\the\pgf@x,\the\pgf@y}% + \expandafter\edef\csname\tikz@math@varstring x\endcsname{\the\pgf@x}% + \expandafter\edef\csname\tikz@math@varstring y\endcsname{\the\pgf@y}% + \else% + \expandafter\tikz@math@assign@index\expandafter{\tikz@math@varstring}{\the\pgf@x,\the\pgf@y}% + \expandafter\tikz@math@assign@index\expandafter{\tikz@math@varstring x}{\the\pgf@x}% + \expandafter\tikz@math@assign@index\expandafter{\tikz@math@varstring y}{\the\pgf@y}% + \fi% +}% -\def\tikz@math@keyword@coordinate{coordinate} +\def\tikz@math@keyword@coordinate{coordinate}% \def\tikz@math@process@keyword@coordinate{% - \let\tikz@math@vartype=\tikz@math@keyword@coordinate% - \tikz@math@gobblespaces\tikz@math@process@vartypes% -} + \let\tikz@math@vartype=\tikz@math@keyword@coordinate% + \tikz@math@gobblespaces\tikz@math@process@vartypes% +}% -\def\tikz@math@keyword@integer{integer} +\def\tikz@math@keyword@integer{integer}% \def\tikz@math@process@keyword@integer{% - \let\tikz@math@vartype=\tikz@math@keyword@integer% - \tikz@math@gobblespaces\tikz@math@process@vartypes% -} + \let\tikz@math@vartype=\tikz@math@keyword@integer% + \tikz@math@gobblespaces\tikz@math@process@vartypes% +}% \def\tikz@math@process@keyword@int{% - \tikz@math@process@keyword@integer% -} + \tikz@math@process@keyword@integer% +}% -\def\tikz@math@keyword@real{real} +\def\tikz@math@keyword@real{real}% \def\tikz@math@process@keyword@real{% - \let\tikz@math@vartype=\tikz@math@keyword@real% - \tikz@math@gobblespaces\tikz@math@process@vartypes% -} + \let\tikz@math@vartype=\tikz@math@keyword@real% + \tikz@math@gobblespaces\tikz@math@process@vartypes% +}% -\def\tikz@math@process@keyword@point{\tikz@math@process@keyword@coordinate} +\def\tikz@math@process@keyword@point{\tikz@math@process@keyword@coordinate}% -\def\tikz@math@process@vartypes{\tikz@math@collecttosemicolon{\tikz@math@process@@vartypes}} +\def\tikz@math@process@vartypes{\tikz@math@collecttosemicolon{\tikz@math@process@@vartypes}}% \def\tikz@math@process@@vartypes{% - \expandafter\tikz@math@@process@vartypes\tikz@math@collected,@,\tikz@math% -} + \expandafter\tikz@math@@process@vartypes\tikz@math@collected,@,\tikz@math% +}% \def\tikz@math@@process@vartypes#1#2,{% - \def\tikz@math@var{#1}% - \tikz@math@getvarstring{#1}\tikz@math@varstring% - \ifx\tikz@math@var\tikz@math@stop% - \let\tikz@math@next=\tikz@math@@@process@vartypes% - \else% - \expandafter\tikz@math@setvartype\tikz@math@var\tikz@math@vartype% - \def\tikz@math@next{\tikz@math@gobblespaces\tikz@math@@process@vartypes}% - \fi% - \tikz@math@next% -} - -\def\tikz@math@process@keyword@print{\tikz@math@collecttosemicolon{\tikz@math@process@keyword@@print}} + \def\tikz@math@var{#1}% + \tikz@math@getvarstring{#1}\tikz@math@varstring% + \ifx\tikz@math@var\tikz@math@stop% + \let\tikz@math@next=\tikz@math@@@process@vartypes% + \else% + \expandafter\tikz@math@setvartype\tikz@math@var\tikz@math@vartype% + \def\tikz@math@next{\tikz@math@gobblespaces\tikz@math@@process@vartypes}% + \fi% + \tikz@math@next% +}% + +\def\tikz@math@process@keyword@print{\tikz@math@collecttosemicolon{\tikz@math@process@keyword@@print}}% \def\tikz@math@process@keyword@@print{% - \begingroup\tikz@math@collected\endgroup\tikz@math@parse% -} + \begingroup\tikz@math@collected\endgroup\tikz@math@parse% +}% \def\tikz@math@@@process@vartypes#1\tikz@math{% - \tikz@math@parse% -} + \tikz@math@parse% +}% \newcount\tikz@math@for@depth -\def\tikz@math@for@namedef#1{\expandafter\def\csname tikz@math@for@def@#1@\the\tikz@math@for@depth\endcsname} -\def\tikz@math@for@nameedef#1{\expandafter\edef\csname tikz@math@for@def@#1@\the\tikz@math@for@depth\endcsname} -\def\tikz@math@for@namelet#1{\expandafter\let\csname tikz@math@for@def@#1@\the\tikz@math@for@depth\endcsname} +\def\tikz@math@for@namedef#1{\expandafter\def\csname tikz@math@for@def@#1@\the\tikz@math@for@depth\endcsname}% +\def\tikz@math@for@nameedef#1{\expandafter\edef\csname tikz@math@for@def@#1@\the\tikz@math@for@depth\endcsname}% +\def\tikz@math@for@namelet#1{\expandafter\let\csname tikz@math@for@def@#1@\the\tikz@math@for@depth\endcsname}% \def\tikz@math@for@namegetvalue#1#2{% - \def\tikz@math@marshal{\let#2=}% - \expandafter\tikz@math@marshal\csname tikz@math@for@def@#1@\the\tikz@math@for@depth\endcsname} + \def\tikz@math@marshal{\let#2=}% + \expandafter\tikz@math@marshal\csname tikz@math@for@def@#1@\the\tikz@math@for@depth\endcsname}% \def\tikz@math@process@keyword@for{% - \tikz@math@for% -} + \tikz@math@for% +}% \def\tikz@math@for@external{% - \ifnum\catcode`\;=13\relax% - \let\tikz@math@semicolon=\tikz@math@semicolon@active% - \let\tikz@math@collecttosemicolon=\tikz@math@collecttosemicolon@active% - \else% - \let\tikz@math@semicolon=\tikz@math@semicolon@other% - \let\tikz@math@collecttosemicolon=\tikz@math@collecttosemicolon@other% - \fi - \advance\tikz@math@for@depth by1\relax% - \tikz@math@for@namedef{execute}{\tikz@math@for@external@execute}% - \tikz@math@for@namedef{finished}{\relax}% - \tikz@math@gobblespaces\tikz@math@for@parsevar} - -\def\tikz@math@for@external@execute#1{#1} + \ifnum\catcode`\;=13\relax% + \let\tikz@math@semicolon=\tikz@math@semicolon@active% + \let\tikz@math@collecttosemicolon=\tikz@math@collecttosemicolon@active% + \else% + \let\tikz@math@semicolon=\tikz@math@semicolon@other% + \let\tikz@math@collecttosemicolon=\tikz@math@collecttosemicolon@other% + \fi + \advance\tikz@math@for@depth by1\relax% + \tikz@math@for@namedef{execute}{\tikz@math@for@external@execute}% + \tikz@math@for@namedef{finished}{\relax}% + \tikz@math@gobblespaces\tikz@math@for@parsevar}% + +\def\tikz@math@for@external@execute#1{#1}% \def\tikz@math@for{% - \advance\tikz@math@for@depth by1\relax% - \tikz@math@for@namedef{execute}{\tikz@math}% - \tikz@math@for@namedef{finished}{\tikz@math@parse}% - \tikz@math@gobblespaces\tikz@math@for@parsevar} + \advance\tikz@math@for@depth by1\relax% + \tikz@math@for@namedef{execute}{\tikz@math}% + \tikz@math@for@namedef{finished}{\tikz@math@parse}% + \tikz@math@gobblespaces\tikz@math@for@parsevar}% \def\tikz@math@for@parsevar#1{% - \tikz@math@for@namedef{var}{#1}% - \tikz@math@for@parsein} + \tikz@math@for@namedef{var}{#1}% + \tikz@math@for@parsein}% \def\tikz@math@getindex#1{% - \tikz@math@@getindex#1\tikz@math@getindex\tikz@math@@getindex% -} + \tikz@math@@getindex#1\tikz@math@getindex\tikz@math@@getindex% +}% -\def\tikz@math@@getindex#1#2\tikz@math@@getindex{#1} +\def\tikz@math@@getindex#1#2\tikz@math@@getindex{#1}% \def\tikz@math@for@parsein#1in{% - \def\tikz@math@tmp{#1}% - \ifx\tikz@math@tmp\pgfutil@empty% - \tikz@math@for@namedef{index}{}% - \else% - \tikz@math@for@nameedef{index}{\tikz@math@getindex{#1}}% - \fi% - \tikz@math@gobblespaces\tikz@math@for@parselist% -} + \def\tikz@math@tmp{#1}% + \ifx\tikz@math@tmp\pgfutil@empty% + \tikz@math@for@namedef{index}{}% + \else% + \tikz@math@for@nameedef{index}{\tikz@math@getindex{#1}}% + \fi% + \tikz@math@gobblespaces\tikz@math@for@parselist% +}% \long\def\tikz@math@for@parselist#1{% - \edef\tikz@math@for@list{#1}% - \tikz@math@collecttosemicolon{\tikz@math@for@parseaction}} + \edef\tikz@math@for@list{#1}% + \tikz@math@collecttosemicolon{\tikz@math@for@parseaction}}% \def\tikz@math@for@parseaction{% - \tikz@math@for@namedef{prevvalue}{}% - \tikz@math@for@namedef{prevprevvalue}{}% - \tikz@math@for@namelet{action}=\tikz@math@collected% - \expandafter\tikz@math@for@scan\tikz@math@for@list,\tikz@math,\tikz@@math% -} + \tikz@math@for@namedef{prevvalue}{}% + \tikz@math@for@namedef{prevprevvalue}{}% + \tikz@math@for@namelet{action}=\tikz@math@collected% + \expandafter\tikz@math@for@scan\tikz@math@for@list,\tikz@math,\tikz@@math% +}% -\def\tikz@math@token{\tikz@math} +\def\tikz@math@token{\tikz@math}% \def\tikz@math@for@scan#1,{% - \def\tikz@math@for@value{#1}% - \ifx\tikz@math@for@value\tikz@math@token% - \let\tikz@math@next=\tikz@math@for@scan@end% - \else% - \ifx\tikz@math@for@value\pgfutil@empty% - \let\tikz@math@next=\tikz@math@for@scan@end% - \else% - \pgfutil@in@{...}{#1}% - \ifpgfutil@in@% - \let\tikz@math@next=\tikz@math@for@scan@dots% - \else% - \tikz@math@for@namegetvalue{var}{\tikz@math@var}% - \tikz@math@for@namegetvalue{index}{\tikz@math@current@index}% - \tikz@math@for@namegetvalue{action}{\tikz@math@action}% - \expandafter\tikz@math@getvarstring\expandafter{\tikz@math@var}\tikz@math@varstring% - \expandafter\tikz@math@doassignment\expandafter{\tikz@math@var}{#1}% - \tikz@math@for@namelet{value}=\tikz@math@last@assigned@value% - \tikz@math@for@namegetvalue{execute}{\tikz@math@execute}% - \expandafter\tikz@math@execute\expandafter{\tikz@math@action}% - \tikz@math@for@namegetvalue{prevvalue}{\tikz@math@prevvalue}% - \tikz@math@for@namelet{prevprevvalue}=\tikz@math@prevvalue% - \tikz@math@for@namegetvalue{value}{\tikz@math@value}% - \tikz@math@for@namelet{prevvalue}=\tikz@math@value% - \let\tikz@math@next=\tikz@math@for@scan% - \fi% - \fi% - \fi% - \tikz@math@next% -} + \def\tikz@math@for@value{#1}% + \ifx\tikz@math@for@value\tikz@math@token% + \let\tikz@math@next=\tikz@math@for@scan@end% + \else% + \ifx\tikz@math@for@value\pgfutil@empty% + \let\tikz@math@next=\tikz@math@for@scan@end% + \else% + \pgfutil@in@{...}{#1}% + \ifpgfutil@in@% + \let\tikz@math@next=\tikz@math@for@scan@dots% + \else% + \tikz@math@for@namegetvalue{var}{\tikz@math@var}% + \tikz@math@for@namegetvalue{index}{\tikz@math@current@index}% + \tikz@math@for@namegetvalue{action}{\tikz@math@action}% + \expandafter\tikz@math@getvarstring\expandafter{\tikz@math@var}\tikz@math@varstring% + \expandafter\tikz@math@doassignment\expandafter{\tikz@math@var}{#1}% + \tikz@math@for@namelet{value}=\tikz@math@last@assigned@value% + \tikz@math@for@namegetvalue{execute}{\tikz@math@execute}% + \expandafter\tikz@math@execute\expandafter{\tikz@math@action}% + \tikz@math@for@namegetvalue{prevvalue}{\tikz@math@prevvalue}% + \tikz@math@for@namelet{prevprevvalue}=\tikz@math@prevvalue% + \tikz@math@for@namegetvalue{value}{\tikz@math@value}% + \tikz@math@for@namelet{prevvalue}=\tikz@math@value% + \let\tikz@math@next=\tikz@math@for@scan% + \fi% + \fi% + \fi% + \tikz@math@next% +}% \newdimen\tikz@math@dimen \def\tikz@math@for@scan@dots#1,{% - \pgfmathparse{#1}\let\tikz@math@value=\pgfmathresult% - \tikz@math@for@nameedef{endvalue}{\tikz@math@value}% - \tikz@math@for@namegetvalue{prevvalue}{\tikz@math@prevvalue}% - \tikz@math@for@namegetvalue{prevprevvalue}{\tikz@math@prevprevvalue}% - \tikz@math@dimen=\tikz@math@prevvalue pt\relax% - \ifx\tikz@math@prevprevvalue\pgfutil@empty% - \ifdim\tikz@math@prevvalue pt<\tikz@math@value pt\relax%% - \def\tikz@math@step{1pt}% - \else% - \def\tikz@math@step{-1pt}% - \fi% - \else% - \tikz@math@dimen=\tikz@math@prevvalue pt\relax% - \advance\tikz@math@dimen by-\tikz@math@prevprevvalue pt\relax% - \edef\tikz@math@step{\the\tikz@math@dimen}% - \fi% - \ifdim\tikz@math@step<0pt\relax% - \tikz@math@for@namedef{comparitor}{<}% - \else% - \tikz@math@for@namedef{comparitor}{>}% - \fi% - \tikz@math@for@nameedef{step}{\tikz@math@step}% - \tikz@math@for@doloop% -} + \pgfmathparse{#1}\let\tikz@math@value=\pgfmathresult% + \tikz@math@for@nameedef{endvalue}{\tikz@math@value}% + \tikz@math@for@namegetvalue{prevvalue}{\tikz@math@prevvalue}% + \tikz@math@for@namegetvalue{prevprevvalue}{\tikz@math@prevprevvalue}% + \tikz@math@dimen=\tikz@math@prevvalue pt\relax% + \ifx\tikz@math@prevprevvalue\pgfutil@empty% + \ifdim\tikz@math@prevvalue pt<\tikz@math@value pt\relax%% + \def\tikz@math@step{1pt}% + \else% + \def\tikz@math@step{-1pt}% + \fi% + \else% + \tikz@math@dimen=\tikz@math@prevvalue pt\relax% + \advance\tikz@math@dimen by-\tikz@math@prevprevvalue pt\relax% + \edef\tikz@math@step{\the\tikz@math@dimen}% + \fi% + \ifdim\tikz@math@step<0pt\relax% + \tikz@math@for@namedef{comparitor}{<}% + \else% + \tikz@math@for@namedef{comparitor}{>}% + \fi% + \tikz@math@for@nameedef{step}{\tikz@math@step}% + \tikz@math@for@doloop% +}% \def\tikz@math@for@doloop{% - \tikz@math@for@namegetvalue{prevvalue}{\tikz@math@prevvalue}% - \tikz@math@for@namegetvalue{step}{\tikz@math@step}% - \tikz@math@for@namegetvalue{comparitor}{\tikz@math@comparitor}% - \tikz@math@for@namegetvalue{endvalue}{\tikz@math@endvalue}% - \tikz@math@dimen=\tikz@math@prevvalue pt\relax% - \advance\tikz@math@dimen by\tikz@math@step\relax% - \ifdim\tikz@math@dimen\tikz@math@comparitor\tikz@math@endvalue pt\relax% - \let\tikz@math@next=\tikz@math@for@endloop% - \else% - \tikz@math@for@nameedef{value}{\pgfmath@tonumber{\tikz@math@dimen}}% - \tikz@math@for@namegetvalue{var}{\tikz@math@var}% - \expandafter\tikz@math@getvarstring\expandafter{\tikz@math@var}\tikz@math@varstring% - \tikz@math@for@namegetvalue{index}{\tikz@math@current@index}% - \tikz@math@for@namegetvalue{action}{\tikz@math@action}% - \tikz@math@for@namegetvalue{value}{\tikz@math@value}% - \expandafter\expandafter\expandafter\tikz@math@doassignment\expandafter\expandafter\expandafter% - {\expandafter\tikz@math@var\expandafter}\expandafter{\tikz@math@value}% - \tikz@math@for@namegetvalue{execute}{\tikz@math@execute}% - \expandafter\tikz@math@execute\expandafter{\tikz@math@action}% - \tikz@math@for@namegetvalue{prevvalue}{\tikz@math@prevvalue}% - \tikz@math@for@namelet{prevprevvalue}=\tikz@math@prevvalue% - \tikz@math@for@namegetvalue{value}{\tikz@math@value}% - \tikz@math@for@namelet{prevvalue}=\tikz@math@value% - \let\tikz@math@next=\tikz@math@for@doloop% - \fi% - \tikz@math@next% -} + \tikz@math@for@namegetvalue{prevvalue}{\tikz@math@prevvalue}% + \tikz@math@for@namegetvalue{step}{\tikz@math@step}% + \tikz@math@for@namegetvalue{comparitor}{\tikz@math@comparitor}% + \tikz@math@for@namegetvalue{endvalue}{\tikz@math@endvalue}% + \tikz@math@dimen=\tikz@math@prevvalue pt\relax% + \advance\tikz@math@dimen by\tikz@math@step\relax% + \ifdim\tikz@math@dimen\tikz@math@comparitor\tikz@math@endvalue pt\relax% + \let\tikz@math@next=\tikz@math@for@endloop% + \else% + \tikz@math@for@nameedef{value}{\pgfmath@tonumber{\tikz@math@dimen}}% + \tikz@math@for@namegetvalue{var}{\tikz@math@var}% + \expandafter\tikz@math@getvarstring\expandafter{\tikz@math@var}\tikz@math@varstring% + \tikz@math@for@namegetvalue{index}{\tikz@math@current@index}% + \tikz@math@for@namegetvalue{action}{\tikz@math@action}% + \tikz@math@for@namegetvalue{value}{\tikz@math@value}% + \expandafter\expandafter\expandafter\tikz@math@doassignment\expandafter\expandafter\expandafter% + {\expandafter\tikz@math@var\expandafter}\expandafter{\tikz@math@value}% + \tikz@math@for@namegetvalue{execute}{\tikz@math@execute}% + \expandafter\tikz@math@execute\expandafter{\tikz@math@action}% + \tikz@math@for@namegetvalue{prevvalue}{\tikz@math@prevvalue}% + \tikz@math@for@namelet{prevprevvalue}=\tikz@math@prevvalue% + \tikz@math@for@namegetvalue{value}{\tikz@math@value}% + \tikz@math@for@namelet{prevvalue}=\tikz@math@value% + \let\tikz@math@next=\tikz@math@for@doloop% + \fi% + \tikz@math@next% +}% \def\tikz@math@for@endloop{% -\tikz@math@for@scan} +\tikz@math@for@scan}% @@ -635,90 +641,90 @@ \def\tikz@math@for@scan@end#1\tikz@@math{% \tikz@math@for@namegetvalue{finished}{\tikz@math@next}% \advance\tikz@math@for@depth by-1\relax% -\tikz@math@next} +\tikz@math@next}% \def\tikz@math@process@keyword@return{% - \tikz@math@collecttosemicolon{\pgfmathparse{\tikz@math@collected}\tikz@math@parse}} + \tikz@math@collecttosemicolon{\pgfmathparse{\tikz@math@collected}\tikz@math@parse}}% -\def\tikz@math@process@keyword@function{\tikz@math@collecttosemicolon{\tikz@math@process@keyword@@function}} +\def\tikz@math@process@keyword@function{\tikz@math@collecttosemicolon{\tikz@math@process@keyword@@function}}% \def\tikz@math@process@keyword@@function{% - \let\tikz@math@function@name=\pgfutil@empty% - \let\tikz@math@function@arguments=\pgfutil@empty% - \let\tikz@math@function@body=\pgfutil@empty% - \expandafter\expandafter\expandafter\tikz@math@@declarefunction\expandafter\tikz@math@collected\tikz@math@semicolon% -} + \let\tikz@math@function@name=\pgfutil@empty% + \let\tikz@math@function@arguments=\pgfutil@empty% + \let\tikz@math@function@body=\pgfutil@empty% + \expandafter\expandafter\expandafter\tikz@math@@declarefunction\expandafter\tikz@math@collected\tikz@math@semicolon% +}% \def\tikz@math@@declarefunction{% - \pgfutil@ifnextchar\bgroup\tikz@math@@@collectbody\tikz@math@@@declarefunction} + \pgfutil@ifnextchar\bgroup\tikz@math@@@collectbody\tikz@math@@@declarefunction}% \def\tikz@math@@@declarefunction#1{% - \if#1(%) - \let\tikz@math@next=\tikz@math@@@collectarguments% - \else% - \expandafter\def\expandafter\tikz@math@function@name\expandafter{\tikz@math@function@name#1}% - \let\tikz@math@next=\tikz@math@@declarefunction% - \fi% - \tikz@math@next% -} + \if#1(%) + \let\tikz@math@next=\tikz@math@@@collectarguments% + \else% + \expandafter\def\expandafter\tikz@math@function@name\expandafter{\tikz@math@function@name#1}% + \let\tikz@math@next=\tikz@math@@declarefunction% + \fi% + \tikz@math@next% +}% \def\tikz@math@@@collectarguments#1){% - \def\tikz@math@function@arguments{#1}% - \tikz@math@@declarefunction% -} + \def\tikz@math@function@arguments{#1}% + \tikz@math@@declarefunction% +}% \newtoks\tikz@math@toks -\tikz@math@toks={#} -\edef\tikz@math@char@hash{\the\tikz@math@toks} -\tikz@math@toks={} +\tikz@math@toks={#}% +\edef\tikz@math@char@hash{\the\tikz@math@toks}% +\tikz@math@toks={}% -\def\tikz@math@@@collectbody{\tikz@math@collecttosemicolon{\tikz@math@@@@collectbody}} +\def\tikz@math@@@collectbody{\tikz@math@collecttosemicolon{\tikz@math@@@@collectbody}}% \def\tikz@math@@@@collectbody{% - \tikz@math@toks={}% - \c@pgf@counta=0\relax% - \ifx\tikz@math@function@arguments\pgfutil@empty% - \else% - \expandafter\tikz@math@createargumentlist\tikz@math@function@arguments,,% - \expandafter\tikz@math@addto@toks\expandafter{\tikz@math@collected}% - \fi% - \edef\tikz@math@local@temp{% - \noexpand\pgfmathdeclarefunction{\tikz@math@function@name}{\the\c@pgf@counta}% - {\noexpand\def\noexpand\return{0}\noexpand\tikz@math{\the\tikz@math@toks}}% - }% - \tikz@math@local@temp - \tikz@math@parse% -} + \tikz@math@toks={}% + \c@pgf@counta=0\relax% + \ifx\tikz@math@function@arguments\pgfutil@empty% + \else% + \expandafter\tikz@math@createargumentlist\tikz@math@function@arguments,,% + \expandafter\tikz@math@addto@toks\expandafter{\tikz@math@collected}% + \fi% + \edef\tikz@math@local@temp{% + \noexpand\pgfmathdeclarefunction{\tikz@math@function@name}{\the\c@pgf@counta}% + {\noexpand\def\noexpand\return{0}\noexpand\tikz@math{\the\tikz@math@toks}}% + }% + \tikz@math@local@temp + \tikz@math@parse% +}% \def\tikz@math@addto@toks#1{% - \expandafter\tikz@math@toks\expandafter{\the\tikz@math@toks#1}} + \expandafter\tikz@math@toks\expandafter{\the\tikz@math@toks#1}}% \def\tikz@math@createargumentlist{% - \pgfutil@ifnextchar - x\tikz@math@@createargumentlist\tikz@math@@createargumentlist} + \pgfutil@ifnextchar + x\tikz@math@@createargumentlist\tikz@math@@createargumentlist}% -\def\tikz@math@comma{,} +\def\tikz@math@comma{,}% \def\tikz@math@@createargumentlist#1,{% - \def\tikz@math@tmp{#1}% - \ifx\tikz@math@tmp\pgfutil@empty% - \let\tikz@math@next=\relax% - \else% - \advance\c@pgf@counta by1\relax% - \tikz@math@addto@toks{#1=}% - \expandafter\expandafter\expandafter\tikz@math@addto@toks\expandafter\expandafter\expandafter% - {\expandafter\tikz@math@char@hash\the\c@pgf@counta;}% - \let\tikz@math@next=\tikz@math@createargumentlist% - \fi% - \tikz@math@next% -} + \def\tikz@math@tmp{#1}% + \ifx\tikz@math@tmp\pgfutil@empty% + \let\tikz@math@next=\relax% + \else% + \advance\c@pgf@counta by1\relax% + \tikz@math@addto@toks{#1=}% + \expandafter\expandafter\expandafter\tikz@math@addto@toks\expandafter\expandafter\expandafter% + {\expandafter\tikz@math@char@hash\the\c@pgf@counta;}% + \let\tikz@math@next=\tikz@math@createargumentlist% + \fi% + \tikz@math@next% +}% \let\tikzmath=\tikz@math -\tikzset{evaluate/.code={\tikz@math{#1}}} +\tikzset{evaluate/.code={\tikz@math{#1}}}% \let\tikzmathfor=\tikz@math@for@external diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex index eb2d65a33fc..90894ff206d 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex @@ -7,29 +7,29 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex,v 1.4 2013/07/12 22:01:58 tantau Exp $ +\ProvidesFileRCS{tikzlibrarymatrix.code.tex} % A matrix of nodes contains a node in each cell. -\tikzstyle{matrix of nodes}=[% +\tikzset{matrix of nodes/.style={% matrix,% cells={anchor=base},% execute at begin cell=\tikz@lib@matrix@start@cell,% execute at end cell=\tikz@lib@matrix@end@cell,% execute at empty cell=\tikz@lib@matrix@empty@cell, execute at begin matrix=\iftikz@handle@active@code\tikz@orig@shorthands\fi,% -] +}}% -\def\tikz@lib@matrix@empty@cell{\iftikz@lib@matrix@empty\node[name=\tikzmatrixname-\the\pgfmatrixcurrentrow-\the\pgfmatrixcurrentcolumn]{};\fi} +\def\tikz@lib@matrix@empty@cell{\iftikz@lib@matrix@empty\node[name=\tikzmatrixname-\the\pgfmatrixcurrentrow-\the\pgfmatrixcurrentcolumn]{};\fi}% \newif\iftikz@lib@matrix@plain \def\tikz@lib@matrix@start@cell{% - \pgfutil@ifnextchar|{\tikz@lib@matrix@with@options}{\tikz@lib@matrix@normal@start@cell}} + \pgfutil@ifnextchar|{\tikz@lib@matrix@with@options}{\tikz@lib@matrix@normal@start@cell}}% \def\tikz@lib@matrix@with@options|#1|{\tikz@lib@matrix@plainfalse\node% - [name=\tikzmatrixname-\the\pgfmatrixcurrentrow-\the\pgfmatrixcurrentcolumn]#1\bgroup\tikz@lib@matrix@startup} + [name=\tikzmatrixname-\the\pgfmatrixcurrentrow-\the\pgfmatrixcurrentcolumn]#1\bgroup\tikz@lib@matrix@startup}% \def\tikz@lib@matrix@normal@start@cell{\pgfutil@ifnextchar\let{\tikz@lib@matrix@check}{\tikz@lib@matrix@plainfalse\node @@ -38,14 +38,14 @@ \def\tikz@lib@matrix@check#1{% evil hackery to find out about start of path \pgfutil@ifnextchar\tikz@signal@path{\tikz@lib@matrix@plaintrue\let}{\tikz@lib@matrix@plainfalse\node [name=\tikzmatrixname-\the\pgfmatrixcurrentrow-\the\pgfmatrixcurrentcolumn]\bgroup\tikz@lib@matrix@startup\let}% -} - +}% + \def\tikz@lib@matrix@end@cell{% \iftikz@lib@matrix@plain% \else% \expandafter\egroup\expandafter;% - \fi% -} + \fi% +}% \def\tikz@lib@matrix@startup{% \pgfutil@ifnextchar\bgroup{% @@ -56,28 +56,28 @@ \afterassignment\tikz@lib@matrix@smuggle% \let\tikz@next} {\let\\=\pgfmatrixendrow}% -} +}% \def\tikz@lib@matrix@smuggle{% \bgroup% \let\\=\tikz@lib@matrix@saved@eol% -} +}% % Fill empty nodes in a matrix of nodes \newif\iftikz@lib@matrix@empty -\tikzoption{nodes in empty cells}[true]{\csname tikz@lib@matrix@empty#1\endcsname} +\tikzoption{nodes in empty cells}[true]{\csname tikz@lib@matrix@empty#1\endcsname}% % Same as a matrix of nodes, but switch on math mode in each cell -\tikzstyle{matrix of math nodes}=[% +\tikzset{matrix of math nodes/.style={% matrix of nodes, nodes={% execute at begin node=$,% execute at end node=$% }% -] +}}% @@ -91,7 +91,7 @@ {north}% {#1}% {.}% - {\pgf@y}}}} + {\pgf@y}}}}% \tikzoption{right delimiter}{\tikzset{append after command={\tikz@delimiter% {south west}% @@ -101,7 +101,7 @@ {north}% {.}% {#1}% - {\pgf@y}}}} + {\pgf@y}}}}% \tikzoption{above delimiter}{\tikzset{append after command={\tikz@delimiter% {south east}% @@ -111,7 +111,7 @@ {east}% {#1}% {.}% - {\pgf@x}}}} + {\pgf@x}}}}% \tikzoption{below delimiter}{\tikzset{append after command={\tikz@delimiter% {south west}% @@ -121,7 +121,7 @@ {east}% {.}% {#1}% - {\pgf@x}}}} + {\pgf@x}}}}% \def\tikz@delimiter#1#2#3#4#5#6#7#8{% \bgroup @@ -133,12 +133,12 @@ } \pgfextra{\global\let\tikz@last@fig@name=\tikz@save@last@fig@name}% \egroup% -} +}% -\tikzstyle{every delimiter}=[] -\tikzstyle{every left delimiter}=[] -\tikzstyle{every right delimiter}=[] -\tikzstyle{every above delimiter}=[] -\tikzstyle{every below delimiter}=[] +\tikzset{every delimiter/.style={}}% +\tikzset{every left delimiter/.style={}}% +\tikzset{every right delimiter/.style={}}% +\tikzset{every above delimiter/.style={}}% +\tikzset{every below delimiter/.style={}}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymindmap.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymindmap.code.tex index 4b6a952ac13..4dc97d1aacf 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymindmap.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymindmap.code.tex @@ -7,10 +7,10 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymindmap.code.tex,v 1.10 2013/07/16 12:43:14 tantau Exp $ +\ProvidesFileRCS{tikzlibrarymindmap.code.tex} -\usetikzlibrary{trees,decorations} +\usetikzlibrary{trees,decorations}% % A decoration for connecting circle nodes @@ -18,7 +18,7 @@ % Parameters: start radius, end radius, amplitude, angle \pgfdeclaredecoration{circle connection bar}{initial} -{ +{% \state{initial}[width=0pt,next state=bar] { { @@ -46,7 +46,7 @@ {\pgfpointpolar{\pgfdecorationsegmentangle}{\pgfkeysvalueof{/pgf/decoration/start radius}}} \pgfpathclose } - } + }% \state{bar}[width=0pt,next state=end] { \pgfmathsetlength\pgfutil@tempdima{\pgfkeysvalueof{/pgf/decoration/start radius}}% @@ -55,7 +55,7 @@ \pgfpathrectangle {\pgfqpoint{.5\pgfutil@tempdima}{-.5\pgf@xc}} {\pgfpoint{\pgfdecoratedremainingdistance+-.5\pgfutil@tempdimb+-.5\pgfutil@tempdima}{\pgf@xc}} - } + }% \state{end}[width=0pt,next state=final] { { @@ -85,19 +85,19 @@ {\pgfpointpolar{\pgfdecorationsegmentangle}{\pgfkeysvalueof{/pgf/decoration/end radius}}} \pgfpathclose } - } + }% \state{final} - {} -} + {}% +}% -\pgfkeys{/pgf/decoration/angle=20} +\pgfkeys{/pgf/decoration/angle=20}% % To paths for connecting circle nodes -\tikzstyle{circle connection bar}= -[to path={ +\tikzset{circle connection bar/.style= +{to path={ \pgfextra{% \tikz@lib@mindmap@check{\tikztostart}% \tikz@compute@circle@radii\tikz@compute@segmentamplitude% @@ -107,8 +107,8 @@ { -- (\tikztotarget) \tikztonodes} }, append after command={[fill=\tikz@concept@color,draw=none]} -] -\tikzstyle{every circle connection bar}=[] +}}% +\tikzset{every circle connection bar/.style={}}% \def\tikz@compute@circle@radii{% \pgf@process{\pgfpointtransformed{\pgfpointanchor{\tikztostart}{center}}}% @@ -121,7 +121,7 @@ append after command={[fill=\tikz@concept@color,draw=none]} \pgf@process{\pgfpointtransformed{\pgfpointanchor{\tikztotarget}{west}}}% \advance\pgf@xa by-\pgf@x% \pgfkeys{/pgf/decoration/end radius/.expanded=\the\pgf@xa}% -} +}% \def\tikz@compute@segmentamplitude{% \pgf@x=\pgfkeysvalueof{/pgf/decoration/start radius}\relax% \ifdim\pgf@x>\pgfkeysvalueof{/pgf/decoration/end radius}\relax% @@ -129,7 +129,7 @@ append after command={[fill=\tikz@concept@color,draw=none]} \fi% \pgf@x=.175\pgf@x\relax% \edef\pgfdecorationsegmentamplitude{\the\pgf@x}% -} +}% @@ -137,7 +137,7 @@ append after command={[fill=\tikz@concept@color,draw=none]} \def\tikz@lib@mindmap@check#1{% \pgfutil@ifundefined{pgf@sh@ns@#1}% - {\tikzerror{You are attempting to connect two things by a circle + {\tikzerror{You are attempting to connect two things by a circle connection bar where one is not a node}}{% \expandafter\ifx\csname pgf@sh@ns@#1\endcsname\tikz@lib@coordinate@text% \tikzerror{You are attempting to connect node of shape @@ -145,14 +145,14 @@ append after command={[fill=\tikz@concept@color,draw=none]} 'circle' or something similar, instead.} \fi% } -} +}% -\def\tikz@lib@coordinate@text{coordinate} +\def\tikz@lib@coordinate@text{coordinate}% % Switch color in a mindmap -\tikzoption{circle connection bar switch color}{\tikz@parse@switch#1\pgf@unique} +\tikzoption{circle connection bar switch color}{\tikz@parse@switch#1\pgf@unique}% \def\tikz@parse@switch from (#1) to (#2)\pgf@unique{% \tikzset{to path={% \pgfextra{% @@ -167,7 +167,7 @@ append after command={[fill=\tikz@concept@color,draw=none]} }% [every circle connection bar] decorate [decoration=circle connection bar] - { -- (\tikztotarget) \tikztonodes} + { -- (\tikztotarget) \tikztonodes} }, append after command={ [fill=none,draw=none,path picture=\tikz@lib@shade@pic] @@ -176,7 +176,7 @@ append after command={[fill=\tikz@concept@color,draw=none]} \pgfutil@colorlet{tikz@switch@to}{#2}% }} } -} +}% \def\tikz@lib@shade@pic{% % We have to draw the shading... @@ -234,7 +234,7 @@ append after command={[fill=\tikz@concept@color,draw=none]} \pgftransformxshift{50bp} \pgflowlevelsynccm% \pgfuseshading{tikz@shade@bar} -} +}% \tikzoption{concept color}{% \let\tikz@old@concept@color=\tikz@concept@color% @@ -243,73 +243,73 @@ append after command={[fill=\tikz@concept@color,draw=none]} to[circle connection bar switch color=from (\tikz@old@concept@color) to (#1)] (\tikzchildnode)} \def\tikz@concept@color{#1}% -} +}% \pgfdeclarehorizontalshading[tikz@switch@from,tikz@switch@to]{tikz@shade@bar}{100bp}{% color(0pt)=(tikz@switch@from); - color(100bp)=(tikz@switch@to)} + color(100bp)=(tikz@switch@to)}% % A concept node -\tikzstyle{concept}= [circle,fill=\tikz@concept@color,draw=\tikz@concept@color,every concept] -\tikzstyle{every concept}= [] +\tikzset{concept/.style= {circle,fill=\tikz@concept@color,draw=\tikz@concept@color,every concept}}% +\tikzset{every concept/.style= {}}% -\def\tikz@concept@color{black} +\def\tikz@concept@color{black}% -\tikzstyle{tikz@concept@setting}=[edge from parent path={(\tikzparentnode) to [circle connection bar] (\tikzchildnode)}] -\tikzstyle{tikz@concept@color@set}=[] +\tikzset{tikz@concept@setting/.style={edge from parent path={(\tikzparentnode) to [circle connection bar] (\tikzchildnode)}}}% +\tikzset{tikz@concept@color@set/.style={}}% -\tikzstyle{extra concept}= [concept color=black!50,level 2 concept,concept,every extra concept] -\tikzstyle{every extra concept}=[] +\tikzset{extra concept/.style= {concept color=black!50,level 2 concept,concept,every extra concept}}% +\tikzset{every extra concept/.style={}}% -\tikzstyle{concept connection}=[line width=1mm,shorten <=2mm,shorten >=2mm,cap=round,draw=black!50] +\tikzset{concept connection/.style={line width=1mm,shorten <=2mm,shorten >=2mm,cap=round,draw=black!50}}% % A mindmap -\tikzstyle{mindmap}= - [fill,draw,very thick,outer sep=0pt,inner sep=1pt,% +\tikzset{mindmap/.style= + {fill,draw,very thick,outer sep=0pt,inner sep=1pt,% every child/.append style={style=tikz@concept@setting,style=tikz@concept@color@set},% root concept, level 1/.append style={level 1 concept}, level 2/.append style={level 2 concept}, level 3/.append style={level 3 concept}, level 4/.append style={level 4 concept}, - text centered,% + text centered,% segment angle=20, style=every mindmap, - ] -\tikzstyle{every mindmap}=[] - - -\tikzstyle{root concept}= [minimum size=4cm,text width=3.5cm,font=\pgfutil@font@large] -\tikzstyle{level 1 concept}=[minimum size=2.25cm, - level distance=5cm, - text width=2cm, - sibling angle=60, - font=\pgfutil@font@small] -\tikzstyle{level 2 concept}=[minimum size=1.75cm,% - level distance=2.9cm,% - text width=1.5cm,% - sibling angle=60,% - font=\pgfutil@font@footnotesize] -\tikzstyle{level 3 concept}=[minimum size=1.15cm,% - text width=1cm,% - level distance=2.4cm,% - sibling angle=30,% - font=\pgfutil@font@tiny] -\tikzstyle{level 4 concept}=[minimum size=0.9cm,% - text width=0.7cm, - level distance=1.85cm,% - sibling angle=30,% - font=\pgfutil@font@tiny] - -\tikzstyle{small mindmap}= - [% + }}% +\tikzset{every mindmap/.style={}}% + + +\tikzset{root concept/.style= {minimum size=4cm,text width=3.5cm,font=\pgfutil@font@large}}% +\tikzset{level 1 concept/.style={minimum size=2.25cm, + level distance=5cm, + text width=2cm, + sibling angle=60, + font=\pgfutil@font@small}}% +\tikzset{level 2 concept/.style={minimum size=1.75cm,% + level distance=2.9cm,% + text width=1.5cm,% + sibling angle=60,% + font=\pgfutil@font@footnotesize}}% +\tikzset{level 3 concept/.style={minimum size=1.15cm,% + text width=1cm,% + level distance=2.4cm,% + sibling angle=30,% + font=\pgfutil@font@tiny}}% +\tikzset{level 4 concept/.style={minimum size=0.9cm,% + text width=0.7cm, + level distance=1.85cm,% + sibling angle=30,% + font=\pgfutil@font@tiny}}% + +\tikzset{small mindmap/.style= + {% root concept/.style={minimum size=2.3cm,text width=2.1cm,font=\pgfutil@font@footnotesize}, level 1 concept/.style={% minimum size=1.5cm, @@ -324,18 +324,18 @@ append after command={[fill=\tikz@concept@color,draw=none]} sibling angle=60,% font=\pgfutil@font@tiny},% level 3 concept/.style={% - level 2 concept, + level 2 concept, sibling angle=30,% font=\pgfutil@font@tiny},% level 4 concept/.style={% - level 3 concept, + level 3 concept, }, mindmap,% - line width=2pt - ] - -\tikzstyle{large mindmap}= - [% + line width=2pt, + }}% + +\tikzset{large mindmap/.style= + {% root concept/.style={minimum size=5.6cm,text width=4.5cm,font=\pgfutil@font@Large}, level 1 concept/.style={% minimum size=3.2cm, @@ -363,11 +363,11 @@ append after command={[fill=\tikz@concept@color,draw=none]} sibling angle=30,% font=\pgfutil@font@tiny},% mindmap,% - line width=2pt - ] - -\tikzstyle{huge mindmap}= - [% + line width=2pt, + }}% + +\tikzset{huge mindmap/.style= + {% root concept/.style={minimum size=8cm,text width=7cm,font=\pgfutil@font@huge}, level 1 concept/.style={% minimum size=4.5cm, @@ -395,24 +395,23 @@ append after command={[fill=\tikz@concept@color,draw=none]} sibling angle=30,% font=\pgfutil@font@scriptsize},% mindmap,% - line width=3pt - ] - + line width=3pt, + }}% + % Annotations -\tikzstyle{annotation}=[shape=rectangle, - minimum size=0pt, - text width=3.5cm, - outer sep=1.5mm, - inner sep=1mm, - text badly ragged, - rounded corners, - font=\pgfutil@font@tiny, - every annotation] -\tikzstyle{every annotation}=[] +\tikzset{annotation/.style={shape=rectangle, + minimum size=0pt, + text width=3.5cm, + outer sep=1.5mm, + inner sep=1mm, + text badly ragged, + rounded corners, + font=\pgfutil@font@tiny, + every annotation}}% +\tikzset{every annotation/.style={}}% \endinput - diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex index b6a0d3c9931..22ce51d8cbd 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex @@ -7,11 +7,11 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.code.tex,v 1.2 2008/01/15 10:27:34 tantau Exp $ +\ProvidesFileRCS{tikzlibrarypatterns.code.tex} -\usepgflibrary{patterns} +\usepgflibrary{patterns}% -\tikzoption{pattern color}{\edef\tikz@pattern@color{#1}} +\tikzoption{pattern color}{\edef\tikz@pattern@color{#1}}% \tikzoption{pattern}[]{% \edef\tikz@temp{#1}% \ifx\tikz@temp\tikz@nonetext% @@ -24,8 +24,8 @@ \fi% \tikz@addmode{\tikz@mode@filltrue}% \fi% -} -\def\tikz@pattern@color{black} -\def\tikz@pattern{dots} +}% +\def\tikz@pattern@color{black}% +\def\tikz@pattern{dots}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.meta.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.meta.code.tex index 6f8ec32f888..3b52136f708 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.meta.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypatterns.meta.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usepgflibrary{patterns.meta} +\usepgflibrary{patterns.meta}% \tikzset{% pattern color/.code=\edef\tikz@pattern@color{#1}, @@ -15,7 +15,7 @@ \edef\tikz@temp{#1}% \ifx\tikz@temp\tikz@nonetext% \tikz@addmode{\tikz@mode@fillfalse}% - \else% + \else% \ifx\tikz@temp\pgfutil@empty% \else% \tikz@addoption{\pgfsetfillpattern{#1}{\tikz@pattern@color}}% @@ -24,14 +24,14 @@ \tikz@addmode{\tikz@mode@filltrue}% \fi% } -} +}% -\def\tikz@pattern@color{black} -\def\tikz@pattern{} +\def\tikz@pattern@color{black}% +\def\tikz@pattern{}% \tikzset{patterns/.cd, .unknown/.code={% - \let\tikz@pat@key=\pgfkeyscurrentname% + \let\tikz@pat@key=\pgfkeyscurrentname% \pgfkeys{/pgf/patterns/\tikz@pat@key/.try={#1}}% }, bottom left/.style={/pgf/patterns/bottom left={\tikz@scan@one@point\pgf@pat@process#1}}, @@ -52,13 +52,13 @@ (\the\pgf@picmaxx+#1,\the\pgf@picmaxy+#1) }, /tikz/patterns/tile size={% - (\the\pgf@picmaxx-\the\pgf@picminx, + (\the\pgf@picmaxx-\the\pgf@picminx, \the\pgf@picmaxy-\the\pgf@picminy)}}}% }% \let\pgf@pat@declarepost=\tikz@pat@installbb% }, infer tile bounding box/.default=0pt, -} +}% \def\tikzdeclarepattern#1{% \begingroup% @@ -78,18 +78,18 @@ }% \pgfdeclarepattern{/tikz/patterns/.cd, #1}% \endgroup% - } - + }% + \def\tikz@declarepattern@install{% \let\tikz@compat@color@set=\tikz@compat@color@set@insidepatttern% \tikz@installcommands% -} +}% \let\tikz@compat@color@set@orig=\tikz@compat@color@set \def\tikz@compat@color@set@insidepatttern#1{% \tikz@compat@color@set@orig{#1}% \pgfsetfillcolor{#1}\pgfsetstrokecolor{#1}% -} +}% %%% Local Variables: diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypetri.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypetri.code.tex index e67027eadfb..7241394d804 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypetri.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypetri.code.tex @@ -7,60 +7,60 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypetri.code.tex,v 1.3 2013/07/17 08:56:23 tantau Exp $ +\ProvidesFileRCS{tikzlibrarypetri.code.tex} % Styles for places: -\tikzstyle{every place}= [] -\tikzstyle{place}= [circle,draw,inner sep=0pt, - minimum size=5ex, - every place] +\tikzset{every place/.style= {}}% +\tikzset{place/.style= {circle,draw,inner sep=0pt, + minimum size=5ex, + every place}}% % Styles for transition: -\tikzstyle{every transition}= [] -\tikzstyle{transition}= [rectangle,draw,inner sep=0pt, - minimum size=4mm, - every transition] +\tikzset{every transition/.style= {}}% +\tikzset{transition/.style= {rectangle,draw,inner sep=0pt, + minimum size=4mm, + every transition}}% % Styles for relationship types: -\tikzstyle{pre}= [<-,shorten <=1pt] -\tikzstyle{post}= [->,shorten >=1pt] -\tikzstyle{pre and post}= [<->,shorten >=1pt,shorten <=1pt] +\tikzset{pre/.style= {<-,shorten <=1pt}}% +\tikzset{post/.style= {->,shorten >=1pt}}% +\tikzset{pre and post/.style= {<->,shorten >=1pt,shorten <=1pt}}% % Styles for marks: -\tikzstyle{every token}= [] -\tikzstyle{token}= [fill=black,draw=none,circle, - inner sep=0.5pt,minimum size=1ex, - text=white,font=\pgfutil@font@tiny,every token] +\tikzset{every token/.style= {}}% +\tikzset{token/.style= {fill=black,draw=none,circle, + inner sep=0.5pt,minimum size=1ex, + text=white,font=\pgfutil@font@tiny,every token}}% -\tikzoption{token distance}{\def\tikz@token@distance{#1}} -\def\tikz@token@distance{1.5ex} +\tikzoption{token distance}{\def\tikz@token@distance{#1}}% +\def\tikz@token@distance{1.5ex}% -\tikzstyle{children are tokens}= [growth function=\tikz@grow@tokens,edge from parent path=] +\tikzset{children are tokens/.style= {growth function=\tikz@grow@tokens,edge from parent path=}}% \tikzoption{tokens}{% \ifnum#1>0\relax% \tikzset{append after command={} {[children are tokens]child foreach \tikz@dummy in {1,...,#1} {node[token]{}}}}% - \fi} + \fi}% \tikzoption{colored tokens}{% \tikzset{append after command={}% {[children are tokens]child foreach \tikz@child@color in {#1} {node[token,\tikz@child@color]{}}}}% - } + }% \tikzoption{structured tokens}{% \tikzset{append after command={}% {[children are tokens]child foreach \tikzpetrichildname in {#1} {node[token]{\tikzpetrichildname}}}}% - } + }% \def\tikz@grow@tokens{% @@ -70,77 +70,77 @@ \pgf@yc=0pt% \csname tikz@grow@tokens@placer@\the\tikznumberofchildren @\the\tikznumberofcurrentchild\endcsname% \pgftransformshift{\pgfqpoint{\pgf@xc}{\pgf@yc}}% -} +}% \def\tikz@def@grow@tokens#1#2#3#4{% \expandafter\def\csname tikz@grow@tokens@placer@#1@#2\endcsname{% \pgf@xc=#3\pgf@xa% \pgf@yc=#4\pgf@ya}% -} +}% % Single token -\tikz@def@grow@tokens{1}{1}{0}{0} +\tikz@def@grow@tokens{1}{1}{0}{0}% % Two tokens -\tikz@def@grow@tokens{2}{1}{-.5}{0} -\tikz@def@grow@tokens{2}{2}{.5}{0} +\tikz@def@grow@tokens{2}{1}{-.5}{0}% +\tikz@def@grow@tokens{2}{2}{.5}{0}% % Three tokens -\tikz@def@grow@tokens{3}{1}{0} {0.57} -\tikz@def@grow@tokens{3}{2}{-.5}{-.306025} -\tikz@def@grow@tokens{3}{3}{.5} {-.306025} +\tikz@def@grow@tokens{3}{1}{0} {0.57}% +\tikz@def@grow@tokens{3}{2}{-.5}{-.306025}% +\tikz@def@grow@tokens{3}{3}{.5} {-.306025}% % Four tokens -\tikz@def@grow@tokens{4}{1}{-.5}{.5} -\tikz@def@grow@tokens{4}{2}{.5}{.5} -\tikz@def@grow@tokens{4}{3}{-.5}{-.5} -\tikz@def@grow@tokens{4}{4}{.5}{-.5} +\tikz@def@grow@tokens{4}{1}{-.5}{.5}% +\tikz@def@grow@tokens{4}{2}{.5}{.5}% +\tikz@def@grow@tokens{4}{3}{-.5}{-.5}% +\tikz@def@grow@tokens{4}{4}{.5}{-.5}% % Five tokens -\tikz@def@grow@tokens{5}{1}{0}{.85} -\tikz@def@grow@tokens{5}{2}{-0.808398}{0.26266} -\tikz@def@grow@tokens{5}{3}{0.808398}{0.26266} -\tikz@def@grow@tokens{5}{4}{-0.499617}{-0.687664} -\tikz@def@grow@tokens{5}{5}{0.499617}{-0.687664} +\tikz@def@grow@tokens{5}{1}{0}{.85}% +\tikz@def@grow@tokens{5}{2}{-0.808398}{0.26266}% +\tikz@def@grow@tokens{5}{3}{0.808398}{0.26266}% +\tikz@def@grow@tokens{5}{4}{-0.499617}{-0.687664}% +\tikz@def@grow@tokens{5}{5}{0.499617}{-0.687664}% % Six tokens -\tikz@def@grow@tokens{6}{1}{-1}{.5} -\tikz@def@grow@tokens{6}{2}{0}{.5} -\tikz@def@grow@tokens{6}{3}{1}{.5} -\tikz@def@grow@tokens{6}{4}{-1}{-.5} -\tikz@def@grow@tokens{6}{5}{0}{-.5} -\tikz@def@grow@tokens{6}{6}{1}{-.5} +\tikz@def@grow@tokens{6}{1}{-1}{.5}% +\tikz@def@grow@tokens{6}{2}{0}{.5}% +\tikz@def@grow@tokens{6}{3}{1}{.5}% +\tikz@def@grow@tokens{6}{4}{-1}{-.5}% +\tikz@def@grow@tokens{6}{5}{0}{-.5}% +\tikz@def@grow@tokens{6}{6}{1}{-.5}% % Seven tokens -\tikz@def@grow@tokens{7}{1}{0}{1} -\tikz@def@grow@tokens{7}{2}{-1}{.5} -\tikz@def@grow@tokens{7}{3}{0}{0} -\tikz@def@grow@tokens{7}{4}{1}{.5} -\tikz@def@grow@tokens{7}{5}{-1}{-.5} -\tikz@def@grow@tokens{7}{6}{0}{-1} -\tikz@def@grow@tokens{7}{7}{1}{-.5} +\tikz@def@grow@tokens{7}{1}{0}{1}% +\tikz@def@grow@tokens{7}{2}{-1}{.5}% +\tikz@def@grow@tokens{7}{3}{0}{0}% +\tikz@def@grow@tokens{7}{4}{1}{.5}% +\tikz@def@grow@tokens{7}{5}{-1}{-.5}% +\tikz@def@grow@tokens{7}{6}{0}{-1}% +\tikz@def@grow@tokens{7}{7}{1}{-.5}% % Eight tokens -\tikz@def@grow@tokens{8}{1}{-.5}{1} -\tikz@def@grow@tokens{8}{2}{.5}{1} -\tikz@def@grow@tokens{8}{3}{-1}{0} -\tikz@def@grow@tokens{8}{4}{0}{0} -\tikz@def@grow@tokens{8}{5}{1}{0} -\tikz@def@grow@tokens{8}{6}{-1}{-1} -\tikz@def@grow@tokens{8}{7}{0}{-1} -\tikz@def@grow@tokens{8}{8}{1}{-1} +\tikz@def@grow@tokens{8}{1}{-.5}{1}% +\tikz@def@grow@tokens{8}{2}{.5}{1}% +\tikz@def@grow@tokens{8}{3}{-1}{0}% +\tikz@def@grow@tokens{8}{4}{0}{0}% +\tikz@def@grow@tokens{8}{5}{1}{0}% +\tikz@def@grow@tokens{8}{6}{-1}{-1}% +\tikz@def@grow@tokens{8}{7}{0}{-1}% +\tikz@def@grow@tokens{8}{8}{1}{-1}% % Eight tokens -\tikz@def@grow@tokens{9}{1}{-1}{1} -\tikz@def@grow@tokens{9}{2}{0}{1} -\tikz@def@grow@tokens{9}{3}{1}{1} -\tikz@def@grow@tokens{9}{4}{-1}{0} -\tikz@def@grow@tokens{9}{5}{0}{0} -\tikz@def@grow@tokens{9}{6}{1}{0} -\tikz@def@grow@tokens{9}{7}{-1}{-1} -\tikz@def@grow@tokens{9}{8}{0}{-1} -\tikz@def@grow@tokens{9}{9}{1}{-1} +\tikz@def@grow@tokens{9}{1}{-1}{1}% +\tikz@def@grow@tokens{9}{2}{0}{1}% +\tikz@def@grow@tokens{9}{3}{1}{1}% +\tikz@def@grow@tokens{9}{4}{-1}{0}% +\tikz@def@grow@tokens{9}{5}{0}{0}% +\tikz@def@grow@tokens{9}{6}{1}{0}% +\tikz@def@grow@tokens{9}{7}{-1}{-1}% +\tikz@def@grow@tokens{9}{8}{0}{-1}% +\tikz@def@grow@tokens{9}{9}{1}{-1}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplothandlers.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplothandlers.code.tex index f38560bc6a0..6e1b497b65b 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplothandlers.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplothandlers.code.tex @@ -7,8 +7,8 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplothandlers.code.tex,v 1.1 2008/01/09 17:57:16 tantau Exp $ +\ProvidesFileRCS{tikzlibraryplothandlers.code.tex} -\usepgflibrary{plothandlers} +\usepgflibrary{plothandlers}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplotmarks.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplotmarks.code.tex index 344db60fff0..3b2caac869a 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplotmarks.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplotmarks.code.tex @@ -7,8 +7,8 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryplotmarks.code.tex,v 1.1 2008/01/09 17:57:16 tantau Exp $ +\ProvidesFileRCS{tikzlibraryplotmarks.code.tex} -\usepgflibrary{plotmarks} +\usepgflibrary{plotmarks}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypositioning.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypositioning.code.tex index 7a9066e691e..830212928d5 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypositioning.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypositioning.code.tex @@ -7,30 +7,30 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarypositioning.code.tex,v 1.7 2008/10/06 09:35:29 tantau Exp $ +\ProvidesFileRCS{tikzlibrarypositioning.code.tex} -\tikzset{above/.code=\tikz@lib@place@handle@{#1}{south}{0}{1}{north}{1}} -\tikzset{above left/.code=\tikz@lib@place@handle@{#1}{south east}{-1}{1}{north west}{0.707106781}} -\tikzset{above right/.code=\tikz@lib@place@handle@{#1}{south west}{1}{1}{north east}{0.707106781}} -\tikzset{base left/.code =\tikz@lib@place@handle@{#1}{base east}{-1}{0}{base west}{1}} -\tikzset{base right/.code=\tikz@lib@place@handle@{#1}{base west}{1}{0}{base east}{1}} -\tikzset{below/.code=\tikz@lib@place@handle@{#1}{north}{0}{-1}{south}{1}} -\tikzset{below left/.code=\tikz@lib@place@handle@{#1}{north east}{-1}{-1}{south west}{0.707106781}} -\tikzset{below right/.code=\tikz@lib@place@handle@{#1}{north west}{1}{-1}{south east}{0.707106781}} -\tikzset{left/.code =\tikz@lib@place@handle@{#1}{east}{-1}{0}{west}{1}} -\tikzset{mid left/.code =\tikz@lib@place@handle@{#1}{mid east}{-1}{0}{mid west}{1}} -\tikzset{mid right/.code=\tikz@lib@place@handle@{#1}{mid west}{1}{0}{mid east}{1}} -\tikzset{right/.code=\tikz@lib@place@handle@{#1}{west}{1}{0}{east}{1}} +\tikzset{above/.code=\tikz@lib@place@handle@{#1}{south}{0}{1}{north}{1}}% +\tikzset{above left/.code=\tikz@lib@place@handle@{#1}{south east}{-1}{1}{north west}{0.707106781}}% +\tikzset{above right/.code=\tikz@lib@place@handle@{#1}{south west}{1}{1}{north east}{0.707106781}}% +\tikzset{base left/.code =\tikz@lib@place@handle@{#1}{base east}{-1}{0}{base west}{1}}% +\tikzset{base right/.code=\tikz@lib@place@handle@{#1}{base west}{1}{0}{base east}{1}}% +\tikzset{below/.code=\tikz@lib@place@handle@{#1}{north}{0}{-1}{south}{1}}% +\tikzset{below left/.code=\tikz@lib@place@handle@{#1}{north east}{-1}{-1}{south west}{0.707106781}}% +\tikzset{below right/.code=\tikz@lib@place@handle@{#1}{north west}{1}{-1}{south east}{0.707106781}}% +\tikzset{left/.code =\tikz@lib@place@handle@{#1}{east}{-1}{0}{west}{1}}% +\tikzset{mid left/.code =\tikz@lib@place@handle@{#1}{mid east}{-1}{0}{mid west}{1}}% +\tikzset{mid right/.code=\tikz@lib@place@handle@{#1}{mid west}{1}{0}{mid east}{1}}% +\tikzset{right/.code=\tikz@lib@place@handle@{#1}{west}{1}{0}{east}{1}}% \newif\iftikz@lib@ignore@size % Hook into resets: -\pgfutil@g@addto@macro\tikz@node@reset@hook{\tikz@addtransform{\tikz@lib@pos@call}\let\tikz@lib@pos@call=\relax} +\pgfutil@g@addto@macro\tikz@node@reset@hook{\tikz@addtransform{\tikz@lib@pos@call}\let\tikz@lib@pos@call=\relax}% -\tikzset{on grid/.is if=tikz@lib@ignore@size} +\tikzset{on grid/.is if=tikz@lib@ignore@size}% -\tikzset{node distance=1cm and 1cm} +\tikzset{node distance=1cm and 1cm}% \def\tikz@lib@place@handle@#1#2#3#4#5#6{% \def\tikz@anchor{#2}% @@ -38,7 +38,7 @@ \edef\tikz@temp{#1}% \def\tikz@lib@place@single@factor{#6}% \expandafter\tikz@lib@place@handle@@\expandafter{\tikz@temp}{#3}{#4}{#5}% -} +}% \def\tikz@lib@place@handle@@#1#2#3#4{% \pgfutil@in@{of }{#1}% \ifpgfutil@in@% @@ -54,7 +54,7 @@ \pgf@y=#3\pgf@y% \edef\tikz@lib@pos@call{\noexpand\pgftransformshift{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}}% \fi% -} +}% \def\tikz@lib@place@parse@nums#1{% \pgfutil@in@{and}{#1}% @@ -65,7 +65,7 @@ \pgf@x=\tikz@lib@place@single@factor\pgf@x% \pgf@y=\tikz@lib@place@single@factor\pgf@y% \fi -} +}% \def\tikz@lib@place@parse@nums@#1and#2\tikz@stop{% \pgfmathparse{#2}% \ifpgfmathunitsdeclared% @@ -88,7 +88,7 @@ \fi% \pgf@x=\pgf@xa% \pgf@y=\pgf@ya% -} +}% \def\tikz@lib@place@of#1of #2\tikz@stop#3{% \def\tikz@temp{#1}% @@ -97,7 +97,7 @@ \else% \tikz@lib@place@of@{#1}{#2}{#3}% \fi% -} +}% \def\tikz@lib@place@of@#1#2#3{% \tikz@scan@one@point\tikz@lib@place@remember(#2)% \iftikz@shapeborder% @@ -110,8 +110,8 @@ \fi% \fi% \edef\tikz@lib@place@nums{#1}% -} -\def\tikz@lib@place@remember#1{\def\tikz@node@at{#1}} +}% +\def\tikz@lib@place@remember#1{\def\tikz@node@at{#1}}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex index cab6be1f07b..99efbfeecae 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex @@ -7,48 +7,48 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex,v 1.4 2014/03/21 19:52:38 tantau Exp $ +\ProvidesFileRCS{tikzlibraryquotes.code.tex} -\def\tikz@quote@parser#1{\tikz@quote@@parser#1\pgf@stop} +\def\tikz@quote@parser#1{\tikz@quote@@parser#1\pgf@stop}% \def\tikz@quote@@parser"#1"{% \pgfutil@ifnextchar\bgroup{% \tikz@quote@@parser@group{#1}}{% \pgfutil@ifnextchar'{% \tikz@quote@@parser@apo{#1}}{% - \tikz@quote@@parser@normal{#1}}}} + \tikz@quote@@parser@normal{#1}}}}% \def\tikz@quote@@parser@apo#1'{% - \pgfutil@ifnextchar\bgroup{\tikz@quote@@parser@apo@group{#1}}{\tikz@quote@@parser@apo@normal{#1}}} + \pgfutil@ifnextchar\bgroup{\tikz@quote@@parser@apo@group{#1}}{\tikz@quote@@parser@apo@normal{#1}}}% \def\tikz@quote@@parser@group#1#2#3\pgf@stop{% \expandafter\def\expandafter\tikz@temp\expandafter{\tikz@quotes@as{#1}{#2}}% \expandafter\pgfkeysalso\expandafter{\tikz@temp}% -} +}% \def\tikz@quote@@parser@normal#1#2\pgf@stop{% \expandafter\def\expandafter\tikz@temp\expandafter{\tikz@quotes@as{#1}{#2}}% \expandafter\pgfkeysalso\expandafter{\tikz@temp}% -} +}% \def\tikz@quote@@parser@apo@group#1#2#3\pgf@stop{% \expandafter\def\expandafter\tikz@temp\expandafter{\tikz@quotes@as{#1}{',#2}}% \expandafter\pgfkeysalso\expandafter{\tikz@temp}% -} +}% \def\tikz@quote@@parser@apo@normal#1#2\pgf@stop{% \expandafter\def\expandafter\tikz@temp\expandafter{\tikz@quotes@as{#1}{',#2}}% \expandafter\pgfkeysalso\expandafter{\tikz@temp}% -} +}% -\pgfkeys{/handlers/first char syntax=true} +\pgfkeys{/handlers/first char syntax=true}% \def\tikz@enable@node@quotes{% \pgfkeyssetvalue{/handlers/first char syntax/the character "}{\tikz@quote@parser}% \let\tikz@quotes@as\tikz@node@quotes@as% -} +}% \def\tikz@enable@edge@quotes{% \pgfkeyssetvalue{/handlers/first char syntax/the character "}{\tikz@quote@parser}% \let\tikz@quotes@as\tikz@edge@quotes@as% -} +}% \def\tikz@enable@pic@quotes{% \pgfkeyssetvalue{/handlers/first char syntax/the character "}{\tikz@quote@parser}% \let\tikz@quotes@as\tikz@pic@quotes@as% -} +}% \tikzset{ node quotes mean/.code={\def\tikz@node@quotes@as##1##2{#1}}, @@ -73,17 +73,17 @@ \pgfkeyslet{/tikz/below left/.@cmd}\tikz@label@@below@left \pgfkeyslet{/tikz/below right/.@cmd}\tikz@label@@below@right } -} +}% -\def\tikz@label@@centered#1\pgfeov{\pgfkeysalso{label position=center,pin position=center}} -\def\tikz@label@@above#1\pgfeov{\pgfkeysalso{label position=90,pin position=90}} -\def\tikz@label@@below#1\pgfeov{\pgfkeysalso{label position=-90,pin position=-90}} -\def\tikz@label@@left#1\pgfeov{\pgfkeysalso{label position=180,pin position=180}} -\def\tikz@label@@right#1\pgfeov{\pgfkeysalso{label position=0,pin position=0}} -\def\tikz@label@@above@left#1\pgfeov{\pgfkeysalso{label position=135,pin position=135}} -\def\tikz@label@@below@left#1\pgfeov{\pgfkeysalso{label position=-135,pin position=-135}} -\def\tikz@label@@above@right#1\pgfeov{\pgfkeysalso{label position=45,pin position=45}} -\def\tikz@label@@below@right#1\pgfeov{\pgfkeysalso{label position=-45,pin position=-45}} +\def\tikz@label@@centered#1\pgfeov{\pgfkeysalso{label position=center,pin position=center}}% +\def\tikz@label@@above#1\pgfeov{\pgfkeysalso{label position=90,pin position=90}}% +\def\tikz@label@@below#1\pgfeov{\pgfkeysalso{label position=-90,pin position=-90}}% +\def\tikz@label@@left#1\pgfeov{\pgfkeysalso{label position=180,pin position=180}}% +\def\tikz@label@@right#1\pgfeov{\pgfkeysalso{label position=0,pin position=0}}% +\def\tikz@label@@above@left#1\pgfeov{\pgfkeysalso{label position=135,pin position=135}}% +\def\tikz@label@@below@left#1\pgfeov{\pgfkeysalso{label position=-135,pin position=-135}}% +\def\tikz@label@@above@right#1\pgfeov{\pgfkeysalso{label position=45,pin position=45}}% +\def\tikz@label@@below@right#1\pgfeov{\pgfkeysalso{label position=-45,pin position=-45}}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryrdf.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryrdf.code.tex new file mode 100644 index 00000000000..60c87f0dff9 --- /dev/null +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryrdf.code.tex @@ -0,0 +1,291 @@ +% Copyright 2016 by Till Tantau +% +% This file may be distributed and/or modified +% +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Public License. +% +% See the file doc/generic/pgf/licenses/LICENSE for more details. + +\ProvidesFileRCS{tikzlibraryrdf.code.tex} + + + +\def\tikz@add@rdf@pre@option#1{\expandafter\def\expandafter\tikz@rdf@pre@options\expandafter{\tikz@rdf@pre@options#1}}% +\def\tikz@add@rdf@post@option#1{\expandafter\def\expandafter\tikz@rdf@post@options\expandafter{\tikz@rdf@post@options#1}}% + +\let\tikz@rdf@pre@options\pgfutil@empty +\let\tikz@rdf@post@options\pgfutil@empty + +\tikzset{ + % + % Switching on the engine + % + rdf engine on/.code={% + \def\tikz@clear@rdf@options{\let\tikz@rdf@pre@options\pgfutil@empty\let\tikz@rdf@post@options\pgfutil@empty}% + \def\tikz@do@rdf@pre@options{\tikz@rdf@pre@options\let\tikz@rdf@pre@options\pgfutil@empty}% + \def\tikz@do@rdf@post@options{\tikz@rdf@post@options\let\tikz@rdf@post@options\pgfutil@empty}% + \pgfkeys{/tikz/rdf engine/.code=\tikz@add@rdf@pre@option{\pgfqkeys{/tikz/rdf engine}{##1}}}% + }, + rdf engine/.cd, + % + every statement/.style=, + % + % Namespaces + % + prefix/.code=\pgfrdfprefix{#1}, + % + % Core commands + % + statement/.code={% + {% + \pgfkeys{/tikz/rdf engine/every statement}% + \pgfqkeys{/tikz/rdf engine/statements}{#1}% + \iftikz@rdf@is@a@container\tikz@rdf@init@container\fi% + \iftikz@rdf@is@a@member\tikz@rdf@make@member\fi% + \tikz@rdf@make@triple% + \expandafter}\tikz@rdf@action% + }, + get scope curie/.code={% + \ifx\tikz@id@name\pgfutil@empty% + \def\tikz@id@name{@rdf}% + \fi% + \pgfidrefnextuse\tikz@temp{\tikz@id@name}% + \edef#1{\tikzrdfhashmark\tikz@temp}% + }, + get new resource curie/.code={% + \pgfsys@new@id\tikz@temp% + \edef#1{\tikzrdfhashmark\tikz@temp}% + }, + scope is new context/.style={get scope curie=\tikzrdfcontext} +}% + +\def\tikzrdfcontext{\tikzrdfhashmark}%empty by default + +\tikzset{ + rdf engine/statements/.cd, + % + % Core properties of statements + % + subject/.code={% + \def\tikz@rdf@target{\tikz@rdf@subject}% + \tikz@rdf@parse{#1}% + }, + predicate/.code={% + \def\tikz@rdf@target{\tikz@rdf@predicate}% + \tikz@rdf@parse{#1}% + }, + object/.code={% + \let\tikz@rdf@object@literal\relax% + \let\tikz@rdf@object\relax% + \def\tikz@temp{#1}% + \ifx\tikz@temp\tikz@rdf@current@scope@text% + \tikz@rdf@object@scope@contenttrue% + \else% + \tikz@rdf@object@scope@contentfalse% + \def\tikz@rdf@target{\tikz@rdf@object}% + \tikz@rdf@parse{#1}% + \fi% + }, + % + % Shorthands + % + has type/.style={predicate=rdf:type,object={#1}}, + % + % Containers + % + is a bag/.style={has type=rdf:Bag, is a container}, + is a sequence/.style={has type=rdf:Seq, is a container}, + is an alternative/.style={has type=rdf:Alt, is a container}, + % + is a container/.code={\tikz@rdf@is@a@containertrue}, + % + has as member/.code={\tikz@rdf@is@a@membertrue},% +}% + +\def\tikz@rdf@current@scope@text{scope content}% + +\let\tikz@rdf@subject\relax +\let\tikz@rdf@predicate\pgfutil@empty +\let\tikz@rdf@object\relax +\let\tikz@rdf@object@literal\relax +\let\tikz@rdf@container\relax + +\newif\iftikz@rdf@object@scope@content +\newif\iftikz@rdf@is@a@container +\newif\iftikz@rdf@is@a@member + + +\def\tikz@rdf@parse#1{% + \edef\tikz@temp{#1}% + \expandafter\tikz@rdf@parse@#1\relax% +}% + +\def\tikz@rdf@parse@{% + \pgfutil@ifnextchar({\tikz@rdf@parse@name}{%) + \pgfutil@ifnextchar"{\tikz@rdf@parse@literals}{% + \tikz@rdf@parse@curie% + }% + }% +}% + +\def\tikz@rdf@parse@name(#1)\relax{% + \pgfidrefprevuse\tikz@rdf@the@id{#1}\expandafter\edef\tikz@rdf@target{\tikzrdfhashmark\tikz@rdf@the@id}% +}% +\def\tikz@rdf@parse@literals"#1"{% + \ifx\tikz@rdf@target\tikz@rdf@object@name% + \def\tikz@rdf@object@literal{#1}% + \else% + \tikzerror{Only RDF objects can be literals}% + \fi% + \pgfutil@ifnextchar\relax\pgfutil@gobble\tikz@rdf@parse@literals@rest% +}% +\def\tikz@rdf@parse@literals@rest and scope content\relax{% + \tikz@rdf@object@scope@contenttrue% +}% + +\def\tikz@rdf@object@name{\tikz@rdf@object}% +\def\tikz@rdf@parse@curie#1\relax{% + \expandafter\def\tikz@rdf@target{#1}% +}% + +{% + \catcode`\#=11 + \gdef\tikzrdfhashmark{#}% +}% + + +\def\tikz@rdf@make@triple{% + % First, ensure that subject, predicate and object are set: + \ifx\tikz@rdf@subject\relax% + \tikzerror{RDF statement misses subject}% + \else% + \ifx\tikz@rdf@predicate\relax% + \tikzerror{RDF statement misses predicate}% + \else% + \iftikz@rdf@object@scope@content% + \edef\tikz@marshal{\noexpand\tikz@rdf@make@content@triple{\tikz@rdf@subject}{\tikz@rdf@predicate}{\tikz@rdf@object@literal}}% + \tikz@marshal% + \else% + \ifx\tikz@rdf@object\relax% + \ifx\tikz@rdf@object@literal\relax% + \tikzerror{RDF statement misses object}% + \else% + \edef\tikz@marshal{\noexpand\tikz@rdf@make@literal@triple{\tikz@rdf@subject}{\tikz@rdf@predicate}{\tikz@rdf@object@literal}}% + \tikz@marshal% + \fi% + \else% + \edef\tikz@marshal{\noexpand\tikz@rdf@make@normal@triple{\tikz@rdf@subject}{\tikz@rdf@predicate}{\tikz@rdf@object}}% + \tikz@marshal% + \fi% + \fi% + \fi% + \fi% +}% + +\def\tikz@rdf@make@content@triple#1#2#3{% + \def\tikz@rdf@action{% + \def\tikz@rdf@invoke@code{% + \def\tikz@temp{#3}% + \ifx\tikz@temp\tikz@rdf@object@literal@text\else% + \pgfrdfcontent{#3}% + \fi% + \pgfrdfabout{#1}% + \pgfrdfdatatype{rdf:XMLLiteral}% + \foreach \tikz@rdf@pred in {#2}{% + \ifx\tikz@rdf@pred\pgfutil@empty\else% + \expandafter\pgfrdfproperty\expandafter{\tikz@rdf@pred}% + \fi% + }% + }% + }% +}% + +\def\tikz@rdf@make@literal@triple#1#2#3{% + \def\tikz@rdf@action{% + \tikz@add@rdf@post@option{% + {% + \pgfrdfabout{#1}% + \foreach \tikz@rdf@pred in {#2}{% + \ifx\tikz@rdf@pred\pgfutil@empty\else% + \expandafter\pgfrdfproperty\expandafter{\tikz@rdf@pred}% + \fi% + }% + \pgfrdfcontent{#3}% + \pgfidscope% + \endpgfidscope% + }% + }% + }% +}% + +\def\tikz@rdf@make@normal@triple#1#2#3{% + \def\tikz@rdf@action{% + \tikz@add@rdf@post@option{% + {% + \pgfrdfabout{#1}% + \foreach \tikz@rdf@pred in {#2}{% + \ifx\tikz@rdf@pred\pgfutil@empty\else% + \expandafter\pgfrdfproperty\expandafter{\tikz@rdf@pred}% + \fi% + }% + \pgfrdfresource{#3}% + \pgfidscope% + \endpgfidscope% + }% + }% + }% +}% + +\def\tikz@rdf@object@literal@text{\tikz@rdf@object@literal}% + + + + +% Containers + +\def\tikz@rdf@init@container{% + \ifx\tikz@rdf@subject\relax% + \tikzerror{RDF statement misses subject}% + \else% + \expandafter\gdef\csname tikz@rdf@c@\tikz@rdf@subject\endcsname{0}% + \fi% +}% + + +\def\tikz@rdf@make@member{% + \ifx\tikz@rdf@subject\relax% + \tikzerror{RDF statement misses subject}% + \else% + % Get number: + \expandafter\let\expandafter\tikz@temp\csname tikz@rdf@c@\tikz@rdf@subject\endcsname% + \ifx\tikz@temp\relax% + \tikzerror{RDF subject is not a container}% + \else% + \c@pgf@counta\tikz@temp% + \advance\c@pgf@counta by1\relax% + \expandafter\xdef\csname tikz@rdf@c@\tikz@rdf@subject\endcsname{\the\c@pgf@counta}% + \edef\tikz@rdf@predicate{rdf:_\the\c@pgf@counta}% + \fi% + \fi% +}% + + + + + +% Hooks: + +\let\tikz@rdf@invoke@code\relax + +\def\tikz@rdf@id@hook{% + \tikz@rdf@invoke@code% + \let\tikz@rdf@invoke@code\relax% +}% + +% Add hook: +\expandafter\def\expandafter\tikz@id@hook\expandafter{\tikz@id@hook\tikz@rdf@id@hook}% + + + +\endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryscopes.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryscopes.code.tex index 808e34578d6..6245bf8ec1f 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryscopes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryscopes.code.tex @@ -7,24 +7,24 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryscopes.code.tex,v 1.2 2008/06/27 17:00:24 vibrovski Exp $ +\ProvidesFileRCS{tikzlibraryscopes.code.tex} % Redefine the after command hook... \def\tikz@lib@scope@check{% - \pgfutil@ifnextchar\tikz@intersect@finish{% - \tikz@intersect@finish\afterassignment\tikz@lib@scope@check\let\tikz@next% - }{% - \pgfutil@ifnextchar\par{% - \afterassignment\tikz@lib@scope@check\let\tikz@next% - }% - {\pgfutil@ifnextchar\bgroup{%gotcha - \afterassignment\tikz@lib@scope@gotcha\let\tikz@next% - }% - {}% - }% - }% -} + \pgfutil@ifnextchar\tikz@intersect@finish{% + \tikz@intersect@finish\afterassignment\tikz@lib@scope@check\let\tikz@next% + }{% + \pgfutil@ifnextchar\par{% + \afterassignment\tikz@lib@scope@check\let\tikz@next% + }% + {\pgfutil@ifnextchar\bgroup{%gotcha + \afterassignment\tikz@lib@scope@gotcha\let\tikz@next% + }% + {}% + }% + }% +}% \def\tikz@lib@scope@gotcha{% \pgfutil@ifnextchar[{%] @@ -32,11 +32,11 @@ }{% % false alarm \bgroup% - }% -} + }% +}% \def\tikz@lib@scope@action[#1]{% \scope[#1]\bgroup\aftergroup\endscope% \tikz@lib@scope@check% -} +}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadings.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadings.code.tex index 962d9956af9..c84fb467699 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadings.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadings.code.tex @@ -7,15 +7,15 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadings.code.tex,v 1.1 2008/10/29 21:58:38 tantau Exp $ +\ProvidesFileRCS{tikzlibraryshadings.code.tex} -\usepgflibrary{shadings} +\usepgflibrary{shadings}% \tikzset{ lower left/.style={shading=bilinear interpolation,/utils/exec=\colorlet{lower left}{#1}}, upper left/.style={shading=bilinear interpolation,/utils/exec=\colorlet{upper left}{#1}}, lower right/.style={shading=bilinear interpolation,/utils/exec=\colorlet{lower right}{#1}}, upper right/.style={shading=bilinear interpolation,/utils/exec=\colorlet{upper right}{#1}} -} +}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex index 424e19b8502..ebb2abf74c6 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex @@ -7,9 +7,9 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshadows.code.tex,v 1.3 2008/01/13 15:30:04 tantau Exp $ +\ProvidesFileRCS{tikzlibraryshadows.code.tex} -\usetikzlibrary{fadings} +\usetikzlibrary{fadings}% % General options @@ -17,7 +17,7 @@ /tikz/shadow scale/.initial=1, /tikz/shadow xshift/.initial=0pt, /tikz/shadow yshift/.initial=0pt, -} +}% % Basic shadow style \tikzset{ @@ -31,7 +31,7 @@ } }, every shadow/.style={} -} +}% @@ -51,7 +51,7 @@ #1 } } -} +}% % @@ -70,7 +70,7 @@ #1 } } -} +}% @@ -90,7 +90,7 @@ #1, } } -} +}% @@ -113,7 +113,7 @@ #1 } } -} +}% % @@ -143,5 +143,4 @@ #1, }, } -} - +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex index f8d0604c965..20e2022c115 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex @@ -7,10 +7,10 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex,v 1.1 2008/01/09 17:57:16 tantau Exp $ +\ProvidesFileRCS{tikzlibraryshapes.arrows.code.tex} -\usepgflibrary{shapes.arrows} +\usepgflibrary{shapes.arrows}% -\pgfkeys{/tikz/arrow box arrows/.code={\pgf@lib@arrowbox@parsearrows{#1}}} +\pgfkeys{/tikz/arrow box arrows/.code={\pgf@lib@arrowbox@parsearrows{#1}}}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex index 9bb2d738770..12b4953349f 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex @@ -7,29 +7,29 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\usepgflibrary{shapes.callouts} +\usepgflibrary{shapes.callouts}% \pgfkeys{/tikz/callout absolute pointer/.code={% - \tikz@scan@one@point\tikz@lib@callout@checkforplus#1\relax% - }% -} + \tikz@scan@one@point\tikz@lib@callout@checkforplus#1\relax% + }% +}% \def\tikz@lib@callout@checkforplus#1{% - \pgfutil@ifnextchar+{\def\tikz@lib@callout@originalpoint{#1}\tikz@lib@callout@scan@relative}% - {\pgf@lib@callout@makeabsolutepointer{#1}}}% + \pgfutil@ifnextchar+{\def\tikz@lib@callout@originalpoint{#1}\tikz@lib@callout@scan@relative}% + {\pgf@lib@callout@makeabsolutepointer{#1}}}% \def\tikz@lib@callout@scan@relative+{% - \pgfutil@ifnextchar+{\tikz@lib@callout@scan@plusplus}{\tikz@lib@callout@scan@plus}} -\def\tikz@lib@callout@scan@plusplus+{\tikz@scan@one@point\tikz@lib@callout@add} -\def\tikz@lib@callout@scan@plus{\tikz@scan@one@point\tikz@lib@callout@add} + \pgfutil@ifnextchar+{\tikz@lib@callout@scan@plusplus}{\tikz@lib@callout@scan@plus}}% +\def\tikz@lib@callout@scan@plusplus+{\tikz@scan@one@point\tikz@lib@callout@add}% +\def\tikz@lib@callout@scan@plus{\tikz@scan@one@point\tikz@lib@callout@add}% \def\tikz@lib@callout@add#1{% - \expandafter\pgf@lib@callout@makeabsolutepointer\expandafter{% - \expandafter\pgfpointadd\expandafter{\tikz@lib@callout@originalpoint}{#1}}% + \expandafter\pgf@lib@callout@makeabsolutepointer\expandafter{% + \expandafter\pgfpointadd\expandafter{\tikz@lib@callout@originalpoint}{#1}}% }% \pgfkeys{/tikz/callout relative pointer/.code={% - \tikz@scan@one@point\pgf@lib@callout@makerelativepointer#1\relax% - }% -} + \tikz@scan@one@point\pgf@lib@callout@makerelativepointer#1\relax% + }% +}% -\endinput
\ No newline at end of file +\endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex index 83c808071bf..0e1c84a287a 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex @@ -7,13 +7,13 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex,v 1.1 2008/01/09 17:57:16 tantau Exp $ +\ProvidesFileRCS{tikzlibraryshapes.code.tex} -\usetikzlibrary{shapes.geometric} -\usetikzlibrary{shapes.misc} -\usetikzlibrary{shapes.symbols} -\usetikzlibrary{shapes.arrows} -\usetikzlibrary{shapes.callouts} -\usetikzlibrary{shapes.multipart} +\usetikzlibrary{shapes.geometric}% +\usetikzlibrary{shapes.misc}% +\usetikzlibrary{shapes.symbols}% +\usetikzlibrary{shapes.arrows}% +\usetikzlibrary{shapes.callouts}% +\usetikzlibrary{shapes.multipart}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.IEC.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.IEC.code.tex index ae11747144e..e41ddf83a00 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.IEC.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.IEC.code.tex @@ -7,34 +7,32 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.IEC.code.tex,v 1.3 2008/01/27 11:39:49 vibrovski Exp $ +\ProvidesFileRCS{tikzlibraryshapes.gates.logic.IEC.code.tex} -\usepgflibrary{shapes.gates.logic.IEC} +\usepgflibrary{shapes.gates.logic.IEC}% \tikzset{% use IEC style logic gates/.code={% - \tikzset{% - and gate/.style={shape=and gate IEC}, - nand gate/.style={shape=nand gate IEC}, - or gate/.style={shape=or gate IEC}, - nor gate/.style={shape=nor gate IEC}, - xor gate/.style={shape=xor gate IEC}, - xnor gate/.style={shape=xnor gate IEC}, - not gate/.style={shape=not gate IEC}, - buffer gate/.style={shape=buffer gate IEC}, - and gate symbol/.style={and gate IEC symbol={##1}}, - nand gate symbol/.style={nand gate IEC symbol={##1}}, - or gate symbol/.style={or gate IEC symbol={##1}}, - nor gate symbol/.style={nor gate IEC symbol={##1}}, - xor gate symbol/.style={xor gate IEC symbol={##1}}, - xnor gate symbol/.style={xnor gate IEC symbol={##1}}, - not gate symbol/.style={not gate IEC symbol={##1}}, - buffer gate symbol/.style={buffer gate IEC symbol={##1}}, - logic gate symbol align/.style={/pgf/logic gate IEC symbol align={##1}}, - logic gate symbol color/.style={/pgf/logic gate IEC symbol color={##1}} - }% - }% -} + \tikzset{% + and gate/.style={shape=and gate IEC}, + nand gate/.style={shape=nand gate IEC}, + or gate/.style={shape=or gate IEC}, + nor gate/.style={shape=nor gate IEC}, + xor gate/.style={shape=xor gate IEC}, + xnor gate/.style={shape=xnor gate IEC}, + not gate/.style={shape=not gate IEC}, + buffer gate/.style={shape=buffer gate IEC}, + and gate symbol/.style={and gate IEC symbol={##1}}, + nand gate symbol/.style={nand gate IEC symbol={##1}}, + or gate symbol/.style={or gate IEC symbol={##1}}, + nor gate symbol/.style={nor gate IEC symbol={##1}}, + xor gate symbol/.style={xor gate IEC symbol={##1}}, + xnor gate symbol/.style={xnor gate IEC symbol={##1}}, + not gate symbol/.style={not gate IEC symbol={##1}}, + buffer gate symbol/.style={buffer gate IEC symbol={##1}}, + logic gate symbol align/.style={/pgf/logic gate IEC symbol align={##1}}, + logic gate symbol color/.style={/pgf/logic gate IEC symbol color={##1}} + }% + }% +}% \endinput - - diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.US.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.US.code.tex index 0b8a744126b..99411f2b12f 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.US.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.US.code.tex @@ -7,34 +7,34 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.gates.logic.US.code.tex,v 1.1 2008/01/25 08:26:00 vibrovski Exp $ +\ProvidesFileRCS{tikzlibraryshapes.gates.logic.US.code.tex} -\usepgflibrary{shapes.gates.logic.US} +\usepgflibrary{shapes.gates.logic.US}% \tikzset{% use US style logic gates/.code={% - \tikzset{% - and gate/.style={shape=and gate US}, - nand gate/.style={shape=nand gate US}, - or gate/.style={shape=or gate US}, - nor gate/.style={shape=nor gate US}, - xor gate/.style={shape=xor gate US}, - xnor gate/.style={shape=xnor gate US}, - not gate/.style={shape=not gate US}, - buffer gate/.style={shape=buffer gate US} - }% - }, - use CDH style logic gates/.code={% - \tikzset{% - and gate/.style={shape=and gate CDH}, - nand gate/.style={shape=nand gate CDH}, - or gate/.style={shape=or gate US}, - nor gate/.style={shape=nor gate US}, - xor gate/.style={shape=xor gate US}, - xnor gate/.style={shape=xnor gate US}, - not gate/.style={shape=not gate US}, - buffer gate/.style={shape=buffer gate US} - } - } -} + \tikzset{% + and gate/.style={shape=and gate US}, + nand gate/.style={shape=nand gate US}, + or gate/.style={shape=or gate US}, + nor gate/.style={shape=nor gate US}, + xor gate/.style={shape=xor gate US}, + xnor gate/.style={shape=xnor gate US}, + not gate/.style={shape=not gate US}, + buffer gate/.style={shape=buffer gate US} + }% + }, + use CDH style logic gates/.code={% + \tikzset{% + and gate/.style={shape=and gate CDH}, + nand gate/.style={shape=nand gate CDH}, + or gate/.style={shape=or gate US}, + nor gate/.style={shape=nor gate US}, + xor gate/.style={shape=xor gate US}, + xnor gate/.style={shape=xnor gate US}, + not gate/.style={shape=not gate US}, + buffer gate/.style={shape=buffer gate US} + } + } +}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex index dc5aad85554..ae3d6c7feb5 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex @@ -7,8 +7,8 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex,v 1.1 2008/01/09 17:57:16 tantau Exp $ +\ProvidesFileRCS{tikzlibraryshapes.geometric.code.tex} -\usepgflibrary{shapes.geometric} +\usepgflibrary{shapes.geometric}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex index 10794a092d2..9a8c13f6221 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex @@ -7,8 +7,8 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex,v 1.1 2008/01/09 17:57:16 tantau Exp $ +\ProvidesFileRCS{tikzlibraryshapes.misc.code.tex} -\usepgflibrary{shapes.misc} +\usepgflibrary{shapes.misc}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex index 564c77f8a80..797a0e25523 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex @@ -7,30 +7,30 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex,v 1.1 2008/01/09 17:57:16 tantau Exp $ +\ProvidesFileRCS{tikzlibraryshapes.multipart.code.tex} -\usepgflibrary{shapes.multipart} +\usepgflibrary{shapes.multipart}% \pgfkeys{/tikz/rectangle split/parts/.code={% - \pgfkeys{/pgf/rectangle split parts=#1}% - }% -} + \pgfkeys{/pgf/rectangle split parts=#1}% + }% +}% \pgfkeys{/tikz/rectangle split use custom fill/.code={% - \pgfkeys{/pgf/rectangle split use custom fill=#1}% - \pgfkeys{/tikz/fill=none}}% -} + \pgfkeys{/pgf/rectangle split use custom fill=#1}% + \pgfkeys{/tikz/fill=none}}% +}% -\pgfkeys{/tikz/rectangle split draw splits/.is if=pgfrectanglesplitdrawsplits} +\pgfkeys{/tikz/rectangle split draw splits/.is if=pgfrectanglesplitdrawsplits}% \pgfkeys{/tikz/rectangle split part align/.code={% - \pgfkeys{/pgf/rectangle split part align={#1}}% - }% + \pgfkeys{/pgf/rectangle split part align={#1}}% + }% }% \pgfkeys{/tikz/rectangle split part fill/.code={% - \pgfkeys{/pgf/rectangle split part fill={#1}}% - }% + \pgfkeys{/pgf/rectangle split part fill={#1}}% + }% }% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex index f3b935dc0bc..6927d8dea40 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex @@ -7,11 +7,11 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex,v 1.1 2008/01/09 17:57:16 tantau Exp $ +\ProvidesFileRCS{tikzlibraryshapes.symbols.code.tex} \pgfkeysifdefined{/tikz/shape border uses incircle}{}{% - \pgfkeys{/tikz/shape border uses incircle/.is if=pgfshapeborderusesincircle}} - -\usepgflibrary{shapes.symbols} + \pgfkeys{/tikz/shape border uses incircle/.is if=pgfshapeborderusesincircle}}% + +\usepgflibrary{shapes.symbols}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysnakes.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysnakes.code.tex index 3fa9d3f8f46..64d6fc44f88 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysnakes.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysnakes.code.tex @@ -7,13 +7,13 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysnakes.code.tex,v 1.7 2013/07/15 12:05:31 tantau Exp $ +\ProvidesFileRCS{tikzlibrarysnakes.code.tex} \pgfwarning{Snakes have been superseded by decorations. Please use the decoration libraries instead of the snakes -library} +library}% -\usetikzlibrary{decorations.pathmorphing,decorations.pathreplacing,decorations.shapes} +\usetikzlibrary{decorations.pathmorphing,decorations.pathreplacing,decorations.shapes}% % Old snakes stuff: @@ -29,48 +29,48 @@ library} \tikz@snakedtrue% \let\tikz@snake=\tikz@@snake% \fi% - \fi} + \fi}% -\tikzoption{raise snake}{\def\pgf@snake@raise{\pgftransformyshift{#1}}} +\tikzoption{raise snake}{\def\pgf@snake@raise{\pgftransformyshift{#1}}}% \tikzoption{mirror snake}[true]{% \csname if#1\endcsname \def\pgf@snake@mirror{\pgftransformyscale{-1}}% \else% \let\pgf@snake@mirror=\pgfutil@empty% \fi -} +}% -\tikzoption{gap before snake}{\def\tikz@presnake{{moveto}{#1}{\noexpand\tikz@snake@install@trans}{}}} -\tikzoption{line before snake}{\def\tikz@presnake{{lineto}{#1}{\noexpand\tikz@snake@install@trans}{}}} +\tikzoption{gap before snake}{\def\tikz@presnake{{moveto}{#1}{\noexpand\tikz@snake@install@trans}{}}}% +\tikzoption{line before snake}{\def\tikz@presnake{{lineto}{#1}{\noexpand\tikz@snake@install@trans}{}}}% -\tikzoption{gap after snake}{\def\tikz@postsnake{{moveto}{#1}{\noexpand\tikz@snake@install@trans}{}}\def\tikz@mainsnakelength{\pgfsnakeremainingdistance-#1}} -\tikzoption{line after snake}{\def\tikz@postsnake{{lineto}{#1}{\noexpand\tikz@snake@install@trans}{}}\def\tikz@mainsnakelength{\pgfsnakeremainingdistance-#1}} +\tikzoption{gap after snake}{\def\tikz@postsnake{{moveto}{#1}{\noexpand\tikz@snake@install@trans}{}}\def\tikz@mainsnakelength{\pgfsnakeremainingdistance-#1}}% +\tikzoption{line after snake}{\def\tikz@postsnake{{lineto}{#1}{\noexpand\tikz@snake@install@trans}{}}\def\tikz@mainsnakelength{\pgfsnakeremainingdistance-#1}}% \tikzoption{gap around snake}{% \def\tikz@presnake{{moveto}{#1}{\noexpand\tikz@snake@install@trans}{}}% \def\tikz@postsnake{{moveto}{#1}{\noexpand\tikz@snake@install@trans}{}}% \def\tikz@mainsnakelength{\pgfsnakeremainingdistance-#1}% -} +}% \tikzoption{line around snake}{% \def\tikz@presnake{{lineto}{#1}{\noexpand\tikz@snake@install@trans}{}}% \def\tikz@postsnake{{lineto}{#1}{\noexpand\tikz@snake@install@trans}{}}% \def\tikz@mainsnakelength{\pgfsnakeremainingdistance-#1}% -} +}% \let\pgf@snake@mirror=\pgfutil@empty \let\pgf@snake@raise=\pgfutil@empty -\def\tikz@snake@install@trans{\pgfsetsnakesegmenttransformation{\pgf@snake@mirror\pgf@snake@raise}} +\def\tikz@snake@install@trans{\pgfsetsnakesegmenttransformation{\pgf@snake@mirror\pgf@snake@raise}}% -\def\tikz@snake{zigzag} +\def\tikz@snake{zigzag}% \let\tikz@presnake=\pgfutil@empty \let\tikz@postsnake=\pgfutil@empty -\def\tikz@mainsnakelength{\pgfsnakeremainingdistance} +\def\tikz@mainsnakelength{\pgfsnakeremainingdistance}% -\tikzstyle{snake triangles 45}= [snake=triangles,segment object length=2.41421356\pgfsnakesegmentamplitude] -\tikzstyle{snake triangles 60}= [snake=triangles,segment object length=1.73205081\pgfsnakesegmentamplitude] -\tikzstyle{snake triangles 90}= [snake=triangles,segment object length=\pgfsnakesegmentamplitude] +\tikzset{snake triangles 45/.style= {snake=triangles,segment object length=2.41421356\pgfsnakesegmentamplitude}}% +\tikzset{snake triangles 60/.style= {snake=triangles,segment object length=1.73205081\pgfsnakesegmentamplitude}}% +\tikzset{snake triangles 90/.style= {snake=triangles,segment object length=\pgfsnakesegmentamplitude}}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryspy.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryspy.code.tex index 099448c5165..b23cf08caf2 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryspy.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryspy.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryspy.code.tex,v 1.4 2011/05/19 08:56:54 tantau Exp $ +\ProvidesFileRCS{tikzlibraryspy.code.tex} @@ -31,7 +31,7 @@ connect spies/.style={ spy connection path={\draw[thin] (tikzspyonnode) -- (tikzspyinnode);} } -} +}% \newbox\tikz@lib@spybox @@ -61,21 +61,21 @@ magnification/.style={lens={scale=#1}}, spy connection path/.store in=\tikz@lib@spy@path, spy connection path= -} +}% \tikzset{ tikz@lib@reset@gs/.style={black,thin,solid,opaque,line cap=butt,line join=miter} -} +}% \def\tikz@lib@spy@parse{% \pgfutil@ifnextchar[{\tikz@lib@spy@parse@opt}{\tikz@lib@spy@parse@opt[]}%] -} +}% \def\tikz@lib@spy@parse@opt[#1]{ \pgfutil@ifnextchar x{\tikz@lib@spy@parse@opta[#1]}{\tikz@lib@spy@parse@opta[#1]}%] -} +}% \def\tikz@lib@spy@parse@opta[#1]on#2in node#3;{% \pgfutil@g@addto@macro\tikz@lib@spy@collection{\tikz@lib@spy@do{#1}{#2}{#3}}% -} +}% \def\tikz@lib@spy@do#1#2#3{% \scope[tikz@lib@spy@style,#1] @@ -110,14 +110,14 @@ \endpgfpicture};}]#3{}; \tikz@lib@spy@path \endscope -} +}% \def\tikz@lib@spy@shift#1{% \pgf@process{#1}% \pgf@x=-\pgf@x% \pgf@y=-\pgf@y% \pgftransformshift{}% -} +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysvg.path.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysvg.path.code.tex index f0eae010424..8b64ccc3ce7 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysvg.path.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysvg.path.code.tex @@ -7,14 +7,14 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarysvg.path.code.tex,v 1.2 2013/09/23 18:04:35 tantau Exp $ +\ProvidesFileRCS{tikzlibrarysvg.path.code.tex} -\usepgflibrary{svg.path} +\usepgflibrary{svg.path}% -\def\tikz@svg@path vg{\pgfutil@ifnextchar[\tikz@svg@@path{\tikz@svg@@path[]}}%} +\def\tikz@svg@path vg{\pgfutil@ifnextchar[\tikz@svg@@path{\tikz@svg@@path[]}}%}% -\def\tikz@svg@@path[#1]{\pgfutil@ifnextchar"{\tikz@svg@@path@old{#1}}{\tikz@svg@@path@new{#1}}} -\def\tikz@svg@@path@new#1#2{\tikz@svg@@path@old{#1}"#2"} +\def\tikz@svg@@path[#1]{\pgfutil@ifnextchar"{\tikz@svg@@path@old{#1}}{\tikz@svg@@path@new{#1}}}% +\def\tikz@svg@@path@new#1#2{\tikz@svg@@path@old{#1}"#2"}% \def\tikz@svg@@path@old#1"#2"{ {% \tikzset{#1}% @@ -30,4 +30,4 @@ \tikz@lastysaved=\tikz@lasty% \tikz@updatecurrenttrue% \tikz@scan@next@command -}
\ No newline at end of file +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarythrough.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarythrough.code.tex index f369a23b830..cb634245327 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarythrough.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarythrough.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarythrough.code.tex,v 1.1 2008/02/03 19:37:27 tantau Exp $ +\ProvidesFileRCS{tikzlibrarythrough.code.tex} @@ -16,7 +16,7 @@ % Save transformations (correct?) \pgfgettransform{\tikz@lib@saved@transform}% \tikz@scan@one@point\tikz@lib@circle@through#1% - }} + }}% \def\tikz@lib@circle@through#1{% \tikz@addoption{% @@ -33,4 +33,4 @@ }% \pgfset{/pgf/minimum size/.expanded=\tikz@lib@circle@size}% }% -}
\ No newline at end of file +}% diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex index ea87a5bd394..b719271d57e 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex @@ -7,31 +7,31 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex,v 1.2 2008/06/17 21:23:44 tantau Exp $ +\ProvidesFileRCS{tikzlibrarytopaths.code.tex} % Move to -\tikzstyle{move to}= [to path={(\tikztotarget) \tikztonodes}] +\tikzset{move to/.style= {to path={(\tikztotarget) \tikztonodes}}} % Straight to -\tikzstyle{line to}= [to path={-- (\tikztotarget) \tikztonodes}] +\tikzset{line to/.style= {to path={-- (\tikztotarget) \tikztonodes}}} % Curved to -\tikzstyle{every curve to}= [] -\tikzstyle{curve to}= [to path=\tikz@to@curve@path] +\tikzset{every curve to/.style= {}} +\tikzset{curve to/.style= {to path=\tikz@to@curve@path}} -\tikzoption{bend angle}{\def\tikz@to@bend{#1}} +\tikzoption{bend angle}{\pgfmathsetmacro\tikz@to@bend{#1}} \tikzoption{bend left}[]{% \def\pgf@temp{#1}% \ifx\pgf@temp\pgfutil@empty% \else% - \def\tikz@to@bend{#1}% + \pgfmathsetmacro\tikz@to@bend{#1}% \fi% \let\tikz@to@out=\tikz@to@bend% \c@pgf@counta=180\relax% @@ -45,9 +45,10 @@ \def\pgf@temp{#1}% \ifx\pgf@temp\pgfutil@empty% \else% - \def\tikz@to@bend{#1}% + \pgfmathsetmacro\tikz@to@bend{#1}% \fi% % Now, negate + \pgfmathsetmacro\tikz@to@out{\tikz@to@bend} \c@pgf@counta=\tikz@to@bend\relax% \c@pgf@counta=-\c@pgf@counta\relax% \edef\tikz@to@out{\the\c@pgf@counta}% @@ -158,7 +159,7 @@ \ifx\tikz@to@start@compute\tikz@to@start@compute@looseness% \tikz@to@compute@distance% \else% - \ifx\tikz@from@start@compute\tikz@to@start@compute@looseness% + \ifx\tikz@from@start@compute\tikz@to@start@compute@looseness% \tikz@to@compute@distance% \fi% \fi% @@ -179,9 +180,9 @@ \pgf@process{\pgfpointdiff{\tikz@first@point}{\tikz@second@point}}% \ifdim\pgf@x<0pt\pgf@xa=-\pgf@x\else\pgf@xa=\pgf@x\fi% \ifdim\pgf@y<0pt\pgf@ya=-\pgf@y\else\pgf@ya=\pgf@y\fi% - % + % % Calculate length of second to first vector: - % + % \pgf@process{\pgfpointnormalised{\pgfqpoint{\pgf@xa}{\pgf@ya}}}% \ifdim\pgf@x>\pgf@y% \c@pgf@counta=\pgf@x% @@ -255,10 +256,10 @@ \def\tikz@@@to@compute@relative#1{% \def\tikz@toto{#1}% \begingroup - % + % % Adjust start and target so that they lie on the border in the % rotated coordinate system. - % + % \pgfutil@ifundefined{pgf@sh@ns@\tikztostart} {% \let\tikz@first@point=\tikz@tofrom% @@ -363,18 +364,18 @@ % Loops -\tikzstyle{loop}= [to path={ +\tikzset{loop/.style= {to path={ \pgfextra{\let\tikztotarget=\tikztostart} [looseness=8,min distance=5mm,every loop] \tikz@to@curve@path - }] + }}} -\tikzstyle{every loop}= [->,shorten >=1pt] +\tikzset{every loop/.style= {->,shorten >=1pt}} -\tikzstyle{loop right}= [right,out=15,in=-15,loop] -\tikzstyle{loop above}= [above,out=105,in=75,loop] -\tikzstyle{loop left}= [left,out=195,in=165,loop] -\tikzstyle{loop below}= [below,out=285,in=255,loop] +\tikzset{loop right/.style= {right,out=15,in=-15,loop}} +\tikzset{loop above/.style= {above,out=105,in=75,loop}} +\tikzset{loop left/.style= {left,out=195,in=165,loop}} +\tikzset{loop below/.style= {below,out=285,in=255,loop}} diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytrees.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytrees.code.tex index 7d34c2d6819..830435a029b 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytrees.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytrees.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytrees.code.tex,v 1.2 2008/02/24 10:00:52 tantau Exp $ +\ProvidesFileRCS{tikzlibrarytrees.code.tex} @@ -15,13 +15,13 @@ % Three point growth % -\tikzoption{grow via three points}{\let\tikz@grow=\tikz@grow@three\tikz@parse@three#1} +\tikzoption{grow via three points}{\let\tikz@grow=\tikz@grow@three\tikz@parse@three#1}% \def\tikz@parse@three one child at#1(#2)#3and two children at#4(#5)#6and#7(#8){% \def\tikz@tree@one@child{\tikz@scan@one@point\pgf@process(#2)} \def\tikz@tree@left@child{\tikz@scan@one@point\pgf@process(#5)} \def\tikz@tree@right@child{\tikz@scan@one@point\pgf@process(#8)} -} +}% \def\tikz@grow@three{% \pgf@process{\tikz@tree@one@child}% @@ -51,7 +51,7 @@ \advance\pgf@ya by\pgf@yc% \edef\pgf@temp{\noexpand\pgftransformshift{\noexpand\pgfqpoint{\the\pgf@xa}{\the\pgf@ya}}}% \pgf@temp% -} +}% @@ -59,31 +59,27 @@ % Circle grow % -\tikzstyle{grow cyclic}=[growth function=\tikz@grow@circle] +\tikzset{grow cyclic/.style={growth function=\tikz@grow@circle}}% -\tikzset{sibling angle/.initial=20} +\tikzset{sibling angle/.initial=20}% \def\tikz@grow@circle{% \pgftransformrotate{% (\pgfkeysvalueof{/tikz/sibling angle})*(-.5-.5*\tikznumberofchildren+\tikznumberofcurrentchild)}% \pgftransformxshift{\the\tikzleveldistance}% -} +}% -\tikzoption{counterclockwise from}{\let\tikz@grow=\tikz@grow@circle@from\def\tikz@grow@circle@from@start{#1}} +\tikzoption{counterclockwise from}{\let\tikz@grow=\tikz@grow@circle@from\def\tikz@grow@circle@from@start{#1}}% \def\tikz@grow@circle@from{% \pgftransformshift{\pgfpointpolar{\tikz@grow@circle@from@start+(\pgfkeysvalueof{/tikz/sibling angle})*(\tikznumberofcurrentchild-1)}{\the\tikzleveldistance}}% -} +}% -\tikzoption{clockwise from}{\let\tikz@grow=\tikz@grow@circle@from@\def\tikz@grow@circle@from@start{#1}} +\tikzoption{clockwise from}{\let\tikz@grow=\tikz@grow@circle@from@\def\tikz@grow@circle@from@start{#1}}% \def\tikz@grow@circle@from@{% \pgftransformshift{\pgfpointpolar{\tikz@grow@circle@from@start-(\pgfkeysvalueof{/tikz/sibling angle})*(\tikznumberofcurrentchild-1)}{\the\tikzleveldistance}}% -} - - - - +}% @@ -91,18 +87,18 @@ % Connections % -\tikzstyle{edge from parent fork down}= - [edge from parent path={(\tikzparentnode\tikzparentanchor) -- +(0pt,-.5\tikzleveldistance) -| (\tikzchildnode\tikzchildanchor)}] +\tikzset{edge from parent fork down/.style= + {edge from parent path={(\tikzparentnode\tikzparentanchor) -- +(0pt,-.5\tikzleveldistance) -| (\tikzchildnode\tikzchildanchor)}}}% + +\tikzset{edge from parent fork up/.style= + {edge from parent path={(\tikzparentnode\tikzparentanchor) -- +(0pt,.5\tikzleveldistance) -| (\tikzchildnode\tikzchildanchor)}}}% -\tikzstyle{edge from parent fork up}= - [edge from parent path={(\tikzparentnode\tikzparentanchor) -- +(0pt,.5\tikzleveldistance) -| (\tikzchildnode\tikzchildanchor)}] +\tikzset{edge from parent fork left/.style= + {edge from parent path={(\tikzparentnode\tikzparentanchor) -- +(-.5\tikzleveldistance,0pt) |- (\tikzchildnode\tikzchildanchor)}}}% -\tikzstyle{edge from parent fork left}= - [edge from parent path={(\tikzparentnode\tikzparentanchor) -- +(-.5\tikzleveldistance,0pt) |- (\tikzchildnode\tikzchildanchor)}] +\tikzset{edge from parent fork right/.style= + {edge from parent path={(\tikzparentnode\tikzparentanchor) -- +(.5\tikzleveldistance,0pt) |- (\tikzchildnode\tikzchildanchor)}}}% -\tikzstyle{edge from parent fork right}= - [edge from parent path={(\tikzparentnode\tikzparentanchor) -- +(.5\tikzleveldistance,0pt) |- (\tikzchildnode\tikzchildanchor)}] - \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryturtle.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryturtle.code.tex index c0306b4d304..009a309e311 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryturtle.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryturtle.code.tex @@ -7,29 +7,29 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesFileRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryturtle.code.tex,v 1.3 2008/06/18 23:34:49 tantau Exp $ +\ProvidesFileRCS{tikzlibraryturtle.code.tex} -\tikzset{turtle/.style={/tikz/turtle/.cd,#1}} +\tikzset{turtle/.style={/tikz/turtle/.cd,#1}}% % The current angle is stored in this key. -\tikzset{turtle/direction/.code=\gdef\tikz@lib@turtle@dir{#1},turtle/direction=90} +\tikzset{turtle/direction/.code=\gdef\tikz@lib@turtle@dir{#1},turtle/direction=90}% % The current angle is stored in this key. -\tikzset{turtle/distance/.initial=1cm} +\tikzset{turtle/distance/.initial=1cm}% % The to path options that are used to move the turtle -\tikzset{turtle/how/.style=} +\tikzset{turtle/how/.style=}% % Let the turtle jump home -\tikzset{turtle/home/.style={/tikz/insert path={(0,0) [turtle/direction=90]}}} +\tikzset{turtle/home/.style={/tikz/insert path={(0,0) [turtle/direction=90]}}}% % Moves the turtle forward by the given distance or, if no distance is % given, by turtle distance \tikzset{ turtle/forward/.default=\pgfkeysvalueof{/tikz/turtle/distance}, turtle/forward/.style={/tikz/insert path={to[/tikz/turtle/how]++(\tikz@lib@turtle@dir:#1)}} -} +}% @@ -38,11 +38,11 @@ \tikzset{ turtle/back/.default=\pgfkeysvalueof{/tikz/turtle/distance}, turtle/back/.style={turtle forward=-#1} -} +}% -% Turns the turle left by the given number of degrees +% Turns the turtle left by the given number of degrees \tikzset{ turtle/left/.default=90, turtle/left/.code={% @@ -50,12 +50,12 @@ \ifdim\pgfmathresult pt>360pt\relax% \pgfmathparse{\pgfmathresult-360}% \fi% - \global\let\tikz@lib@turtle@dir\pgfmathresult + \global\let\tikz@lib@turtle@dir\pgfmathresult } -} +}% -% Turns the turle left by the given number of degrees +% Turns the turtle left by the given number of degrees \tikzset{ turtle/right/.default=90, turtle/right/.code={% @@ -64,9 +64,9 @@ \ifdim\pgfmathresult pt<0pt\relax% \pgfmathparse{\pgfmathresult+360}% \fi% - \global\let\tikz@lib@turtle@dir\pgfmathresult + \global\let\tikz@lib@turtle@dir\pgfmathresult } -} +}% % Shortcuts: @@ -78,7 +78,7 @@ lt/.style={left=#1}, lt/.default=90, rt/.style={right=#1}, - rt/.default=90} + rt/.default=90}% \endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryviews.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryviews.code.tex new file mode 100644 index 00000000000..746dd60f638 --- /dev/null +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryviews.code.tex @@ -0,0 +1,45 @@ +% Copyright 2015 by Till Tantau +% +% This file may be distributed and/or modified +% +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Public License. +% +% See the file doc/generic/pgf/licenses/LICENSE for more details. + +\ProvidesFileRCS{tikzlibraryviews.code.tex} + + +\tikzset{ + meet/.style={execute at begin scope={\tikz@lib@view@parse{meet}#1\pgf@stop},execute at end scope={\endpgfviewboxscope}}, + view/.style={meet = {#1}}, + slice/.style={execute at begin scope={\tikz@lib@view@parse{slice}#1\pgf@stop},execute at end scope={\endpgfviewboxscope}}, +}% + +\def\tikz@lib@view@parse#1#2\pgf@stop{% + \tikz@scan@one@point\tikz@lib@view@a#2\pgf@stop% + \pgfviewboxscope{\tikz@lib@view@stored@a}{\tikz@lib@view@stored@b}{\tikz@lib@view@stored@c}{\tikz@lib@view@stored@d}{#1}% +}% +\def\tikz@lib@view@a#1{% + \def\tikz@lib@view@stored@a{#1}% + \pgfutil@ifnextchar r{\tikz@lib@view@a@rec}{\tikz@scan@one@point\tikz@lib@view@b}% +}% +\def\tikz@lib@view@a@rec rectangle{\tikz@scan@one@point\tikz@lib@view@b}% +\def\tikz@lib@view@b#1{% + \def\tikz@lib@view@stored@b{#1}% + \pgfutil@ifnextchar\pgf@stop{% + \let\tikz@lib@view@stored@c\tikz@lib@view@stored@a% + \let\tikz@lib@view@stored@d\tikz@lib@view@stored@b% + \pgfutil@gobble% + }{\tikz@lib@view@b@at}% +}% +\def\tikz@lib@view@b@at at{\tikz@scan@one@point\tikz@lib@view@c}% +\def\tikz@lib@view@c#1{% + \def\tikz@lib@view@stored@c{#1}% + \pgfutil@ifnextchar r{\tikz@lib@view@c@rec}{\tikz@scan@one@point\tikz@lib@view@d}% +}% +\def\tikz@lib@view@c@rec rectangle{\tikz@scan@one@point\tikz@lib@view@d}% +\def\tikz@lib@view@d#1{\def\tikz@lib@view@stored@d{#1}\pgfutil@ifnextchar\pgf@stop\pgfutil@gobble{\tikzerror{Wrong syntax for meet or slice key}}}% + + +\endinput diff --git a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex index 09d9a2fa122..7e3ff194bdf 100644 --- a/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex +++ b/Master/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex @@ -7,7 +7,7 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. -\ProvidesPackageRCS[v\pgfversion] $Header: /cvsroot/pgf/pgf/generic/pgf/frontendlayer/tikz/tikz.code.tex,v 1.151 2015/08/07 10:17:34 cfeuersaenger Exp $ +\ProvidesPackageRCS{tikz.code.tex} \def\tikzerror#1{\pgfutil@packageerror{tikz}{#1}{}} @@ -39,16 +39,15 @@ \newif\iftikz@snaked \newif\iftikz@decoratepath -% |\pgfutil@empty| is defined in \file{pgfutil-common.tex}. -\let\tikz@options=\pgfutil@empty +\let\tikz@options\pgfutil@empty % |\tikz@addoption| adds \texttt{#1} at the end of the replacement % text of |\tikz@options| without expansion. \def\tikz@addoption#1{% - \expandafter\def\expandafter\tikz@options\expandafter{\tikz@options#1}} + \expandafter\def\expandafter\tikz@options\expandafter{\tikz@options#1}}% % Same as |tikz@addoption| for |\tikz@mode|. Note that |\tikz@mode| is % initially let to |\pgfutil@empty| later (see path usage options). \def\tikz@addmode#1{% - \expandafter\def\expandafter\tikz@mode\expandafter{\tikz@mode#1}} + \expandafter\def\expandafter\tikz@mode\expandafter{\tikz@mode#1}}% % Same as |tikz@addoption| for |\tikz@transform|. Works even if % |\tikz@transform| is not defined. In that case, nothing is added to % |\tikz@transform|: \texttt{#1} is expanded. @@ -57,54 +56,55 @@ #1% \else \expandafter\def\expandafter\tikz@transform\expandafter{\tikz@transform#1}% - \fi} + \fi +}% % TikZ options management. % Setting up the tikz key family (key management needs % \file{pgfkeys.code.tex}); -\pgfkeys{/tikz/.is family} +\pgfkeys{/tikz/.is family}% % |\tikzset| is a shortcut to set keys that belongs to the tikz % family. -\def\tikzset{\pgfqkeys{/tikz}} +\def\tikzset{\pgfqkeys{/tikz}}% % Note: |\tikzoption| is supported for compatibility only. |\tikzset| % should be used instead. \def\tikzoption#1{% \pgfutil@ifnextchar[%] - {\tikzoption@opt{#1}}{\tikzoption@noopt{#1}}} + {\tikzoption@opt{#1}}{\tikzoption@noopt{#1}}}% \def\tikzoption@opt#1[#2]#3{% \pgfkeysdef{/tikz/#1}{#3}% - \pgfkeyssetvalue{/tikz/#1/.@def}{#2}} + \pgfkeyssetvalue{/tikz/#1/.@def}{#2}}% \def\tikzoption@noopt#1#2{% \pgfkeysdef{/tikz/#1}{#2}% - \pgfkeyssetvalue{/tikz/#1/.@def}{\pgfkeysvaluerequired}} + \pgfkeyssetvalue{/tikz/#1/.@def}{\pgfkeysvaluerequired}}% % Baseline options \tikzoption{baseline}[0pt]{% \pgfutil@ifnextchar(%) - {\tikz@baseline@coordinate}{\tikz@baseline@simple}#1\@nil} -\def\tikz@baseline@simple#1\@nil{\pgfsetbaseline{#1}} + {\tikz@baseline@coordinate}{\tikz@baseline@simple}#1\@nil}% +\def\tikz@baseline@simple#1\@nil{\pgfsetbaseline{#1}}% \def\tikz@baseline@coordinate#1\@nil{% - \pgfsetbaselinepointlater{\tikz@scan@one@point\pgfutil@firstofone#1}} + \pgfsetbaselinepointlater{\tikz@scan@one@point\pgfutil@firstofone#1}}% -\tikzoption{trim left}[0pt]{\pgfutil@ifnextchar({\tikz@trim@coordinate{left}}{\tikz@trim@simple{left}}#1\@nil}%) -\tikzoption{trim right}{\pgfutil@ifnextchar({\tikz@trim@coordinate{right}}{\tikz@trim@simple{right}}#1\@nil}%) -\def\tikz@trim@simple#1#2\@nil{\csname pgfsettrim#1\endcsname{#2}} -\def\tikz@trim@coordinate#1#2\@nil{\csname pgfsettrim#1pointlater\endcsname{\tikz@scan@one@point\pgfutil@firstofone#2}} +\tikzoption{trim left}[0pt]{\pgfutil@ifnextchar({\tikz@trim@coordinate{left}}{\tikz@trim@simple{left}}#1\@nil}%)% +\tikzoption{trim right}{\pgfutil@ifnextchar({\tikz@trim@coordinate{right}}{\tikz@trim@simple{right}}#1\@nil}%)% +\def\tikz@trim@simple#1#2\@nil{\csname pgfsettrim#1\endcsname{#2}}% +\def\tikz@trim@coordinate#1#2\@nil{\csname pgfsettrim#1pointlater\endcsname{\tikz@scan@one@point\pgfutil@firstofone#2}}% % Draw options \tikzoption{line width}{\tikz@semiaddlinewidth{#1}}% -\def\tikz@semiaddlinewidth#1{\tikz@addoption{\pgfsetlinewidth{#1}}\pgfmathsetlength\pgflinewidth{#1}} +\def\tikz@semiaddlinewidth#1{\tikz@addoption{\pgfsetlinewidth{#1}}\pgfmathsetlength\pgflinewidth{#1}}% -\tikzoption{cap}{\tikz@addoption{\csname pgfset#1cap\endcsname}} -\tikzoption{join}{\tikz@addoption{\csname pgfset#1join\endcsname}} -\tikzoption{line cap}{\tikz@addoption{\csname pgfset#1cap\endcsname}} -\tikzoption{line join}{\tikz@addoption{\csname pgfset#1join\endcsname}} -\tikzoption{miter limit}{\tikz@addoption{\pgfsetmiterlimit{#1}}} +\tikzoption{cap}{\tikz@addoption{\csname pgfset#1cap\endcsname}}% +\tikzoption{join}{\tikz@addoption{\csname pgfset#1join\endcsname}}% +\tikzoption{line cap}{\tikz@addoption{\csname pgfset#1cap\endcsname}}% +\tikzoption{line join}{\tikz@addoption{\csname pgfset#1join\endcsname}}% +\tikzoption{miter limit}{\tikz@addoption{\pgfsetmiterlimit{#1}}}% \tikzoption{dash pattern}{% syntax: on 2pt off 3pt on 4pt ... \def\tikz@temp{#1}% @@ -116,23 +116,37 @@ \expandafter\tikz@scandashon\pgfutil@gobble#1o\@nil% \edef\tikz@temp{{\tikz@dashpattern}{\noexpand\tikz@dashphase}}% \expandafter\tikz@addoption\expandafter{\expandafter\pgfsetdash\tikz@temp}% - \fi} + \fi}% \tikzoption{dash phase}{% \def\tikz@dashphase{#1}% \edef\tikz@temp{{\tikz@dashpattern}{\noexpand\tikz@dashphase}}% \expandafter\tikz@addoption\expandafter{\expandafter\pgfsetdash\tikz@temp}% }% -\def\tikz@dashphase{0pt} -\def\tikz@dashpattern{} +\tikzoption{dash}{\tikz@parse@full@dash#1\pgf@stop}% +\def\tikz@parse@full@dash#1phase#2\pgf@stop{% + \def\tikz@dashphase{#2}% + \def\tikz@temp{#1}% + \ifx\tikz@temp\pgfutil@empty% + \def\tikz@dashpattern{}% + \tikz@addoption{\pgfsetdash{}{0pt}}% + \else% + \def\tikz@dashpattern{}% + \expandafter\tikz@scandashon\pgfutil@gobble#1o\@nil% + \edef\tikz@temp{{\tikz@dashpattern}{\noexpand\tikz@dashphase}}% + \expandafter\tikz@addoption\expandafter{\expandafter\pgfsetdash\tikz@temp}% + \fi% +}% +\def\tikz@dashphase{0pt}% +\def\tikz@dashpattern{}% \def\tikz@scandashon n#1o{% \expandafter\def\expandafter\tikz@dashpattern\expandafter{\tikz@dashpattern{#1}}% - \pgfutil@ifnextchar\@nil{\pgfutil@gobble}{\tikz@scandashoff}} + \pgfutil@ifnextchar\@nil{\pgfutil@gobble}{\tikz@scandashoff}}% \def\tikz@scandashoff ff#1o{% \expandafter\def\expandafter\tikz@dashpattern\expandafter{\tikz@dashpattern{#1}}% - \pgfutil@ifnextchar\@nil{\pgfutil@gobble}{\tikz@scandashon}} + \pgfutil@ifnextchar\@nil{\pgfutil@gobble}{\tikz@scandashon}}% -\tikzoption{draw opacity}{\tikz@addoption{\pgfsetstrokeopacity{#1}}} +\tikzoption{draw opacity}{\tikz@addoption{\pgfsetstrokeopacity{#1}}}% % Double draw options \tikzoption{double}[]{% @@ -146,7 +160,7 @@ \fi% \tikz@addmode{\tikz@mode@doubletrue}% \tikzset{every double/.try}% - \fi} + \fi}% \tikzoption{double distance}{% \pgfmathsetlength{\pgf@x}{#1}% \edef\tikz@double@setup{% @@ -156,7 +170,7 @@ \noexpand\pgfsetlinewidth{\pgflinewidth}% \noexpand\pgfsetinnerlinewidth{\the\pgf@x}% }% - \tikzset{double}} + \tikzset{double}}% \def\tikz@double@setup{% \pgf@x=2\pgflinewidth% \advance\pgf@x by0.6pt% @@ -175,28 +189,28 @@ \noexpand\pgfsetlinewidth{\pgflinewidth}% \noexpand\pgfsetinnerlinewidth{\pgf@xa}% }% - \tikzset{double}}} -\tikzset{double equal sign distance/.style={double distance between line centers=0.45ex}} + \tikzset{double}}}% +\tikzset{double equal sign distance/.style={double distance between line centers=0.45ex}}% % Fill options -\tikzoption{even odd rule}[]{\tikz@addoption{\pgfseteorule}} -\tikzoption{nonzero rule}[]{\tikz@addoption{\pgfsetnonzerorule}} +\tikzoption{even odd rule}[]{\tikz@addoption{\pgfseteorule}}% +\tikzoption{nonzero rule}[]{\tikz@addoption{\pgfsetnonzerorule}}% -\tikzoption{fill opacity}{\tikz@addoption{\pgfsetfillopacity{#1}}} +\tikzoption{fill opacity}{\tikz@addoption{\pgfsetfillopacity{#1}}}% % Joined fill/draw options -\tikzoption{opacity}{\tikz@addoption{\pgfsetstrokeopacity{#1}\pgfsetfillopacity{#1}}} +\tikzoption{opacity}{\tikz@addoption{\pgfsetstrokeopacity{#1}\pgfsetfillopacity{#1}}}% % Blend mode -\tikzset{blend mode/.code={\tikz@addoption{\pgfsetblendmode{#1}}}} +\tikzset{blend mode/.code={\tikz@addoption{\pgfsetblendmode{#1}}}}% % Main color options @@ -220,45 +234,45 @@ \pgfsetcolor{.}% \pgfsys@color@reset@inordertrue% }% - \def\tikz@textcolor{#1}} + \def\tikz@textcolor{#1}}% % Rounding options -\tikzoption{rounded corners}[4pt]{\pgfsetcornersarced{\pgfpoint{#1}{#1}}} -\tikzoption{sharp corners}[]{\pgfsetcornersarced{\pgfpointorigin}} +\tikzoption{rounded corners}[4pt]{\pgfsetcornersarced{\pgfpoint{#1}{#1}}}% +\tikzoption{sharp corners}[]{\pgfsetcornersarced{\pgfpointorigin}}% % Radii and arc options -\tikzset{x radius/.initial=0pt} -\tikzset{y radius/.initial=0pt} -\tikzset{radius/.style={/tikz/x radius=#1,/tikz/y radius=#1}} -\tikzset{start angle/.initial=} -\tikzset{end angle/.initial=} -\tikzset{delta angle/.initial=} +\tikzset{x radius/.initial=0pt}% +\tikzset{y radius/.initial=0pt}% +\tikzset{radius/.style={/tikz/x radius=#1,/tikz/y radius=#1}}% +\tikzset{start angle/.initial=}% +\tikzset{end angle/.initial=}% +\tikzset{delta angle/.initial=}% % Coordinate options -\tikzoption{x}{\tikz@handle@vec{\pgfsetxvec}{\tikz@handle@x}#1\relax} -\tikzoption{y}{\tikz@handle@vec{\pgfsetyvec}{\tikz@handle@y}#1\relax} -\tikzoption{z}{\tikz@handle@vec{\pgfsetzvec}{\tikz@handle@z}#1\relax} +\tikzoption{x}{\tikz@handle@vec{\pgfsetxvec}{\tikz@handle@x}#1\relax}% +\tikzoption{y}{\tikz@handle@vec{\pgfsetyvec}{\tikz@handle@y}#1\relax}% +\tikzoption{z}{\tikz@handle@vec{\pgfsetzvec}{\tikz@handle@z}#1\relax}% -\def\tikz@handle@vec#1#2{\pgfutil@ifnextchar({\tikz@handle@coordinate#1}{\tikz@handle@single#2}} -\def\tikz@handle@coordinate#1{\tikz@scan@one@point#1} -\def\tikz@handle@single#1#2\relax{#1{#2}} -\def\tikz@handle@x#1{\pgfsetxvec{\pgfpoint{#1}{0pt}}} -\def\tikz@handle@y#1{\pgfsetyvec{\pgfpoint{0pt}{#1}}} -\def\tikz@handle@z#1{\pgfsetzvec{\pgfpoint{#1}{#1}}} +\def\tikz@handle@vec#1#2{\pgfutil@ifnextchar({\tikz@handle@coordinate#1}{\tikz@handle@single#2}}% +\def\tikz@handle@coordinate#1{\tikz@scan@one@point#1}% +\def\tikz@handle@single#1#2\relax{#1{#2}}% +\def\tikz@handle@x#1{\pgfsetxvec{\pgfpoint{#1}{0pt}}}% +\def\tikz@handle@y#1{\pgfsetyvec{\pgfpoint{0pt}{#1}}}% +\def\tikz@handle@z#1{\pgfsetzvec{\pgfpoint{#1}{#1}}}% % Transformation options -\tikzoption{scale}{\tikz@addtransform{\pgftransformscale{#1}}} -\tikzoption{scale around}{\tikz@addtransform{\def\tikz@aroundaction{\pgftransformscale}\tikz@doaround{#1}}} -\tikzoption{xscale}{\tikz@addtransform{\pgftransformxscale{#1}}} -\tikzoption{xslant}{\tikz@addtransform{\pgftransformxslant{#1}}} -\tikzoption{yscale}{\tikz@addtransform{\pgftransformyscale{#1}}} -\tikzoption{yslant}{\tikz@addtransform{\pgftransformyslant{#1}}} -\tikzoption{rotate}{\tikz@addtransform{\pgftransformrotate{#1}}} -\tikzoption{rotate around}{\tikz@addtransform{\def\tikz@aroundaction{\pgftransformrotate}\tikz@doaround{#1}}} +\tikzoption{scale}{\tikz@addtransform{\pgftransformscale{#1}}}% +\tikzoption{scale around}{\tikz@addtransform{\def\tikz@aroundaction{\pgftransformscale}\tikz@doaround{#1}}}% +\tikzoption{xscale}{\tikz@addtransform{\pgftransformxscale{#1}}}% +\tikzoption{xslant}{\tikz@addtransform{\pgftransformxslant{#1}}}% +\tikzoption{yscale}{\tikz@addtransform{\pgftransformyscale{#1}}}% +\tikzoption{yslant}{\tikz@addtransform{\pgftransformyslant{#1}}}% +\tikzoption{rotate}{\tikz@addtransform{\pgftransformrotate{#1}}}% +\tikzoption{rotate around}{\tikz@addtransform{\def\tikz@aroundaction{\pgftransformrotate}\tikz@doaround{#1}}}% \def\tikz@doaround#1{% \edef\tikz@temp{#1}% get rid of active stuff \expandafter\tikz@doparseA\tikz@temp% @@ -266,7 +280,7 @@ \def\tikz@doparseA#1:{% \def\tikz@temp@rot{#1}% \tikz@scan@one@point\tikz@doparseB% -} +}% \def\tikz@doparseB#1{% \pgf@process{#1}% \pgf@xc=\pgf@x% @@ -274,21 +288,21 @@ \pgftransformshift{\pgfqpoint{\pgf@xc}{\pgf@yc}}% \tikz@aroundaction{\tikz@temp@rot}% \pgftransformshift{\pgfqpoint{-\pgf@xc}{-\pgf@yc}}% -} +}% -\tikzoption{shift}{\tikz@addtransform{\tikz@scan@one@point\pgftransformshift#1\relax}} -\tikzoption{xshift}{\tikz@addtransform{\pgftransformxshift{#1}}} -\tikzoption{yshift}{\tikz@addtransform{\pgftransformyshift{#1}}} -\tikzoption{cm}{\tikz@addtransform{\tikz@parse@cm#1\relax}} -\tikzoption{reset cm}[]{\tikz@addtransform{\pgftransformreset}} -\tikzoption{shift only}[]{\tikz@addtransform{\pgftransformresetnontranslations}} +\tikzoption{shift}{\tikz@addtransform{\tikz@scan@one@point\pgftransformshift#1\relax}}% +\tikzoption{xshift}{\tikz@addtransform{\pgftransformxshift{#1}}}% +\tikzoption{yshift}{\tikz@addtransform{\pgftransformyshift{#1}}}% +\tikzoption{cm}{\tikz@addtransform{\tikz@parse@cm#1\relax}}% +\tikzoption{reset cm}[]{\tikz@addtransform{\pgftransformreset}}% +\tikzoption{shift only}[]{\tikz@addtransform{\pgftransformresetnontranslations}}% \def\tikz@parse@cm#1,#2,#3,#4,{% \def\tikz@p@cm{{#1}{#2}{#3}{#4}}% - \tikz@scan@one@point\tikz@parse@cmA} + \tikz@scan@one@point\tikz@parse@cmA}% \def\tikz@parse@cmA#1{% \expandafter\pgftransformcm\tikz@p@cm{#1}% -} +}% \tikzset{transform canvas/.code=% {% @@ -303,7 +317,7 @@ \pgf@relevantforpicturesizefalse% }% }% -} +}% \tikzset{turn/.code={% \pgf@x=0pt% @@ -318,21 +332,21 @@ {\pgf@sys@tonumber{\pgf@x}}{\pgf@sys@tonumber{\pgf@ya}}% {\pgf@sys@tonumber{\pgf@y}}{\pgf@sys@tonumber{\pgf@x}}{\pgfqpoint{\tikz@lastx}{\tikz@lasty}}% }% -} +}% \def\tikz@tangent@lookup{% \pgfgetpath\tikz@temp% \pgfprocesspathextractpoints\tikz@temp% \pgfpointsecondlastonpath% -} +}% % Code for rotating the xyz coordinate system % around the x, y, or z vector. % \def\tikz@xyz@rotate@let{% - \let\pgf@z=\pgf@yc + \let\pgf@z=\pgf@yc% \let\pgf@za=\pgf@xc% -} +}% \def\tikz@xyz@rotate@xyz@xaxis#1#2#3#4{% \tikz@xyz@rotate@let% @@ -345,7 +359,7 @@ \advance\pgf@y by-\tikz@xyz@sin\pgf@za% \pgf@z=\tikz@xyz@sin\pgf@ya% \advance\pgf@z by\tikz@xyz@cos\pgf@za% -} +}% \def\tikz@xyz@rotate@xyz@yaxis#1#2#3#4{% \tikz@xyz@rotate@let% @@ -358,7 +372,7 @@ \advance\pgf@x by\tikz@xyz@sin\pgf@za% \pgf@z=-\tikz@xyz@sin\pgf@xa% \advance\pgf@z by\tikz@xyz@cos\pgf@za% -} +}% \def\tikz@xyz@rotate@xyz@zaxis#1#2#3#4{% \tikz@xyz@rotate@let% @@ -371,7 +385,7 @@ \advance\pgf@x by-\tikz@xyz@sin\pgf@ya% \pgf@y=\tikz@xyz@sin\pgf@xa% \advance\pgf@y by\tikz@xyz@cos\pgf@ya% -} +}% \tikzset{rotate around x/.code={% \tikz@xyz@rotate@let% @@ -399,23 +413,23 @@ \tikz@xyz@rotate@xyz@zaxis{0pt}{1pt}{0pt}{\tikz@xyz@angle}% \pgfsetyvec{\pgfpointxyz{\pgf@sys@tonumber{\pgf@x}}{\pgf@sys@tonumber{\pgf@y}}{\pgf@sys@tonumber{\pgf@z}}}% \pgfsetxvec{\tikz@xyz@rotate@xvec}% - } -} + }, +}% % Grid options -\tikzoption{xstep}{\def\tikz@grid@x{#1}} -\tikzoption{ystep}{\def\tikz@grid@y{#1}} -\tikzoption{step}{\tikz@handle@vec{\tikz@step@point}{\tikz@step@single}#1\relax} -\def\tikz@step@single#1{\def\tikz@grid@x{#1}\def\tikz@grid@y{#1}} -\def\tikz@step@point#1{\pgf@process{#1}\edef\tikz@grid@x{\the\pgf@x}\edef\tikz@grid@y{\the\pgf@y}} +\tikzoption{xstep}{\def\tikz@grid@x{#1}}% +\tikzoption{ystep}{\def\tikz@grid@y{#1}}% +\tikzoption{step}{\tikz@handle@vec{\tikz@step@point}{\tikz@step@single}#1\relax}% +\def\tikz@step@single#1{\def\tikz@grid@x{#1}\def\tikz@grid@y{#1}}% +\def\tikz@step@point#1{\pgf@process{#1}\edef\tikz@grid@x{\the\pgf@x}\edef\tikz@grid@y{\the\pgf@y}}% -\def\tikz@grid@x{1cm} -\def\tikz@grid@y{1cm} +\def\tikz@grid@x{1cm}% +\def\tikz@grid@y{1cm}% % Current point updates \newif\iftikz@current@point@local -\tikzset{current point is local/.is if=tikz@current@point@local} +\tikzset{current point is local/.is if=tikz@current@point@local}% % Path usage options \newif\iftikz@mode@double @@ -428,16 +442,16 @@ \newif\iftikz@mode@fade@scope \let\tikz@mode=\pgfutil@empty -\def\tikz@nonetext{none} +\def\tikz@nonetext{none}% -\tikzoption{path only}[]{\let\tikz@mode=\pgfutil@empty} +\tikzoption{path only}[]{\let\tikz@mode=\pgfutil@empty}% \tikzset{ shade/.is choice, shade/.default=true, shade/true/.code=\tikz@addmode{\tikz@mode@shadetrue}, shade/false/.code=\tikz@addmode{\tikz@mode@shadefalse}, shade/none/.code=\tikz@addmode{\tikz@mode@shadefalse}, -} +}% \tikzoption{fill}[]{% \edef\tikz@temp{#1}% @@ -451,7 +465,7 @@ \fi% \tikz@addmode{\tikz@mode@filltrue}% \fi% -} +}% \tikzoption{draw}[]{% \edef\tikz@temp{#1}% \ifx\tikz@temp\tikz@nonetext% @@ -464,24 +478,24 @@ \fi% \tikz@addmode{\tikz@mode@drawtrue}% \fi% -} -\tikzoption{clip}[]{\tikz@addmode{\tikz@mode@cliptrue}} -\tikzoption{use as bounding box}[]{\tikz@addmode{\tikz@mode@boundarytrue}} +}% +\tikzoption{clip}[]{\tikz@addmode{\tikz@mode@cliptrue}}% +\tikzoption{use as bounding box}[]{\tikz@addmode{\tikz@mode@boundarytrue}}% -\tikzoption{save path}{\tikz@addmode{\pgfsyssoftpath@getcurrentpath#1\global\let#1=#1}} +\tikzoption{save path}{\tikz@addmode{\pgfsyssoftpath@getcurrentpath#1\global\let#1=#1}}% \let\tikz@fillcolor=\pgfutil@empty \let\tikz@strokecolor=\pgfutil@empty % Insert a path using an option -\tikzset{insert path/.code=\tikz@scan@next@command#1\pgf@stop} +\tikzset{insert path/.code=\tikz@scan@next@command#1\pgf@stop}% % Pattern options \tikzset{pattern/.code=\tikzerror{You need to say \string\usetikzlibrary{patterns}}, - pattern color/.style=pattern} + pattern color/.style=pattern}% % Path pictures -\tikzset{path picture/.code=\tikz@addmode{\def\tikz@path@picture{#1}}} +\tikzset{path picture/.code=\tikz@addmode{\def\tikz@path@picture{#1}}}% % Fading options \tikzset{path fading/.code={ @@ -496,7 +510,7 @@ \tikz@addmode{\tikz@mode@fade@pathtrue}% \fi% }, - path fading/.default=, + path fading/.default=, scope fading/.code={ \def\tikz@temp{#1}% \ifx\tikz@temp\tikz@nonetext% @@ -509,83 +523,83 @@ \tikz@addmode{\tikz@mode@fade@scopetrue}% \fi% }, - scope fading/.default=} -\tikzset{fit fading/.is if=tikz@fade@adjust} -\tikzset{fading transform/.store in=\tikz@fade@transform} -\tikzset{fading angle/.style={fading transform={rotate=#1}}} + scope fading/.default=}% +\tikzset{fit fading/.is if=tikz@fade@adjust}% +\tikzset{fading transform/.store in=\tikz@fade@transform}% +\tikzset{fading angle/.style={fading transform={rotate=#1}}}% -\newif\iftikz@fade@adjust -\tikz@fade@adjusttrue -\let\tikz@fade@transform\pgfutil@empty +\newif\iftikz@fade@adjust% +\tikz@fade@adjusttrue% +\let\tikz@fade@transform\pgfutil@empty% -\pgfutil@colorlet{transparent}{pgftransparent} -\def\tikz@do@fade@transform{\let\tikz@transform=\relax\expandafter\tikzset\expandafter{\tikz@fade@transform}} +\pgfutil@colorlet{transparent}{pgftransparent}% +\def\tikz@do@fade@transform{\let\tikz@transform=\relax\expandafter\tikzset\expandafter{\tikz@fade@transform}}% % Transparency groups -\newif\iftikz@transparency@group -\tikzset{/tikz/transparency group/.code=\tikz@transparency@grouptrue\def\tikz@transparency@group@options{isolated=true,#1}\let\tikz@blend@group\pgfutil@empty} -\tikzset{/tikz/blend group/.code=\tikz@transparency@grouptrue\def\tikz@transparency@group@options{isolated=true}\def\tikz@blend@group{\pgfsetblendmode{#1}}} +\newif\iftikz@transparency@group% +\tikzset{/tikz/transparency group/.code=\tikz@transparency@grouptrue\def\tikz@transparency@group@options{isolated=true,#1}\let\tikz@blend@group\pgfutil@empty}% +\tikzset{/tikz/blend group/.code=\tikz@transparency@grouptrue\def\tikz@transparency@group@options{isolated=true}\def\tikz@blend@group{\pgfsetblendmode{#1}}}% \let\tikz@blend@group\pgfutil@empty % Shading options -\tikzoption{shading}{\def\tikz@shading{#1}\tikz@addmode{\tikz@mode@shadetrue}} -\tikzoption{shading angle}{\def\tikz@shade@angle{#1}\tikz@addmode{\tikz@mode@shadetrue}} +\tikzoption{shading}{\def\tikz@shading{#1}\tikz@addmode{\tikz@mode@shadetrue}}% +\tikzoption{shading angle}{\def\tikz@shade@angle{#1}\tikz@addmode{\tikz@mode@shadetrue}}% \tikzoption{top color}{% \pgfutil@colorlet{tikz@axis@top}{#1}% \pgfutil@colorlet{tikz@axis@middle}{tikz@axis@top!50!tikz@axis@bottom}% - \def\tikz@shading{axis}\def\tikz@shade@angle{0}\tikz@addmode{\tikz@mode@shadetrue}} + \def\tikz@shading{axis}\def\tikz@shade@angle{0}\tikz@addmode{\tikz@mode@shadetrue}}% \tikzoption{bottom color}{% \pgfutil@colorlet{tikz@axis@bottom}{#1}% \pgfutil@colorlet{tikz@axis@middle}{tikz@axis@top!50!tikz@axis@bottom}% - \def\tikz@shading{axis}\def\tikz@shade@angle{0}\tikz@addmode{\tikz@mode@shadetrue}} + \def\tikz@shading{axis}\def\tikz@shade@angle{0}\tikz@addmode{\tikz@mode@shadetrue}}% \tikzoption{middle color}{% \pgfutil@colorlet{tikz@axis@middle}{#1}% - \def\tikz@shading{axis}\tikz@addmode{\tikz@mode@shadetrue}} + \def\tikz@shading{axis}\tikz@addmode{\tikz@mode@shadetrue}}% \tikzoption{left color}{% \pgfutil@colorlet{tikz@axis@top}{#1}% \pgfutil@colorlet{tikz@axis@middle}{tikz@axis@top!50!tikz@axis@bottom}% - \def\tikz@shading{axis}\def\tikz@shade@angle{90}\tikz@addmode{\tikz@mode@shadetrue}} + \def\tikz@shading{axis}\def\tikz@shade@angle{90}\tikz@addmode{\tikz@mode@shadetrue}}% \tikzoption{right color}{% \pgfutil@colorlet{tikz@axis@bottom}{#1}% \pgfutil@colorlet{tikz@axis@middle}{tikz@axis@top!50!tikz@axis@bottom}% - \def\tikz@shading{axis}\def\tikz@shade@angle{90}\tikz@addmode{\tikz@mode@shadetrue}} -\tikzoption{ball color}{\pgfutil@colorlet{tikz@ball}{#1}\def\tikz@shading{ball}\tikz@addmode{\tikz@mode@shadetrue}} -\tikzoption{inner color}{\pgfutil@colorlet{tikz@radial@inner}{#1}\def\tikz@shading{radial}\tikz@addmode{\tikz@mode@shadetrue}} -\tikzoption{outer color}{\pgfutil@colorlet{tikz@radial@outer}{#1}\def\tikz@shading{radial}\tikz@addmode{\tikz@mode@shadetrue}} + \def\tikz@shading{axis}\def\tikz@shade@angle{90}\tikz@addmode{\tikz@mode@shadetrue}}% +\tikzoption{ball color}{\pgfutil@colorlet{tikz@ball}{#1}\def\tikz@shading{ball}\tikz@addmode{\tikz@mode@shadetrue}}% +\tikzoption{inner color}{\pgfutil@colorlet{tikz@radial@inner}{#1}\def\tikz@shading{radial}\tikz@addmode{\tikz@mode@shadetrue}}% +\tikzoption{outer color}{\pgfutil@colorlet{tikz@radial@outer}{#1}\def\tikz@shading{radial}\tikz@addmode{\tikz@mode@shadetrue}}% -\def\tikz@shading{axis} -\def\tikz@shade@angle{0} +\def\tikz@shading{axis}% +\def\tikz@shade@angle{0}% \pgfdeclareverticalshading[tikz@axis@top,tikz@axis@middle,tikz@axis@bottom]{axis}{100bp}{% color(0bp)=(tikz@axis@bottom); color(25bp)=(tikz@axis@bottom); color(50bp)=(tikz@axis@middle); color(75bp)=(tikz@axis@top); - color(100bp)=(tikz@axis@top)} + color(100bp)=(tikz@axis@top)}% -\pgfutil@colorlet{tikz@axis@top}{gray} -\pgfutil@colorlet{tikz@axis@middle}{gray!50!white} -\pgfutil@colorlet{tikz@axis@bottom}{white} +\pgfutil@colorlet{tikz@axis@top}{gray}% +\pgfutil@colorlet{tikz@axis@middle}{gray!50!white}% +\pgfutil@colorlet{tikz@axis@bottom}{white}% \pgfdeclareradialshading[tikz@ball]{ball}{\pgfqpoint{-10bp}{10bp}}{% color(0bp)=(tikz@ball!15!white); color(9bp)=(tikz@ball!75!white); color(18bp)=(tikz@ball!70!black); color(25bp)=(tikz@ball!50!black); - color(50bp)=(black)} + color(50bp)=(black)}% -\pgfutil@colorlet{tikz@ball}{blue} +\pgfutil@colorlet{tikz@ball}{blue}% \pgfdeclareradialshading[tikz@radial@inner,tikz@radial@outer]{radial}{\pgfpointorigin}{% color(0bp)=(tikz@radial@inner); color(25bp)=(tikz@radial@outer); - color(50bp)=(tikz@radial@outer)} + color(50bp)=(tikz@radial@outer)}% -\pgfutil@colorlet{tikz@radial@inner}{gray} -\pgfutil@colorlet{tikz@radial@outer}{white} +\pgfutil@colorlet{tikz@radial@inner}{gray}% +\pgfutil@colorlet{tikz@radial@outer}{white}% % Pin options @@ -598,10 +612,11 @@ pin edge={}, tikz@pin@post/.code={\global\let\tikz@pin@edge@style@smuggle=\tikz@pin@edge@style}, tikz@pre@pin@edge/.code={% - \def\pgf@marshal{\tikzstyle{tikz@pin@options}=} - \expandafter\pgf@marshal\expandafter[\tikz@pin@edge@style@smuggle]% - }% -} + \toks0=\expandafter{\tikz@pin@edge@style@smuggle}% + \edef\pgf@marshal{\noexpand\tikzset{tikz@pin@options/.style={\the\toks0}}}% + \pgf@marshal + },% +}% \tikzset{% pin/.code={% @@ -617,7 +632,7 @@ {\tikz@parse@pin@nonactive} {\tikz@parse@pin@nonactive[]}#1:\pgf@nil}% \fi - \tikz@next}} + \tikz@next}}% \begingroup \catcode`\:=\active\relax @@ -625,8 +640,8 @@ \gdef\tikz@parse@pin@active@i#1{% \pgfutil@ifnextchar[%] {\tikz@parse@pin@active} - {\tikz@parse@pin@active[]}#1:\pgf@nil} - + {\tikz@parse@pin@active[]}#1:\pgf@nil}% + \long\gdef\tikz@parse@pin@active[#1]#2:#3\pgf@nil{% \def\tikz@temp{#3}% \ifx\tikz@temp\pgfutil@empty @@ -634,7 +649,7 @@ \tikz@@parse@pin@active[#1]\tikz@pin@default@pos:#2:\pgf@nil% \else \tikz@@parse@pin@active[#1]#2:#3\pgf@nil% - \fi} + \fi}% \long\gdef\tikz@@parse@pin@active[#1]#2:#3:\pgf@nil{% \tikzset{% @@ -647,14 +662,14 @@ anchor=@auto, #1, append after command = {% - (\tikz@save@last@node) + (\tikz@save@last@node) edge [every pin edge, tikz@pre@pin@edge, - tikz@pin@options] + tikz@pin@options] (\tikzlastnode)}, tikz@label@post = \tikz@pin@distance, tikz@pin@post] {#3} - \egroup}}} + \egroup}}}% \endgroup \long\def\tikz@parse@pin@nonactive[#1]#2:#3\pgf@nil{% @@ -664,7 +679,7 @@ \tikz@@parse@pin@nonactive[#1]\tikz@pin@default@pos:#2:\pgf@nil% \else \tikz@@parse@pin@nonactive[#1]#2:#3\pgf@nil% - \fi} + \fi}% \long\def\tikz@@parse@pin@nonactive[#1]#2:#3:\pgf@nil{% \tikzset{% @@ -677,14 +692,14 @@ anchor=@auto, #1, append after command = {% - (\tikz@save@last@node) + (\tikz@save@last@node) edge [every pin edge, tikz@pre@pin@edge, - tikz@pin@options] + tikz@pin@options] (\tikzlastnode)}, tikz@label@post = \tikz@pin@distance, tikz@pin@post] {#3} - \egroup}}} + \egroup}}}% % Label and pin options @@ -695,10 +710,10 @@ label position=above, absolute/.is if=tikz@absolute, tikz@label@angle/.store in=\tikz@label@angle -} +}% \newif\iftikz@absolute -\def\tikz@on@text{center} +\def\tikz@on@text{center}% \tikzset{tikz@label@post/.code 2 args={ \edef\tikz@label@angle{\tikz@label@angle}% @@ -715,7 +730,7 @@ {\pgfpointadd{\pgfpointanchor{\tikzlastnode}{center}}{\pgfpointpolar{\tikz@label@angle}{1pt}}}}% \edef\tikz@node@at{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}% \tikz@compute@direction{\tikz@label@angle}% - \tikz@addtransform{\pgftransformshift{\pgfpointpolar{\tikz@label@angle}{#1}}}% + \tikz@addtransform{\pgftransformshift{\pgfpointpolar{\tikz@label@angle}{#1}}}% \else% \pgf@process{\pgfpointanchor{\tikzlastnode}{\tikz@label@angle}}% \edef\tikz@node@at{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}% @@ -734,9 +749,9 @@ \fi% \fi% \fi% - \iftikz@label@simple% + \iftikz@label@simple% \tikz@compute@direction{\tikz@label@angle}% - \tikz@addtransform{\pgftransformshift{\pgfpointpolar{\tikz@label@angle}{#1}}}% + \tikz@addtransform{\pgftransformshift{\pgfpointpolar{\tikz@label@angle}{#1}}}% \else% \pgf@process{\pgfpointnormalised{% \pgfpointdiff{\pgfpointtransformed{\pgfqpoint{\pgf@xc}{\pgf@yc}}}{\pgfpointtransformed{\pgfqpoint{\pgf@xb}{\pgf@yb}}}}}% @@ -754,8 +769,8 @@ \fi% \fi% \fi} -} - +}% + \newif\iftikz@label@simple% \tikzset{% @@ -772,7 +787,7 @@ {\tikz@parse@label@nonactive} {\tikz@parse@label@nonactive[]}#1:\pgf@nil}% \fi - \tikz@next}} + \tikz@next}}% \begingroup \catcode`\:=\active\relax @@ -780,8 +795,8 @@ \gdef\tikz@parse@label@active@i#1{% \pgfutil@ifnextchar[%] {\tikz@parse@label@active} - {\tikz@parse@label@active[]}#1:\pgf@nil} - + {\tikz@parse@label@active[]}#1:\pgf@nil}% + \gdef\tikz@parse@label@active[#1]#2:#3\pgf@nil{% \def\tikz@temp{#3}% \ifx\tikz@temp\pgfutil@empty @@ -795,11 +810,11 @@ \tikz@@parse@label@active[#1]#2:#3\pgf@nil% \fi \fi - } + }% \gdef\tikz@@parse@label@active[#1]#2:#3:\pgf@nil{% \tikzset{% - append after command = {% + append after command = {% \bgroup [current point is local=true] \pgfextra{\let\tikz@save@last@fig@name=\tikz@last@fig@name\tikz@node@is@a@labelfalse} @@ -807,9 +822,9 @@ tikz@label@angle = #2, anchor=@auto, #1, - tikz@label@post = \tikz@label@distance] {\iftikz@handle@active@nodes\expandafter\scantokens\else\expandafter\pgfutil@firstofone\fi{#3}} + tikz@label@post = \tikz@label@distance] {\iftikz@handle@active@nodes\expandafter\scantokens\else\expandafter\pgfutil@firstofone\fi{#3\ignorespaces}} \pgfextra{\global\let\tikz@last@fig@name=\tikz@save@last@fig@name} - \egroup}}} + \egroup}}}% \endgroup \def\tikz@parse@label@nonactive[#1]#2:#3\pgf@nil{% @@ -825,30 +840,30 @@ \tikz@@parse@label@nonactive[#1]#2:#3\pgf@nil% \fi \fi -} +}% \def\tikz@@parse@label@nonactive[#1]#2:#3:\pgf@nil{% \tikzset{% - append after command = {% + append after command = {% \bgroup [current point is local=true] \pgfextra{\let\tikz@save@last@fig@name=\tikz@last@fig@name\tikz@node@is@a@labelfalse} - node [every label, + node [every label, tikz@label@angle = #2, anchor=@auto, #1, - tikz@label@post = \tikz@label@distance] {\iftikz@handle@active@nodes\expandafter\scantokens\else\expandafter\pgfutil@firstofone\fi{#3}} + tikz@label@post = \tikz@label@distance] {\iftikz@handle@active@nodes\expandafter\scantokens\else\expandafter\pgfutil@firstofone\fi{#3\ignorespaces}} \pgfextra{\global\let\tikz@last@fig@name=\tikz@save@last@fig@name} - \egroup}}} + \egroup}}}% -\expandafter\def\csname tikz@label@angle@is@right\endcsname{\def\tikz@label@angle{0}} -\expandafter\def\csname tikz@label@angle@is@above right\endcsname{\def\tikz@label@angle{45}} -\expandafter\def\csname tikz@label@angle@is@above\endcsname{\def\tikz@label@angle{90}} -\expandafter\def\csname tikz@label@angle@is@above left\endcsname{\def\tikz@label@angle{135}} -\expandafter\def\csname tikz@label@angle@is@left\endcsname{\def\tikz@label@angle{180}} -\expandafter\def\csname tikz@label@angle@is@below left\endcsname{\def\tikz@label@angle{225}} -\expandafter\def\csname tikz@label@angle@is@below\endcsname{\def\tikz@label@angle{270}} -\expandafter\def\csname tikz@label@angle@is@below right\endcsname{\def\tikz@label@angle{315}} +\expandafter\def\csname tikz@label@angle@is@right\endcsname{\def\tikz@label@angle{0}}% +\expandafter\def\csname tikz@label@angle@is@above right\endcsname{\def\tikz@label@angle{45}}% +\expandafter\def\csname tikz@label@angle@is@above\endcsname{\def\tikz@label@angle{90}}% +\expandafter\def\csname tikz@label@angle@is@above left\endcsname{\def\tikz@label@angle{135}}% +\expandafter\def\csname tikz@label@angle@is@left\endcsname{\def\tikz@label@angle{180}}% +\expandafter\def\csname tikz@label@angle@is@below left\endcsname{\def\tikz@label@angle{225}}% +\expandafter\def\csname tikz@label@angle@is@below\endcsname{\def\tikz@label@angle{270}}% +\expandafter\def\csname tikz@label@angle@is@below right\endcsname{\def\tikz@label@angle{315}}% \def\tikz@compute@direction#1{% \ifx\tikz@anchor\tikz@auto@text% @@ -879,87 +894,87 @@ \else% \def\tikz@anchor{west}% \fi\fi\fi\fi\fi\fi\fi\fi% - \fi% -} -\def\tikz@auto@text{@auto} + \fi% +}% +\def\tikz@auto@text{@auto}% % General node options \tikzset{ - name/.code={\edef\tikz@fig@name{\tikz@pp@name{#1}}},% + name/.code={\edef\tikz@fig@name{\tikz@pp@name{#1}}\let\tikz@id@name\tikz@fig@name},% name prefix/.initial=,% name suffix/.initial=% -} -\def\tikz@pp@name#1{\csname pgfk@/tikz/name prefix\endcsname#1\csname pgfk@/tikz/name suffix\endcsname} +}% +\def\tikz@pp@name#1{\csname pgfk@/tikz/name prefix\endcsname#1\csname pgfk@/tikz/name suffix\endcsname}% \tikzset{ node contents/.code=\def\tikz@node@content{#1}, - pic type/.code=\def\tikz@node@content{#1}, % alias -} + pic type/.code=\def\tikz@node@content{#1}, % alias +}% \tikzset{ behind path/.code=\def\tikz@whichbox{\tikz@figbox@bg}, in front of path/.code=\def\tikz@whichbox{\tikz@figbox} -} -\def\tikz@whichbox{\tikz@figbox} +}% +\def\tikz@whichbox{\tikz@figbox}% -\tikzoption{at}{\tikz@scan@one@point\tikz@set@at#1} +\tikzoption{at}{\tikz@scan@one@point\tikz@set@at#1}% \def\tikz@set@at#1{\def\tikz@node@at{#1}}% -\tikzoption{shape}{\edef\tikz@shape{#1}} +\tikzoption{shape}{\edef\tikz@shape{#1}}% -\tikzoption{nodes}{\tikzstyle{every node}+=[#1]} +\tikzoption{nodes}{\tikzset{every node/.append style={#1}}}% \tikzset{alias/.code={% \tikz@fig@mustbenamed - \begingroup - \toks0=\expandafter{\tikz@alias}% - \edef\pgf@temp{\noexpand\pgfnodealias{\tikz@pp@name{#1}}{\noexpand\tikz@fig@name}}% - \toks1=\expandafter{\pgf@temp}% - \xdef\pgf@marshal{% - \noexpand\def\noexpand\tikz@alias{\the\toks0 \the\toks1 }% - }% - \endgroup - \pgf@marshal -}} + \begingroup + \toks0=\expandafter{\tikz@alias}% + \edef\pgf@temp{\noexpand\pgfnodealias{\tikz@pp@name{#1}}{\noexpand\tikz@fig@name}}% + \toks1=\expandafter{\pgf@temp}% + \xdef\pgf@marshal{% + \noexpand\def\noexpand\tikz@alias{\the\toks0 \the\toks1 }% + }% + \endgroup + \pgf@marshal +}}% % deprecated: -\def\tikzaddafternodepathoption#1{#1\tikzset{prefix after command={\pgfextra{#1}}}} -\tikzset{after node path/.style={append after command={#1}}} +\def\tikzaddafternodepathoption#1{#1\tikzset{prefix after command={\pgfextra{#1}}}}% +\tikzset{after node path/.style={append after command={#1}}}% % Pic options \newif\iftikz@node@is@pic -\tikzset{pic text/.store in=\tikzpictext} +\tikzset{pic text/.store in=\tikzpictext}% \let\tikzpictext\relax -\tikzset{pic text options/.store in=\tikzpictextoptions} +\tikzset{pic text options/.store in=\tikzpictextoptions}% \let\tikzpictextoptions\pgfutil@empty % Anchoring -\tikzoption{anchor}{\def\tikz@anchor{#1}\let\tikz@do@auto@anchor=\relax} +\tikzoption{anchor}{\def\tikz@anchor{#1}\let\tikz@do@auto@anchor=\relax}% -\tikzoption{left}[]{\def\tikz@anchor{east}\tikz@possibly@transform{x}{-}{#1}} -\tikzoption{right}[]{\def\tikz@anchor{west}\tikz@possibly@transform{x}{}{#1}} -\tikzoption{above}[]{\def\tikz@anchor{south}\tikz@possibly@transform{y}{}{#1}} -\tikzoption{below}[]{\def\tikz@anchor{north}\tikz@possibly@transform{y}{-}{#1}} +\tikzoption{left}[]{\def\tikz@anchor{east}\tikz@possibly@transform{x}{-}{#1}}% +\tikzoption{right}[]{\def\tikz@anchor{west}\tikz@possibly@transform{x}{}{#1}}% +\tikzoption{above}[]{\def\tikz@anchor{south}\tikz@possibly@transform{y}{}{#1}}% +\tikzoption{below}[]{\def\tikz@anchor{north}\tikz@possibly@transform{y}{-}{#1}}% \tikzoption{above left}[]% {\def\tikz@anchor{south east}% - \tikz@possibly@transform{x}{-}{#1}\tikz@possibly@transform{y}{}{#1}} + \tikz@possibly@transform{x}{-}{#1}\tikz@possibly@transform{y}{}{#1}}% \tikzoption{above right}[]% {\def\tikz@anchor{south west}% - \tikz@possibly@transform{x}{}{#1}\tikz@possibly@transform{y}{}{#1}} + \tikz@possibly@transform{x}{}{#1}\tikz@possibly@transform{y}{}{#1}}% \tikzoption{below left}[]% {\def\tikz@anchor{north east}% - \tikz@possibly@transform{x}{-}{#1}\tikz@possibly@transform{y}{-}{#1}} + \tikz@possibly@transform{x}{-}{#1}\tikz@possibly@transform{y}{-}{#1}}% \tikzoption{below right}[]% {\def\tikz@anchor{north west}% - \tikz@possibly@transform{x}{}{#1}\tikz@possibly@transform{y}{-}{#1}} -\tikzset{centered/.code=\def\tikz@anchor{center}} - -\tikzoption{node distance}{\def\tikz@node@distance{#1}} -\def\tikz@node@distance{1cm} + \tikz@possibly@transform{x}{}{#1}\tikz@possibly@transform{y}{-}{#1}}% +\tikzset{centered/.code=\def\tikz@anchor{center}}% + +\tikzoption{node distance}{\def\tikz@node@distance{#1}}% +\def\tikz@node@distance{1cm}% % The following are deprecated: \tikzoption{above of}{\tikz@of{#1}{90}}% @@ -976,17 +991,17 @@ \tikz@addtransform{% \expandafter\tikz@extract@node@dist\tikz@node@distance and\pgf@stop% \pgftransformshift{\pgfpointpolar{#2}{\tikz@extracted@node@distance}}}% - \def\tikz@node@at{\pgfpointanchor{#1}{center}}} + \def\tikz@node@at{\pgfpointanchor{#1}{center}}}% \def\tikz@extract@node@dist#1and#2\pgf@stop{% - \def\tikz@extracted@node@distance{#1}} + \def\tikz@extracted@node@distance{#1}}% \tikzset{ transform shape nonlinear/.is choice, transform shape nonlinear/.default=true, transform shape nonlinear/true/.code=\let\tikz@nlt\relax, transform shape nonlinear/false/.code=\def\tikz@nlt{\pgfapproximatenonlineartranslation}, - transform shape nonlinear=false -} + transform shape nonlinear=false, +}% \tikzoption{transform shape}[true]{% @@ -996,7 +1011,7 @@ \else% \pgfresetnontranslationattimetrue% \fi% -} +}% \newif\iftikz@fullytransformed \pgfresetnontranslationattimetrue% @@ -1012,30 +1027,30 @@ \pgfmathsetlength{\pgf@x}{#3}% \pgf@x=#2\pgf@x\relax% \edef\tikz@marshal{\noexpand\tikz@addtransform{% - \expandafter\noexpand\csname pgftransform#1shift\endcsname{\the\pgf@x}}}% + \expandafter\noexpand\csname pgftransform#1shift\endcsname{\the\pgf@x}}}% \tikz@marshal% \fi% -} +}% % Inter-picture options \tikzoption{remember picture}[true]{\csname pgfrememberpicturepositiononpage#1\endcsname} \tikzset{ - overlay/.is choice, - overlay/true/.code={\pgf@relevantforpicturesizefalse}, - overlay/false/.code={\pgf@relevantforpicturesizetrue}, - overlay/.default=true + overlay/.is choice, + overlay/true/.code={\pgf@relevantforpicturesizefalse}, + overlay/false/.code={\pgf@relevantforpicturesizetrue}, + overlay/.default=true } % Line/curve label placement options -\tikzoption{sloped}[true]{\csname pgfslopedattime#1\endcsname} -\tikzoption{allow upside down}[true]{\csname pgfallowupsidedownattime#1\endcsname} +\tikzoption{sloped}[true]{\csname pgfslopedattime#1\endcsname}% +\tikzoption{allow upside down}[true]{\csname pgfallowupsidedownattime#1\endcsname}% -\tikzoption{pos}{\edef\tikz@time{#1}\ifx\tikz@time\pgfutil@empty\else\pgfmathsetmacro\tikz@time{\tikz@time}\fi} +\tikzoption{pos}{\edef\tikz@time{#1}\ifx\tikz@time\pgfutil@empty\else\pgfmathsetmacro\tikz@time{\tikz@time}\fi}% -\tikzoption{auto}[]{\csname tikz@install@auto@anchor@#1\endcsname} +\tikzoption{auto}[]{\csname tikz@install@auto@anchor@#1\endcsname}% \tikzoption{swap}[]{% \def\tikz@temp{left}% \ifx\tikz@auto@anchor@direction\tikz@temp% @@ -1043,39 +1058,39 @@ \else% \def\tikz@auto@anchor@direction{left}% \fi% -} -\tikzset{'/.style=swap} % shorthand +}% +\tikzset{'/.style=swap}% shorthand -\def\tikz@install@auto@anchor@{\let\tikz@do@auto@anchor=\tikz@auto@anchor@on} -\def\tikz@install@auto@anchor@false{\let\tikz@do@auto@anchor=\relax} -\def\tikz@install@auto@anchor@left{\let\tikz@do@auto@anchor=\tikz@auto@anchor@on\def\tikz@auto@anchor@direction{left}} -\def\tikz@install@auto@anchor@right{\let\tikz@do@auto@anchor=\tikz@auto@anchor@on\def\tikz@auto@anchor@direction{right}} +\def\tikz@install@auto@anchor@{\let\tikz@do@auto@anchor=\tikz@auto@anchor@on}% +\def\tikz@install@auto@anchor@false{\let\tikz@do@auto@anchor=\relax}% +\def\tikz@install@auto@anchor@left{\let\tikz@do@auto@anchor=\tikz@auto@anchor@on\def\tikz@auto@anchor@direction{left}}% +\def\tikz@install@auto@anchor@right{\let\tikz@do@auto@anchor=\tikz@auto@anchor@on\def\tikz@auto@anchor@direction{right}}% \let\tikz@do@auto@anchor=\relax% \def\tikz@auto@anchor@on{\csname tikz@auto@anchor@\tikz@auto@anchor@direction\endcsname} -\def\tikz@auto@anchor@left{\tikz@auto@pre\tikz@auto@anchor\tikz@auto@post} -\def\tikz@auto@anchor@right{\tikz@auto@pre\tikz@auto@anchor@prime\tikz@auto@post} +\def\tikz@auto@anchor@left{\tikz@auto@pre\tikz@auto@anchor\tikz@auto@post}% +\def\tikz@auto@anchor@right{\tikz@auto@pre\tikz@auto@anchor@prime\tikz@auto@post}% -\def\tikz@auto@anchor@direction{left} +\def\tikz@auto@anchor@direction{left}% % Text options -\tikzoption{text}{\def\tikz@textcolor{#1}} -\tikzoption{font}{\def\tikz@textfont{#1}} -\tikzoption{node font}{\def\tikz@node@textfont{#1}} -\tikzoption{text opacity}{\def\tikz@textopacity{#1}} -\tikzoption{text width}{\def\tikz@text@width{#1}} -\tikzoption{text height}{\def\tikz@text@height{#1}} -\tikzoption{text depth}{\def\tikz@text@depth{#1}} +\tikzoption{text}{\def\tikz@textcolor{#1}}% +\tikzoption{font}{\def\tikz@textfont{#1}}% +\tikzoption{node font}{\def\tikz@node@textfont{#1}}% +\tikzoption{text opacity}{\def\tikz@textopacity{#1}}% +\tikzoption{text width}{\def\tikz@text@width{#1}}% +\tikzoption{text height}{\def\tikz@text@height{#1}}% +\tikzoption{text depth}{\def\tikz@text@depth{#1}}% \tikzoption{text ragged}[]% -{\def\tikz@text@action{\pgfutil@raggedright\rightskip0pt plus2em \spaceskip.3333em \xspaceskip.5em\relax}} -\tikzoption{text badly ragged}[]{\def\tikz@text@action{\pgfutil@raggedright\relax}} +{\def\tikz@text@action{\pgfutil@raggedright\rightskip0pt plus2em \spaceskip.3333em \xspaceskip.5em\relax}}% +\tikzoption{text badly ragged}[]{\def\tikz@text@action{\pgfutil@raggedright\relax}}% \tikzoption{text ragged left}[]% -{\def\tikz@text@action{\pgfutil@raggedleft\leftskip0pt plus2em \spaceskip.3333em \xspaceskip.5em\relax}} -\tikzoption{text badly ragged left}[]{\def\tikz@text@action{\pgfutil@raggedleft\relax}} -\tikzoption{text justified}[]{\def\tikz@text@action{\leftskip0pt\rightskip0pt\relax}} +{\def\tikz@text@action{\pgfutil@raggedleft\leftskip0pt plus2em \spaceskip.3333em \xspaceskip.5em\relax}}% +\tikzoption{text badly ragged left}[]{\def\tikz@text@action{\pgfutil@raggedleft\relax}}% +\tikzoption{text justified}[]{\def\tikz@text@action{\leftskip0pt\rightskip0pt\relax}}% \tikzoption{text centered}[]{\def\tikz@text@action{% \leftskip0pt plus2em% \rightskip0pt plus2em% @@ -1083,14 +1098,14 @@ \parfillskip=0pt% \iftikz@warn@for@narrow@centered\else\hbadness10000\fi% \let\\=\@centercr% for latex - \relax}} + \relax}}% \tikzoption{text badly centered}[]% {\def\tikz@text@action{% \let\\=\@centercr% for latex \parfillskip=0pt% \rightskip\pgfutil@flushglue% - \leftskip\pgfutil@flushglue\relax}} -\tikzset{badness warnings for centered text/.is if=tikz@warn@for@narrow@centered} + \leftskip\pgfutil@flushglue\relax}}% +\tikzset{badness warnings for centered text/.is if=tikz@warn@for@narrow@centered}% \newif\iftikz@warn@for@narrow@centered \let\tikz@text@width=\pgfutil@empty @@ -1101,7 +1116,7 @@ \let\tikz@textopacity=\pgfutil@empty \let\tikz@node@textfont=\pgfutil@empty -\def\tikz@text@action{\pgfutil@raggedright\rightskip0pt plus2em \spaceskip.3333em \xspaceskip.5em\relax} +\def\tikz@text@action{\pgfutil@raggedright\rightskip0pt plus2em \spaceskip.3333em \xspaceskip.5em\relax}% % Alignment @@ -1115,23 +1130,23 @@ align/center/.style={text centered,node halign header=\tikz@align@center@header}, align/flush center/.style={text badly centered,node halign header=\tikz@align@center@header}, align/justify/.style ={text justified,node halign header=\tikz@align@left@header}, - align/none/.style ={text justified,node halign header=} -} -\def\tikz@align@left@header{##\hfil\cr} -\def\tikz@align@right@header{\hfil##\cr} -\def\tikz@align@center@header{\hfil##\hfil\cr} + align/none/.style ={text justified,node halign header=}, +}% +\def\tikz@align@left@header{##\hfil\cr}% +\def\tikz@align@right@header{\hfil##\cr}% +\def\tikz@align@center@header{\hfil##\hfil\cr}% % Arrow options -\tikzoption{arrows}{\tikz@processarrows{#1}} +\tikzoption{arrows}{\tikz@processarrows{#1}}% \tikzoption{>}{\pgfdeclarearrow{name=<->,means={#1}}}% -\pgfdeclarearrow{name=|<->|, means={>[sep=0pt].|}} +\pgfdeclarearrow{name=|<->|, means={>[sep=0pt].|}}% -\tikzoption{shorten <}{\pgfsetshortenstart{#1}} -\tikzoption{shorten >}{\pgfsetshortenend{#1}} +\tikzoption{shorten <}{\pgfsetshortenstart{#1}}% +\tikzoption{shorten >}{\pgfsetshortenend{#1}}% \def\tikz@processarrows#1{% \def\tikz@current@arrows{#1}% @@ -1140,94 +1155,94 @@ \else% \pgfsetarrows{#1}% \fi% -} +}% -\def\tikz@current@arrows{-} +\def\tikz@current@arrows{-}% % Parabola options \tikzoption{bend}{\tikz@scan@one@point\tikz@set@parabola@bend#1\relax}% -\tikzoption{bend pos}{\def\tikz@parabola@bend@factor{#1}} +\tikzoption{bend pos}{\def\tikz@parabola@bend@factor{#1}}% \tikzoption{parabola height}{% \def\tikz@parabola@bend@factor{.5}% - \def\tikz@parabola@bend{\pgfpointadd{\pgfpoint{0pt}{#1}}{\tikz@last@position@saved}}} + \def\tikz@parabola@bend{\pgfpointadd{\pgfpoint{0pt}{#1}}{\tikz@last@position@saved}}}% -\def\tikz@parabola@bend{\tikz@last@position@saved} -\def\tikz@parabola@bend@factor{0} +\def\tikz@parabola@bend{\tikz@last@position@saved}% +\def\tikz@parabola@bend@factor{0}% -\def\tikz@set@parabola@bend#1{\def\tikz@parabola@bend{#1}} +\def\tikz@set@parabola@bend#1{\def\tikz@parabola@bend{#1}}% % Axis options -\tikzoption{domain}{\edef\tikz@plot@domain{#1}\expandafter\tikz@plot@samples@recalc\tikz@plot@domain\relax} -\tikzoption{range}{\def\tikz@plot@range{#1}} -\tikzoption{yrange}{\def\tikz@plot@range{#1}} +\tikzoption{domain}{\edef\tikz@plot@domain{#1}\expandafter\tikz@plot@samples@recalc\tikz@plot@domain\relax}% +\tikzoption{range}{\def\tikz@plot@range{#1}}% +\tikzoption{yrange}{\def\tikz@plot@range{#1}}% \let\tikz@plot@range=\pgfutil@empty -\tikzoption{xrange}{\def\tikz@plot@xrange{#1}} +\tikzoption{xrange}{\def\tikz@plot@xrange{#1}}% \let\tikz@plot@xrange=\pgfutil@empty % Plot options -\tikzoption{smooth}[]{\let\tikz@plot@handler=\pgfplothandlercurveto} -\tikzoption{smooth cycle}[]{\let\tikz@plot@handler=\pgfplothandlerclosedcurve} -\tikzoption{sharp plot}[]{\let\tikz@plot@handler\pgfplothandlerlineto} -\tikzoption{sharp cycle}[]{\let\tikz@plot@handler\pgfplothandlerpolygon} - -\tikzoption{tension}{\pgfsetplottension{#1}} - -\tikzoption{xcomb}[]{\let\tikz@plot@handler=\pgfplothandlerxcomb} -\tikzoption{ycomb}[]{\let\tikz@plot@handler=\pgfplothandlerycomb} -\tikzoption{polar comb}[]{\let\tikz@plot@handler=\pgfplothandlerpolarcomb} -\tikzoption{ybar}[]{\let\tikz@plot@handler=\pgfplothandlerybar} -\tikzoption{ybar interval}[]{\let\tikz@plot@handler=\pgfplothandlerybarinterval} -\tikzoption{xbar interval}[]{\let\tikz@plot@handler=\pgfplothandlerxbarinterval} -\tikzoption{xbar}[]{\let\tikz@plot@handler=\pgfplothandlerxbar} -\tikzoption{const plot}[]{\let\tikz@plot@handler=\pgfplothandlerconstantlineto} -\tikzoption{const plot mark left}[]{\let\tikz@plot@handler=\pgfplothandlerconstantlineto} -\tikzoption{const plot mark right}[]{\let\tikz@plot@handler=\pgfplothandlerconstantlinetomarkright} -\tikzoption{const plot mark mid}[]{\let\tikz@plot@handler=\pgfplothandlerconstantlinetomarkmid} -\tikzoption{jump mark right}[]{\let\tikz@plot@handler=\pgfplothandlerjumpmarkright} -\tikzoption{jump mark mid}[]{\let\tikz@plot@handler=\pgfplothandlerjumpmarkmid} -\tikzoption{jump mark left}[]{\let\tikz@plot@handler=\pgfplothandlerjumpmarkleft} - -\tikzoption{raw gnuplot}[true]{\csname tikz@plot@raw@gnuplot#1\endcsname} -\tikzoption{prefix}{\def\tikz@plot@prefix{#1}} -\tikzoption{id}{\def\tikz@plot@id{#1}} - -\tikzoption{samples}{\pgfmathsetmacro\tikz@plot@samples{max(2,#1)}\expandafter\tikz@plot@samples@recalc\tikz@plot@domain\relax} -\tikzoption{samples at}{\def\tikz@plot@samplesat{#1}} -\tikzoption{parametric}[true]{\csname tikz@plot@parametric#1\endcsname} - -\tikzoption{variable}{\def\tikz@plot@var{#1}} - -\tikzoption{only marks}[]{\let\tikz@plot@handler\pgfplothandlerdiscard} +\tikzoption{smooth}[]{\let\tikz@plot@handler=\pgfplothandlercurveto}% +\tikzoption{smooth cycle}[]{\let\tikz@plot@handler=\pgfplothandlerclosedcurve}% +\tikzoption{sharp plot}[]{\let\tikz@plot@handler\pgfplothandlerlineto}% +\tikzoption{sharp cycle}[]{\let\tikz@plot@handler\pgfplothandlerpolygon}% + +\tikzoption{tension}{\pgfsetplottension{#1}}% + +\tikzoption{xcomb}[]{\let\tikz@plot@handler=\pgfplothandlerxcomb}% +\tikzoption{ycomb}[]{\let\tikz@plot@handler=\pgfplothandlerycomb}% +\tikzoption{polar comb}[]{\let\tikz@plot@handler=\pgfplothandlerpolarcomb}% +\tikzoption{ybar}[]{\let\tikz@plot@handler=\pgfplothandlerybar}% +\tikzoption{ybar interval}[]{\let\tikz@plot@handler=\pgfplothandlerybarinterval}% +\tikzoption{xbar interval}[]{\let\tikz@plot@handler=\pgfplothandlerxbarinterval}% +\tikzoption{xbar}[]{\let\tikz@plot@handler=\pgfplothandlerxbar}% +\tikzoption{const plot}[]{\let\tikz@plot@handler=\pgfplothandlerconstantlineto}% +\tikzoption{const plot mark left}[]{\let\tikz@plot@handler=\pgfplothandlerconstantlineto}% +\tikzoption{const plot mark right}[]{\let\tikz@plot@handler=\pgfplothandlerconstantlinetomarkright}% +\tikzoption{const plot mark mid}[]{\let\tikz@plot@handler=\pgfplothandlerconstantlinetomarkmid}% +\tikzoption{jump mark right}[]{\let\tikz@plot@handler=\pgfplothandlerjumpmarkright}% +\tikzoption{jump mark mid}[]{\let\tikz@plot@handler=\pgfplothandlerjumpmarkmid}% +\tikzoption{jump mark left}[]{\let\tikz@plot@handler=\pgfplothandlerjumpmarkleft}% + +\tikzoption{raw gnuplot}[true]{\csname tikz@plot@raw@gnuplot#1\endcsname}% +\tikzoption{prefix}{\def\tikz@plot@prefix{#1}}% +\tikzoption{id}{\def\tikz@plot@id{#1}}% + +\tikzoption{samples}{\pgfmathsetmacro\tikz@plot@samples{max(2,#1)}\expandafter\tikz@plot@samples@recalc\tikz@plot@domain\relax}% +\tikzoption{samples at}{\def\tikz@plot@samplesat{#1}}% +\tikzoption{parametric}[true]{\csname tikz@plot@parametric#1\endcsname}% + +\tikzoption{variable}{\def\tikz@plot@var{#1}}% + +\tikzoption{only marks}[]{\let\tikz@plot@handler\pgfplothandlerdiscard}% \tikzoption{mark}{% - \def\tikz@plot@mark{#1}% - \def\tikz@temp{none}% - \ifx\tikz@temp\tikz@plot@mark - \let\tikz@plot@mark=\pgfutil@empty - \fi -} + \def\tikz@plot@mark{#1}% + \def\tikz@temp{none}% + \ifx\tikz@temp\tikz@plot@mark + \let\tikz@plot@mark=\pgfutil@empty + \fi +}% \tikzset{ - no marks/.style={mark=none},% - no markers/.style={mark=none},% - every mark/.style={}, - mark options/.style={% - every mark/.style={#1}% - }} -\tikzoption{mark size}{\pgfsetplotmarksize{#1}} - -\tikzoption{mark indices}{\def\tikz@mark@list{#1}} -\tikzoption{mark phase}{\pgfsetplotmarkphase{#1}} -\tikzoption{mark repeat}{\pgfsetplotmarkrepeat{#1}} + no marks/.style={mark=none},% + no markers/.style={mark=none},% + every mark/.style={}, + mark options/.style={% + every mark/.style={#1}% + }}% +\tikzoption{mark size}{\pgfsetplotmarksize{#1}}% + +\tikzoption{mark indices}{\def\tikz@mark@list{#1}}% +\tikzoption{mark phase}{\pgfsetplotmarkphase{#1}}% +\tikzoption{mark repeat}{\pgfsetplotmarkrepeat{#1}}% \let\tikz@mark@list=\pgfutil@empty \let\tikz@plot@handler=\pgfplothandlerlineto \let\tikz@plot@mark=\pgfutil@empty -\def\tikz@plot@samples{25} -\def\tikz@plot@domain{-5:5} -\def\tikz@plot@var{\x} -\def\tikz@plot@samplesat{-5,-4.5833333,...,5} +\def\tikz@plot@samples{25}% +\def\tikz@plot@domain{-5:5}% +\def\tikz@plot@var{\x}% +\def\tikz@plot@samplesat{-5,-4.5833333,...,5}% \def\tikz@plot@samples@recalc#1:#2\relax{% \begingroup \pgfmathparse{#1}% @@ -1251,11 +1266,11 @@ \fi% \pgfmath@smuggleone\tikz@plot@samplesat \endgroup -} +}% -\def\tikz@plot@prefix{\jobname.} -\def\tikz@plot@id{pgf-plot} +\def\tikz@plot@prefix{\jobname.}% +\def\tikz@plot@id{pgf-plot}% \newif\iftikz@plot@parametric \newif\iftikz@plot@raw@gnuplot @@ -1264,11 +1279,11 @@ % % To and edge options % -\tikzoption{to path}{\def\tikz@to@path{#1}} +\tikzoption{to path}{\def\tikz@to@path{#1}}% -\def\tikz@to@path{-- (\tikztotarget) \tikztonodes} +\def\tikz@to@path{-- (\tikztotarget) \tikztonodes}% -\tikzset{edge macro/.store in=\tikz@edge@macro} +\tikzset{edge macro/.store in=\tikz@edge@macro}% \let\tikz@edge@macro\pgfutil@empty \tikzset{ @@ -1276,8 +1291,8 @@ \expandafter\def\expandafter\tikz@tonodes\expandafter{\tikz@tonodes #1} }, edge label/.style={/tikz/edge node={node[auto]{#1}}}, - edge label'/.style={/tikz/edge node={node[auto,swap]{#1}}} -} + edge label'/.style={/tikz/edge node={node[auto,swap]{#1}}}, +}% % After command options @@ -1289,36 +1304,36 @@ \expandafter\expandafter\expandafter\tikz@after@path% \expandafter\expandafter\expandafter{% \expandafter\tikz@temp\tikz@after@path}% - } -} + }, +}% \let\tikz@after@path\pgfutil@empty % Tree options \newif\iftikz@child@missing -\pgfkeys{/tikz/missing/.is if=tikz@child@missing} +\pgfkeys{/tikz/missing/.is if=tikz@child@missing}% -\tikzset{edge from parent macro/.initial=\tikz@edge@from@parent@macro} +\tikzset{edge from parent macro/.initial=\tikz@edge@from@parent@macro}% \def\tikz@edge@from@parent@macro#1#2{ - [style=edge from parent, #1, /utils/exec=\tikz@node@is@a@labeltrue] \tikz@edge@to@parent@path #2} + [style=edge from parent, #1, /utils/exec=\tikz@node@is@a@labeltrue] \tikz@edge@to@parent@path #2}% -\tikzoption{edge from parent path}{\def\tikz@edge@to@parent@path{#1}} +\tikzoption{edge from parent path}{\def\tikz@edge@to@parent@path{#1}}% -\tikzoption{parent anchor}{\def\tikzparentanchor{.#1}\ifx\tikzparentanchor\tikz@border@text\let\tikzparentanchor\pgfutil@empty\fi} -\tikzoption{child anchor}{\def\tikzchildanchor{.#1}\ifx\tikzchildanchor\tikz@border@text\let\tikzchildanchor\pgfutil@empty\fi} +\tikzoption{parent anchor}{\def\tikzparentanchor{.#1}\ifx\tikzparentanchor\tikz@border@text\let\tikzparentanchor\pgfutil@empty\fi}% +\tikzoption{child anchor}{\def\tikzchildanchor{.#1}\ifx\tikzchildanchor\tikz@border@text\let\tikzchildanchor\pgfutil@empty\fi}% -\tikzoption{level distance}{\pgfmathsetlength\tikzleveldistance{#1}} -\tikzoption{sibling distance}{\pgfmathsetlength\tikzsiblingdistance{#1}} +\tikzoption{level distance}{\pgfmathsetlength\tikzleveldistance{#1}}% +\tikzoption{sibling distance}{\pgfmathsetlength\tikzsiblingdistance{#1}}% -\tikzoption{growth function}{\let\tikz@grow=#1} +\tikzoption{growth function}{\let\tikz@grow=#1}% -\tikzset{grow siblings on line/.style={growth function=\tikz@grow@direction}} +\tikzset{grow siblings on line/.style={growth function=\tikz@grow@direction}}% -\tikzoption{growth parent anchor}{\def\tikz@growth@anchor{#1}} +\tikzoption{growth parent anchor}{\def\tikz@growth@anchor{#1}}% \tikzoption{grow}{\tikz@set@growth{#1}\edef\tikz@special@level{\the\tikztreelevel}}% \tikzoption{grow'}{\tikz@set@growth{#1}\tikz@swap@growth\edef\tikz@special@level{\the\tikztreelevel}}% -\def\tikz@growth@anchor{center} +\def\tikz@growth@anchor{center}% \def\tikz@special@level{-1}% never @@ -1341,30 +1356,30 @@ \edef\tikz@angle@grow@left{\the\c@pgf@counta}% \advance\c@pgf@counta by180\relax% \edef\tikz@angle@grow@right{\the\c@pgf@counta}% -} +}% -\def\tikz@border@text{.border} +\def\tikz@border@text{.border}% \let\tikzparentanchor=\pgfutil@empty \let\tikzchildanchor=\pgfutil@empty -\def\tikz@edge@to@parent@path{(\tikzparentnode\tikzparentanchor) -- (\tikzchildnode\tikzchildanchor)} +\def\tikz@edge@to@parent@path{(\tikzparentnode\tikzparentanchor) -- (\tikzchildnode\tikzchildanchor)}% -\tikzleveldistance=15mm -\tikzsiblingdistance=15mm +\tikzleveldistance=15mm% +\tikzsiblingdistance=15mm% -\def\tikz@grow@direction@down{-90} -\def\tikz@grow@direction@up{90} -\def\tikz@grow@direction@left{180} -\def\tikz@grow@direction@right{0} +\def\tikz@grow@direction@down{-90}% +\def\tikz@grow@direction@up{90}% +\def\tikz@grow@direction@left{180}% +\def\tikz@grow@direction@right{0}% -\def\tikz@grow@direction@south{-90} -\def\tikz@grow@direction@north{90} -\def\tikz@grow@direction@west{180} -\def\tikz@grow@direction@east{0} +\def\tikz@grow@direction@south{-90}% +\def\tikz@grow@direction@north{90}% +\def\tikz@grow@direction@west{180}% +\def\tikz@grow@direction@east{0}% -\expandafter\def\csname tikz@grow@direction@north east\endcsname{45} -\expandafter\def\csname tikz@grow@direction@north west\endcsname{135} -\expandafter\def\csname tikz@grow@direction@south east\endcsname{-45} -\expandafter\def\csname tikz@grow@direction@south west\endcsname{-135} +\expandafter\def\csname tikz@grow@direction@north east\endcsname{45}% +\expandafter\def\csname tikz@grow@direction@north west\endcsname{135}% +\expandafter\def\csname tikz@grow@direction@south east\endcsname{-45}% +\expandafter\def\csname tikz@grow@direction@south west\endcsname{-135}% \def\tikz@grow@direction{% \pgftransformshift{\pgfpointpolar{\tikz@angle@grow}{\tikzleveldistance}}% @@ -1377,30 +1392,30 @@ \pgftransformshift{\pgfpointpolar{\tikz@angle@grow@left}{\pgfutil@tempdima}}% \pgftransformshift{\pgfpointpolar{\tikz@angle@grow@right}{\tikznumberofcurrentchild\tikzsiblingdistance}}% \fi% -} +}% -\tikzset{grow=down} +\tikzset{grow=down}% % Snakes are in a lib: -\tikzset{snake/.code=\tikzerror{You need to say \string\usetikzlibrary{snakes}}} +\tikzset{snake/.code=\tikzerror{You need to say \string\usetikzlibrary{snakes}}}% % Decorations -\tikzset{decorate/.code=\tikzerror{You need to load a decoration library}} +\tikzset{decorate/.code=\tikzerror{You need to load a decoration library}}% % Matrix options -\usepgfmodule{matrix} +\usepgfmodule{matrix}% -\tikzoption{matrix}[true]{\csname tikz@is@matrix#1\endcsname} +\tikzoption{matrix}[true]{\csname tikz@is@matrix#1\endcsname}% -\tikzoption{matrix anchor}{\def\tikz@matrix@anchor{#1}} +\tikzoption{matrix anchor}{\def\tikz@matrix@anchor{#1}}% -\tikzoption{column sep}{\def\pgfmatrixcolumnsep{#1}} -\tikzoption{row sep}{\def\pgfmatrixrowsep{#1}} +\tikzoption{column sep}{\def\pgfmatrixcolumnsep{#1}}% +\tikzoption{row sep}{\def\pgfmatrixrowsep{#1}}% -\tikzoption{cells}{\tikzstyle{every cell}+=[#1]} +\tikzoption{cells}{\tikzset{every cell/.append style={#1}}}% -\tikzoption{ampersand replacement}{\def\tikz@ampersand@replacement{#1}} +\tikzoption{ampersand replacement}{\def\tikz@ampersand@replacement{#1}}% \newif\iftikz@is@matrix \let\tikz@matrix@anchor=\pgfutil@empty @@ -1411,25 +1426,25 @@ \tikzset{% handle active characters in code/.is if=tikz@handle@active@code, handle active characters in nodes/.is if=tikz@handle@active@nodes, -} +}% \newif\iftikz@handle@active@code \newif\iftikz@handle@active@nodes % Execute option -\tikzoption{execute at begin picture}{\expandafter\def\expandafter\tikz@atbegin@picture\expandafter{\tikz@atbegin@picture#1}} -\tikzoption{execute at end picture}{\expandafter\def\expandafter\tikz@atend@picture\expandafter{\tikz@atend@picture#1}} -\tikzoption{execute at begin scope}{\expandafter\def\expandafter\tikz@atbegin@scope\expandafter{\tikz@atbegin@scope#1}} -\tikzoption{execute at end scope}{\expandafter\def\expandafter\tikz@atend@scope\expandafter{\tikz@atend@scope#1}} -\tikzoption{execute at begin to}{\expandafter\def\expandafter\tikz@atbegin@to\expandafter{\tikz@atbegin@to#1}} -\tikzoption{execute at end to}{\expandafter\def\expandafter\tikz@atend@to\expandafter{\tikz@atend@to#1}} -\tikzoption{execute at begin node}{\expandafter\def\expandafter\tikz@atbegin@node\expandafter{\tikz@atbegin@node#1}} -\tikzoption{execute at end node}{\expandafter\def\expandafter\tikz@atend@node\expandafter{\tikz@atend@node#1}} -\tikzoption{execute at begin matrix}{\expandafter\def\expandafter\tikz@atbegin@matrix\expandafter{\tikz@atbegin@matrix#1}} -\tikzoption{execute at end matrix}{\expandafter\def\expandafter\tikz@atend@matrix\expandafter{\tikz@atend@matrix#1}} -\tikzoption{execute at begin cell}{\expandafter\def\expandafter\tikz@atbegin@cell\expandafter{\tikz@atbegin@cell#1}} -\tikzoption{execute at end cell}{\expandafter\def\expandafter\tikz@atend@cell\expandafter{\tikz@atend@cell#1}} -\tikzoption{execute at empty cell}{\expandafter\def\expandafter\tikz@at@emptycell\expandafter{\tikz@at@emptycell#1}} +\tikzoption{execute at begin picture}{\expandafter\def\expandafter\tikz@atbegin@picture\expandafter{\tikz@atbegin@picture#1}}% +\tikzoption{execute at end picture}{\expandafter\def\expandafter\tikz@atend@picture\expandafter{\tikz@atend@picture#1}}% +\tikzoption{execute at begin scope}{\expandafter\def\expandafter\tikz@atbegin@scope\expandafter{\tikz@atbegin@scope#1}}% +\tikzoption{execute at end scope}{\expandafter\def\expandafter\tikz@atend@scope\expandafter{\tikz@atend@scope#1}}% +\tikzoption{execute at begin to}{\expandafter\def\expandafter\tikz@atbegin@to\expandafter{\tikz@atbegin@to#1}}% +\tikzoption{execute at end to}{\expandafter\def\expandafter\tikz@atend@to\expandafter{\tikz@atend@to#1}}% +\tikzoption{execute at begin node}{\expandafter\def\expandafter\tikz@atbegin@node\expandafter{\tikz@atbegin@node#1}}% +\tikzoption{execute at end node}{\expandafter\def\expandafter\tikz@atend@node\expandafter{\tikz@atend@node#1}}% +\tikzoption{execute at begin matrix}{\expandafter\def\expandafter\tikz@atbegin@matrix\expandafter{\tikz@atbegin@matrix#1}}% +\tikzoption{execute at end matrix}{\expandafter\def\expandafter\tikz@atend@matrix\expandafter{\tikz@atend@matrix#1}}% +\tikzoption{execute at begin cell}{\expandafter\def\expandafter\tikz@atbegin@cell\expandafter{\tikz@atbegin@cell#1}}% +\tikzoption{execute at end cell}{\expandafter\def\expandafter\tikz@atend@cell\expandafter{\tikz@atend@cell#1}}% +\tikzoption{execute at empty cell}{\expandafter\def\expandafter\tikz@at@emptycell\expandafter{\tikz@at@emptycell#1}}% \let\tikz@atbegin@picture=\pgfutil@empty \let\tikz@atend@picture=\pgfutil@empty @@ -1447,17 +1462,17 @@ % Pre and post actions -\tikzset{preaction/.code=\expandafter\def\expandafter\tikz@preactions\expandafter{\tikz@preactions\tikz@extra@preaction{#1}}} -\tikzset{postaction/.code=\expandafter\def\expandafter\tikz@postactions\expandafter{\tikz@postactions\tikz@extra@postaction{#1}}} +\tikzset{preaction/.code=\expandafter\def\expandafter\tikz@preactions\expandafter{\tikz@preactions\tikz@extra@preaction{#1}}}% +\tikzset{postaction/.code=\expandafter\def\expandafter\tikz@postactions\expandafter{\tikz@postactions\tikz@extra@postaction{#1}}}% \let\tikz@preactions=\pgfutil@empty \let\tikz@postactions=\pgfutil@empty % Styles -\tikzoption{set style}{\tikzstyle#1} +\tikzoption{set style}{\tikzstyle#1}% % Handled in a special way. -\def\tikzstyle{\pgfutil@ifnextchar\bgroup\tikz@style@parseA\tikz@style@parseB} -\def\tikz@style@parseB#1={\tikz@style@parseA{#1}=} +\def\tikzstyle{\pgfutil@ifnextchar\bgroup\tikz@style@parseA\tikz@style@parseB}% +\def\tikz@style@parseB#1={\tikz@style@parseA{#1}=}% \def\tikz@style@parseA#1#2=#3[#4]{% check for an optional argument \pgfutil@in@[{#2}%] \ifpgfutil@in@% @@ -1474,14 +1489,14 @@ \pgfkeys{/tikz/#1/.append style={#4}}% \else% \pgfkeys{/tikz/#1/.style={#4}}% - \fi} + \fi}% \def\tikz@style@parseD#1#2=#3{% \pgfutil@in@+{#2}% \ifpgfutil@in@% \pgfkeys{/tikz/#1/.append style={#3}}% \else% \pgfkeys{/tikz/#1/.style={#3}}% - \fi} + \fi}% % @@ -1490,86 +1505,103 @@ % % -\tikzstyle{help lines}= [color=gray,line width=0.2pt] - -\tikzstyle{every picture}= [] -\tikzstyle{every path}= [] -\tikzstyle{every scope}= [] -\tikzstyle{every plot}= [] -\tikzstyle{every node}= [] -\tikzstyle{every child}= [] -\tikzstyle{every child node}= [] -\tikzstyle{every to}= [] -\tikzstyle{every cell}= [] -\tikzstyle{every matrix}= [] -\tikzstyle{every edge}= [draw] -\tikzstyle{every label}= [draw=none,fill=none] -\tikzstyle{every pin}= [draw=none,fill=none] -\tikzstyle{every pin edge}= [help lines] - -\tikzstyle{ultra thin}= [line width=0.1pt] -\tikzstyle{very thin}= [line width=0.2pt] -\tikzstyle{thin}= [line width=0.4pt] -\tikzstyle{semithick}= [line width=0.6pt] -\tikzstyle{thick}= [line width=0.8pt] -\tikzstyle{very thick}= [line width=1.2pt] -\tikzstyle{ultra thick}= [line width=1.6pt] - -\tikzstyle{solid}= [dash pattern=] -\tikzstyle{dotted}= [dash pattern=on \pgflinewidth off 2pt] -\tikzstyle{densely dotted}= [dash pattern=on \pgflinewidth off 1pt] -\tikzstyle{loosely dotted}= [dash pattern=on \pgflinewidth off 4pt] -\tikzstyle{dashed}= [dash pattern=on 3pt off 3pt] -\tikzstyle{densely dashed}= [dash pattern=on 3pt off 2pt] -\tikzstyle{loosely dashed}= [dash pattern=on 3pt off 6pt] -\tikzstyle{dashdotted}= [dash pattern=on 3pt off 2pt on \the\pgflinewidth off 2pt] -\tikzstyle{dash dot}= [dash pattern=on 3pt off 2pt on \the\pgflinewidth off 2pt] -\tikzstyle{densely dashdotted}= [dash pattern=on 3pt off 1pt on \the\pgflinewidth off 1pt] -\tikzstyle{densely dash dot}= [dash pattern=on 3pt off 1pt on \the\pgflinewidth off 1pt] -\tikzstyle{loosely dashdotted}= [dash pattern=on 3pt off 4pt on \the\pgflinewidth off 4pt] -\tikzstyle{loosely dash dot}= [dash pattern=on 3pt off 4pt on \the\pgflinewidth off 4pt] -\tikzstyle{dashdotdotted}= [dash pattern=on 3pt off 2pt on \the\pgflinewidth off 2pt on \the\pgflinewidth off 2pt] -\tikzstyle{densely dashdotdotted}= [dash pattern=on 3pt off 1pt on \the\pgflinewidth off 1pt on \the\pgflinewidth off 1pt] -\tikzstyle{loosely dashdotdotted}= [dash pattern=on 3pt off 4pt on \the\pgflinewidth off 4pt on \the\pgflinewidth off 4pt] -\tikzstyle{dash dot dot}= [dash pattern=on 3pt off 2pt on \the\pgflinewidth off 2pt on \the\pgflinewidth off 2pt] -\tikzstyle{densely dash dot dot}= [dash pattern=on 3pt off 1pt on \the\pgflinewidth off 1pt on \the\pgflinewidth off 1pt] -\tikzstyle{loosely dash dot dot}= [dash pattern=on 3pt off 4pt on \the\pgflinewidth off 4pt on \the\pgflinewidth off 4pt] - - -\tikzstyle{transparent}= [opacity=0] -\tikzstyle{ultra nearly transparent}=[opacity=0.05] -\tikzstyle{very nearly transparent}= [opacity=0.1] -\tikzstyle{nearly transparent}= [opacity=0.25] -\tikzstyle{semitransparent}= [opacity=0.5] -\tikzstyle{nearly opaque}= [opacity=0.75] -\tikzstyle{very nearly opaque}= [opacity=0.9] -\tikzstyle{ultra nearly opaque}= [opacity=0.95] -\tikzstyle{opaque}= [opacity=1] - -\tikzstyle{at start}= [pos=0] -\tikzstyle{very near start}= [pos=0.125] -\tikzstyle{near start}= [pos=0.25] -\tikzstyle{midway}= [pos=0.5] -\tikzstyle{near end}= [pos=0.75] -\tikzstyle{very near end}= [pos=0.875] -\tikzstyle{at end}= [pos=1] - -\tikzstyle{bend at start}= [bend pos=0,bend={+(0,0)}] -\tikzstyle{bend at end}= [bend pos=1,bend={+(0,0)}] - -\tikzstyle{edge from parent}= [draw] +\tikzset{help lines/.style= {color=gray,line width=0.2pt}}% + +\tikzset{every picture/.style= {}}% +\tikzset{every path/.style= {}}% +\tikzset{every scope/.style= {}}% +\tikzset{every plot/.style= {}}% +\tikzset{every node/.style= {}}% +\tikzset{every child/.style= {}}% +\tikzset{every child node/.style= {}}% +\tikzset{every to/.style= {}}% +\tikzset{every cell/.style= {}}% +\tikzset{every matrix/.style= {}}% +\tikzset{every edge/.style= {draw}}% +\tikzset{every label/.style= {draw=none,fill=none}}% +\tikzset{every pin/.style= {draw=none,fill=none}}% +\tikzset{every pin edge/.style= {help lines}}% + +\tikzset{ultra thin/.style= {line width=0.1pt}}% +\tikzset{very thin/.style= {line width=0.2pt}}% +\tikzset{thin/.style= {line width=0.4pt}}% +\tikzset{semithick/.style= {line width=0.6pt}}% +\tikzset{thick/.style= {line width=0.8pt}}% +\tikzset{very thick/.style= {line width=1.2pt}}% +\tikzset{ultra thick/.style= {line width=1.6pt}}% + +\tikzset{solid/.style= {dash pattern=}}% +\tikzset{dotted/.style= {dash pattern=on \pgflinewidth off 2pt}}% +\tikzset{densely dotted/.style= {dash pattern=on \pgflinewidth off 1pt}}% +\tikzset{loosely dotted/.style= {dash pattern=on \pgflinewidth off 4pt}}% +\tikzset{dashed/.style= {dash pattern=on 3pt off 3pt}}% +\tikzset{densely dashed/.style= {dash pattern=on 3pt off 2pt}}% +\tikzset{loosely dashed/.style= {dash pattern=on 3pt off 6pt}}% +\tikzset{dashdotted/.style= {dash pattern=on 3pt off 2pt on \the\pgflinewidth off 2pt}}% +\tikzset{dash dot/.style= {dash pattern=on 3pt off 2pt on \the\pgflinewidth off 2pt}}% +\tikzset{densely dashdotted/.style= {dash pattern=on 3pt off 1pt on \the\pgflinewidth off 1pt}}% +\tikzset{densely dash dot/.style= {dash pattern=on 3pt off 1pt on \the\pgflinewidth off 1pt}}% +\tikzset{loosely dashdotted/.style= {dash pattern=on 3pt off 4pt on \the\pgflinewidth off 4pt}}% +\tikzset{loosely dash dot/.style= {dash pattern=on 3pt off 4pt on \the\pgflinewidth off 4pt}}% +\tikzset{dashdotdotted/.style= {dash pattern=on 3pt off 2pt on \the\pgflinewidth off 2pt on \the\pgflinewidth off 2pt}}% +\tikzset{densely dashdotdotted/.style= {dash pattern=on 3pt off 1pt on \the\pgflinewidth off 1pt on \the\pgflinewidth off 1pt}}% +\tikzset{loosely dashdotdotted/.style= {dash pattern=on 3pt off 4pt on \the\pgflinewidth off 4pt on \the\pgflinewidth off 4pt}}% +\tikzset{dash dot dot/.style= {dash pattern=on 3pt off 2pt on \the\pgflinewidth off 2pt on \the\pgflinewidth off 2pt}}% +\tikzset{densely dash dot dot/.style= {dash pattern=on 3pt off 1pt on \the\pgflinewidth off 1pt on \the\pgflinewidth off 1pt}}% +\tikzset{loosely dash dot dot/.style= {dash pattern=on 3pt off 4pt on \the\pgflinewidth off 4pt on \the\pgflinewidth off 4pt}}% + + +\tikzset{transparent/.style= {opacity=0}}% +\tikzset{ultra nearly transparent/.style={opacity=0.05}}% +\tikzset{very nearly transparent/.style= {opacity=0.1}}% +\tikzset{nearly transparent/.style= {opacity=0.25}}% +\tikzset{semitransparent/.style= {opacity=0.5}}% +\tikzset{nearly opaque/.style= {opacity=0.75}}% +\tikzset{very nearly opaque/.style= {opacity=0.9}}% +\tikzset{ultra nearly opaque/.style= {opacity=0.95}}% +\tikzset{opaque/.style= {opacity=1}}% + +\tikzset{at start/.style= {pos=0}}% +\tikzset{very near start/.style= {pos=0.125}}% +\tikzset{near start/.style= {pos=0.25}}% +\tikzset{midway/.style= {pos=0.5}}% +\tikzset{near end/.style= {pos=0.75}}% +\tikzset{very near end/.style= {pos=0.875}}% +\tikzset{at end/.style= {pos=1}}% + +\tikzset{bend at start/.style= {bend pos=0,bend={+(0,0)}}}% +\tikzset{bend at end/.style= {bend pos=1,bend={+(0,0)}}}% + +\tikzset{edge from parent/.style= {draw}}% + + + +% Animation callbacks +\tikzset{ + animate/.code=\tikzerror{You need to say \string\usetikzlibrary{animations} to use animations} +} + +% ID callbacks +\newif\iftikz@is@node +\let\tikz@id@hook\pgfutil@empty +\def\tikz@call@id@hook{\ifx\tikz@id@hook\pgfutil@empty\else\tikz@id@hook\pgfuseid{\tikz@id@name}\fi}% + +% RDF stuff +\let\tikz@clear@rdf@options\relax +\let\tikz@do@rdf@post@options\relax +\let\tikz@do@rdf@pre@options\relax % % Setting keys % -\pgfkeys{/tikz/style/.style=#1} +\pgfkeys{/tikz/style/.style=#1}% \pgfkeys{/tikz/.unknown/.code=% % Is it a pgf key? - \let\tikz@key\pgfkeyscurrentname% + \let\tikz@key\pgfkeyscurrentname% \pgfkeys{/pgf/\tikz@key/.try={#1}}% \ifpgfkeyssuccess% \else% @@ -1580,7 +1612,7 @@ \edef\tikz@textcolor{\tikz@key}% \else% \pgfutil@doifcolorelse{\tikz@key} - {% + {% \expandafter\tikz@addoption\expandafter{\expandafter\tikz@compat@color@set\expandafter{\tikz@key}}% \edef\tikz@textcolor{\tikz@key}% }% @@ -1594,8 +1626,7 @@ % Ok, third chance: A shape! \expandafter\ifx\csname pgf@sh@s@\tikz@key\endcsname\relax% \pgfkeys{/errors/unknown key/.expand - once=\expandafter{\expandafter/\expandafter t\expandafter - i\expandafter k\expandafter z\expandafter/\tikz@key}{#1}}% + once=\expandafter{\expandafter/\expandafter t\expandafter i\expandafter k\expandafter z\expandafter/\tikz@key}{#1}}% \else% \edef\tikz@shape{\tikz@key}% \fi% @@ -1603,14 +1634,14 @@ }% \fi% \fi% -} +}% \def\tikz@compat@color@set#1{% \pgfutil@color{#1}\pgfutil@colorlet{pgffillcolor}{#1}% - \expandafter\let\expandafter\pgf@temp\csname\string\color@pgffillcolor\endcsname + \expandafter\let\expandafter\pgf@temp\csname\string\color@pgffillcolor\endcsname% % for arrow tips: \global\let\pgf@strokecolor@global=\pgf@temp \global\let\pgf@fillcolor@global=\pgf@temp -} +}% \def\tikz@startup@env{% \ifnum\the\catcode`\;=\active\relax\expandafter\let\expandafter\tikz@origsemi\expandafter=\tikz@activesemicolon\fi% @@ -1620,7 +1651,7 @@ \iftikz@handle@active@code% \tikz@switchoff@shorthands% \fi% -} +}% % % Main TikZ Environment @@ -1629,7 +1660,7 @@ \def\tikzpicture{% \begingroup% \tikz@startup@env% - \pgfutil@ifnextchar[\tikz@picture{\tikz@picture[]}}%} + \tikz@collect@scope@anims\tikz@picture}% \def\tikz@picture[#1]{% \pgfpicture% \let\tikz@atbegin@picture=\pgfutil@empty% @@ -1643,22 +1674,22 @@ \fi% \expandafter\tikz@atbegin@picture% \tikz@lib@scope@check% -} +}% \def\endtikzpicture{% \tikz@atend@picture% \global\let\pgf@shift@baseline@smuggle=\pgf@baseline% \global\let\pgf@trimleft@final@smuggle=\pgf@trimleft% \global\let\pgf@trimright@final@smuggle=\pgf@trimright% \global\let\pgf@remember@smuggle=\ifpgfrememberpicturepositiononpage% - \pgf@remember@layerlist@globally + \pgf@remember@layerlist@globally \endscope% \let\pgf@baseline=\pgf@shift@baseline@smuggle% \let\pgf@trimleft=\pgf@trimleft@final@smuggle% \let\pgf@trimright=\pgf@trimright@final@smuggle% \let\ifpgfrememberpicturepositiononpage=\pgf@remember@smuggle% - \pgf@restore@layerlist@from@global - \endpgfpicture\endgroup} - + \pgf@restore@layerlist@from@global + \endpgfpicture\endgroup}% + % Inlined picture % @@ -1676,108 +1707,128 @@ \def\tikz{% \begingroup% \tikz@startup@env% - \pgfutil@ifnextchar[{\tikz@opt}{\tikz@opt[]}} -\def\tikz@opt[#1]{\tikzpicture[#1]\pgfutil@ifnextchar\bgroup{\tikz@}{\tikz@@single}} -\def\tikz@{\bgroup\tikz@auto@end@pathtrue\aftergroup\endtikzpicture\aftergroup\endgroup\let\pgf@temp=} + \tikz@collect@scope@anims\tikz@opt}% +\def\tikz@opt[#1]{\tikzpicture[#1]\pgfutil@ifnextchar\bgroup{\tikz@}{\tikz@@single}}% +\def\tikz@{\bgroup\tikz@auto@end@pathtrue\aftergroup\endtikzpicture\aftergroup\endgroup\let\pgf@temp=}% \def\tikz@@single#1{% \expandafter\ifx\csname tikz@protected@command\string#1\endcsname\relax% \expandafter\tikz@@% \else% \begingroup\def\tikz@path@do@at@end{\endgroup\endtikzpicture\endgroup}% \fi% - #1% -} - -\expandafter\let\csname tikz@protected@command\string\draw\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\pattern\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\fill\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\filldraw\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\shade\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\shadedraw\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\clip\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\graph\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\useasboundingbox\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\node\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\coordinate\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\matrix\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\datavisualization\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\path\endcsname\pgfutil@empty -\expandafter\let\csname tikz@protected@command\string\pic\endcsname\pgfutil@empty + #1% +}% + +\expandafter\let\csname tikz@protected@command\string\draw\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\pattern\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\fill\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\filldraw\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\shade\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\shadedraw\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\clip\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\graph\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\useasboundingbox\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\node\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\coordinate\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\matrix\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\datavisualization\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\path\endcsname\pgfutil@empty% +\expandafter\let\csname tikz@protected@command\string\pic\endcsname\pgfutil@empty% % Comment by TT: I hope I fixed the \tikz \foreach problem. The new % version will take a conservative approach and will only do fancy % stuff when the next keyword after \tikz is one of the following: -% \draw, \fill, \filldraw, \graph, \matrix, +% \draw, \fill, \filldraw, \graph, \matrix, \def\tikz@@{% \let\tikz@next=\tikz@collectnormalsemicolon% \ifnum\the\catcode`\;=\active\relax% \let\tikz@next=\tikz@collectactivesemicolon% \fi% - \tikz@next} + \tikz@next}% \def\tikz@collectnormalsemicolon#1;{#1;\endtikzpicture\endgroup} { \catcode`\;=\active \gdef\tikz@collectactivesemicolon#1;{#1;\endtikzpicture\endgroup} -} +}% % End old code -% Invokes '#1' if the command is invoked withing a tikzpicture and +% Invokes '#1' if the command is invoked within a tikzpicture and % '#2' if not. \def\tikzifinpicture#1#2{% - \pgfutil@ifundefined{filldraw}{#2}{#1}% TT: This is a wrong + \pgfutil@ifundefined{filldraw}{#2}{#1}% TT: This is a wrong % test! Who uses this?... }% + +\def\tikz@collect@scope@anims#1{% + \pgfutil@ifnextchar[#1{#1[]}%] +}% + % % Environment for scoping graphic state settings % -\def\tikz@scope@env{\pgfutil@ifnextchar[\tikz@@scope@env{\tikz@@scope@env[]}} -\def\tikz@@scope@env[#1]{% +\def\tikz@scope@env{% \pgfscope% \begingroup% \let\tikz@atbegin@scope=\pgfutil@empty% \let\tikz@atend@scope=\pgfutil@empty% \let\tikz@options=\pgfutil@empty% + \tikz@clear@rdf@options% \let\tikz@mode=\pgfutil@empty% + \let\tikz@id@name=\pgfutil@empty% \tikz@transparency@groupfalse% - \tikzset{every scope/.try,#1}% + \tikzset{every scope/.try}% + \tikz@collect@scope@anims\tikz@scope@opt% +}% +\def\tikz@scope@opt[#1]{% + \tikzset{#1}% \tikz@options% + \tikz@do@rdf@pre@options% \iftikz@transparency@group\expandafter\pgftransparencygroup\expandafter[\tikz@transparency@group@options]\tikz@blend@group\fi% - \expandafter\tikz@atbegin@scope% - \tikz@lib@scope@check% -} + \tikz@is@nodefalse% + \tikz@call@id@hook% + \pgfidscope% + \tikz@do@rdf@post@options% + \begingroup% + \let\tikz@id@name\pgfutil@empty% + \expandafter\tikz@atbegin@scope% + \expandafter\pgfclearid% + \tikz@lib@scope@check% +}% \def\endtikz@scope@env{% - \tikz@atend@scope% + \tikz@atend@scope% + \endgroup% + \endpgfidscope% \iftikz@transparency@group\endpgftransparencygroup\fi% \endgroup% \endpgfscope% \tikz@lib@scope@check% -} +}% -\def\tikz@scoped{\pgfutil@ifnextchar[{\tikz@scoped@opt}{\tikz@scoped@opt[]}} -\def\tikz@scoped@opt[#1]{\scope[#1]\pgfutil@ifnextchar\bgroup{\tikz@scoped@}{\tikz@scoped@@single}} -\def\tikz@scoped@{\bgroup\tikz@auto@end@pathtrue\aftergroup\endscope\let\pgf@temp=} +\def\tikz@scoped{\tikz@collect@scope@anims\tikz@scoped@opt}% +\def\tikz@scoped@opt[#1]{\scope[#1]\pgfutil@ifnextchar\bgroup{\tikz@scoped@}{\tikz@scoped@@single}}% +\def\tikz@scoped@{\bgroup\tikz@auto@end@pathtrue\aftergroup\endscope\let\pgf@temp=}% \def\tikz@scoped@@single#1{% \expandafter\ifx\csname tikz@scoped@protected@command\string#1\endcsname\relax% \expandafter\tikz@scoped@@% \else% \begingroup\def\tikz@scoped@path@do@at@end{\endgroup\endscope}% \fi% - #1% -} + #1% +}% \def\tikz@scoped@@{% \let\tikz@scoped@next=\tikz@scoped@collectnormalsemicolon% \ifnum\the\catcode`\;=\active\relax% \let\tikz@scoped@next=\tikz@scoped@collectactivesemicolon% \fi% - \tikz@scoped@next} + \tikz@scoped@next}% \def\tikz@scoped@collectnormalsemicolon#1;{#1;\endscope} { \catcode`\;=\active \gdef\tikz@scoped@collectactivesemicolon#1;{#1;\endscope} -} - +}% + % Install a shortcut command which is only valid inside of a % tikzpicture. @@ -1788,17 +1839,17 @@ % #1: shortcut command inside of tikzpicture % #2: real command name \def\tikzaddtikzonlycommandshortcutlet#1#2{% - \expandafter\def\expandafter\tikz@installcommands\expandafter{\tikz@installcommands - \let#1=#2% - }% + \expandafter\def\expandafter\tikz@installcommands\expandafter{\tikz@installcommands + \let#1=#2% + }% }% % Has the same effect as \tikzaddtikzonlycommandshortcutlet but uses % \def#1{#2} instead of \let. \def\tikzaddtikzonlycommandshortcutdef#1#2{% - \expandafter\def\expandafter\tikz@installcommands\expandafter{\tikz@installcommands - \def#1{#2}% - }% + \expandafter\def\expandafter\tikz@installcommands\expandafter{\tikz@installcommands + \def#1{#2}% + }% }% % @@ -1836,33 +1887,33 @@ \let\path=\tikz@command@path% \let\againpath=\tikz@command@againpath% % - \def\draw{\path[draw]} - \def\pattern{\path[pattern]} - \def\fill{\path[fill]} - \def\filldraw{\path[fill,draw]} - \def\shade{\path[shade]} - \def\shadedraw{\path[shade,draw]} - \def\clip{\path[clip]} - \def\graph{\path graph} - \def\useasboundingbox{\path[use as bounding box]} - \def\node{\tikz@path@overlay{node}} - \def\pic{\tikz@path@overlay{pic}} - \def\coordinate{\tikz@path@overlay{coordinate}} - \def\matrix{\tikz@path@overlay{node[matrix]}} - \def\calendar{\tikz@lib@cal@calendar}% + \def\draw{\path[draw]}% + \def\pattern{\path[pattern]}% + \def\fill{\path[fill]}% + \def\filldraw{\path[fill,draw]}% + \def\shade{\path[shade]}% + \def\shadedraw{\path[shade,draw]}% + \def\clip{\path[clip]}% + \def\graph{\path graph}% + \def\useasboundingbox{\path[use as bounding box]}% + \def\node{\tikz@path@overlay{node}}% + \def\pic{\tikz@path@overlay{pic}}% + \def\coordinate{\tikz@path@overlay{coordinate}}% + \def\matrix{\tikz@path@overlay{node[matrix]}}% + \def\calendar{\tikz@lib@cal@calendar}% \def\datavisualization{\tikz@lib@datavisualization}% -} +}% \ifx\tikz@lib@cal@calendar\@undefined -\def\tikz@lib@cal@calendar{\tikzerror{You need to say \string\usetikzlibrary{calendar} to use the \string\calendar{} command}} +\def\tikz@lib@cal@calendar{\tikzerror{You need to say \string\usetikzlibrary{calendar} to use the \string\calendar{} command}}% \fi \ifx\tikz@lib@datavisualization\@undefined -\def\tikz@lib@datavisualization{\tikzerror{You need to say \string\usetikzlibrary{datavisualization} to use the \string\datavisualization{} command}} +\def\tikz@lib@datavisualization{\tikzerror{You need to say \string\usetikzlibrary{datavisualization} to use the \string\datavisualization{} command}}% \fi \def\tikz@path@overlay#1{% \let\tikz@signal@path=\tikz@signal@path% for detection at begin of matrix cell - \pgfutil@ifnextchar<{\tikz@path@overlayed{#1}}{\path #1}} -\def\tikz@path@overlayed#1<#2>{\path<#2> #1} + \pgfutil@ifnextchar<{\tikz@path@overlayed{#1}}{\path #1}}% +\def\tikz@path@overlayed#1<#2>{\path<#2> #1}% \def\tikz@uninstallcommands{% \let\scope=\tikz@origscope% @@ -1887,18 +1938,18 @@ \let\calendar=\tikz@origcalendar% \let\datavisualization=\tikz@origdv% \let\graph=\tikz@origgraph% -} +}% -{ +{% \catcode`\;=12 - \gdef\tikz@nonactivesemicolon{;} + \gdef\tikz@nonactivesemicolon{;}% \catcode`\:=12 - \gdef\tikz@nonactivecolon{:} + \gdef\tikz@nonactivecolon{:}% \catcode`\|=12 - \gdef\tikz@nonactivebar{|} + \gdef\tikz@nonactivebar{|}% \catcode`\!=12 - \gdef\tikz@nonactiveexlmark{!} + \gdef\tikz@nonactiveexlmark{!}% \catcode`\;=\active \catcode`\:=\active \catcode`\|=\active @@ -1915,8 +1966,8 @@ \def:{\tikz@nonactivecolon}% \def|{\tikz@nonactivebar}% \def!{\tikz@nonactiveexlmark}% - } -} + }% +}% \let\tikz@orig@shorthands\pgfutil@empty \def\tikz@switchoff@shorthands{% @@ -1950,32 +2001,32 @@ \catcode`\.12\relax% \catcode`\$3\relax% \fi% -} +}% % Constructs a path and draws/fills them according to the current -% settings. +% settings. \def\tikz@command@path{% \let\tikz@signal@path=\tikz@signal@path% for detection at begin of matrix cell \pgfutil@ifnextchar[{\tikz@check@earg}%] - {\pgfutil@ifnextchar<{\tikz@doopt}{\tikz@@command@path}}} + {\pgfutil@ifnextchar<{\tikz@doopt}{\tikz@@command@path}}}% \def\tikz@signal@path{\tikz@signal@path}% \def\tikz@check@earg[#1]{% \pgfutil@ifnextchar<{\tikz@swap@args[#1]}{\tikz@@command@path[#1]}} -\def\tikz@swap@args[#1]<#2>{\tikz@command@path<#2>[#1]} +\def\tikz@swap@args[#1]<#2>{\tikz@command@path<#2>[#1]}% \def\tikz@doopt{% \let\tikz@next=\tikz@eargnormalsemicolon% \ifnum\the\catcode`\;=\active\relax% \let\tikz@next=\tikz@eargactivesemicolon% \fi% - \tikz@next} -\long\def\tikz@eargnormalsemicolon<#1>#2;{\alt<#1>{\tikz@@command@path#2;}{\tikz@path@do@at@end}} + \tikz@next}% +\long\def\tikz@eargnormalsemicolon<#1>#2;{\alt<#1>{\tikz@@command@path#2;}{\tikz@path@do@at@end}}% { \catcode`\;=\active - \long\global\def\tikz@eargactivesemicolon<#1>#2;{\alt<#1>{\tikz@@command@path#2;}{\tikz@path@do@at@end}} + \long\global\def\tikz@eargactivesemicolon<#1>#2;{\alt<#1>{\tikz@@command@path#2;}{\tikz@path@do@at@end}}% } \def\tikz@@command@path{% @@ -1985,6 +2036,7 @@ \setbox\tikz@figbox@bg=\box\pgfutil@voidb@x% \let\tikz@path@do@at@end=\tikz@lib@scope@check% \let\tikz@options=\pgfutil@empty% + \tikz@clear@rdf@options% \let\tikz@mode=\pgfutil@empty% \let\tikz@moveto@waiting=\relax% \let\tikz@timer=\relax% @@ -2004,53 +2056,54 @@ \tikz@lastysaved=0pt% \tikzset{every path/.try}% \tikz@scan@next@command% -} +}% \def\tikz@scan@next@command{% \ifx\tikz@collected@onpath\pgfutil@empty% \else% \tikz@invoke@collected@onpath% \fi% \afterassignment\tikz@handle\let\pgf@let@token=% -} +}% \newcount\tikz@expandcount +\let\tikz@collected@onpath=\pgfutil@empty% % Central dispatcher for commands \def\tikz@handle{% - \let\@next=\tikz@expand% + \let\pgfutil@next=\tikz@expand% \ifx\pgf@let@token(%) - \let\@next=\tikz@movetoabs% + \let\pgfutil@next=\tikz@movetoabs% \else% \ifx\pgf@let@token+% - \let\@next=\tikz@movetorel% + \let\pgfutil@next=\tikz@movetorel% \else% \ifx\pgf@let@token-% - \let\@next=\tikz@lineto% + \let\pgfutil@next=\tikz@lineto% \else% \ifx\pgf@let@token.% - \let\@next=\tikz@dot% + \let\pgfutil@next=\tikz@dot% \else% \ifx\pgf@let@token r% - \let\@next=\tikz@rect% + \let\pgfutil@next=\tikz@rect% \else% \ifx\pgf@let@token n% - \let\@next=\tikz@fig% + \let\pgfutil@next=\tikz@fig% \else% \ifx\pgf@let@token[%] - \let\@next=\tikz@parse@options% + \let\pgfutil@next=\tikz@parse@options% \else% \ifx\pgf@let@token c% - \let\@next=\tikz@cchar% + \let\pgfutil@next=\tikz@cchar% \else% \ifx\pgf@let@token\bgroup% - \let\@next=\tikz@beginscope% + \let\pgfutil@next=\tikz@beginscope% \else% \ifx\pgf@let@token\egroup% - \let\@next=\tikz@endscope% + \let\pgfutil@next=\tikz@endscope% \else% \ifx\pgf@let@token;% - \let\@next=\tikz@finish% + \let\pgfutil@next=\tikz@finish% \else% - \let\@next=\tikz@handle@more% + \let\pgfutil@next=\tikz@handle@more% \fi% \fi% \fi% @@ -2062,72 +2115,76 @@ \fi% \fi% \fi% - \@next% -} + \pgfutil@next% +}% % Continued... \def\tikz@handle@more{% \ifx\pgf@let@token a% - \let\@next=\tikz@arcA% + \let\pgfutil@next=\tikz@a@char% \else% \ifx\pgf@let@token e% - \let\@next=\tikz@e@char% + \let\pgfutil@next=\tikz@e@char% \else% \ifx\pgf@let@token g% - \let\@next=\tikz@g@char% + \let\pgfutil@next=\tikz@g@char% \else% \ifx\pgf@let@token s% - \let\@next=\tikz@schar% + \let\pgfutil@next=\tikz@schar% \else% \ifx\pgf@let@token |% - \let\@next=\tikz@vh@lineto% + \let\pgfutil@next=\tikz@vh@lineto% \else% \ifx\pgf@let@token p% - \let\@next=\tikz@pchar% + \let\pgfutil@next=\tikz@pchar% \pgfsetmovetofirstplotpoint% \else% \ifx\pgf@let@token t% - \let\@next=\tikz@to% + \let\pgfutil@next=\tikz@to% \else% \ifx\pgf@let@token\pgfextra% - \let\@next=\tikz@extra% + \let\pgfutil@next=\tikz@extra% \else% \ifx\pgf@let@token\foreach% - \let\@next=\tikz@foreach% + \let\pgfutil@next=\tikz@foreach% \else% \ifx\pgf@let@token f% - \let\@next=\tikz@fchar% + \let\pgfutil@next=\tikz@fchar% \else% \ifx\pgf@let@token\pgf@stop% - \let\@next=\relax% + \let\pgfutil@next=\relax% \else% \ifx\pgf@let@token\par% - \let\@next=\tikz@scan@next@command% + \let\pgfutil@next=\tikz@scan@next@command% \else% \ifx\pgf@let@token d% - \let\@next=\tikz@decoration% + \let\pgfutil@next=\tikz@decoration% \else% \ifx\pgf@let@token l% - \let\@next=\tikz@l@char%\tikz@let@command% + \let\pgfutil@next=\tikz@l@char% \else% - \let\@next=\tikz@expand% - \fi% - \fi% - \fi% - \fi% - \fi% - \fi% - \fi% - \fi% - \fi% - \fi% + \ifx\pgf@let@token:% + \let\pgfutil@next=\tikz@colon@char% + \else% + \let\pgfutil@next=\tikz@expand% + \fi% + \fi% + \fi% + \fi% + \fi% + \fi% + \fi% + \fi% + \fi% + \fi% + \fi% \fi% \fi% \fi% \fi% - \ifx\@next\tikz@expand\else\tikz@expandcount=100\relax\fi% - \@next% -} + \ifx\pgfutil@next\tikz@expand\else\tikz@expandcount=100\relax\fi% + \pgfutil@next% +}% \def\tikz@l@char{% \pgfutil@ifnextchar e{\tikz@let@command}{% @@ -2135,54 +2192,56 @@ \pgfutil@ifnextchar-{\tikz@@lsystem}{\tikz@expand}% }% }% -} +}% \def\tikz@lsystem{% \tikzerror{You need to say \string\usetikzlibrary{lindenmayersystems} to draw Lindenmayer systems} -} +}% \def\tikz@@lsystem{% \tikzerror{You need to say \string\usetikzlibrary{lindenmayersystems} to draw L-systems} -} +}% -\def\tikz@pchar{\pgfutil@ifnextchar l{\tikz@plot}{\pgfutil@ifnextchar i{\tikz@subpicture}{\tikz@parabola}}} +\def\tikz@pchar{\pgfutil@ifnextchar l{\tikz@plot}{\pgfutil@ifnextchar i{\tikz@subpicture}{\tikz@parabola}}}% \def\tikz@cchar{% \pgfutil@ifnextchar i{\tikz@circle}% {\pgfutil@ifnextchar h{\tikz@children}{\tikz@cochar}}}% \def\tikz@cochar o{% - \pgfutil@ifnextchar o{\tikz@coordinate}{\tikz@cosine}} + \pgfutil@ifnextchar o{\tikz@coordinate}{\tikz@cosine}}% \def\tikz@e@char{% \pgfutil@ifnextchar l{\tikz@ellipse}{\tikz@@e@char}}% +\def\tikz@a@char{% + \pgfutil@ifnextchar r{\tikz@arcA}{\tikzerror{Arc expected}}}% \def\tikz@@e@char dge{% \pgfutil@ifnextchar f{\tikz@edgetoparent}{\tikz@edge@plain}}% -\def\tikz@schar{\pgfutil@ifnextchar i{\tikz@sine}{\tikz@svg@path}} +\def\tikz@schar{\pgfutil@ifnextchar i{\tikz@sine}{\tikz@svg@path}}% -\def\tikz@g@char r{\pgfutil@ifnextchar i{\tikz@grid}{\tikz@graph}} +\def\tikz@g@char r{\pgfutil@ifnextchar i{\tikz@grid}{\tikz@graph}}% % svg syntax % svg[options] {...} \def\tikz@svg@path{% \tikzerror{You need to say \string\usetikzlibrary{svg.path} to use the svg path command} -} +}% \def\tikz@finish{% - % Rendering pipeline - % + % Rendering pipeline + % % Step 1: The path background box % \box\tikz@figbox@bg% - % + % % Step 2: Decorate path - % + % \iftikz@decoratepath% \tikz@lib@dec@decorate@path% \fi% - % + % % Step 3: Preactions - % + % \pgfsyssoftpath@getcurrentpath\tikz@actions@path% \edef\tikz@restorepathsize{% \global\pgf@pathmaxx=\the\pgf@pathmaxx% @@ -2238,8 +2297,8 @@ \tikz@mode@fade@scopefalse% \fi% % - % Step 3: Setup options - % + % Step 5': Setup options + % \ifx\tikz@options\pgfutil@empty% \else% \pgfsys@beginscope% @@ -2248,7 +2307,18 @@ \begingroup% \tikz@options% \fi% - % + \tikz@do@rdf@pre@options% + % + % Step 5'': Setup animations + % + \tikz@is@nodefalse% + \tikz@call@id@hook% + \iftikz@mode@clip\else% + \pgfidscope% + \tikz@do@rdf@post@options% + \begingroup% + \fi% open an animation scope here, unless clipping is done + % % Step 6: Do a fill if shade or a path picture follows. % \iftikz@mode@fill% @@ -2257,7 +2327,10 @@ \pgfprocessround{\tikz@temppath}{\tikz@temppath}% change the path \pgfsyssoftpath@setcurrentpath\tikz@temppath% \pgfsyssoftpath@invokecurrentpath% + \pgfpushtype% + \pgfusetype{.path fill}% \pgfsys@fill% + \pgfpoptype% \tikz@mode@fillfalse% no more filling... \else% \ifx\tikz@path@picture\pgfutil@empty% @@ -2266,28 +2339,38 @@ \pgfprocessround{\tikz@temppath}{\tikz@temppath}% change the path \pgfsyssoftpath@setcurrentpath\tikz@temppath% \pgfsyssoftpath@invokecurrentpath% + \pgfpushtype% + \pgfusetype{.path fill}% \pgfsys@fill% + \pgfpoptype% \tikz@mode@fillfalse% no more filling... \fi% \fi% \fi% - % + % % Step 7: Do a shade if necessary. % \iftikz@mode@shade% \pgfsyssoftpath@getcurrentpath\tikz@temppath \pgfprocessround{\tikz@temppath}{\tikz@temppath}% change the path \pgfsyssoftpath@setcurrentpath\tikz@temppath% + \pgfpushtype% + \pgfusetype{.path shade}% \pgfshadepath{\tikz@shading}{\tikz@shade@angle}% + \pgfpoptype% \tikz@mode@shadefalse% no more shading... \fi% - % + % % Step 8: Do a path picture if necessary. % \ifx\tikz@path@picture\pgfutil@empty% \else% \begingroup% + \pgfusetype{.path picture}% + \pgfidscope% \pgfsys@beginscope% + \let\tikz@id@name\pgfutil@empty% + \pgfclearid% \pgfsyssoftpath@getcurrentpath\tikz@temppath \pgfprocessround{\tikz@temppath}{\tikz@temppath}% change the path \pgfsyssoftpath@setcurrentpath\tikz@temppath% @@ -2302,14 +2385,15 @@ } \expandafter\def\csname pgf@sh@nt@path picture bounding box\endcsname{{1}{0}{0}{1}{0pt}{0pt}} \expandafter\def\csname pgf@sh@pi@path picture bounding box\endcsname{\pgfpictureid} - \pgfinterruptpath% + \pgfinterruptpath% \tikz@path@picture% \endpgfinterruptpath% \pgfsys@endscope% + \endpgfidscope% \endgroup% - \let\tikz@path@picture=\pgfutil@empty% + \let\tikz@path@picture=\pgfutil@empty% \fi% - % + % % Step 9: Double stroke, if necessary % \iftikz@mode@draw% @@ -2320,17 +2404,20 @@ \tikz@double@setup% \fi% \fi% - % + % % Step 10: Do stroke/fill/clip as needed % + \pgfpushtype% \edef\tikz@temp{\noexpand\pgfusepath{% \iftikz@mode@fill fill,\fi% \iftikz@mode@draw draw,\fi% \iftikz@mode@clip clip\fi% }}% + \pgfusetype{.path}% \tikz@temp% + \pgfpoptype% \tikz@mode@fillfalse% no more filling - % + % % Step 11: Double stroke, if necessary % \iftikz@mode@draw% @@ -2344,11 +2431,15 @@ % Step 12: Postactions % \tikz@postactions% - % + % % Step 13: Add labels and nodes % \box\tikz@figbox% % + % Step 14: Close animations + % + \iftikz@mode@clip\else\endgroup\endpgfidscope\fi% + % % Step 14: Close option brace % \ifx\tikz@options\pgfutil@empty% @@ -2370,9 +2461,10 @@ \endgroup% \global\pgflinewidth=\tikzscope@linewidth% \tikz@path@do@at@end% -} +}% \let\tikz@lib@scope@check\pgfutil@empty% this is a hook for the scopes library -\def\tikz@path@do@at@end{\tikz@lib@scope@check} +\def\tikz@path@do@at@end{\tikz@lib@scope@check}% +\def\tikz@@pathtext{@path}% \def\pgf@outer@auto@adjust@hook{% {% @@ -2380,11 +2472,11 @@ \tikz@mode% \expandafter% }% - \iftikz@mode@draw\else%xxx + \iftikz@mode@draw\else% \pgfkeyslet{/pgf/outer xsep}\pgf@zero@text \pgfkeyslet{/pgf/outer ysep}\pgf@zero@text \fi% -} +}% % Extra actions @@ -2398,7 +2490,7 @@ \tikz@restorepathsize% \pgfsys@endscope% }% -} +}% \def\tikz@extra@postaction#1{% {% @@ -2410,36 +2502,36 @@ \pgf@resetpathsizes% \pgfsys@endscope% }% -} +}% -\def\tikz@skip#1{\tikz@scan@next@command#1} +\def\tikz@skip#1{\tikz@scan@next@command#1}% \def\tikz@expand{% \advance\tikz@expandcount by -1% \ifnum\tikz@expandcount<0\relax% \tikzerror{Giving up on this path. Did you forget a semicolon?}% - \let\@next=\tikz@finish% + \let\pgfutil@next=\tikz@finish% \else% - \let\@next=\tikz@@expand + \let\pgfutil@next=\tikz@@expand \fi% - \@next} + \pgfutil@next}% \def\tikz@@expand{% - \expandafter\tikz@scan@next@command\pgf@let@token} + \expandafter\tikz@scan@next@command\pgf@let@token}% -% Syntax for scopes: +% Syntax for scopes: % {scoped path commands} \newif\iftikz@auto@end@path -\def\tikz@beginscope{\begingroup\tikz@auto@end@pathfalse\tikz@scan@next@command} +\def\tikz@beginscope{\begingroup\tikz@auto@end@pathfalse\tikz@scan@next@command}% \def\tikz@endscope{% \iftikz@auto@end@path\expandafter\tikz@finish\expandafter\egroup\else\expandafter\tikz@@endscope\fi% -} -\def\tikz@@endscope{% +}% +\def\tikz@@endscope{% \global\setbox\tikz@tempbox=\box\tikz@figbox% \global\setbox\tikz@tempbox@bg=\box\tikz@figbox@bg% \global\let\tikz@tangent@temp\tikz@tangent% @@ -2468,24 +2560,24 @@ \setbox\tikz@figbox=\box\tikz@tempbox% \setbox\tikz@figbox@bg=\box\tikz@tempbox@bg% \let\tikz@tangent\tikz@tangent@temp% - \tikz@scan@next@command} + \tikz@scan@next@command}% -% Syntax for pgfextra: +% Syntax for pgfextra: % \pgfextra {normal tex text} % \pgfextra normal tex text \endpgfextra -\def\tikz@extra{\pgfutil@ifnextchar\bgroup\tikz@@extra\relax} -\long\def\tikz@@extra#1{#1\tikz@scan@next@command} +\def\tikz@extra{\pgfutil@ifnextchar\bgroup\tikz@@extra\relax}% +\long\def\tikz@@extra#1{#1\tikz@scan@next@command}% \let\endpgfextra=\tikz@scan@next@command -\def\pgfextra{pgfextra} +\def\pgfextra{pgfextra}% % Syntax for foreach: % % foreach \var in {list} {path text} -% +% % or % % \foreach \var in {list} {path text} @@ -2494,7 +2586,7 @@ % % \draw (0,0) \foreach \x in {1,2,3} {-- (\x,0) circle (1cm)} -- (5,5); -\def\tikz@fchar oreach{\tikz@foreach} +\def\tikz@fchar oreach{\tikz@foreach}% \def\tikz@foreach{% \def\pgffor@beginhook{% @@ -2530,10 +2622,10 @@ \xdef\tikz@foreach@save@lasty{\the\tikz@lasty}% \xdef\tikz@foreach@save@lastxsaved{\the\tikz@lastxsaved}% \xdef\tikz@foreach@save@lastysaved{\the\tikz@lastysaved}% - \foreach} + \foreach}% + - -% Syntax for againpath: +% Syntax for againpath: % \againpath \somepathname \def\tikz@command@againpath#1{% @@ -2541,27 +2633,34 @@ \pgfsyssoftpath@getcurrentpath\tikz@temp% \expandafter\pgfutil@g@addto@macro\expandafter\tikz@temp\expandafter{#1}% \pgfsyssoftpath@setcurrentpath\tikz@temp% - } -} + }% +}% + +% animation syntax +% :attribute = {...} + +\def\tikz@colon@char#1=#2{% + \tikz@scan@next@command{[animate={myself:{#1}={#2}}]}% +}% % % When this if is set, a just-scanned point is a shape and its border % position still needs to be determined, depending on subsequent -% commands. +% commands. % \newif\iftikz@shapeborder -% Syntax for moveto: +% Syntax for moveto: % <point> -\def\tikz@movetoabs{\tikz@moveto(} -\def\tikz@movetorel{\tikz@moveto+} +\def\tikz@movetoabs{\tikz@moveto(}% +\def\tikz@movetorel{\tikz@moveto+}% \def\tikz@moveto{% - \tikz@scan@one@point{\tikz@@moveto}} + \tikz@scan@one@point{\tikz@@moveto}}% \def\tikz@@moveto#1{% \tikz@make@last@position{#1}% \iftikz@shapeborder% @@ -2573,7 +2672,7 @@ \let\tikz@moveto@waiting=\relax% \fi% \tikz@scan@next@command% -} +}% \let\tikz@moveto@waiting=\relax % normally, nothing is waiting... @@ -2583,7 +2682,7 @@ \pgfpathmoveto{\tikz@last@position}% \fi% \let\tikz@moveto@waiting=\relax% -} +}% \def\tikz@flush@moveto@toward#1#2#3{% @@ -2600,22 +2699,22 @@ \pgfpathmoveto{\pgfqpoint{\pgf@x}{\pgf@y}}% \fi% \let\tikz@moveto@waiting=\relax% -} +}% % -% Collecting labels on the path +% Collecting labels on the path % \def\tikz@collect@coordinate@onpath#1c{% - \pgfutil@ifnextchar y{\tikz@cycle@expander@add#1}{\tikz@collect@coordinate@onpath@{#1}}} + \pgfutil@ifnextchar y{\tikz@cycle@expander@add#1}{\tikz@collect@coordinate@onpath@{#1}}}% \def\tikz@collect@coordinate@onpath@#1oordinate{% - \pgfutil@ifnextchar[{\tikz@@collect@coordinate@opt#1}{\tikz@@collect@coordinate@opt#1[]}}%} + \pgfutil@ifnextchar[{\tikz@@collect@coordinate@opt#1}{\tikz@@collect@coordinate@opt#1[]}}%}% \def\tikz@@collect@coordinate@opt#1[#2]{% \pgfutil@ifnextchar({\tikz@@collect@coordinate#1[#2]}{% - \tikz@collect@label@onpath#1node[shape=coordinate,#2]{}}}%} + \tikz@collect@label@onpath#1node[shape=coordinate,#2]{}}}%}% \def\tikz@@collect@coordinate#1[#2](#3){% - \tikz@collect@label@onpath#1node[shape=coordinate,#2](#3){}} + \tikz@collect@label@onpath#1node[shape=coordinate,#2](#3){}}% \newif\iftikz@collect@pic @@ -2623,43 +2722,48 @@ \expandafter\def\expandafter\tikz@collected@onpath\expandafter{\tikz@collected@onpath node}% \let\tikz@collect@cont#1% \tikz@collect@picfalse% - \tikz@collect@label@scan} + \tikz@collect@label@scan}% \def\tikz@collect@pic@onpath#1pic{% \expandafter\def\expandafter\tikz@collected@onpath\expandafter{\tikz@collected@onpath pic}% \let\tikz@collect@cont#1 \tikz@collect@pictrue% - \tikz@collect@label@scan} + \tikz@collect@label@scan}% -\def\tikz@collect@label@scan{% +\def\tikz@collect@label@scan{% \pgfutil@ifnextchar f{\tikz@collect@nodes}{% \pgfutil@ifnextchar({\tikz@collect@paran}% {\pgfutil@ifnextchar[{\tikz@collect@options}% - {\pgfutil@ifnextchar\bgroup{\tikz@collect@arg}% - {\tikz@collect@cont}}}}% -}%}} + {\pgfutil@ifnextchar:{\tikz@collect@animation}% + {\pgfutil@ifnextchar\bgroup{\tikz@collect@arg}% + {\tikz@collect@cont}}}}}% +}%}}% \def\tikz@collect@nodes foreach#1in{% \expandafter\def\expandafter\tikz@collected@onpath\expandafter{\tikz@collected@onpath foreach#1in}% \pgfutil@ifnextchar\bgroup\tikz@collect@nodes@group\tikz@collect@nodes@one% -} +}% \def\tikz@collect@nodes@one#1{% - \expandafter\def\expandafter\tikz@collected@onpath\expandafter{\tikz@collected@onpath #1}% + \expandafter\def\expandafter\tikz@collected@onpath\expandafter{\tikz@collected@onpath #1}% \tikz@collect@label@scan% -} +}% \def\tikz@collect@nodes@group#1{% - \expandafter\def\expandafter\tikz@collected@onpath\expandafter{\tikz@collected@onpath{#1}}% + \expandafter\def\expandafter\tikz@collected@onpath\expandafter{\tikz@collected@onpath{#1}}% \tikz@collect@label@scan% -} +}% +\def\tikz@collect@animation#1=#2{% + \expandafter\def\expandafter\tikz@collected@onpath\expandafter{\tikz@collected@onpath#1={#2}}% + \tikz@collect@label@scan% +}% \def\tikz@collect@paran#1){% \expandafter\def\expandafter\tikz@collected@onpath\expandafter{\tikz@collected@onpath#1)}% \tikz@collect@label@scan% -} +}% \def\tikz@collect@options#1]{% \expandafter\def\expandafter\tikz@collected@onpath\expandafter{\tikz@collected@onpath#1]}% \tikz@collect@label@scan% -} +}% \def\tikz@collect@arg#1{% \iftikz@handle@active@nodes% \iftikz@collect@pic% @@ -2671,7 +2775,7 @@ \expandafter\def\expandafter\tikz@collected@onpath\expandafter{\tikz@collected@onpath{#1}}% \fi% \tikz@collect@cont% -} +}% \def\tikz@invoke@collected@onpath{% \tikz@node@is@a@labeltrue% @@ -2679,37 +2783,37 @@ \let\tikz@collected@onpath=\pgfutil@empty% \expandafter\tikz@scan@next@command\tikz@temp\pgf@stop% \tikz@node@is@a@labelfalse% -} +}% % % Macros for the cycle command % -\def\tikz@cycle@expander#1{\pgfutil@ifnextchar c{\tikz@cycle@expander@{#1}}{#1}} -\def\tikz@cycle@expander@#1c{\pgfutil@ifnextchar y{\tikz@cycle@expander@add{#1}}{#1c}} -\def\tikz@cycle@expander@add#1ycle{#1(current subpath start)--cycle} +\def\tikz@cycle@expander#1{\pgfutil@ifnextchar c{\tikz@cycle@expander@{#1}}{#1}}% +\def\tikz@cycle@expander@#1c{\pgfutil@ifnextchar y{\tikz@cycle@expander@add{#1}}{#1c}}% +\def\tikz@cycle@expander@add#1ycle{#1(current subpath start)--cycle}% -% Syntax for lineto: +% Syntax for lineto: % -- <point> \def\tikz@lineto{% \pgfutil@ifnextchar |% {\expandafter\tikz@hv@lineto\pgfutil@gobble}% {\expandafter\pgfutil@ifnextchar\tikz@activebar{\expandafter\tikz@hv@lineto\pgfutil@gobble}% - {\expandafter\tikz@lineto@mid\pgfutil@gobble}}} + {\expandafter\tikz@lineto@mid\pgfutil@gobble}}}% \def\tikz@lineto@mid{% \pgfutil@ifnextchar n{\tikz@collect@label@onpath\tikz@lineto@mid}% {% \pgfutil@ifnextchar c{\tikz@close}{% - \pgfutil@ifnextchar p{\tikz@lineto@plot@or@pic}{\tikz@scan@one@point{\tikz@@lineto}}}}} + \pgfutil@ifnextchar p{\tikz@lineto@plot@or@pic}{\tikz@scan@one@point{\tikz@@lineto}}}}}% \def\tikz@lineto@plot@or@pic p{% \pgfutil@ifnextchar i{\tikz@collect@pic@onpath\tikz@lineto@mid p}{% \pgfsetlinetofirstplotpoint\tikz@plot}% -} +}% \def\tikz@@lineto#1{% % Record the starting point for later labels on the path: \edef\tikz@timer@start{\noexpand\pgfqpoint{\the\tikz@lastx}{\the\tikz@lasty}} @@ -2721,7 +2825,7 @@ \tikz@path@lineto{\tikz@last@position}% \edef\tikz@timer@end{\noexpand\pgfqpoint{\the\tikz@lastx}{\the\tikz@lasty}}% \tikz@make@last@position{#1}% - \edef\tikz@moveto@waiting{\tikz@shapeborder@name}% + \edef\tikz@moveto@waiting{\tikz@shapeborder@name}% \else% % target is a reasonable point... % Record the starting point for later labels on the path: @@ -2733,7 +2837,7 @@ \let\tikz@timer=\tikz@timer@line% \let\tikz@tangent\tikz@timer@start% \tikz@scan@next@command% -} +}% % snake or lineto? \def\tikz@path@lineto#1{% @@ -2745,7 +2849,7 @@ \else% \pgfpathlineto{#1}% \fi% -} +}% % snake or lineto? \def\tikz@path@close#1{% @@ -2756,17 +2860,17 @@ }% \fi% \pgfpathclose% -} +}% -% Syntax for lineto horizontal/vertical: +% Syntax for lineto horizontal/vertical: % -| <point> \def\tikz@hv@lineto{% \pgfutil@ifnextchar n{\tikz@collect@label@onpath\tikz@hv@lineto}{ \pgfutil@ifnextchar p{\tikz@collect@pic@onpath\tikz@hv@lineto}% {\pgfutil@ifnextchar c{\tikz@collect@coordinate@onpath\tikz@hv@lineto}% - {\tikz@scan@one@point{\tikz@@hv@lineto}}}}} + {\tikz@scan@one@point{\tikz@@hv@lineto}}}}}% \def\tikz@@hv@lineto#1{% \edef\tikz@timer@start{\noexpand\pgfqpoint{\the\tikz@lastx}{\the\tikz@lasty}}% \pgf@yc=\tikz@lasty% @@ -2783,7 +2887,7 @@ \xdef\tikz@timer@end@temp{\noexpand\pgfqpoint{\the\tikz@lastx}{\the\tikz@lasty}}% move out of group }% \let\tikz@timer@end=\tikz@timer@end@temp% - \edef\tikz@moveto@waiting{\tikz@shapeborder@name}% + \edef\tikz@moveto@waiting{\tikz@shapeborder@name}% \else% \tikz@path@lineto{\pgfqpoint{\tikz@lastx}{\pgf@yc}}% \tikz@path@lineto{\tikz@last@position}% @@ -2791,17 +2895,17 @@ \fi% \let\tikz@timer=\tikz@timer@hvline% \tikz@scan@next@command% -} +}% -% Syntax for lineto vertical/horizontal: +% Syntax for lineto vertical/horizontal: % |- <point> -\def\tikz@vh@lineto-{\tikz@vh@lineto@next} +\def\tikz@vh@lineto-{\tikz@vh@lineto@next}% \def\tikz@vh@lineto@next{% \pgfutil@ifnextchar n{\tikz@collect@label@onpath\tikz@vh@lineto@next}{% \pgfutil@ifnextchar p{\tikz@collect@pic@onpath\tikz@vh@lineto@next}% {\pgfutil@ifnextchar c{\tikz@collect@coordinate@onpath\tikz@vh@lineto@next}% - {\tikz@scan@one@point\tikz@@vh@lineto}}}} + {\tikz@scan@one@point\tikz@@vh@lineto}}}}% \def\tikz@@vh@lineto#1{% \edef\tikz@timer@start{\noexpand\pgfqpoint{\the\tikz@lastx}{\the\tikz@lasty}}% \pgf@xc=\tikz@lastx% @@ -2818,7 +2922,7 @@ \xdef\tikz@timer@end@temp{\noexpand\pgfqpoint{\the\tikz@lastx}{\the\tikz@lasty}}% move out of group }% \let\tikz@timer@end=\tikz@timer@end@temp% - \edef\tikz@moveto@waiting{\tikz@shapeborder@name}% + \edef\tikz@moveto@waiting{\tikz@shapeborder@name}% \else% \tikz@path@lineto{\pgfqpoint{\pgf@xc}{\tikz@lasty}}% \tikz@path@lineto{\tikz@last@position}% @@ -2826,9 +2930,9 @@ \fi% \let\tikz@timer=\tikz@timer@vhline% \tikz@scan@next@command% -} +}% -% Syntax for cycle: +% Syntax for cycle: % -- cycle \def\tikz@close c{% \pgfutil@ifnextchar o{\tikz@collect@coordinate@onpath\tikz@lineto@mid c}% oops, a coordinate @@ -2843,39 +2947,53 @@ \let\tikz@timer=\tikz@timer@line% \let\tikz@tangent\tikz@timer@start% \tikz@scan@next@command% -} +}% -% Syntax for options: +% Syntax for options: % [options] \def\tikz@parse@options#1]{% \tikzset{#1}% \tikz@scan@next@command% -} +}% % Syntax for edges: % edge [options] (coordinate) % edge [options] node {node text} (coordinate) +% edge :attribute={...} [options] node {node text} (coordinate) \def\tikz@edge@plain{% \begingroup% \ifx\tikz@to@use@whom\pgfutil@undefined\else\tikz@to@use@whom\fi \let\tikz@to@or@edge@function=\tikz@do@edge% - \tikz@to@or@edge} + \let\tikz@@to@local@options\pgfutil@empty% + \let\tikz@collected@onpath=\pgfutil@empty% + \tikz@to@or@edge}% % Syntax for to paths: % to [options] (coordinate) % to [options] node {node text} (coordinate) +% to :attribute={...} [options] node {node text} (coordinate) \def\tikz@to o{% \tikz@to@use@last@coordinate% \let\tikz@to@or@edge@function=\tikz@do@to% - \tikz@to@or@edge} - -\def\tikz@to@or@edge{\pgfutil@ifnextchar[\tikz@@to@or@edge{\tikz@@to@or@edge[]}}%} -\def\tikz@@to@or@edge[#1]{% - \def\tikz@@to@local@options{#1}% + \let\tikz@@to@local@options\pgfutil@empty% \let\tikz@collected@onpath=\pgfutil@empty% - \tikz@@to@collect% -} + \tikz@to@or@edge}% + +\def\tikz@to@or@edge{% + \pgfutil@ifnextchar[{\tikz@to@or@edge@option}{% + \pgfutil@ifnextchar:{\tikz@to@or@edge@animation}{% + \tikz@@to@collect}}%] +}% +\def\tikz@to@or@edge@option[#1]{% + \expandafter\def\expandafter\tikz@@to@local@options\expandafter{\tikz@@to@local@options,#1}% + \tikz@to@or@edge% +}% +\def\tikz@to@or@edge@animation:#1=#2{% + \expandafter\def\expandafter\tikz@@to@local@options\expandafter{\tikz@@to@local@options,% + animate={myself:{#1}={#2}}}% + \tikz@to@or@edge% +}% \def\tikz@@to@collect{% \pgfutil@ifnextchar(\tikz@@to@or@edge@coordinate%) {\pgfutil@ifnextchar n{\tikz@collect@label@onpath\tikz@@to@collect}% @@ -2884,7 +3002,7 @@ {\pgfutil@ifnextchar +{\tikz@scan@one@point\tikz@@to@or@edge@math}% {\tikzerror{(, +, coordinate, pic, or node expected}%) \tikz@@to@or@edge@coordinate()}}}}}% -} +}% \def\tikz@@to@or@edge@coordinate({% \pgfutil@ifnextchar${%$ @@ -2897,17 +3015,17 @@ \tikz@@to@or@edge@@coordinate(% }% }% -} -\def\tikz@@to@or@edge@math#1{% +}% +\def\tikz@@to@or@edge@math#1{% \pgf@process{#1}% \edef\tikztotarget{\the\pgf@x,\the\pgf@y}% \tikz@to@or@edge@function% -} +}% \def\tikz@@to@or@edge@@coordinate(#1){% \def\tikztotarget{#1}% \tikz@to@or@edge@function% -} +}% \def\tikz@do@edge{% \ifx\tikz@edge@macro\pgfutil@empty% @@ -2919,10 +3037,14 @@ \pgfscope% \let\tikz@transform=\pgfutil@empty% \let\tikz@options=\pgfutil@empty% + \tikz@clear@rdf@options% \let\tikz@tonodes=\tikz@collected@onpath% \def\tikztonodes{{\pgfextra{\tikz@node@is@a@labeltrue}\tikz@tonodes}}% \let\tikz@collected@onpath=\pgfutil@empty% \tikz@options% + \tikz@do@rdf@pre@options% + \pgfidscope% + \tikz@do@rdf@post@options% \tikz@transform% \let\tikz@transform=\relax% % Typeset node: @@ -2932,6 +3054,7 @@ \path[style=every edge]\expandafter[\tikz@@to@local@options](\tikztostart)\tikz@to@path \pgfextra{\global\let\tikz@after@path@smuggle=\tikz@after@path};% \tikz@atend@to% + \endpgfidscope% \endpgfscope% \endpgfinterruptpath% \egroup @@ -2939,15 +3062,15 @@ \egroup% \global\setbox\tikz@tempbox=\box\tikz@whichbox% \expandafter\endgroup% - \expandafter\setbox\tikz@whichbox=\box\tikz@tempbox% + \expandafter\setbox\tikz@whichbox=\box\tikz@tempbox% \else% \expandafter\expandafter\expandafter\tikz@edge@macro% \expandafter\expandafter\expandafter{\expandafter\tikz@@to@local@options\expandafter}\expandafter{\tikz@collected@onpath}% \endgroup% \let\tikz@after@path@smuggle=\pgfutil@empty% \fi% - \expandafter\tikz@scan@next@command\tikz@after@path@smuggle% -} + \expandafter\tikz@scan@next@command\tikz@after@path@smuggle% +}% \def\tikz@do@to{% \let\tikz@tonodes=\tikz@collected@onpath% @@ -2963,7 +3086,7 @@ \pgf@stop% \expandafter\tikz@scan@next@command\expandafter% }\tikz@after@path% -} +}% \def\tikz@to@use@last@coordinate{% @@ -2972,60 +3095,60 @@ \else% \edef\tikztostart{\the\tikz@lastx,\the\tikz@lasty}% \fi% -} +}% \def\tikz@to@use@last@fig@name{% \edef\tikztostart{\tikz@to@last@fig@name}% -} +}% % Syntax for graph path command: -% graph {...} +% graph [options] {...} % See the graph library for details -\def\tikz@graph aph{\tikz@lib@graph@parser} +\def\tikz@graph aph{\tikz@lib@graph@parser}% -\def\tikz@lib@graph@parser{\pgfutil@ifnextchar[\tikz@graph@error{\tikz@graph@error[]}}%] +\def\tikz@lib@graph@parser{\pgfutil@ifnextchar[\tikz@graph@error{\tikz@graph@error[]}}%]% \def\tikz@graph@error[#1]#2{% - \tikzerror{You need to say \string\usetikzlibrary{graphs} in order to use the graph syntax}% + \tikzerror{You need to say \string\usetikzlibrary{graphs} in order to use the graph syntax}% \tikz@lib@graph@parser@done% -} +}% \def\tikz@lib@graph@parser@done{% \tikz@scan@next@command% -} +}% -% Syntax for edge from parent: +% Syntax for edge from parent: % edge from parent [options] -\def\tikz@edgetoparent from parent{\pgfutil@ifnextchar[\tikz@@edgetoparent{\tikz@@edgetoparent[]}}%} +\def\tikz@edgetoparent from parent{\pgfutil@ifnextchar[\tikz@@edgetoparent{\tikz@@edgetoparent[]}}%}% \def\tikz@@edgetoparent[#1]{% \let\tikz@edge@to@parent@needed=\pgfutil@empty% \def\tikz@edgetoparent@options{#1}% \begingroup% \let\tikz@collected@onpath=\pgfutil@empty% \tikz@edgetoparentcollect% -} +}% \def\tikz@edgetoparentcollect{ \pgfutil@ifnextchar n{\tikz@collect@label@onpath\tikz@edgetoparentcollect}% {% - \expandafter% + \expandafter% \endgroup% - \expandafter\tikz@edgetoparent@rollout\expandafter{\tikz@collected@onpath}% + \expandafter\tikz@edgetoparent@rollout\expandafter{\tikz@collected@onpath}% } -} +}% \def\tikz@edgetoparent@rollout#1{% \pgfkeysgetvalue{/tikz/edge from parent macro}\tikz@etop@temp \expandafter\tikz@scan@next@command\expandafter\tikz@etop@temp\expandafter{\tikz@edgetoparent@options}{#1}% -} +}% % Syntax for bezier curves % .. controls(point) and (point) .. (target) -% .. controls(point) .. (target) +% .. controls(point) .. (target) % .. (target) % currently not supported \def\tikz@dot.{\tikz@@dot}% @@ -3033,14 +3156,14 @@ \pgfutil@ifnextchar n{\tikz@collect@label@onpath\tikz@@dot}{% \pgfutil@ifnextchar p{\tikz@collect@pic@onpath\tikz@@dot}% {\pgfutil@ifnextchar c{\tikz@curveto@double}{\tikz@curveto@auto}}}% -} +}% \def\tikz@curveto@double co{% \pgfutil@ifnextchar o{\tikz@collect@coordinate@onpath\tikz@@dot co} - {\tikz@cureveto@@double}} + {\tikz@cureveto@@double}}% \def\tikz@cureveto@@double ntrols#1{% \tikz@scan@one@point\tikz@curveA#1% -} +}% \def\tikz@curveA#1{% \edef\tikz@timer@start{\noexpand\pgfqpoint{\the\tikz@lastx}{\the\tikz@lasty}}% {% @@ -3052,29 +3175,29 @@ \pgfutil@ifnextchar a {\tikz@curveBand}% {\let\tikz@curve@second\tikz@curve@first\tikz@curveCdots}% -} +}% \def\tikz@curveBand and{% \tikz@scan@one@point\tikz@curveB% -} +}% \def\tikz@curveB#1{% \def\tikz@curve@second{#1}% \tikz@curveCdots} \def\tikz@curveCdots{% - \afterassignment\tikz@curveCdot\let\@next=} + \afterassignment\tikz@curveCdot\let\pgfutil@next=}% \def\tikz@curveCdot.{% - \ifx\@next.% + \ifx\pgfutil@next.% \else% \tikzerror{Dot expected}% \fi% \tikz@updatecurrenttrue% \tikz@curveCcheck% -} +}% \def\tikz@curveCcheck{% \pgfutil@ifnextchar n{\tikz@collect@label@onpath\tikz@curveCcheck}{% \pgfutil@ifnextchar p{\tikz@collect@pic@onpath\tikz@curveCcheck}% {\pgfutil@ifnextchar c{\tikz@collect@coordinate@onpath\tikz@curveCcheck} {\tikz@scan@one@point\tikz@curveC}}}% -} +}% \def\tikz@curveC#1{% \tikz@make@last@position{#1}% \edef\tikz@curve@third{\noexpand\pgfqpoint{\the\tikz@lastx}{\the\tikz@lasty}}% @@ -3095,7 +3218,7 @@ \pgfpathmoveto{\pgfqpoint{\pgf@x}{\pgf@y}}% \fi% \let\tikz@timer@cont@one=\tikz@curve@first% - \let\tikz@timer@cont@two=\tikz@curve@second% + \let\tikz@timer@cont@two=\tikz@curve@second% % Second, the end: \iftikz@shapeborder% % ok, target is a shape. recalculate third @@ -3107,7 +3230,7 @@ \global\let\tikz@timer@end@temp=\tikz@curve@third% move out of group }% \let\tikz@timer@end=\tikz@timer@end@temp% - \edef\tikz@moveto@waiting{\tikz@shapeborder@name}% + \edef\tikz@moveto@waiting{\tikz@shapeborder@name}% \else% \pgfpathcurveto{\tikz@curve@first}{\tikz@curve@second}{\tikz@curve@third}% \let\tikz@timer@end=\tikz@curve@third @@ -3116,11 +3239,11 @@ \let\tikz@timer=\tikz@timer@curve% \let\tikz@tangent=\tikz@curve@second% \tikz@scan@next@command% -} +}% -% Syntax for rectangles: -% rectangle <corner point> +% Syntax for rectangles: +% rectangle <corner point> \def\tikz@rect ectangle{% \tikz@flush@moveto% \edef\tikz@timer@start{\noexpand\pgfqpoint{\the\tikz@lastx}{\the\tikz@lasty}}% @@ -3132,16 +3255,16 @@ { \pgf@xa=\tikz@lastx\relax% \pgf@ya=\tikz@lasty\relax% - \tikz@scan@one@point\tikz@rectB}}}} + \tikz@scan@one@point\tikz@rectB}}}}% \def\tikz@rectB#1{% \tikz@make@last@position{#1}% \edef\tikz@timer@end{\noexpand\pgfqpoint{\the\tikz@lastx}{\the\tikz@lasty}}% - \let\tikz@timer=\tikz@timer@line% + \let\tikz@timer=\tikz@timer@line% \pgfpathmoveto{\pgfqpoint{\pgf@xa}{\pgf@ya}}% \tikz@path@lineto{\pgfqpoint{\pgf@xa}{\tikz@lasty}}% \tikz@path@lineto{\pgfqpoint{\tikz@lastx}{\tikz@lasty}}% \tikz@path@lineto{\pgfqpoint{\tikz@lastx}{\pgf@ya}}% - \iftikz@snaked% + \iftikz@snaked% \tikz@path@lineto{\pgfqpoint{\pgf@xa}{\pgf@ya}}% \fi% \pgfpathclose% @@ -3149,17 +3272,17 @@ \def\pgfstrokehook{}% \let\tikz@tangent\relax% \tikz@scan@next@command% -} +}% -% Syntax for grids: -% grid <corner point> +% Syntax for grids: +% grid <corner point> \def\tikz@grid id{% \tikz@flush@moveto% \pgf@xa=\tikz@lastx\relax% \pgf@ya=\tikz@lasty\relax% - \pgfutil@ifnextchar[{\tikz@gridA}{\tikz@gridA[]}}%} + \pgfutil@ifnextchar[{\tikz@gridA}{\tikz@gridA[]}}%}% \def\tikz@gridA[#1]{% \def\tikz@grid@options{#1}% \tikz@cycle@expander{\tikz@scan@one@point\tikz@gridB}}% @@ -3189,16 +3312,16 @@ {\pgfqpoint{\pgf@xa}{\pgf@ya}}{\pgfqpoint{\tikz@lastx}{\tikz@lasty}}% \expandafter}% \expandafter\tikz@scan@next@command\tikz@after@path% -} +}% -% Syntax for plot: +% Syntax for plot: % plot [local options] ... % starts with a moveto % -- plot [local options] ... % starts with a lineto \def\tikz@plot lot{% \tikz@flush@moveto% - \pgfutil@ifnextchar[{\tikz@@plot}{\tikz@@plot[]}}%} + \pgfutil@ifnextchar[{\tikz@@plot}{\tikz@@plot[]}}%}% \def\tikz@@plot[#1]{% \let\tikz@tangent\tikz@tangent@lookup% \begingroup% @@ -3210,8 +3333,8 @@ {\pgfutil@ifnextchar c{\tikz@plot@scan@points}% {\pgfutil@ifnextchar ({\tikz@plot@expression}{% \tikzerror{Cannot parse this plotting data}% - \endgroup}}}} -\def\tikz@plot@f f{\pgfutil@ifnextchar i{\tikz@plot@file}{\tikz@plot@function}} + \endgroup}}}}% +\def\tikz@plot@f f{\pgfutil@ifnextchar i{\tikz@plot@file}{\tikz@plot@function}}% \def\tikz@plot@file ile#1{\def\tikz@plot@data{\pgfplotxyfile{#1}}\tikz@@@plot}% \def\tikz@plot@scan@points coordinates#1{% @@ -3220,18 +3343,18 @@ \pgfutil@ifnextchar\pgf@stop{\pgfplotstreamend\expandafter\tikz@@@plot\pgfutil@gobble} {\tikz@scan@one@point\tikz@plot@next@point}% #1\pgf@stop% -} +}% \def\tikz@plot@next@point#1{% \pgfplotstreampoint{#1}% \pgfutil@ifnextchar\pgf@stop{\pgfplotstreamend\expandafter\tikz@@@plot\pgfutil@gobble}% {\tikz@scan@one@point\tikz@plot@next@point}% -} +}% \def\tikz@plot@function unction#1{% - \def\tikz@plot@filename{\tikz@plot@prefix\tikz@plot@id}% + \def\tikz@plot@filename{\tikz@plot@prefix\tikz@plot@id}% \iftikz@plot@raw@gnuplot% \def\tikz@plot@data{\pgfplotgnuplot[\tikz@plot@filename]{#1}}% \else% - \iftikz@plot@parametric% + \iftikz@plot@parametric% \def\tikz@plot@data{\pgfplotgnuplot[\tikz@plot@filename]{% set samples \tikz@plot@samples; set parametric; @@ -3248,19 +3371,19 @@ \fi% \fi% \tikz@@@plot% -} +}% \def\tikz@plot@no@resample{% \pgfutil@IfFileExists{\tikz@plot@filename.table}% {\def\tikz@plot@data{\pgfplotxyfile{\tikz@plot@filename.table}}}% {}% -} +}% \def\tikz@plot@expression(#1){% \edef\tikz@plot@data{\noexpand\pgfplotfunction{\expandafter\noexpand\tikz@plot@var}{\tikz@plot@samplesat}}% \expandafter\def\expandafter\tikz@plot@data\expandafter{\tikz@plot@data{\tikz@scan@one@point\pgfutil@firstofone(#1)}}% \tikz@@@plot% -} +}% \def\tikz@@@plot{% \def\pgfplotlastpoint{\pgfpointorigin}% @@ -3293,17 +3416,17 @@ \global\setbox\tikz@tempbox=\box\tikz@whichbox% \global\let\tikz@after@path@smuggle=\tikz@after@path \expandafter\endgroup% - \expandafter\setbox\tikz@whichbox=\box\tikz@tempbox% - \tikz@make@last@position{\tikz@@@temp}% + \expandafter\setbox\tikz@whichbox=\box\tikz@tempbox% + \tikz@make@last@position{\tikz@@@temp}% \expandafter\tikz@scan@next@command\tikz@after@path@smuggle% -} +}% \pgfdeclareplotmark{ball} {% \def\tikz@shading{ball}% \shade (0pt,0pt) circle (\pgfplotmarksize);% -} +}% @@ -3326,7 +3449,7 @@ \tikz@updatecurrenttrue% \pgfpathcosine{\pgfqpoint{\pgf@xc}{\pgf@yc}}% \tikz@scan@next@command% -} +}% % Syntax for sine curves: % sin <end of quarter-period> @@ -3346,22 +3469,22 @@ \tikz@updatecurrenttrue% \pgfpathsine{\pgfqpoint{\pgf@xc}{\pgf@yc}}% \tikz@scan@next@command% -} +}% -% Syntax for parabolas: +% Syntax for parabolas: % parabola[options] bend <coordinate> <coordinate> \def\tikz@parabola arabola{% \let\tikz@tangent\tikz@tangent@lookup% - \pgfutil@ifnextchar[{\tikz@parabola@options}{\tikz@parabola@options[]}}%} + \pgfutil@ifnextchar[{\tikz@parabola@options}{\tikz@parabola@options[]}}%}% \def\tikz@parabola@options[#1]{% \def\tikz@parabola@option{#1}% - \pgfutil@ifnextchar b{\tikz@parabola@scan@bend}{\tikz@cycle@expander{\tikz@scan@one@point\tikz@parabola@semifinal}}} -\def\tikz@parabola@scan@bend bend{\tikz@scan@one@point\tikz@parabola@scan@bendB} + \pgfutil@ifnextchar b{\tikz@parabola@scan@bend}{\tikz@cycle@expander{\tikz@scan@one@point\tikz@parabola@semifinal}}}% +\def\tikz@parabola@scan@bend bend{\tikz@scan@one@point\tikz@parabola@scan@bendB}% \def\tikz@parabola@scan@bendB#1{% \def\tikz@parabola@bend{#1}% \tikz@cycle@expander{\tikz@scan@one@point\tikz@parabola@semifinal}% -} +}% \def\tikz@parabola@semifinal#1{% \tikz@flush@moveto% % Save original start: @@ -3390,7 +3513,7 @@ \expandafter\endgroup% \expandafter\expandafter\expandafter\pgfpathparabola\expandafter\tikz@parabola@b% \expandafter\tikz@scan@next@command\tikz@after@path% -} +}% % Syntax for circles: @@ -3402,23 +3525,23 @@ % ellipse (x-radius and y-radius) % deprecated % % radii can be dimensionless, then they are in the xy-system -\def\tikz@circle ircle{\tikz@flush@moveto\tikz@@circle} -\def\tikz@ellipse llipse{\tikz@flush@moveto\tikz@@circle} +\def\tikz@circle ircle{\tikz@flush@moveto\tikz@@circle}% +\def\tikz@ellipse llipse{\tikz@flush@moveto\tikz@@circle}% \def\tikz@@circle{% \let\tikz@tangent\relax% \pgfutil@ifnextchar(\tikz@@@circle {\pgfutil@ifnextchar[\tikz@circle@opt{%]) \advance\tikz@expandcount by -10\relax% go down quickly \ifnum\tikz@expandcount<0\relax% - \let\@next=\tikz@@circle@normal% + \let\pgfutil@next=\tikz@@circle@normal% \else% - \let\@next=\tikz@@circle@scanexpand% + \let\pgfutil@next=\tikz@@circle@scanexpand% \fi% - \@next% + \pgfutil@next% }}% -} -\def\tikz@@circle@scanexpand{\expandafter\tikz@@circle} -\def\tikz@@circle@normal{\tikz@circle@opt[]} +}% +\def\tikz@@circle@scanexpand{\expandafter\tikz@@circle}% +\def\tikz@@circle@normal{\tikz@circle@opt[]}% \def\tikz@circle@opt[#1]{% {% @@ -3430,7 +3553,7 @@ \tikz@do@circle{\pgfkeysvalueof{/tikz/x radius}}{\pgfkeysvalueof{/tikz/y radius}} }% \tikz@scan@next@command% -} +}% \def\tikz@@@circle(#1){% {% @@ -3443,10 +3566,10 @@ \fi% }% \tikz@scan@next@command% -} +}% \def\tikz@@ellipseB(#1 and #2){% \tikz@do@circle{#1}{#2} -} +}% \def\tikz@do@circle#1#2{ \pgfmathparse{#1}% \let\tikz@ellipse@x=\pgfmathresult% @@ -3469,15 +3592,12 @@ \pgfpointxy{\tikz@ellipse@x}{0}}{\pgfpointxy{0}{\tikz@ellipse@y}}% \fi% \fi% -} +}% -% Syntax 1 for arcs: -% arc (start angle:end angle:radius) +% Syntax for arcs: +% arc [options] % -% Syntax 2 for arcs: -% arc (start angle:end angle:x-radius and y-radius) -% -% radius can be dimensionless, then the arc is in the xy-coordinate system +% (The syntax with parentheses is deprecated.) \def\tikz@arcA rc{\tikz@flush@moveto\tikz@arc@cont}% \def\tikz@arc@cont{% \pgfutil@ifnextchar(%) @@ -3487,16 +3607,16 @@ {% \advance\tikz@expandcount by -10\relax% go down quickly \ifnum\tikz@expandcount<0\relax% - \let\@next=\tikz@@arc@normal% + \let\pgfutil@next=\tikz@@arc@normal% \else% - \let\@next=\tikz@@arc@scanexpand% + \let\pgfutil@next=\tikz@@arc@scanexpand% \fi% - \@next% + \pgfutil@next% }% }% -} -\def\tikz@@arc@scanexpand{\expandafter\tikz@arc@cont} -\def\tikz@@arc@normal{\tikz@arc@opt[]} +}% +\def\tikz@@arc@scanexpand{\expandafter\tikz@arc@cont}% +\def\tikz@@arc@normal{\tikz@arc@opt[]}% \def\tikz@arc@opt[#1]{% @@ -3508,7 +3628,7 @@ \ifx\tikz@s\pgfutil@empty% \pgfmathsetmacro\tikz@s{\tikz@e-\tikz@d} \else - \ifx\tikz@e\pgfutil@empty% + \ifx\tikz@e\pgfutil@empty% \pgfmathsetmacro\tikz@e{\tikz@s+\tikz@d} \fi% \fi% @@ -3518,27 +3638,27 @@ {\pgfkeysvalueof{/tikz/y radius}}}% }% \pgf@marshal% - \tikz@arcfinal% -} + \tikz@arcfinal% +}% \def\tikz@@arcto(#1){% \edef\tikz@temp{(#1)}% \expandafter\tikz@@@arcto@check@slashand\tikz@temp% -} +}% \def\tikz@@@arcto@check@slashand(#1:#2:#3){% \pgfutil@in@{ and }{#3}% - \ifpgfutil@in@% + \ifpgfutil@in@% \tikz@parse@arc@and(#1:#2:#3)% \else% \tikz@parse@arc@and(#1:#2:{#3} and {#3})% \fi% - \tikz@arcfinal% -} + \tikz@arcfinal% +}% \def\tikz@parse@arc@and(#1:#2:#3 and #4){% \tikz@do@arc{#1}{#2}{#3}{#4}% -} +}% \def\tikz@do@arc#1#2#3#4{% \let\tikz@tangent\tikz@tangent@lookup% \edef\tikz@timer@start{\noexpand\pgfqpoint{\the\tikz@lastx}{\the\tikz@lasty}}% @@ -3553,8 +3673,8 @@ \tikz@@@arcfinal{\pgfpatharc{\tikz@timer@start@angle}{\tikz@timer@end@angle}{\tikz@arc@x pt and \tikz@arc@y pt}} {\pgfpointpolar{\tikz@timer@start@angle}{\tikz@arc@x pt and \tikz@arc@y pt}} {\pgfpointpolar{\tikz@timer@end@angle}{\tikz@arc@x pt and \tikz@arc@y pt}}% - \edef\tikz@timer@zero@axis{\noexpand\pgfqpoint{\tikz@arc@x pt}{0pt}} - \edef\tikz@timer@ninety@axis{\noexpand\pgfqpoint{0pt}{\tikz@arc@y pt}} + \edef\tikz@timer@zero@axis{\noexpand\pgfqpoint{\tikz@arc@x pt}{0pt}} + \edef\tikz@timer@ninety@axis{\noexpand\pgfqpoint{0pt}{\tikz@arc@y pt}} \else% \tikzerror{You cannot mix dimensions and dimensionless values in an arc}% \fi% @@ -3567,12 +3687,12 @@ \tikz@@@arcfinal{\pgfpatharcaxes{\tikz@timer@start@angle}{\tikz@timer@end@angle}{\pgfpointxy{\tikz@arc@x}{0}}{\pgfpointxy{0}{\tikz@arc@y}}} {\pgfpointpolarxy{\tikz@timer@start@angle}{\tikz@arc@x and \tikz@arc@y}}{\pgfpointpolarxy{\tikz@timer@end@angle}{\tikz@arc@x and \tikz@arc@y}}% \pgf@process{\pgfpointxy{\tikz@arc@x}{0}} - \edef\tikz@timer@zero@axis{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}} + \edef\tikz@timer@zero@axis{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}} \pgf@process{\pgfpointxy{0}{\tikz@arc@y}} - \edef\tikz@timer@ninety@axis{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}} + \edef\tikz@timer@ninety@axis{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}} \fi% \fi% -} +}% \def\tikz@@@arcfinal#1#2#3{% #1% @@ -3580,7 +3700,7 @@ \xdef\tikz@arc@save@first{\pgfqpoint{\the\pgf@x}{\the\pgf@y}}% \pgf@process{#3} \xdef\tikz@arc@save@second{\pgfqpoint{\the\pgf@x}{\the\pgf@y}}% -} +}% \def\tikz@arcfinal{% \pgf@process{\tikz@arc@save@first}% @@ -3593,40 +3713,40 @@ \tikz@lastysaved=\tikz@lasty% \let\tikz@timer=\tikz@timer@arc% \tikz@scan@next@command% -} +}% % Syntax for coordinates: % coordinate[options] (coordinate name) at (point) % where ``at (point)'' is optional \def\tikz@coordinate ordinate{% - \pgfutil@ifnextchar[{\tikz@@coordinate@opt}{\tikz@@coordinate@opt[]}} + \pgfutil@ifnextchar[{\tikz@@coordinate@opt}{\tikz@@coordinate@opt[]}}% \def\tikz@@coordinate@opt[#1]{% \pgfutil@ifnextchar({\tikz@@coordinate[#1]} - {\tikz@fig ode[shape=coordinate,#1]{}}}%} + {\tikz@fig ode[shape=coordinate,#1]{}}}%}% \def\tikz@@coordinate[#1](#2){% \pgfutil@ifnextchar a{\tikz@@coordinate@at[#1](#2)} - {\tikz@fig ode[shape=coordinate,#1](#2){}}} + {\tikz@fig ode[shape=coordinate,#1](#2){}}}% \def\tikz@@coordinate@at[#1](#2)a{% \pgfutil@ifnextchar t{\tikz@@coordinate@@at[#1](#2)a}% {\tikz@fig ode[shape=coordinate,#1](#2){}a}% -} +}% \def\tikz@@coordinate@@at[#1](#2)at#3({% \def\tikz@coordinate@caller{\tikz@fig ode[shape=coordinate,#1](#2)at}% \tikz@scan@one@point\tikz@@coordinate@at@math(% -} +}% \def\tikz@@coordinate@at@math#1{% \pgf@process{#1}% \edef\tikz@temp{(\the\pgf@x,\the\pgf@y)}% \expandafter\tikz@coordinate@caller\tikz@temp{}% -} - +}% + % Syntax for nodes: -% node foreach \var in {list} ... [options] (node name) at (pos) {label text} +% node foreach \var in {list} ... :attribute={...} [options] (node name) at (pos) {label text} % -% all of [options], (node name), at(pos), and foreach are +% all of :attribute, [options], (node name), at(pos), and foreach are % optional. There can be multiple options and the ordering is not % important as in node[draw] (a) [rotate=10] {text}, *except* that all % foreach statements must come first. @@ -3635,7 +3755,7 @@ % \def\tikz@fig ode{% \pgfutil@ifnextchar a\tikz@test@also{ - \pgfutil@ifnextchar f{\tikz@nodes@start}\tikz@normal@fig}} + \pgfutil@ifnextchar f{\tikz@nodes@start}\tikz@normal@fig}}% \def\tikz@test@also a{\pgfutil@ifnextchar l\tikz@node@also{\tikz@normal@fig a}}% \def\tikz@normal@fig{% \edef\tikz@save@line@width{\the\pgflinewidth}% @@ -3648,6 +3768,8 @@ \let\tikz@atend@scope=\pgfutil@empty% \let\tikz@do@after@node=\tikz@scan@next@command% \let\tikz@options=\pgfutil@empty% + \tikz@clear@rdf@options% + \let\tikz@id@name=\pgfutil@empty% \let\tikz@after@path=\pgfutil@empty% \let\tikz@transform=\pgfutil@empty% \let\tikz@mode=\pgfutil@empty% @@ -3670,21 +3792,23 @@ \pgfutil@ifnextchar a{\tikz@fig@scan@at} {\pgfutil@ifnextchar({\tikz@fig@scan@name} {\pgfutil@ifnextchar[{\tikz@fig@scan@options}% - {\pgfutil@ifnextchar\bgroup{\tikz@fig@main}% - {\tikzerror{A node must have a (possibly empty) label text}% - \tikz@fig@main{}}}}}}%}} + {\pgfutil@ifnextchar:{\tikz@fig@scan@animation}% + {\pgfutil@ifnextchar\bgroup{\tikz@fig@main}% + {\tikzerror{A node must have a (possibly empty) label text}% + \tikz@fig@main{}}}}}}}%}}% \def\tikz@fig@scan@at at{% - \tikz@scan@one@point\tikz@@fig@scan@at} + \tikz@scan@one@point\tikz@@fig@scan@at}% \def\tikz@@fig@scan@at#1{% \def\tikz@node@at{#1}\tikz@@scan@fig}% \def\tikz@fig@scan@name(#1){% - \pgfkeysvalueof{/tikz/name/.@cmd}#1\pgfeov% CF : this is now ALWAYS consistent with 'name=' option; allows overrides. - \tikz@@scan@fig}% + \pgfkeysvalueof{/tikz/name/.@cmd}#1\pgfeov% CF : this is now ALWAYS consistent with 'name=' option; allows overrides. + \tikz@@scan@fig}% % make it \long to allow \par in "pin" options etc: \long\def\tikz@fig@scan@options[#1]{\iftikz@node@is@pic\tikz@enable@pic@quotes\else\tikz@enable@node@quotes\fi\tikzset{#1}\ifx\tikz@node@content\relax\expandafter\tikz@@scan@fig\else\tikz@expand@node@contents\fi}% +\def\tikz@fig@scan@animation:#1=#2{\tikzset{animate={myself:{#1}={#2}}}\tikz@@scan@fig}% \def\tikz@expand@node@contents{% \expandafter\tikz@@scan@fig\expandafter{\tikz@node@content}% -} +}% \let\tikz@node@reset@hook=\pgfutil@empty% \let\tikz@node@begin@hook=\pgfutil@empty% \def\tikz@fig@main{% @@ -3693,58 +3817,63 @@ \expandafter\tikz@subpicture@handle% \else% \afterassignment\tikz@@fig@main\expandafter\let\expandafter\next\expandafter=% - \fi} + \fi}% \def\tikz@@fig@main{% \pgfutil@ifundefined{pgf@sh@s@\tikz@shape}% {\tikzerror{Unknown shape ``\tikz@shape.'' Using ``rectangle'' instead}% \def\tikz@shape{rectangle}}% {}% \tikzset{every \tikz@shape\space node/.try}% - \tikz@node@textfont% + \tikz@node@textfont% \tikz@node@begin@hook% \iftikz@is@matrix% \let\tikz@next=\tikz@do@matrix% \else% \let\tikz@next=\tikz@do@fig% \fi% - \tikz@next% -} + \tikz@next% +}% \let\tikz@nodepart@list\pgfutil@empty -\def\tikz@do@fig{% +\def\tikz@do@fig{% % Ok, reset all node part boxes \pgfutil@for\tikz@temp:=\tikz@nodepart@list\do{% \expandafter\setbox\csname pgfnodepart\tikz@temp box\endcsname=\box\pgfutil@voidb@x% }% \setbox\pgfnodeparttextbox=\hbox% \bgroup% - \tikzset{every text node part/.try}% - \ifx\tikz@textopacity\pgfutil@empty% - \else% - \pgfsetfillopacity{\tikz@textopacity}% - \pgfsetstrokeopacity{\tikz@textopacity}% - \fi% \pgfinterruptpicture% + \pgfsys@begin@text% + \pgfsys@text@to@black@hook% + \tikzset{every text node part/.try}% + \ifx\tikz@textopacity\pgfutil@empty% + \else% + \pgfsetfillopacity{\tikz@textopacity}% + \pgfsetstrokeopacity{\tikz@textopacity}% + \fi% \ifx\tikz@text@width\pgfutil@empty% - \tikz@textfont% + \tikz@textfont% \else% \begingroup% - \pgfmathsetlength{\pgf@x}{\tikz@text@width}% + \pgfmathsetlength{\pgf@x}{\tikz@text@width}% \pgfutil@minipage[t]{\pgf@x}\leavevmode\hbox{}% - \tikz@textfont% + \tikz@textfont% \tikz@text@action% \fi% \tikz@atbegin@node% \bgroup% \aftergroup\unskip% + % Some color stuff has been moved from here to outside; this is + % necessary for support of dvisvgm and of animation + % snapshots. \ifx\tikz@textcolor\pgfutil@empty% \else% \pgfutil@colorlet{.}{\tikz@textcolor}% \fi% - \pgfsetcolor{.}% + \pgfutil@color{.}% \setbox\tikz@figbox=\box\pgfutil@voidb@x% \setbox\tikz@figbox@bg=\box\pgfutil@voidb@x% \tikz@uninstallcommands% - \iftikz@handle@active@code% + \iftikz@handle@active@code% \tikz@orig@shorthands% \let\tikz@orig@shorthands\pgfutil@empty% \fi% @@ -3754,12 +3883,12 @@ \aftergroup\tikz@fig@collectresetcolor% \tikz@halign@check% \ignorespaces% -} +}% \def\tikz@fig@collectresetcolor{% % Hacks for special packages that mess with \aftergroup \pgfutil@ifnextchar\reset@color% hack for color package {\reset@color\afterassignment\tikz@fig@collectresetcolor\let\tikz@temp=}\tikz@fig@boxdone% -} +}% \def\tikz@fig@boxdone{% \tikz@atend@node% \ifx\tikz@text@width\pgfutil@empty% @@ -3767,13 +3896,14 @@ \pgfutil@endminipage% \endgroup% \fi% + \pgfsys@end@text% \endpgfinterruptpicture% \egroup% \pgfutil@ifnextchar c{\tikz@fig@mustbenamed\tikz@fig@continue}% {\pgfutil@ifnextchar[{\tikz@fig@mustbenamed\tikz@fig@continue}% {\pgfutil@ifnextchar t{\tikz@fig@mustbenamed\tikz@fig@continue} {\pgfutil@ifnextchar e{\tikz@fig@mustbenamed\tikz@fig@continue} - {\ifx\tikz@after@path\pgfutil@empty\expandafter\tikz@fig@continue\else\expandafter\tikz@fig@mustbenamed\expandafter\tikz@fig@continue\fi}}}}}%} + {\ifx\tikz@after@path\pgfutil@empty\expandafter\tikz@fig@continue\else\expandafter\tikz@fig@mustbenamed\expandafter\tikz@fig@continue\fi}}}}}%}% \def\tikz@do@matrix{% \tikzset{every matrix/.try}% @@ -3786,77 +3916,86 @@ \pgfscope% \ifx\tikz@time\pgfutil@empty\let\tikz@time\tikz@time@for@matrix\fi% \tikz@options% - \setbox\tikz@figbox=\box\pgfutil@voidb@x% - \setbox\tikz@figbox@bg=\box\pgfutil@voidb@x% - \let\tikzmatrixname=\tikz@fig@name% - \edef\tikz@m@anchor{\ifx\tikz@matrix@anchor\pgfutil@empty\tikz@anchor\else\tikz@matrix@anchor\fi}% - \expandafter\pgfutil@in@\expandafter{\expandafter.\expandafter}\expandafter{\tikz@m@anchor}% - \ifpgfutil@in@% - \expandafter\tikz@matrix@split\tikz@m@anchor\relax% - \else% - \def\tikz@matrix@shift{\pgfpointorigin}% - \fi% - \let\tikz@transform=\relax% - \pgfmatrix% - {\tikz@shape}% - {\tikz@m@anchor}% - {\tikz@fig@name}% - {% - \pgfutil@tempdima=\pgflinewidth% - {\begingroup\tikz@finish}% - \global\pgflinewidth=\pgfutil@tempdima% - }% - {\tikz@matrix@shift}% - {% - \tikz@matrix@make@active@ampersand% - \def\pgfmatrixbegincode{% - \pgfsys@beginscope% - \tikz@common@matrix@code% - \tikz@atbegin@cell% - }% - \def\tikz@common@matrix@code{% - \let\tikz@options=\pgfutil@empty% - \let\tikz@mode=\pgfutil@empty% - \tikzset{every cell/.try={\the\pgfmatrixcurrentrow}{\the\pgfmatrixcurrentcolumn}}% - \tikzset{column \the\pgfmatrixcurrentcolumn/.try}% - \ifodd\pgfmatrixcurrentcolumn% - \tikzset{every odd column/.try}% - \else% - \tikzset{every even column/.try}% - \fi% - \tikzset{row \the\pgfmatrixcurrentrow/.try}% - \ifodd\pgfmatrixcurrentrow% - \tikzset{every odd row/.try}% - \else% - \tikzset{every even row/.try}% - \fi% - \tikzset{row \the\pgfmatrixcurrentrow\space column \the\pgfmatrixcurrentcolumn/.try}% - \tikz@options% - }% - \def\pgfmatrixendcode{% - \tikz@atend@cell% - \pgfsys@endscope% - }% - \def\pgfmatrixemptycode{% - \pgfsys@beginscope% - \tikz@common@matrix@code% - \tikz@at@emptycell% - \pgfsys@endscope% + \tikz@do@rdf@pre@options% + \tikz@is@nodefalse% + \tikz@call@id@hook% + \pgfidscope% + \tikz@do@rdf@post@options% + \begingroup% + \let\tikz@id@name\pgfutil@empty% + \pgfclearid% + \setbox\tikz@figbox=\box\pgfutil@voidb@x% + \setbox\tikz@figbox@bg=\box\pgfutil@voidb@x% + \let\tikzmatrixname=\tikz@fig@name% + \edef\tikz@m@anchor{\ifx\tikz@matrix@anchor\pgfutil@empty\tikz@anchor\else\tikz@matrix@anchor\fi}% + \expandafter\pgfutil@in@\expandafter{\expandafter.\expandafter}\expandafter{\tikz@m@anchor}% + \ifpgfutil@in@% + \expandafter\tikz@matrix@split\tikz@m@anchor\relax% + \else% + \def\tikz@matrix@shift{\pgfpointorigin}% + \fi% + \let\tikz@transform=\relax% + \pgfmatrix% + {\tikz@shape}% + {\tikz@m@anchor}% + {\tikz@fig@name}% + {% + \pgfutil@tempdima=\pgflinewidth% + {\begingroup\tikz@finish}% + \global\pgflinewidth=\pgfutil@tempdima% }% - \tikz@atbegin@matrix% - \aftergroup\tikz@do@matrix@cont}% - \bgroup% -} + {\tikz@matrix@shift}% + {% + \tikz@matrix@make@active@ampersand% + \def\pgfmatrixbegincode{% + \pgfsys@beginscope% + \tikz@common@matrix@code% + \tikz@atbegin@cell% + }% + \def\tikz@common@matrix@code{% + \let\tikz@options=\pgfutil@empty% + \let\tikz@mode=\pgfutil@empty% + \tikzset{every cell/.try={\the\pgfmatrixcurrentrow}{\the\pgfmatrixcurrentcolumn}}% + \tikzset{column \the\pgfmatrixcurrentcolumn/.try}% + \ifodd\pgfmatrixcurrentcolumn% + \tikzset{every odd column/.try}% + \else% + \tikzset{every even column/.try}% + \fi% + \tikzset{row \the\pgfmatrixcurrentrow/.try}% + \ifodd\pgfmatrixcurrentrow% + \tikzset{every odd row/.try}% + \else% + \tikzset{every even row/.try}% + \fi% + \tikzset{row \the\pgfmatrixcurrentrow\space column \the\pgfmatrixcurrentcolumn/.try}% + \tikz@options% + }% + \def\pgfmatrixendcode{% + \tikz@atend@cell% + \pgfsys@endscope% + }% + \def\pgfmatrixemptycode{% + \pgfsys@beginscope% + \tikz@common@matrix@code% + \tikz@at@emptycell% + \pgfsys@endscope% + }% + \tikz@atbegin@matrix% + \aftergroup\tikz@do@matrix@cont}% + \bgroup% +}% \def\tikz@do@matrix@cont{% - \tikz@atend@matrix% + \tikz@atend@matrix% + \endgroup% + \endpgfidscope% \endpgfscope \endpgfinterruptpath% \egroup\egroup% \egroup% % \tikz@node@finish% -} - +}% {% \catcode`\&=13 \gdef\tikz@matrix@make@active@ampersand{% @@ -3873,8 +4012,8 @@ \def\tikz@matrix@split#1.#2\relax{% \def\tikz@m@anchor{text}% \def\tikz@matrix@shift{\pgfpointanchor{#1}{#2}}% -} - +}% + \def\tikz@fig@continue{% \ifx\tikz@text@width\pgfutil@empty% \else% @@ -3896,28 +4035,49 @@ % \tikz@node@transformations% \tikz@nlt% - % + % \setbox\tikz@whichbox=\hbox{% \unhbox\tikz@whichbox% \hbox{{% \pgfinterruptpath% \pgfscope% \tikz@options% - \setbox\tikz@figbox=\box\pgfutil@voidb@x% - \setbox\tikz@figbox@bg=\box\pgfutil@voidb@x% - \pgfmultipartnode{\tikz@shape}{\tikz@anchor}{\tikz@fig@name}{% - \pgfutil@tempdima=\pgflinewidth% - {\begingroup\tikz@finish}% - \global\pgflinewidth=\pgfutil@tempdima% - }% - \endpgfscope + \tikz@do@rdf@pre@options% + \tikz@is@nodetrue% + \tikz@call@id@hook% + \pgfidscope% + \tikz@do@rdf@post@options% + \let\tikz@id@name\pgfutil@empty% + \setbox\tikz@figbox=\box\pgfutil@voidb@x% + \setbox\tikz@figbox@bg=\box\pgfutil@voidb@x% + % Add color modifications to text box + \setbox\pgfnodeparttextbox=\hbox{{% + \pgfsys@begin@text% Colors moved here... + \ifx\tikz@textcolor\pgfutil@empty% + \else% + \pgfutil@colorlet{.}{\tikz@textcolor}% + \fi% + \pgfsetcolor{.}% + \pgfusetype{.text}% + \pgfidscope% + \box\pgfnodeparttextbox% + \endpgfidscope% + \pgfsys@end@text% + }}% + \pgfmultipartnode{\tikz@shape}{\tikz@anchor}{\tikz@fig@name}{% + \pgfutil@tempdima=\pgflinewidth% + {\begingroup\tikz@finish}% + \global\pgflinewidth=\pgfutil@tempdima% + }% + \endpgfidscope% + \endpgfscope% \endpgfinterruptpath% }}% }% % \tikz@alias% \tikz@node@finish% -} +}% \def\tikz@fig@mustbenamed{% @@ -3925,13 +4085,14 @@ % Assign a dummy name \global\advance\tikz@fig@count by1\relax \edef\tikz@fig@name{tikz@f@\the\tikz@fig@count}% + \let\tikz@id@name\tikz@fig@name% \fi% -} +}% \def\tikz@node@transformations{% - % + % % Possibly, we are ``online'' - % + % \ifx\tikz@time\pgfutil@empty% \pgftransformshift{\tikz@node@at}% \iftikz@fullytransformed% @@ -3944,9 +4105,9 @@ \fi% % Invoke local transformations \tikz@transform% -} +}% -\def\tikz@node@finish{% +\def\tikz@node@finish{% \global\let\tikz@last@fig@name=\tikz@fig@name% \global\let\tikz@after@path@smuggle=\tikz@after@path% % shift box outside group @@ -3959,10 +4120,10 @@ \tikz@do@after@path@smuggle% \tikz@node@is@picfalse \tikz@do@after@node% -} +}% \let\tikz@fig@continue@orig=\tikz@fig@continue -\def\tikz@do@after@node{\tikz@scan@next@command} +\def\tikz@do@after@node{\tikz@scan@next@command}% \def\tikz@do@after@path@smuggle{% \let\tikz@to@last@fig@name=\tikz@last@fig@name% @@ -3977,9 +4138,9 @@ \tikz@scan@next@command{\tikz@after@path@smuggle}\pgf@stop% \fi% \fi% -} +}% -\def\tikz@call@late#1#2{\pgfnodepostsetupcode{#1}{\path[late options={name={#1},append after command={#2}}];}} +\def\tikz@call@late#1#2{\pgfnodepostsetupcode{#1}{\path[late options={name={#1},append after command={#2}}];}}% \newif\iftikz@do@align @@ -3998,10 +4159,10 @@ \setbox\tikz@align@aligned@box=\box\pgfutil@voidb@x% void \let\\=\tikz@align@newline% \expandafter\tikz@start@align% - \fi% -} -\def\tikz@align@newline{\pgfutil@protect\tikz@align@newline@} -\def\tikz@align@newline@{\unskip\pgfutil@ifnextchar[\tikz@@align@newline{\tikz@@align@newline[0pt]}}%} + \fi% +}% +\def\tikz@align@newline{\pgfutil@protect\tikz@align@newline@}% +\def\tikz@align@newline@{\unskip\pgfutil@ifnextchar[\tikz@@align@newline{\tikz@@align@newline[0pt]}}%}% \def\tikz@@align@newline[#1]{\egroup\tikz@align@continue\pgfmathparse{#1}\let\tikz@align@temp=\pgfmathresult\tikz@start@align}% % Two safe boxes for alignment: \let\tikz@align@aligned@box=\pgfnodeparttextbox @@ -4011,12 +4172,12 @@ % Start collecting text: \setbox\tikz@align@line@box=\hbox\bgroup\bgroup% \aftergroup\tikz@align@collectresetcolor\ignorespaces% -} +}% \def\tikz@align@collectresetcolor{% \pgfutil@ifnextchar\reset@color% {\reset@color\afterassignment\tikz@align@collectresetcolor\let\tikz@temp=}% {\tikz@align@end@check}% -} +}% \def\tikz@align@end@check{% \egroup% \ifvoid\tikz@align@aligned@box% @@ -4034,26 +4195,26 @@ \box\tikz@align@aligned@box% \egroup% }% -} -\def\tikz@align@continue{\tikz@@align@continue} +}% +\def\tikz@align@continue{\tikz@@align@continue}% \let\tikz@@align@continue=\pgfutil@empty -\def\tikz@node@also lso{\pgfutil@ifnextchar[\tikz@node@also@opt{\tikz@node@also@opt[]}} +\def\tikz@node@also lso{\pgfutil@ifnextchar[\tikz@node@also@opt{\tikz@node@also@opt[]}}% \def\tikz@node@also@opt[#1]{ \pgfutil@ifnextchar(%) {\tikz@node@also@opt@cont[#1]}% {\tikzerror{Syntax error in node also: ``('' expected.}% \tikz@scan@next@command}% -} -\def\tikz@node@also@opt@cont[#1](#2){\tikzset{late options={name=#2,#1}}\tikz@scan@next@command} - +}% +\def\tikz@node@also@opt@cont[#1](#2){\tikzset{late options={name=#2,#1}}\tikz@scan@next@command}% + % Syntax for parts of nodes: % node ... {... \nodepart[options]{name} ... \nodepart{name} ...} -\def\tikz@nodepart{\pgfutil@ifnextchar[\tikz@@nodepart{\tikz@@nodepart[]}}%} +\def\tikz@nodepart{\pgfutil@ifnextchar[\tikz@@nodepart{\tikz@@nodepart[]}}%}% \def\tikz@@nodepart[#1]#2{% \tikz@atend@node% \unskip% @@ -4061,7 +4222,7 @@ \gdef\tikz@nodepart@name{#2}% \global\let\tikz@fig@continue=\tikz@nodepart@continue% \pgfutil@ifnextchar x{\egroup\relax}{\egroup\relax}% gobble spaces -} +}% \def\tikz@nodepart@continue{% \global\let\tikz@fig@continue=\tikz@fig@continue@orig% \ifx\tikz@nodepart@list\pgfutil@empty% @@ -4072,6 +4233,9 @@ % Now start new box: \expandafter\setbox\csname pgfnodepart\tikz@nodepart@name box\endcsname=\hbox% \bgroup% + \pgfinterruptpicture% + \pgfsys@begin@text% + \pgfsys@text@to@black@hook% \tikzset{every \tikz@nodepart@name\space node part/.try}% \expandafter\tikzset\expandafter{\tikz@nodepart@options}% \ifx\tikz@textopacity\pgfutil@empty% @@ -4079,27 +4243,27 @@ \pgfsetfillopacity{\tikz@textopacity}% \pgfsetstrokeopacity{\tikz@textopacity}% \fi% - \pgfinterruptpicture% + % Colors moved here... + \ifx\tikz@textcolor\pgfutil@empty% + \else% + \pgfutil@colorlet{.}{\tikz@textcolor}% + \fi% + \pgfsetcolor{.}% \ifx\tikz@text@width\pgfutil@empty% - \tikz@textfont% + \tikz@textfont% \else% \begingroup% \pgfmathsetlength{\pgf@x}{\tikz@text@width}% \pgfutil@minipage[t]{\pgf@x}\leavevmode\hbox{}% - \tikz@textfont% + \tikz@textfont% \tikz@text@action% \fi% \bgroup% \aftergroup\unskip% - \ifx\tikz@textcolor\pgfutil@empty% - \else% - \pgfutil@colorlet{.}{\tikz@textcolor}% - \fi% - \pgfsetcolor{.}% \setbox\tikz@figbox=\box\pgfutil@voidb@x% \setbox\tikz@figbox@bg=\box\pgfutil@voidb@x% \tikz@uninstallcommands% - \iftikz@handle@active@code% + \iftikz@handle@active@code% \tikz@orig@shorthands% \let\tikz@orig@shorthands\pgfutil@empty% \fi% @@ -4110,12 +4274,12 @@ \aftergroup\tikz@fig@collectresetcolor% \tikz@halign@check% \ignorespaces% -} +}% -% +% % Node foreach -% +% \def\tikz@nodes@start{% \let\tikz@nodes@list\pgfutil@empty% @@ -4125,27 +4289,27 @@ \def\tikz@nodes@collect{node }% \fi% \tikz@nodes% -} +}% \def\tikz@nodes foreach{\pgfutil@ifnextchar x\tikz@nodes@\tikz@nodes@}% get rid of spaces \def\tikz@nodes@#1in{% \expandafter\def\expandafter\tikz@nodes@list\expandafter{\tikz@nodes@list\foreach#1in}% \pgfutil@ifnextchar\bgroup\tikz@nodes@group\tikz@nodes@one% -} +}% \def\tikz@nodes@one#1{% \expandafter\def\expandafter\tikz@nodes@list\expandafter{\tikz@nodes@list#1}% \pgfutil@ifnextchar f\tikz@nodes\tikz@nodes@scan% -} +}% \def\tikz@nodes@group#1{% \expandafter\def\expandafter\tikz@nodes@list\expandafter{\tikz@nodes@list{#1}}% \pgfutil@ifnextchar f\tikz@nodes\tikz@nodes@scan% -} +}% \def\tikz@nodes@scan{% \pgfutil@ifnextchar a{\tikz@nodes@at}% {\pgfutil@ifnextchar({\tikz@nodes@name}% {\pgfutil@ifnextchar[{\tikz@nodes@opt}% {\pgfutil@ifnextchar\bgroup{\tikz@nodes@main}% {\tikzerror{Nodes must have a (possibly empty) label text}% - \tikz@fig@main{}}}}}}%}} + \tikz@fig@main{}}}}}}%}}% \def\tikz@nodes@at at#1){% \expandafter\def\expandafter\tikz@nodes@collect\expandafter{\tikz@nodes@collect at#1)}% \tikz@nodes@scan}% @@ -4179,14 +4343,14 @@ \setbox\tikz@figbox=\box\tikz@tempbox% \setbox\tikz@figbox@bg=\box\tikz@tempbox@bg% \tikz@scan@next@command% -} +}% % % "late" options can be used to "redo" a node % -\tikzset{late options/.code=\tikz@late@options{#1}} +\tikzset{late options/.code=\tikz@late@options{#1}}% \def\tikz@late@options#1{% % Do a "virtual" node: \begingroup% @@ -4197,6 +4361,7 @@ \fi% \tikz@is@matrixfalse% \let\tikz@options=\pgfutil@empty% + \tikz@clear@rdf@options% \let\tikz@after@path=\pgfutil@empty% \let\tikz@afternodepathoptions=\pgfutil@empty% \let\tikz@alias=\pgfutil@empty% @@ -4204,7 +4369,7 @@ \tikz@decoratepathfalse% \tikz@node@reset@hook% \tikz@enable@node@quotes% - \tikzset{every node/.try,#1}% + \tikzset{every node/.try,#1}% \ifx\tikz@fig@name\pgfutil@empty% \tikzerror{Late options must reference some existing node}% \fi% @@ -4215,7 +4380,7 @@ \global\let\tikz@after@path@smuggle=\tikz@after@path% \endgroup% \tikz@do@after@path@smuggle% -} +}% % Auto placement @@ -4223,19 +4388,23 @@ \def\tikz@auto@pre{% \begingroup \pgfresetnontranslationattimefalse - \pgfslopedattimetrue% + \ifpgfslopedattime + \pgfslopedattimefalse% + \else + \pgfslopedattimetrue% + \fi \pgfallowupsidedownattimetrue% \tikz@timer% - \pgf@x=\pgf@pt@aa pt% + \pgf@x=\pgf@pt@aa pt% \pgf@y=\pgf@pt@ab pt% \pgfpointnormalised{}% -} +}% \def\tikz@auto@post{% \global\let\tikz@anchor@smuggle=\tikz@anchor% \endgroup% \let\tikz@anchor=\tikz@anchor@smuggle% -} +}% \def\tikz@auto@anchor{% \ifdim\pgf@x>0.05pt% @@ -4261,7 +4430,7 @@ \def\tikz@anchor{west}% \fi% \fi\fi% -} +}% \def\tikz@auto@anchor@prime{% \ifdim\pgf@x>0.05pt% @@ -4287,16 +4456,16 @@ \def\tikz@anchor{east}% \fi% \fi\fi% -} +}% % % Callbacks: Please see the documentation of the graph drawing % lib for info on these callbacks % -\def\tikzgdeventcallback#1#2{} -\def\tikzgdeventgroupcallback#1{} -\def\tikzgdlatenodeoptionacallback#1{} +\def\tikzgdeventcallback#1#2{}% +\def\tikzgdeventgroupcallback#1{}% +\def\tikzgdlatenodeoptionacallback#1{}% % Syntax for trees: % node {...} child [options] {...} child [options] {...} ... @@ -4306,22 +4475,22 @@ % Start collecting the children: \let\tikz@children@list=\pgfutil@empty% \tikznumberofchildren=0\relax% - \tikz@collect@children c} + \tikz@collect@children c}% -\def\tikz@collect@children{\pgfutil@ifnextchar c{\tikz@collect@children@cchar}{\tikz@children@collected}} -\def\tikz@collect@children@cchar c{\pgfutil@ifnextchar h{\tikz@collect@child}{\tikz@children@collected c}} -\def\tikz@collect@child hild{\pgfutil@ifnextchar[{\tikz@collect@childA}{\tikz@collect@childA[]}}%} -\def\tikz@collect@childA[#1]{\pgfutil@ifnextchar f{\tikz@collect@children@foreach[#1]}{\tikz@collect@childB[#1]}} +\def\tikz@collect@children{\pgfutil@ifnextchar c{\tikz@collect@children@cchar}{\tikz@children@collected}}% +\def\tikz@collect@children@cchar c{\pgfutil@ifnextchar h{\tikz@collect@child}{\tikz@children@collected c}}% +\def\tikz@collect@child hild{\pgfutil@ifnextchar[{\tikz@collect@childA}{\tikz@collect@childA[]}}%}% +\def\tikz@collect@childA[#1]{\pgfutil@ifnextchar f{\tikz@collect@children@foreach[#1]}{\tikz@collect@childB[#1]}}% \def\tikz@collect@childB[#1]{% \advance\tikznumberofchildren by1\relax \expandafter\def\expandafter\tikz@children@list\expandafter{\tikz@children@list \tikz@childnode[#1]}% - \pgfutil@ifnextchar\bgroup{\tikz@collect@child@code}{\tikz@collect@child@code{}}} + \pgfutil@ifnextchar\bgroup{\tikz@collect@child@code}{\tikz@collect@child@code{}}}% \def\tikz@collect@child@code#1{% \expandafter\def\expandafter\tikz@children@list\expandafter{\tikz@children@list{#1}}% \tikz@collect@children% -} +}% \def\tikz@collect@children@foreach[#1]foreach#2in#3{% - \pgfutil@ifnextchar\bgroup{\tikz@collect@children@foreachA{#1}{#2}{#3}}{\tikz@collect@children@foreachA{#1}{#2}{#3}{}}} + \pgfutil@ifnextchar\bgroup{\tikz@collect@children@foreachA{#1}{#2}{#3}}{\tikz@collect@children@foreachA{#1}{#2}{#3}{}}}% \def\tikz@collect@children@foreachA#1#2#3#4{% \expandafter\def\expandafter\tikz@children@list\expandafter {\tikz@children@list\tikz@childrennodes[#1]{#2}{#3}{#4}}% @@ -4332,15 +4501,16 @@ }% \tikznumberofchildren=\c@pgf@counta% \tikz@collect@children% -} +}% \long\def\tikz@children@collected{% \begingroup% \advance\tikztreelevel by 1\relax% \tikzgdeventgroupcallback{descendants}% \let\tikz@options=\pgfutil@empty% + \tikz@clear@rdf@options% \let\tikz@transform=\pgfutil@empty% \tikzset{level/.try=\the\tikztreelevel,level \the\tikztreelevel/.try}% - \tikz@transform% + \tikz@transform% \let\tikz@transform=\relax% \let\tikzparentnode=\tikz@last@fig@name% \ifx\tikz@grow\relax\else% @@ -4352,10 +4522,10 @@ \global\setbox\tikz@tempbox=\box\tikz@figbox% \global\setbox\tikz@tempbox@bg=\box\tikz@figbox@bg% \endgroup% - \setbox\tikz@figbox=\box\tikz@tempbox% - \setbox\tikz@figbox@bg=\box\tikz@tempbox@bg% + \setbox\tikz@figbox=\box\tikz@tempbox% + \setbox\tikz@figbox@bg=\box\tikz@tempbox@bg% \tikz@scan@next@command% -} +}% % Syntax for children: % @@ -4378,7 +4548,7 @@ \tikznumberofcurrentchild=\c@pgf@counta\relax% \setbox\tikz@figbox=\box\tikz@tempbox% \setbox\tikz@figbox@bg=\box\tikz@tempbox@bg% -} +}% % Syntax for child: @@ -4404,7 +4574,7 @@ \let\tikz@transform=\pgfutil@empty% \tikzset{every child/.try,#1}% \tikz@options% - \tikz@transform% + \tikz@transform% \let\tikz@transform=\relax% \tikz@grow% % Typeset node: @@ -4429,12 +4599,12 @@ \egroup\egroup% \egroup% \fi% -} +}% \def\tikz@parse@child@node{% \pgfutil@ifnextchar n{\tikz@parse@child@node@n}% {\pgfutil@ifnextchar c{\tikz@parse@child@node@c}% - {\pgfutil@ifnextchar\pgf@stop\tikz@parse@child@node@rest\tikz@parse@child@node@expand}}} + {\pgfutil@ifnextchar\pgf@stop\tikz@parse@child@node@rest\tikz@parse@child@node@expand}}}% \def\tikz@parse@child@node@expand{% \advance\tikz@expandcount by-1\relax% \ifnum\tikz@expandcount<0\relax% @@ -4442,22 +4612,22 @@ \else% \expandafter\expandafter\expandafter\tikz@parse@child@node% \fi% -} -\def\tikz@parse@child@node@rest#1\pgf@stop{\tikz@expandcount=100\relax\def\tikz@child@node@rest{#1}} -\def\tikz@parse@child@node@c c{\tikz@expandcount=100\pgfutil@ifnextchar o{\tikz@parse@child@node@co}{\tikz@parse@child@node@rest c}} -\def\tikz@parse@child@node@co o{\pgfutil@ifnextchar o{\tikz@parse@child@node@coordinate}{\tikz@parse@child@node@rest co}} +}% +\def\tikz@parse@child@node@rest#1\pgf@stop{\tikz@expandcount=100\relax\def\tikz@child@node@rest{#1}}% +\def\tikz@parse@child@node@c c{\tikz@expandcount=100\pgfutil@ifnextchar o{\tikz@parse@child@node@co}{\tikz@parse@child@node@rest c}}% +\def\tikz@parse@child@node@co o{\pgfutil@ifnextchar o{\tikz@parse@child@node@coordinate}{\tikz@parse@child@node@rest co}}% \def\tikz@parse@child@node@coordinate ordinate{% \pgfutil@ifnextchar ({\tikz@@parse@child@node@coordinate}{% \def\tikz@child@node@text{[shape=coordinate]{}}% - \tikz@parse@child@node@rest}}%} + \tikz@parse@child@node@rest}}%}% \def\tikz@@parse@child@node@coordinate(#1){% \pgfutil@ifnextchar a{\tikz@p@c@n@c@at(#1)}{% \def\tikz@child@node@text{[shape=coordinate,name=#1]{}}% - \tikz@parse@child@node@rest}} + \tikz@parse@child@node@rest}}% \def\tikz@p@c@n@c@at(#1)at#2({% \def\tikz@child@node@text@pre{[shape=coordinate,name=#1]at}% \tikz@scan@one@point\tikz@p@c@n@c@at@math(% -} +}% \def\tikz@p@c@n@c@at@math#1{% \pgf@process{#1}% \edef\tikz@marshal{(\the\pgf@x,\the\pgf@y){}}% @@ -4465,7 +4635,7 @@ \expandafter\expandafter\expandafter\tikz@child@node@text% \expandafter\expandafter\expandafter{\expandafter\tikz@child@node@text@pre\tikz@marshal}% \tikz@parse@child@node@rest% -} +}% \def\tikz@parse@child@node@n node{\tikz@expandcount=100% \let\tikz@child@node@text=\pgfutil@empty% \tikz@p@c@s}% @@ -4474,73 +4644,74 @@ {\pgfutil@ifnextchar ({\tikz@p@c@s@paran} {\pgfutil@ifnextchar [{\tikz@p@c@s@bra} {\pgfutil@ifnextchar \bgroup{\tikz@p@c@s@group} - {\tikzerror{Cannot parse this node}}}}}}%}} + {\tikzerror{Cannot parse this node}}}}}}%}}% \def\tikz@p@c@s@at at#1({% \tikz@scan@one@point\tikz@p@c@s@at@math(% -} +}% \def\tikz@p@c@s@at@math#1{% \pgf@process{#1}% \edef\tikz@marshal{ at(\the\pgf@x,\the\pgf@y)}% \expandafter\expandafter\expandafter\def% \expandafter\expandafter\expandafter\tikz@child@node@text% \expandafter\expandafter\expandafter{\expandafter\tikz@child@node@text\tikz@marshal} - \tikz@p@c@s} + \tikz@p@c@s}% \def\tikz@p@c@s@paran(#1){% \expandafter\def\expandafter\tikz@child@node@text\expandafter{\tikz@child@node@text(#1)} - \tikz@p@c@s} + \tikz@p@c@s}% \def\tikz@p@c@s@bra[#1]{% \expandafter\def\expandafter\tikz@child@node@text\expandafter{\tikz@child@node@text[#1]} - \tikz@p@c@s} + \tikz@p@c@s}% \def\tikz@p@c@s@group#1{% - \iftikz@handle@active@nodes% + \iftikz@handle@active@nodes% \expandafter\def\expandafter\tikz@child@node@text\expandafter{\tikz@child@node@text{\scantokens{#1}}}% \else% \expandafter\def\expandafter\tikz@child@node@text\expandafter{\tikz@child@node@text{#1}} \fi% \tikz@parse@child@node@rest% -} +}% -% +% % Syntax for decorated subpaths: % % decorate [option] { subpath } % \def\tikz@decoration ecorate{% \pgfutil@ifnextchar[{\tikz@lib@decoration}{\tikz@lib@decoration[]}%] -} +}% -\def\tikz@lib@decoration[#1]#2{\tikzerror{You need to load a decoration library}} +\def\tikz@lib@decoration[#1]#2{\tikzerror{You need to load a decoration library}}% % The decorate path command: -\def\tikz@lib@dec@decorate@path{\tikzerror{You need to load a decoration library}} +\def\tikz@lib@dec@decorate@path{\tikzerror{You need to load a decoration library}}% -% +% % Syntax for let : % -% let \p1 = (coordinate), \p2 = (coordinate),... in +% let \p1 = (coordinate), \p2 = (coordinate),... in % \def\tikz@let@command et#1in{% \tikzerror{You need to say \string\usetikzlibrary{calc} to use the let command}% -} + \tikz@scan@next@command% +}% % % Syntax for pictures: -% +% % as for nodes, but with "pic" instead of "node" -% +% \newif\iftikz@node@is@pic -\def\tikz@subpicture ic{\tikz@node@is@pictrue\tikz@scan@next@command node} +\def\tikz@subpicture ic{\tikz@node@is@pictrue\tikz@scan@next@command node}% \def\tikz@subpicture@handle#1{% \pgfkeys@spdef\tikz@temp{#1}% \expandafter\tikz@subpicture@handle@\expandafter{\tikz@temp}% -} +}% \def\tikz@subpicture@handle@#1{ - \pgfkeys{/tikz/pics/.cd,#1} + \pgfkeys{/tikz/pics/.cd,#1}% \tikz@node@transformations% \let\tikz@transform=\relax% \let\tikz@picmode\tikz@mode% @@ -4570,7 +4741,7 @@ \egroup \egroup% \egroup% - \fi% + \fi% \pgfkeysgetvalue{/tikz/pics/foreground code}{\tikz@pic@code} \ifx\tikz@pic@code\pgfutil@empty\else% \setbox\tikz@figbox=\hbox\bgroup% @@ -4592,7 +4763,7 @@ \egroup \egroup% \egroup% - \fi% + \fi% \pgfkeysgetvalue{/tikz/pics/background code}{\tikz@pic@code} \ifx\tikz@pic@code\pgfutil@empty\else% \setbox\tikz@figbox@bg=\hbox\bgroup% @@ -4614,12 +4785,12 @@ \egroup \egroup% \egroup% - \fi% + \fi% \tikz@node@finish% -} +}% \tikzset{ pic actions/.code=\tikz@addmode{\tikz@picmode} -} +}% % Setting up the picture codes: \tikzset{ @@ -4627,26 +4798,26 @@ pics/code/.initial=, pics/background code/.initial=, pics/foreground code/.initial= -} +}% % Defining pictures: -\def\tikzdeclarepic#1#2{\pgfkeys{/tikz/#1/.cd,#2}} +\def\tikzdeclarepic#1#2{\pgfkeys{/tikz/#1/.cd,#2}}% \pgfkeysdef{/handlers/.pic}{% \edef\pgf@temp{\pgfkeyscurrentpath}% \edef\pgf@temp{\expandafter\tikz@smuggle@pics@in\pgf@temp\pgf@stop}% - \expandafter\pgfkeys\expandafter{\pgf@temp/.style={code={#1}}} -} -\def\tikz@smuggle@pics@in/tikz/#1\pgf@stop{/tikz/pics/#1} + \expandafter\pgfkeys\expandafter{\pgf@temp/.style={code={#1}}}% +}% +\def\tikz@smuggle@pics@in/tikz/#1\pgf@stop{/tikz/pics/#1}% % % Timers -% +% \def\tikz@timer@line{% \pgftransformlineattime{\tikz@time}{\tikz@timer@start}{\tikz@timer@end}% -} +}% \def\tikz@timer@vhline{% \ifdim\tikz@time pt<0.5pt% first half @@ -4655,7 +4826,7 @@ \pgf@ya=\pgf@y% \pgf@process{\tikz@timer@end}% \pgf@xb=\tikz@time pt% - \pgf@xb=2\pgf@xb% + \pgf@xb=2\pgf@xb% \edef\tikz@marshal{\noexpand\pgftransformlineattime{\pgf@sys@tonumber{\pgf@xb}}{\noexpand\tikz@timer@start}{% \noexpand\pgfqpoint{\the\pgf@xa}{\the\pgf@y}}}% \tikz@marshal% @@ -4671,7 +4842,7 @@ {\noexpand\pgfqpoint{\the\pgf@xa}{\the\pgf@y}}{\noexpand\tikz@timer@end}}% \tikz@marshal% \fi% -} +}% \def\tikz@timer@hvline{% \ifdim\tikz@time pt<0.5pt% first half @@ -4680,7 +4851,7 @@ \pgf@ya=\pgf@y% \pgf@process{\tikz@timer@end}% \pgf@xb=\tikz@time pt% - \pgf@xb=2\pgf@xb% + \pgf@xb=2\pgf@xb% \edef\tikz@marshal{\noexpand\pgftransformlineattime{\pgf@sys@tonumber{\pgf@xb}}{\noexpand\tikz@timer@start}{% \noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@ya}}}% \tikz@marshal% @@ -4696,11 +4867,11 @@ {\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@ya}}{\noexpand\tikz@timer@end}}% \tikz@marshal% \fi% -} +}% \def\tikz@timer@curve{% \pgftransformcurveattime{\tikz@time}{\tikz@timer@start}{\tikz@timer@cont@one}{\tikz@timer@cont@two}{\tikz@timer@end}% -} +}% \def\tikz@timer@arc{% @@ -4721,13 +4892,13 @@ {\tikz@timer@zero@axis}% {\tikz@timer@ninety@axis}% {\tikz@timer@start@angle}{\tikz@timer@end@angle}% -} +}% % % Coordinate systems -% +% \def\tikzdeclarecoordinatesystem#1#2{% \expandafter\def\csname tikz@parse@cs@#1\endcsname(##1){% @@ -4737,41 +4908,41 @@ }% \let\tikz@shapeborder@name=\tikz@smubble@b% \edef\tikz@return@coordinate{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}}% -} +}% \def\tikzaliascoordinatesystem#1#2{% \edef\pgf@marshal{\noexpand\let\expandafter\noexpand\csname tikz@parse@cs@#1\endcsname=\expandafter\noexpand\csname tikz@parse@cs@#2\endcsname}% \pgf@marshal% -} +}% -% Default coodinate systems: +% Default coordinate systems: \tikzdeclarecoordinatesystem{canvas} {% \tikzset{cs/.cd,x=0pt,y=0pt,#1}% \pgfpoint{\tikz@cs@x}{\tikz@cs@y}% -} +}% \tikzdeclarecoordinatesystem{canvas polar} {% \tikzset{cs/.cd,angle=0,radius=0cm,#1}% \pgfpointpolar{\tikz@cs@angle}{\tikz@cs@xradius and \tikz@cs@yradius}% -} +}% \tikzdeclarecoordinatesystem{xyz} {% \tikzset{cs/.cd,x=0,y=0,z=0,#1}% \pgfpointxyz{\tikz@cs@x}{\tikz@cs@y}{\tikz@cs@z}% -} +}% \tikzdeclarecoordinatesystem{xyz polar} {% \tikzset{cs/.cd,angle=0,radius=0,#1}% \pgfpointpolarxy{\tikz@cs@angle}{\tikz@cs@xradius and \tikz@cs@yradius}% -} -\tikzaliascoordinatesystem{xy polar}{xyz polar} +}% +\tikzaliascoordinatesystem{xy polar}{xyz polar}% \tikzdeclarecoordinatesystem{node} @@ -4791,14 +4962,14 @@ \else% \pgfpointanchor{\tikz@pp@name{\tikz@cs@node}}{\tikz@cs@anchor}% \fi% -} +}% % Intersection coordinates -\tikzset{cs/first line/.code=\def\tikz@cs@line@a{#1}\def\tikz@cs@type@a{line}} -\tikzset{cs/second line/.code=\def\tikz@cs@line@b{#1}\def\tikz@cs@type@b{line}} +\tikzset{cs/first line/.code=\def\tikz@cs@line@a{#1}\def\tikz@cs@type@a{line}}% +\tikzset{cs/second line/.code=\def\tikz@cs@line@b{#1}\def\tikz@cs@type@b{line}}% -\tikzset{cs/first node/.code=\tikz@cs@unpack{\tikz@cs@node@a}{\tikz@cs@type@a}{#1}} -\tikzset{cs/second node/.code=\tikz@cs@unpack{\tikz@cs@node@b}{\tikz@cs@type@b}{#1}} +\tikzset{cs/first node/.code=\tikz@cs@unpack{\tikz@cs@node@a}{\tikz@cs@type@a}{#1}}% +\tikzset{cs/second node/.code=\tikz@cs@unpack{\tikz@cs@node@b}{\tikz@cs@type@b}{#1}}% \def\tikz@cs@unpack#1#2#3{% \expandafter\ifx\csname pgf@sh@ns@#3\endcsname\relax% @@ -4807,12 +4978,12 @@ \def#1{#3}% \edef#2{\csname pgf@sh@ns@#3\endcsname}% \fi% -} +}% -\tikzset{cs/solution/.initial=1} +\tikzset{cs/solution/.initial=1}% -\tikzset{cs/horizontal line through/.store in=\tikz@cs@hori@line} -\tikzset{cs/vertical line through/.store in=\tikz@cs@vert@line} +\tikzset{cs/horizontal line through/.store in=\tikz@cs@hori@line}% +\tikzset{cs/vertical line through/.store in=\tikz@cs@vert@line}% \tikzdeclarecoordinatesystem{intersection} {% @@ -4825,7 +4996,7 @@ \else% \csname tikz@intersect@\tikz@cs@type@a @and@\tikz@cs@type@b\endcsname% \fi% -} +}% \def\tikz@intersect@line@and@line{% \expandafter\tikz@scan@one@point\expandafter\tikz@parse@line\tikz@cs@line@a% @@ -4841,14 +5012,14 @@ {\noexpand\pgfqpoint{\the\pgf@xc}{\the\pgf@yc}}% {\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}}}% \pgf@marshal% -} +}% \def\tikz@parse@line#1--{% \pgf@process{#1}% \pgf@xc=\pgf@x% \pgf@yc=\pgf@y% \tikz@scan@one@point\pgf@process% -} +}% \tikzdeclarecoordinatesystem{perpendicular} @@ -4857,7 +5028,7 @@ \expandafter\tikz@scan@one@point\expandafter\tikz@parse@intersection@a\tikz@cs@hori@line% \expandafter\tikz@scan@one@point\expandafter\tikz@parse@intersection@b\tikz@cs@vert@line% \pgfqpoint{\the\pgf@xb}{\the\pgf@ya} -} +}% \tikzdeclarecoordinatesystem{barycentric} {% @@ -4870,7 +5041,7 @@ \global\pgf@x=\pgfmathresult\pgf@xa% \global\pgf@y=\pgfmathresult\pgf@ya% }% -} +}% \def\tikz@bary@dolist#1=#2,{% \def\tikz@temp{#1}% @@ -4883,17 +5054,17 @@ \advance\pgf@xb by\pgfmathresult pt% \expandafter\tikz@bary@dolist% \fi% -} +}% -\tikzset{cs/x/.store in=\tikz@cs@x} -\tikzset{cs/y/.store in=\tikz@cs@y} -\tikzset{cs/z/.store in=\tikz@cs@z} -\tikzset{cs/angle/.store in=\tikz@cs@angle} -\tikzset{cs/x radius/.store in=\tikz@cs@xradius} -\tikzset{cs/y radius/.store in=\tikz@cs@yradius} -\tikzset{cs/radius/.style={/tikz/cs/x radius=#1,/tikz/cs/y radius=#1}} -\tikzset{cs/name/.store in=\tikz@cs@node} -\tikzset{cs/anchor/.store in=\tikz@cs@anchor} +\tikzset{cs/x/.store in=\tikz@cs@x}% +\tikzset{cs/y/.store in=\tikz@cs@y}% +\tikzset{cs/z/.store in=\tikz@cs@z}% +\tikzset{cs/angle/.store in=\tikz@cs@angle}% +\tikzset{cs/x radius/.store in=\tikz@cs@xradius}% +\tikzset{cs/y radius/.store in=\tikz@cs@yradius}% +\tikzset{cs/radius/.style={/tikz/cs/x radius=#1,/tikz/cs/y radius=#1}}% +\tikzset{cs/name/.store in=\tikz@cs@node}% +\tikzset{cs/anchor/.store in=\tikz@cs@anchor}% @@ -4903,8 +5074,8 @@ % Last position visited -\def\tikz@last@position{\pgfqpoint{\tikz@lastx}{\tikz@lasty}} -\def\tikz@last@position@saved{\pgfqpoint{\tikz@lastxsaved}{\tikz@lastysaved}} +\def\tikz@last@position{\pgfqpoint{\tikz@lastx}{\tikz@lasty}}% +\def\tikz@last@position@saved{\pgfqpoint{\tikz@lastxsaved}{\tikz@lastysaved}}% % Make given point the last position visited \def\tikz@make@last@position#1{% @@ -4916,45 +5087,45 @@ \tikz@lastysaved=\pgf@y\relax% \fi% \tikz@updatecurrenttrue% -} +}% \newif\iftikz@updatecurrent \tikz@updatecurrenttrue -% Scanner: Scans a point or a relative point. +% Scanner: Scans a point or a relative point. % It then calls the first parameter with the argument set to an % appropriate pgf command representing that point. \def\tikz@scan@one@point#1{% \let\tikz@to@use@whom=\tikz@to@use@last@coordinate% \tikz@shapeborderfalse% - \pgfutil@ifnextchar+{\tikz@scan@relative#1}{\tikz@scan@absolute#1}} + \pgfutil@ifnextchar+{\tikz@scan@relative#1}{\tikz@scan@absolute#1}}% \def\tikz@scan@absolute#1{% \pgfutil@ifnextchar({\tikz@scan@@absolute#1}%) {% \advance\tikz@expandcount by -1% \ifnum\tikz@expandcount<0\relax% - \let\@next=\tikz@@scangiveup% + \let\pgfutil@next=\tikz@@scangiveup% \else% - \let\@next=\tikz@@scanexpand% + \let\pgfutil@next=\tikz@@scanexpand% \fi% - \@next{#1}% + \pgfutil@next{#1}% }% -} -\def\tikz@@scanexpand#1{\expandafter\tikz@scan@one@point\expandafter#1} -\def\tikz@@scangiveup#1{\tikzerror{Cannot parse this coordinate}#1{\pgfpointorigin}} +}% +\def\tikz@@scanexpand#1{\expandafter\tikz@scan@one@point\expandafter#1}% +\def\tikz@@scangiveup#1{\tikzerror{Cannot parse this coordinate}#1{\pgfpointorigin}}% \def\tikz@scan@@absolute#1({% \pgfutil@ifnextchar[% uhoh... options! {\def\tikz@scan@point@recall{#1}\tikz@scan@options}% {\tikz@@@scan@@absolute#1(}% -} +}% \def\tikz@scan@options[#1]#2{% \def\tikz@scan@point@options{#1}% \tikz@@@scan@@absolute\tikz@scan@handle@options(#2% -} +}% \def\tikz@scan@handle@options#1{% {% @@ -4967,15 +5138,15 @@ \pgf@process{\pgfpointtransformed{#1}}% \xdef\tikz@marshal{\expandafter\noexpand\tikz@scan@point@recall{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}}% }% - \tikz@marshal% -} + \tikz@marshal% +}% \def\tikz@ensure@dollar@catcode{% \ifnum\catcode`\$=3 % \else \tikzerror{Sorry, some package has redefined the meaning of the math-mode dollar sign. This is incompatible with tikz and its calc - library and might cause unrecoverable errors}% + library and might cause unrecoverable errors}% % only show error once: \global\let\tikz@ensure@dollar@catcode=\relax \fi @@ -4986,50 +5157,50 @@ \pgfutil@ifnextchar{$}%$ {\tikz@parse@calculator#1(} {\tikz@scan@no@calculator#1(}% -} +}% \def\tikz@scan@no@calculator#1(#2){% \edef\tikz@temp{(#2)}% \expandafter\tikz@@scan@@no@calculator\expandafter#1\tikz@temp% -} +}% \def\tikz@@scan@@no@calculator#1(#2){% \pgfutil@in@{cs:}{#2}% \ifpgfutil@in@% - \let\@next\tikz@parse@coordinatesystem% + \let\pgfutil@next\tikz@parse@coordinatesystem% \else% \pgfutil@in@{intersection }{#2}% \ifpgfutil@in@% - \let\@next\tikz@parse@intersection% + \let\pgfutil@next\tikz@parse@intersection% \else% \pgfutil@in@|{#2}% \ifpgfutil@in@ \pgfutil@in@{-|}{#2}% \ifpgfutil@in@ - \let\@next\tikz@parse@hv% + \let\pgfutil@next\tikz@parse@hv% \else% - \let\@next\tikz@parse@vh% + \let\pgfutil@next\tikz@parse@vh% \fi% \else% \pgfutil@in@:{#2}% \ifpgfutil@in@ - \let\@next\tikz@parse@polar% + \let\pgfutil@next\tikz@parse@polar% \else% \pgfutil@in@,{#2}% - \ifpgfutil@in@% - \let\@next\tikz@parse@regular% + \ifpgfutil@in@% + \let\pgfutil@next\tikz@parse@regular% \else% - \let\@next\tikz@parse@node% + \let\pgfutil@next\tikz@parse@node% \fi% \fi% \fi% \fi% \fi% - \@next#1(#2)% -} + \pgfutil@next#1(#2)% +}% \def\tikz@parse@calculator#1($#2$){% \tikzerror{You need to say \string\usetikzlibrary{calc} for coordinate calculation}% #1{\pgfpointorigin}% -} +}% \def\tikz@parse@coordinatesystem#1(#2 cs:#3){% \let\tikz@return@coordinate=\pgfpointorigin% @@ -5037,20 +5208,20 @@ {\tikzerror{Unknown coordinate system '#2'}} {\csname tikz@parse@cs@#2\endcsname(#3)}% \expandafter#1\expandafter{\tikz@return@coordinate}% -} +}% \newif\iftikz@isdimension \def\tikz@checkunit#1{% \pgfmathparse{#1}% \let\iftikz@isdimension=\ifpgfmathunitsdeclared% -} +}% \def\tikz@parse@polar#1(#2:#3){% \pgfutil@ifundefined{tikz@polar@dir@#2} {\tikz@@parse@polar#1({#2}:{#3})} {\tikz@@parse@polar#1(\csname tikz@polar@dir@#2\endcsname:{#3})}% -} +}% \def\tikz@@parse@polar#1(#2:#3){% \pgfutil@in@{ and }{#3}% \ifpgfutil@in@% @@ -5059,7 +5230,7 @@ \edef\tikz@args{({#2}:{#3} and {#3})}% \fi% \expandafter\tikz@@@parse@polar\expandafter#1\tikz@args% -} +}% \def\tikz@@@parse@polar#1(#2:#3 and #4){% \tikz@checkunit{#3}% \iftikz@isdimension% @@ -5080,69 +5251,65 @@ \fi% \fi% \tikz@next% -} -\def\tikz@polar@dir@up{90} -\def\tikz@polar@dir@down{-90} -\def\tikz@polar@dir@left{180} -\def\tikz@polar@dir@right{0} -\def\tikz@polar@dir@north{90} -\def\tikz@polar@dir@south{-90} -\def\tikz@polar@dir@east{0} -\def\tikz@polar@dir@west{180} -\expandafter\def\csname tikz@polar@dir@north east\endcsname{45} -\expandafter\def\csname tikz@polar@dir@north west\endcsname{135} -\expandafter\def\csname tikz@polar@dir@south east\endcsname{-45} -\expandafter\def\csname tikz@polar@dir@south west\endcsname{-135} - - -% MW: -% Check to see if the y-coordinate is inside {}. If it is, scan it and -% reinsert it into the stream inside an extra group. -% -% MW: +}% +\def\tikz@polar@dir@up{90}% +\def\tikz@polar@dir@down{-90}% +\def\tikz@polar@dir@left{180}% +\def\tikz@polar@dir@right{0}% +\def\tikz@polar@dir@north{90}% +\def\tikz@polar@dir@south{-90}% +\def\tikz@polar@dir@east{0}% +\def\tikz@polar@dir@west{180}% +\expandafter\def\csname tikz@polar@dir@north east\endcsname{45}% +\expandafter\def\csname tikz@polar@dir@north west\endcsname{135}% +\expandafter\def\csname tikz@polar@dir@south east\endcsname{-45}% +\expandafter\def\csname tikz@polar@dir@south west\endcsname{-135}% + + +% MW: % Check to see if the y-coordinate is inside {}. If it is, scan it and -% reinsert it into the stream inside an extra group. +% reinsert it into the stream inside an extra group. % \def\tikz@parse@regular#1(#2,{% - \pgfutil@ifnextchar\bgroup{\tikz@@parse@regular#1{#2}}{\tikz@@@parse@regular#1{#2}}% -} + \pgfutil@ifnextchar\bgroup{\tikz@@parse@regular#1{#2}}{\tikz@@@parse@regular#1{#2}}% +}% \def\tikz@@parse@regular#1#2#3{% - \pgfutil@ifnextchar[{% Uh oh! An array index. - \tikz@@@parse@regular#1{#2}{#3}}% - {\tikz@@@parse@regular#1{#2}{{#3}}}} - + \pgfutil@ifnextchar[{% Uh oh! An array index. + \tikz@@@parse@regular#1{#2}{#3}}% + {\tikz@@@parse@regular#1{#2}{{#3}}}}% + % Originally \def\tikz@parse@regular#1(#2,#3){% % \def\tikz@@@parse@regular#1#2#3){% \pgfutil@in@,{#3}% - \ifpgfutil@in@% + \ifpgfutil@in@% \tikz@parse@splitxyz{#1}{#2}#3,% \else% \tikz@checkunit{#2}% \iftikz@isdimension% \tikz@checkunit{#3}% \iftikz@isdimension% - \def\@next{#1{\pgfpoint{#2}{#3}}}% + \def\pgfutil@next{#1{\pgfpoint{#2}{#3}}}% \else% - \def\@next{#1{\pgfpointadd{\pgfpoint{#2}{0pt}}{\pgfpointxy{0}{#3}}}}% + \def\pgfutil@next{#1{\pgfpointadd{\pgfpoint{#2}{0pt}}{\pgfpointxy{0}{#3}}}}% \fi% \else% \tikz@checkunit{#3}% \iftikz@isdimension% - \def\@next{#1{\pgfpointadd{\pgfpoint{0pt}{#3}}{\pgfpointxy{#2}{0}}}}% + \def\pgfutil@next{#1{\pgfpointadd{\pgfpoint{0pt}{#3}}{\pgfpointxy{#2}{0}}}}% \else% - \def\@next{#1{\pgfpointxy{#2}{#3}}}% + \def\pgfutil@next{#1{\pgfpointxy{#2}{#3}}}% \fi% \fi% \fi% - \@next% -} + \pgfutil@next% +}% \def\tikz@parse@splitxyz#1#2#3,#4,{% - \def\@next{#1{\pgfpointxyz{#2}{#3}{#4}}}% -} + \def\pgfutil@next{#1{\pgfpointxyz{#2}{#3}{#4}}}% +}% -\def\tikz@coordinate@text{coordinate} +\def\tikz@coordinate@text{coordinate}% \def\tikz@parse@node#1(#2){% \pgfutil@in@.{#2}% Ok, flag this @@ -5151,7 +5318,7 @@ \else% \tikz@calc@anchor#2.center\tikz@stop% to be on the save side, in % case iftikz@shapeborder is ignored... - \expandafter\ifx\csname pgf@sh@ns@#2\endcsname\tikz@coordinate@text% + \expandafter\ifx\csname pgf@sh@ns@\tikz@pp@name{#2}\endcsname\tikz@coordinate@text% \else \tikz@shapebordertrue% \def\tikz@shapeborder@name{\tikz@pp@name{#2}}% @@ -5159,11 +5326,11 @@ \fi% \edef\tikz@marshal{\noexpand#1{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}}% \tikz@marshal% -} +}% \def\tikz@calc@anchor#1.#2\tikz@stop{% \pgfpointanchor{\tikz@pp@name{#1}}{#2}% -} +}% \def\tikz@parse@hv#1(#2){% @@ -5183,11 +5350,11 @@ \fi% \fi% \fi% - \tikz@next#1(#2)} -\def\tikz@parse@hvboth#1(#2 -| #3){\tikz@parse@vhdone#1({#3}|-{#2})} -\def\tikz@parse@hvleft#1(#2 -|#3){\tikz@parse@vhdone#1({#3}|-{#2})} -\def\tikz@parse@hvright#1(#2-| #3){\tikz@parse@vhdone#1({#3}|-{#2})} -\def\tikz@parse@hvdone#1(#2-|#3){\tikz@parse@vhdone#1({#3}|-{#2})} + \tikz@next#1(#2)}% +\def\tikz@parse@hvboth#1(#2 -| #3){\tikz@parse@vhdone#1({#3}|-{#2})}% +\def\tikz@parse@hvleft#1(#2 -|#3){\tikz@parse@vhdone#1({#3}|-{#2})}% +\def\tikz@parse@hvright#1(#2-| #3){\tikz@parse@vhdone#1({#3}|-{#2})}% +\def\tikz@parse@hvdone#1(#2-|#3){\tikz@parse@vhdone#1({#3}|-{#2})}% \def\tikz@parse@vh#1(#2){% \pgfutil@in@{ |- }{#2}% @@ -5206,10 +5373,10 @@ \fi% \fi% \fi% - \tikz@next#1(#2)} -\def\tikz@parse@vhboth#1(#2 |- #3){\tikz@parse@vhdone#1({#2}|-{#3})} -\def\tikz@parse@vhleft#1(#2 |-#3){\tikz@parse@vhdone#1({#2}|-{#3})} -\def\tikz@parse@vhright#1(#2|- #3){\tikz@parse@vhdone#1({#2}|-{#3})} + \tikz@next#1(#2)}% +\def\tikz@parse@vhboth#1(#2 |- #3){\tikz@parse@vhdone#1({#2}|-{#3})}% +\def\tikz@parse@vhleft#1(#2 |-#3){\tikz@parse@vhdone#1({#2}|-{#3})}% +\def\tikz@parse@vhright#1(#2|- #3){\tikz@parse@vhdone#1({#2}|-{#3})}% \def\tikz@parse@vhdone#1(#2|-#3){% {% \tikz@@@scan@@absolute\tikz@parse@vh@mid(#2)% @@ -5217,9 +5384,9 @@ \xdef\tikz@marshal{\noexpand#1{\noexpand\pgfqpoint{\the\pgf@xa}{\the\pgf@ya}}}% }% \tikz@marshal% -} -\def\tikz@parse@vh@mid#1{\pgf@process{#1}\pgf@xa=\pgf@x} -\def\tikz@parse@vh@end#1{\pgf@process{#1}\pgf@ya=\pgf@y} +}% +\def\tikz@parse@vh@mid#1{\pgf@process{#1}\pgf@xa=\pgf@x}% +\def\tikz@parse@vh@end#1{\pgf@process{#1}\pgf@ya=\pgf@y}% \def\tikz@parse@intersection#1(intersection{% \pgfutil@ifnextchar o{% @@ -5227,7 +5394,7 @@ }{% \tikz@parse@main@intersection#1% }% -} +}% \def\tikz@parse@main@intersection#1#2of #3 and #4){% \tikzset{cs/solution=#2}% \pgfutil@in@{--}{#3}% @@ -5245,36 +5412,36 @@ \tikz@parse@cs@intersection()% advanced hackery... \edef\pgf@marshal{\noexpand#1{\noexpand\pgfqpoint{\the\pgf@x}{\the\pgf@y}}}% \pgf@marshal% -} +}% \def\tikz@reparse@line#1#2--#3\pgf@stop{% \tikzset{cs/#1 line={(#2)--(#3)}}% -} +}% -\def\tikz@parse@intersection@a#1{\pgf@process{#1}\pgf@xa=\pgf@x\pgf@ya=\pgf@y} -\def\tikz@parse@intersection@b#1{\pgf@process{#1}\pgf@xb=\pgf@x\pgf@yb=\pgf@y} +\def\tikz@parse@intersection@a#1{\pgf@process{#1}\pgf@xa=\pgf@x\pgf@ya=\pgf@y}% +\def\tikz@parse@intersection@b#1{\pgf@process{#1}\pgf@xb=\pgf@x\pgf@yb=\pgf@y}% \def\tikz@scan@relative#1+{% - \pgfutil@ifnextchar+{\tikz@scan@plusplus#1}{\tikz@scan@oneplus#1}} + \pgfutil@ifnextchar+{\tikz@scan@plusplus#1}{\tikz@scan@oneplus#1}}% \def\tikz@scan@plusplus#1+{% \def\tikz@doafter{#1}% \tikz@scan@absolute\tikz@add% -} +}% \def\tikz@add#1{% \tikz@doafter{\pgfpointadd{#1}{\tikz@last@position@saved}}% -} +}% \def\tikz@scan@oneplus#1{% \def\tikz@doafter{#1}% \tikz@updatecurrentfalse% \tikz@scan@absolute\tikz@add% -} +}% -% +% % Quote handling -% +% \let\tikz@enable@node@quotes\relax \let\tikz@enable@edge@quotes\relax @@ -5287,16 +5454,16 @@ % Include a library file. % % #1 = List of names of library file. -% +% % Description: % % This command includes a list of TikZ library files. For each file X in the % list, the file tikzlibraryX.code.tex is included, provided this has -% not been done earlier. +% not been done earlier. % % For the convenience of Context users, both round and square brackets % are possible for the argument. -% +% % If no file tikzlibraryX.code.tex exists, the file % pgflibraryX.code.tex is tried instead. If this file, also, does not % exist, an error message is printed. @@ -5306,8 +5473,8 @@ % \usetikzlibrary{arrows} % \usetikzlibrary[patterns,topaths] -\def\usetikzlibrary{\pgfutil@ifnextchar[{\use@tikzlibrary}{\use@@tikzlibrary}}%} -\def\use@tikzlibrary[#1]{\use@@tikzlibrary{#1}} +\def\usetikzlibrary{\pgfutil@ifnextchar[{\use@tikzlibrary}{\use@@tikzlibrary}}%}% +\def\use@tikzlibrary[#1]{\use@@tikzlibrary{#1}}% \def\use@@tikzlibrary#1{% \edef\pgf@list{#1}% \pgfutil@for\pgf@temp:=\pgf@list\do{% @@ -5338,12 +5505,12 @@ \fi% \fi }% -} +}% % Always-present libraries: -\usetikzlibrary{topaths} +\usetikzlibrary{topaths}% |