texlive[64506] Master/texmf-dist: tikz-ext (25sep22)

commits+karl at tug.org commits+karl at tug.org
Sun Sep 25 22:13:55 CEST 2022


Revision: 64506
          http://tug.org/svn/texlive?view=revision&revision=64506
Author:   karl
Date:     2022-09-25 22:13:55 +0200 (Sun, 25 Sep 2022)
Log Message:
-----------
tikz-ext (25sep22)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/tikz-ext/README.md
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-calendar.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-intro.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-calendar-plus.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-misc.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-node-families.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-paths.timer.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-patterns.images.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-positioning-plus.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-trans.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-main-body.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-main-preamble.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-trans.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual.pdf
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.calendar-plus.code.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.misc.code.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.node-families.code.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.paths.ortho.code.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.patterns.images.code.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.positioning-plus.code.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.transformations.mirror.code.tex

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlearrow.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-heatmark.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-rectround.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-superellipse.tex
    trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual.bib
    trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.circlearrow.code.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.circlecrosssplit.code.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.heatmark.code.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.rectangleroundedcorners.code.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.superellipse.code.tex
    trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.node-families.shapes.geometric.code.tex

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/README.md	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/README.md	2022-09-25 20:13:55 UTC (rev 64506)
@@ -14,16 +14,23 @@
 
 These are
 
- * `ext.calendar-plus`,
- * `ext.node-familes`,
- * `ext.transformations.mirror`,
- * `ext.paths.arcto`,
- * `ext.paths.ortho`,
- * `ext.paths.timer`,
- * `ext.patterns.images`,
- * `ext.positioning-plus`,
- * `ext.topaths.arcthrough` and
- * `ext.misc`.
+ * `ext.calendar-plus`
+ * `ext.node-families`
+    * `ext.node-families.shapes.geometric`
+ * `ext.paths.arcto`
+ * `ext.paths.ortho`
+ * `ext.paths.timer`
+ * `ext.patterns.images`
+ * `ext.positioning-plus`
+ * `ext.topaths.arcthrough`
+ * `ext.transformations.mirror`
+ * `ext.misc`
+ * Shapes:
+   * `ext.shapes.circlearrow`
+   * `ext.shapes.circlecrosssplit`
+   * `ext.shapes.heatmark`
+   * `ext.shapes.rectangleroundedcorners`
+   * `ext.shapes.superellopse`
 
  These were developed in response to questions on tex.stackexchange.com.
  Some of these can be find by searching for my [user id](https://tex.stackexchange.com/search?q=user%3A16595+%22my+library%22).
\ No newline at end of file

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-calendar.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-calendar.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-calendar.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -9,9 +9,11 @@
 %
 
 \section{Calendar: Weeknumbers and more conditionals}
+\label{sec:calendar}
 \begin{package}{calendar-ext}
-  This package adds week numbers and more conditionals to the PGF package |pgfcalendar|.
+  This package adds week numbers and more conditionals to the \pgfname\space package |pgfcalendar|.
   (Despite the code example above, this package is not set up to work with Con\TeX t.)
+  \inspiration{WeekNum-Q,CalCond-Q}{WeekNum-A,CalCond-A}
 \end{package}
 
 %This package extends the |pgfcalendar| package.
@@ -48,7 +50,7 @@
 \end{itemize}
 
 The shorthands for |d-| and |m-| are slightly changed so that they are
-expandable. This makes it possible to use these shorthands inside of PGFmath.
+expandable. This makes it possible to use these shorthands inside of \pgfname math.
 The shorthands for the week (see section~\ref{calendar:weeknumbering})
 are added. These are
 \begin{itemize}

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-intro.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-intro.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-intro.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -10,19 +10,22 @@
 \part{Introduction}
 \begin{multicols}{2}
 \section{Usage}
-This package is called |tikz-ext|, however, one can't load it via |\usepackage|.
-Instead, this package consists of multiple PGF and \tikzname\space libraries
+This package is called |tikz-ext|, however,
+one can't load it via |\usepackage|.%
+\footnote{Except for \texttt{calendar-ext} of section~\ref{sec:calendar}.}
+Instead, this package consists of multiple
+\pgfname\space and \tikzname\space libraries
 which are loaded by either |\usepgflibrary| or |\usetikzlibrary|.
 
 \section{Why do we need it?}
-Since I have been answering questions on \hyperlink{https://tex.stackexchange.com}{TeX.sx}
+Since I have been answering questions on
+\hyperlink{https://tex.stackexchange.com}{TeX.sx}
 I've noticed that some questions come up again and again,
 every time with a slightly different approach on how to solve them.
 
-I don't like reinventing the wheel which is why I've gathered the code of my answers in this package.
+I don't like reinventing the wheel which is why I've gathered
+the solutions of my answers in this package.
 
-And, yes, I am using them myself, too.
-
-\section{Should these libraries be part of \tikzname?}
-I guess.
+\section{Having problems?}
+Don't hesitate to open an issue on GitHub.
 \end{multicols}
\ No newline at end of file

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-calendar-plus.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-calendar-plus.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-calendar-plus.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -10,7 +10,8 @@
 
 \section{Calendar}
 \begin{tikzlibrary}{ext.calendar-plus}
-  This library extends the \tikzname\space library |calendar|\indexLibraryO{calendar}.
+  This library extends the \tikzname\space library \referenceLibraryandIndexO{calendar}.
+  \inspiration{WeekNum-Q,CalCond-Q,CalMath-Q}{WeekNum-A,CalCond-A,CalMath-A}
 \end{tikzlibrary}
 
 \begin{multicols}{2}
@@ -34,6 +35,17 @@
 \begin{key}{/tikz/if=|(|\meta{conditions}|)|\meta{code or options}\opt{|else|\meta{else code or options}}}
 \end{key}
 
+\subsection{\pgfname math functions}
+\begin{math-function}{weeksinmonthofyear(\mvar{first weekday}, \mvar{month}, \mvar{year})}
+\mathcommand
+  Returns the number of (partial) weeks in the month \mvar{month} of year \mvar{year}
+  when this month begins on a \mvar{first weekday}.
+\end{math-function}
+\begin{math-function}{lastdayinmonthofyear(\mvar{month}, \mvar{year})}
+\mathcommand
+  Returns the last day (28, 29, 30 or 31) of month \mvar{month} of year \mvar{year}.
+\end{math-function}
+
 \subsection{Week numbering (ISO~8601)}
 
 The actual week number algorithm is implemented by the |pgfcalendar-ext| package/module in section~\ref{calendar:weeknumbering}.

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-misc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-misc.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-misc.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -10,10 +10,11 @@
 
 \section{And a little bit more}
 \begin{tikzlibrary}{ext.misc}
-  This library adds miscellaneous utilities to PGFmath, PGF or \tikzname.
+  This library adds miscellaneous utilities to \pgfname math, \pgfname\space or \tikzname.
+  \inspiration{FullArc-Q,ForeachUse-Q}{FullArc-A,ForeachUse-A}
 \end{tikzlibrary}
 
-\subsection{PGFmath}
+\subsection{\pgfname math}
 
 \begin{multicols}{2}
 \pgfkeys{/codeexample/every codeexample/.append style={width=3cm}}
@@ -101,7 +102,7 @@
 \end{math-function}
 
 \subsubsection{Functions: using coordinates}
-The following functions can only be used with PGF and/or \tikzname.
+The following functions can only be used with \pgfname\space and/or \tikzname.
 Since the arguments are usually plain text (and not numbers) one has to wrap
 them in |"|.
 \begin{math-function}{anglebetween("\mvar{p1}", "\mvar{p2}")}\mathcommand
@@ -135,18 +136,19 @@
       (intersection of @--[shift=(vecB)]@ and B--A) coordinate (A);}
 \end{tikzpicture}
 \end{codeexample}
-\subsection{PGFkeys}
-
+\pagebreak
+\subsection{\pgfname keys}
+%
 \begin{multicols}{2}
-
+%
 \subsubsection{Conditionals}
 
 \begin{key}{/utils/if=\meta{cond}\meta{true}\opt{\meta{false}}}
   This key checks the conditional \meta{cond} and applies the styles \meta{true}
   if \meta{cond} is true, otherwise \meta{false}.
-  \meta{cond} can be anything that PGFmath understands.
+  \meta{cond} can be anything that \pgfname math understands.
   
-  As a side effect on how PGFkeys parses argument, the \meta{false} argument is
+  As a side effect on how \pgfname keys parses argument, the \meta{false} argument is
   actually optional.
 \end{key}
 
@@ -157,7 +159,7 @@
   This key checks via |\if| if \meta{token A} matches \meta{token B}
   and applies the styles \meta{true} if it does, otherwise \meta{false}.
   
-  As a side effect on how PGFkeys parses argument, the \meta{false} argument is
+  As a side effect on how \pgfname keys parses argument, the \meta{false} argument is
   actually optional.
 \end{key}
 
@@ -170,7 +172,7 @@
   and applies the styles \meta{true} if true, otherwise \meta{false}.
   A delimiting |\relax| will be inserted after \meta{num cond}.
   
-  As a side effect on how PGFkeys parses argument, the \meta{false} argument is
+  As a side effect on how \pgfname keys parses argument, the \meta{false} argument is
   actually optional.
 \end{key}
 
@@ -186,7 +188,7 @@
 
 \subsubsection{Handlers}
 
-While already a lot of values given to keys are evaluated by PGFmath at some point,
+While already a lot of values given to keys are evaluated by \pgfname math at some point,
 not all of them are.
 
 \begin{handler}{{.pgfmath}|=|\meta{eval}}
@@ -226,13 +228,13 @@
 \end{tikzpicture}
 \end{codeexample}
 
-\subsection{PGFfor}
+\subsection{\pgfname for}
 
 Instead of |\foreach \var in {start, start + delta, ..., end}| one can use
 |\foreach \var[use int=start to end step delta]|.
 
 \begin{key}{/pgf/foreach/use int=\meta{start}|to|\meta{end}\opt{|step|\meta{delta}}}
-The values \meta{start}, \meta{end} and \meta{delta} are evaluates by PGFmath at initialization.
+The values \meta{start}, \meta{end} and \meta{delta} are evaluates by \pgfname math at initialization.
 The part |step |\meta{delta} is optional (\meta{delta} = 1).
 \end{key}
 

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-node-families.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-node-families.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-node-families.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -15,47 +15,35 @@
   measurements to the \filetype{aux} file.
   
   Unfortunately, this does not work with the |external| library.\indexLibraryO{external}%
-  \footnote{Not only would the \texttt{external} library not notice the change of the value between compilations runs,
-    it also changes the way \texttt{\textbackslash pgfutil at writeout} works which suddenly writes to the \textsc{log} file instead.}
+  \footnote{First of all, I can't figure out how to use the \textsc{aux} file during externalization since it gets written to the \textsc{log} instead.
+            And then there's the question about how \texttt{external} would notice the need to export the picture again until it's stable \dots}
+
+  \inspiration{NodeFam-Q}{NodeFam-A}
+
 \end{tikzlibrary}
 
-This library introduces two new shapes called |Circle| and |Rectangle|
-that are basically copies of the original shapes |circle|\indexShapeO{circle} and |rectangle|\indexShapeO{rectangle}.
-However, their dimension will be set to the same maximum |minimum width| and |minimum height|
-when one of the following \meta{name}s are declared.
-\begin{key}{/tikz/node family/width=\meta{name} (initially |\{\}|)}
-Nodes with the same \meta{name} will have the same \referenceKeyandIndexO[/pgf/]{minimum width}.
-An empty \meta{name} disables the evaluation by the library.
-\begin{codeexample}[preamble=\usetikzlibrary{positioning,ext.node-families},/tikz/node distance=.5cm]
-\tikzexternaldisable % ext.node-families does not work with active externalization
-\begin{tikzpicture}[nodes={Rectangle, draw, node family/width=manual}]
-\node (a) {Foo};
-\node[below=of a] (b) {Foobar};
-\end{tikzpicture}
-\end{codeexample}
+Before we get to the interesting keys, a common prefix can be set for the families' names.
+Initially this is |\pgfpictureid-| so that families of different pictures don't interact.
+\begin{key}{/tikz/node family/prefix=\meta{prefix}(initially \string\pgfpictureid-)}
+The family names are prefixed with the value of |/tikz/node family/prefix|.
 \end{key}
-\begin{key}{/tikz/node family/height=\meta{name} (initially |\{\}|)}
-Nodes with the same \meta{name} will have the same \referenceKeyandIndexO[/pgf/]{minimum height}.
-An empty \meta{name} disables the evaluation by the library.
-\end{key}
-\begin{key}{/tikz/node family/size=\meta{name}}
-Sets both |height| and |width|.
-\end{key}
 
-While |node family/width| and |node family/height| only work for the new shapes |Circle| and |Rectangle|,
-the following keys~-- when setup, see below~-- work with every shape with one single node part.
-Initially though, only |circle|, |rectangle|, |Circle| and |Rectangle| are set up that way.
-\begin{key}{/tikz/node family/text height=\meta{name} (initially |\{\}|)}
+\subsection{Text Box}
+\label{ssec:nf-text}
+The following keys~-- when setup, see below~-- work with every shape with one single node part.%
+\footnote{Technically, it will also work with shapes with multiple node parts but it will only affect the main node part.}
+Initially though, only \referenceShapeandIndexO{circle} and \referenceShapeandIndexO{rectangle} are set up that way.
+\begin{key}{/tikz/node family/text height=\meta{name} (initially \{\})}
 Nodes with the same \meta{name} will have the same text height.
 An empty \meta{name} disables the evaluation by the library.
 \end{key}
 
-\begin{key}{/tikz/node family/text depth=\meta{name} (initially |\{\}|)}
+\begin{key}{/tikz/node family/text depth=\meta{name} (initially \{\})}
 Nodes with the same \meta{name}  will have the same text depth.
 An empty \meta{name} disables the evaluation by the library.
 \end{key}
 
-\begin{key}{/tikz/node family/text width=\meta{name} (initially |\{\}|)}
+\begin{key}{/tikz/node family/text width=\meta{name} (initially \{\})}
 Nodes with the same \meta{name} will have the same text width.
 An empty \meta{name} disables the evaluation by the library.
 \end{key}
@@ -68,12 +56,12 @@
 the previous key only extends the width of that box which would make the text
 seem as if it where aligned to the left.
 With |text width family align| this can changed.
-\begin{key}{/tikz/node family/text width align=\meta{alignment}(initially |center|)}
+\begin{key}{/tikz/node family/text width align=\meta{alignment}(initially center)}
 \meta{alignment} is one of |left|, |center| or |right|.
 
 \begin{codeexample}[preamble=\usetikzlibrary{positioning,ext.node-families},/tikz/node distance=.5cm]
 \tikzexternaldisable % ext.node-families does not work with active externalization
-\begin{tikzpicture}[nodes={Rectangle, draw, node family={text width=manual, text width align=right}}]
+\begin{tikzpicture}[nodes={rectangle, draw, node family={text width=manual, text width align=right}}]
 \node (a) {Foo};
 \node[below=of a] (b) {Foobar};
 \end{tikzpicture}
@@ -80,10 +68,6 @@
 \end{codeexample}
 \end{key}
 
-\begin{key}{/tikz/node family/prefix=\meta{prefix}(initially \expandafter|\string\pgfpictureid-|)}
-The family names are prefixed with the value of |/tikz/node family/prefix|.
-\end{key}
-
 \begin{key}{/tikz/node family/setup shape=\meta{shape}}
 This adds instructions to the \meta{shape}'s definition which
 adjust the text box's dimensions according to the family.
@@ -90,9 +74,47 @@
 
 This should be only used once per shape.
 \end{key}
-\begin{codeexample}[width=9cm,preamble=\usetikzlibrary{ext.node-families,shapes.geometric}]
+
+\subsection{Minimum Width/Height}
+While the keys of the previous subsection work well enough for nodes of the same shape
+(and the same |inner sep|s), for different node shapes the text box dimensions will be used
+differently for the node's total dimension.
+
+For this, the following keys are necessary.
+When one of the keys are used the values of |minimum width| and/or |minimum height| are set to |nf_width| or |nf_height| respectively.
+\begin{key}{/tikz/node family/width=\meta{name} (initially \{\})}
+Nodes with the same \meta{name} will have the same \referenceKeyandIndexO[/pgf/]{minimum width}.
+An empty \meta{name} disables the evaluation by the library.
+\begin{codeexample}[preamble=\usetikzlibrary{positioning,ext.node-families},/tikz/node distance=.5cm]
 \tikzexternaldisable % ext.node-families does not work with active externalization
-\begin{tikzpicture}[node family/setup shape=diamond]
+\begin{tikzpicture}[nodes={rectangle, draw, node family/width=manual}]
+\node (a) {Foo};
+\node[below=of a] (b) {Foobar};
+\end{tikzpicture}
+\end{codeexample}
+\end{key}
+\begin{key}{/tikz/node family/height=\meta{name} (initially \{\})}
+Nodes with the same \meta{name} will have the same \referenceKeyandIndexO[/pgf/]{minimum height}.
+An empty \meta{name} disables the evaluation by the library.
+\end{key}
+\begin{key}{/tikz/node family/size=\meta{name}}
+Sets both |height| and |width|.
+\end{key}
+
+\clearpage
+\subsection{More shapes that support the keys \texttt{width} and \texttt{height}}
+\begin{tikzlibrary}{ext.node-families.shapes.geometric}
+  This library adds support for the keys \referenceKeyandIndex[/tikz/node family/]{width} and
+  \referenceKeyandIndex[/tikz/node family/]{height} for the shapes of
+  the \pgfname\space library \referenceLibraryandIndexO{shapes.geometric}.
+
+  \inspirationQ{NodeFam-Ellipse}
+\end{tikzlibrary}
+The shapes are also setup for the keys from subsection~\ref{ssec:nf-text}.
+
+\begin{codeexample}[width=9cm,preamble=\usetikzlibrary{ext.node-families.shapes.geometric}]
+\tikzexternaldisable % ext.node-families does not work with active externalization
+\begin{tikzpicture}
 \foreach \cnt[count=\Cnt] in {a,...,h}
   \node[draw, diamond, node family/text=aTOh] (\cnt)
     at (right:\Cnt) {\cnt};

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-paths.timer.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-paths.timer.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-paths.timer.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -13,6 +13,8 @@
 
 \begin{tikzlibrary}{ext.paths.timer}
   This library adds timers to the path specifications |rectangle|, |parabola|, |sin| and |cos|.
+  
+  \inspiration{TimerRect-Q,TimerPara-Q}{TimerRect-A,TimerPara-A}
 \end{tikzlibrary}
 
 In \tikzname, the path specification |rectangle|, |parabola|, |sin| and |cos| do not provide

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-patterns.images.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-patterns.images.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-patterns.images.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -13,6 +13,8 @@
 
 \begin{tikzlibrary}{ext.patterns.images}
   This library allows to use an image to be used as a repeating pattern for a path.
+  
+  \inspiration{Pattern-Q}{Pattern-A}
 \end{tikzlibrary}
 
 With this library arbitrary images (or indeed PDF documents) can be used as
@@ -27,9 +29,9 @@
 \begin{command}{\pgfsetupimageaspattern\oarg{options}\marg{name}\marg{image}}
 \end{command}
 
-\begin{key}{/tikz/image as pattern=\meta{options} (default |\{\}|)}
+\begin{key}{/tikz/image as pattern=\meta{options} (default \{\})}
 
-\begin{codeexample}[preamble=\usetikzlibrary{ext.patterns.images}]
+\begin{codeexample}[preamble=\usetikzlibrary{ext.patterns.images,shapes.geometric}]
 \pgfsetupimageaspattern[width=.5cm]{grid}{example-image-1x1}
 \tikz \node[star, minimum size=3cm, draw,
   image as pattern={name=grid,options={left, bottom, y=-.5cm, rotate=45}}] {};
@@ -41,7 +43,7 @@
 \end{key}
 
 \begin{stylekey}{/tikz/image as pattern/option}
-Options that's be used by the internal |\pgftext|,\indexCommandO{\pgftext}
+Options that will be used by the internal |\pgftext|,\indexCommandO{\pgftext}
 only keys from |/pgf/text| should be used.\indexKeyO[/pgf/]{text}
 \end{stylekey}
 

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-positioning-plus.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-positioning-plus.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-positioning-plus.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -12,7 +12,7 @@
 \label{library:positioning-plus}
 \tikzsetnextfilename{posplus}
 \begin{tikzlibrary}{ext.positioning-plus}
-  With the help of the |positioning|\indexLibrary{positioning} and the |fit|\indexLibrary{fit} library this extends the placement of nodes.
+  With the help of the \referenceLibraryandIndexO{positioning} and the \referenceLibraryandIndexO{fit} library this extends the placement of nodes.
 \end{tikzlibrary}
 
 \subsection{Useful corner anchors}

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-trans.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-trans.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-library-trans.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -17,7 +17,7 @@
 \end{tikzlibrary}
 
 As explained in section~\ref{pgflibrary:transformations}, there are two approaches to setting a mirror transformation.
-As with the commands in PGF, we'll be using a lowercase |m| for the reflection matrix and an uppercase |M| for the built-in approach.
+As with the commands in \pgfname, we'll be using a lowercase |m| for the reflection matrix and an uppercase |M| for the built-in approach.
 
 \subsection{Using the reflection matrix}
 
@@ -31,7 +31,7 @@
 \end{tikzpicture}
 \end{codeexample}
 
-\begin{key}{/tikz/xmirror=\meta{value or coordinate}}
+\begin{key}{/tikz/xmirror=\meta{value or coordinate} (default 0pt)}
   Sets up a transformation that mirrors along a horizontal line that goes through point $(\text{\meta{value}}, 0)$ or \meta{coordinate}.
 
 \begin{codeexample}[preamble=\usetikzlibrary{ext.transformations.mirror}]
@@ -45,12 +45,12 @@
 \end{codeexample}
 \end{key}
 
-\begin{key}{/tikz/ymirror=\meta{value or coordinate}}
+\begin{key}{/tikz/ymirror=\meta{value or coordinate} (default 0pt)}
   Sets up a transformation that mirrors along a vertical line that goes through point $(0, \text{\meta{value}})$ or \meta{coordinate}.
 \end{key}
 
 
-\begin{key}{/tikz/mirror x=\meta{coordinate}}
+\begin{key}{/tikz/mirror x=\meta{coordinate} (default {(0,0)})}
   Similar to |/tikz/xmirror|, this however uses the |xyz| coordinate system instead of the |canvas| system.
 \begin{codeexample}[preamble=\usetikzlibrary{ext.transformations.mirror}]
 \begin{tikzpicture}[x=.5cm, y=(45:1cm)]
@@ -65,7 +65,7 @@
 \end{codeexample}
 \end{key}
 
-\begin{key}{/tikz/mirror y=\meta{coordinate}}
+\begin{key}{/tikz/mirror y=\meta{coordinate} (default {(0,0)})}
   Similar to |/tikz/ymirror|, this however uses the |xyz| coordinate system instead of the |canvas| system.
 \end{key}
 
@@ -88,7 +88,7 @@
 \end{tikzpicture}
 \end{codeexample}
 
-\begin{key}{/tikz/xMirror=\meta{value or coordinate}}
+\begin{key}{/tikz/xMirror=\meta{value or coordinate} (default 0pt)}
   Sets up a transformation that mirrors along a horizontal line that goes through point $(\text{\meta{value}}, 0)$ or \meta{coordinate}.
 
 \begin{codeexample}[preamble=\usetikzlibrary{ext.transformations.mirror}]
@@ -102,12 +102,12 @@
 \end{codeexample}
 \end{key}
 
-\begin{key}{/tikz/yMirror=\meta{value or coordinate}}
+\begin{key}{/tikz/yMirror=\meta{value or coordinate} (default 0pt)}
   Sets up a transformation that mirrors along a vertical line that goes through point $(0, \text{\meta{value}})$ or \meta{coordinate}.
 \end{key}
 
 
-\begin{key}{/tikz/Mirror x=\meta{coordinate}}
+\begin{key}{/tikz/Mirror x=\meta{coordinate} (default {(0,0)})}
   Similar to |/tikz/xMirror|, this however uses the |xyz| coordinate system instead of the |canvas| system.
 \begin{codeexample}[preamble=\usetikzlibrary{ext.transformations.mirror}]
 \begin{tikzpicture}[x=.5cm, y=(45:1cm)]
@@ -122,7 +122,7 @@
 \end{codeexample}
 \end{key}
 
-\begin{key}{/tikz/Mirror y=\meta{coordinate}}
+\begin{key}{/tikz/Mirror y=\meta{coordinate} (default {(0,0)})}
   Similar to |/tikz/yMirror|, this however uses the |xyz| coordinate system instead of the |canvas| system.
 \end{key}
 
@@ -133,4 +133,4 @@
   When only \meta{point A} is given that line goes through \meta{point A} and the origin.
 \end{key}
 
-\endinput
+\endinput
\ No newline at end of file

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-main-body.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-main-body.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-main-body.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -8,23 +8,13 @@
 % 2. under the GNU Free Documentation License.
 %
 \newcommand*\tikzextname{Ti\textit kZ-Extensions}
-\newcommand*\tikzextversion{0.2}
-
-%\includeonly{
-%   tikz-ext-manual-en-library-paths.arcto,
-%   tikz-ext-manual-en-library-paths.ortho,
-%   tikz-ext-manual-en-library-paths.timer,
-%   tikz-ext-manual-en-library-patterns.images,
-%   tikz-ext-manual-en-library-topaths.arcthrough,
-%   tikz-ext-manual-en-library-trans,
-%   tikz-ext-manual-en-pgf-trans,
-%   tikz-ext-manual-en-library-misc,
-%}
+\newcommand*\tikzextversion{0.3}
 \begin{document}
-
+{\colorlet{blue}{black}% links shall be black
 \title{\bfseries The \tikzextname\space Package\\
   \large Manual for version \tikzextversion\\[1mm]
-\large\href{https://github.com/Qrrbrbirlbel/tikz-extensions}{\texttt{https://github.com/Qrrbrbirlbel/tikz-extensions}}
+\large\href{https://github.com/Qrrbrbirlbel/tikz-extensions}
+   {\texttt{https://github.com/Qrrbrbirlbel/tikz-extensions}}
 \author{Qrrbrbirlbel}}
 
 \maketitle
@@ -31,8 +21,7 @@
 \label{table-of-contents}
 
 \tableofcontents
-
-
+}
 \include{tikz-ext-manual-en-intro}
 
 \part{\tikzname\space Libraries}
@@ -80,16 +69,20 @@
 \tikzsetfigurename{paths.ortho}     \include{tikz-ext-manual-en-library-paths.ortho}
 \tikzsetfigurename{paths.timer}     \include{tikz-ext-manual-en-library-paths.timer}
 \tikzsetfigurename{patterns.images} \include{tikz-ext-manual-en-library-patterns.images}
-\tikzsetfigurename{positioning-plus}\include{tikz-ext-manual-en-library-positioning-plus}
-\tikzsetfigurename{topaths.arcthrough}\include{tikz-ext-manual-en-library-topaths.arcthrough}
-\tikzsetfigurename{trans}             \include{tikz-ext-manual-en-library-trans}
+\tikzsetfigurename{positioning-plus}
+\include{tikz-ext-manual-en-library-positioning-plus}
+\tikzsetfigurename{topaths.arcthrough}
+\include{tikz-ext-manual-en-library-topaths.arcthrough}
+\tikzsetfigurename{trans}
+\include{tikz-ext-manual-en-library-trans}
 
-\part{PGF Libraries}
+\part{\pgfname\space Libraries}
 \label{part:pgf}
-These libraries (should) work with both PGF and \tikzname.
+These libraries (should) work with both \pgfname\space and \tikzname.
 
 \begin{center}\tikzsetnextfilename{main-graph}
-\begin{codeexample}[width=10cm,preamble=\usetikzlibrary{graphs,graphdrawing,ext.misc} \usegdlibrary{force}]
+\begin{codeexample}[width=10cm,preamble=%
+  \usetikzlibrary{graphs,graphdrawing,ext.misc} \usegdlibrary{force}]
 \tikzset{
   mynode/.style={
     circle, minimum size=10mm, draw, densely dashdotted, thick,
@@ -126,7 +119,12 @@
 \end{center}
 
 \tikzsetfigurename{PGF.trans}\include{tikz-ext-manual-en-pgf-trans}
-
+\tikzsetfigurename{PGF.shapes}%
+\include{tikz-ext-manual-en-pgf-shapes-circlearrow}
+\include{tikz-ext-manual-en-pgf-shapes-circlecrosssplit}
+\include{tikz-ext-manual-en-pgf-shapes-heatmark}
+\include{tikz-ext-manual-en-pgf-shapes-rectround}
+\include{tikz-ext-manual-en-pgf-shapes-superellipse}
 \part{Utilities}
 
 \label{part:misc}
@@ -163,16 +161,29 @@
 
 %%% END
 \newcommand*{\addTikz}[1]{Added \tikzname\space library \texttt{ext.#1}.}
-\newcommand*{\addPGF}[1]{Added PGF library \texttt{ext.#1}.}
-\part{Changelog \& Index}
-\section*{Changelog}
-\begin{multicols}{2}
+\newcommand*{\addPGF}[1]{Added \pgfname\space library \texttt{ext.#1}.}
+\newcommand*{\addShape}[2][]{Added shape \texttt{\ifx\\#1\\#2\else#1\fi}\\(\pgfname\space library \texttt{ext.shapes.#2}).}
+\part{Changelog, Index \& References}
+\section*{Changelog}\addcontentsline{toc}{section}{Changelog}
+\begin{multicols}{2}\raggedright
+\noindent
+Version 0.3
+\begin{itemize}
+\item \addShape[circle arrow]{circlearrow}
+\item \addShape[circle cross split]{circlecrosssplit}
+\item \addShape{heatmark}
+\item \addShape[rectangle with rounded corners]{rectangleroundedcorners}
+\item \addShape{superellipse}
+\item \addTikz{node-families.shapes.geometric}
+\item Fixed |ext.node-families|' key |size|.
+\item Renamed internal macros to use custom namespace starting with |\tikzext@|.
+\item Added some references.
+\end{itemize}
 Version 0.2
 \begin{itemize}
 \item \addTikz{positioning-plus}
 \item \addTikz{node-families}
 \end{itemize}
-
 Version 0.1
 \begin{itemize}
 \item \addTikz{calendar-plus}
@@ -188,5 +199,6 @@
 \end{multicols}
 \printindex
 
+\printbibliography[heading=bibintoc]
 %\typeout{Examples: \the\codeexamplecount}%
 \end{document}
\ No newline at end of file

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-main-preamble.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-main-preamble.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-main-preamble.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -14,9 +14,15 @@
 
 \usepackage{imakeidx}
 \makeindex
+
+%%% Bibliography
+\usepackage{csquotes}
+\usepackage[backend=biber,style=numeric,backref]{biblatex}
+\addbibresource{tikz-ext-manual.bib}
+
 \usepackage{hyperref}
 \hypersetup{%
-    colorlinks=false, % use true to enable colors below:
+    colorlinks=true, % use true to enable colors below:
     linkcolor=blue,%red,
     filecolor=blue,%magenta,
     urlcolor=blue,%cyan,
@@ -88,16 +94,23 @@
   ext.calendar-plus,
   ext.misc,
   ext.node-families,
+  ext.node-families.shapes.geometric,
   ext.paths.arcto,
   ext.paths.ortho,
   ext.paths.timer,
   ext.patterns.images,
   ext.positioning-plus,
+  ext.shapes.heatmark,
+  ext.shapes.circlearrow,
+  ext.shapes.circlecrosssplit,
+  ext.shapes.rectangleroundedcorners,
+  ext.shapes.superellipse,
   ext.topaths.arcthrough,
   ext.transformations.mirror,
   %
   calc,
   fit,
+  matrix,
   shapes.geometric,
   through,
   trees,
@@ -262,10 +275,13 @@
   \index{Key handlers!#1@\protect\texttt{#1}}
 }
 \newcommand*{\indexKey}[2][/tikz/]{%
+\begingroup
   \def\mykey{#1#2}%
   \def\mypath{}%
   \gdef\myname{}%
+  \firsttimetrue
   \decompose#1#2/\nil
+\endgroup
 }
 \newcommand*{\indexPathOperation}[1]{%
   \index{#1@\protect\texttt{#1} path operation}%
@@ -345,7 +361,11 @@
   \index{\strippedat @\originalprefix\protect\texttt{\original{\protect\string\protect#1}}\originalsuffix}%
 }
 
-\newcommand*{\referenceKeyandIndexO}[2][/tikz/]{\texttt{#1#2}\indexKeyO[#1]{#2}}%
+\newcommand*{\referenceKeyandIndexO}[2][/tikz/]{\texttt{#1#2}\indexKeyO[#1]{#2}}
+\newcommand*{\referenceKeyandIndex}[2][/tikz/]{\texttt{#1#2}\indexKey[#1]{#2}}
+\newcommand*{\referenceShapeandIndex}[1]{\texttt{#1}\indexShape{#1}}
+\newcommand*{\referenceShapeandIndexO}[1]{\texttt{#1}\indexShapeO{#1}}
+\newcommand*{\referenceLibraryandIndexO}[1]{\texttt{#1}\indexLibraryO{#1}}
 
 \colorlet{originalindex}{gray}
 \newcommand*{\original}[1]{\textcolor{originalindex}{#1}}
@@ -362,7 +382,21 @@
 \makeatletter
 \def\index at prologue{\section*{Index}\addcontentsline{toc}{section}{Index}
   This index contains automatically generated entries as well as {\originalprefix\original{references}\originalsuffix} to
-  original functionalities of PGF/\tikzname.
+  original functionalities of \pgfname/\tikzname.
   \bigskip
 }
-\makeatother
\ No newline at end of file
+\makeatother
+
+\DeclareMathOperator{\sgn}{sgn}
+
+\newenvironment{implementation}{%
+  \noindent\rule[.5ex]{\linewidth}{.4pt}\par
+  \paragraph*{Notes on Implementation:}\par%
+  \small
+  \begin{quotation}%
+}{\end{quotation}}
+
+\newcommand*{\inspiration}[2]{%
+  \par\textbf{Q\,\&\,A:} \cite{#1} \& \cite{#2}\par
+}
+\newcommand*\inspirationQ[1]{\par\textbf{Q:} \cite{#1}}
\ No newline at end of file

Added: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlearrow.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlearrow.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlearrow.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,93 @@
+% !TeX spellcheck = en_US
+% !TeX root = tikz-ext-manual.tex
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+\section{Shape: Circle Arrow}
+\begin{pgflibrary}{ext.shapes.circlearrow}
+  A circular shape named |circle arrow| that has an arc as its background path that can have an arrow tip.
+  \inspiration{ShapeCircleArrow-Q}{ShapeCircleArrow-A}
+\end{pgflibrary}
+\begin{shape}{circle arrow}
+  This shape is an arrow whose path is an arc -- defined very similar to the |arc|%
+  \indexPathOperationO{arc} path operation -- that can possibly be customized with
+  arrow tips.
+  
+  \begin{key}{/pgf/circle arrow start angle=\meta{start angle} (initially \{\})}
+  Sets the start angle.
+  \end{key}
+  \begin{key}{/pgf/circle arrow end angle=\meta{end angle} (initially \{\})}
+  Sets the end angle.
+  \end{key}
+  \begin{key}{/pgf/circle arrow delta angle=\meta{delta angle} (initially \{\})}
+  Sets the delta angle.
+  \end{key}
+  \begin{key}{/pgf/circle arrow arrows=%
+    \meta{start arrow tip specification}-\meta{end arrow tip specification} (initially -)}
+  The specification will be forwarded to |\pgfsetarrows|\indexCommandO{\pgfsetarrows}.
+  \end{key}
+  
+  A few handful styles are pre-defined.
+  \begin{key}{/pgf/circle arrow turn left north}
+  Sets |circle arrow start angle = 100|, |circle arrow delta angle = 340|
+  and |circle arrow arrows = ->|.
+  \end{key}
+  \begin{key}{/pgf/circle arrow turn left east}
+  As above but |circle arrow start angle = 10|.
+  \end{key}
+  \begin{key}{/pgf/circle arrow turn left west}
+  As above but |circle arrow start angle = 280|.
+  \end{key}
+  \begin{key}{/pgf/circle arrow turn left south}
+  As above but |circle arrow start angle = 190|.
+  \end{key}
+  \begin{key}{/pgf/circle arrow turn right north}
+  Sets |circle arrow start angle = 100|, |circle arrow delta angle = 340|
+  and |circle arrow arrows = <-|.
+  \end{key}
+  \begin{key}{/pgf/circle arrow turn right east}
+  As above but |circle arrow start angle = 10|.
+  \end{key}
+  \begin{key}{/pgf/circle arrow turn right west}
+  As above but |circle arrow start angle = 280|.
+  \end{key}
+  \begin{key}{/pgf/circle arrow turn right south}
+  As above but |circle arrow start angle = 190|.
+  \end{key}
+
+{\catcode`\|=12
+\begin{codeexample}[preamble=\usetikzlibrary{ext.shapes.circlearrow,matrix}]
+\begin{tikzpicture}
+\matrix[matrix of nodes, draw=none, row sep=1em, column sep=1em,
+  every node/.style={draw=gray, shape=circle arrow, ultra thick, inner sep=1em}
+] (m) {
+  |[circle arrow turn left north]|  & |[circle arrow turn left east]|   \\
+  |[circle arrow turn left west]|   & |[circle arrow turn left south]|  \\
+  |[circle arrow turn right north]| & |[circle arrow turn right east]|  \\
+  |[circle arrow turn right west]|  & |[circle arrow turn right south]| \\
+};
+\end{tikzpicture}
+\end{codeexample}
+}
+\begin{codeexample}[preamble=\usetikzlibrary{ext.shapes.circlearrow},width=16cm]
+\begin{tikzpicture}\Huge
+\node[name=s, shape=circle arrow,
+  circle arrow turn left west, shape example]
+  {Circle Arrow\vrule width 1pt height 2cm};
+\foreach \anchor/\placement in
+  {north west/above left, north/above, north east/above right,
+   west/left, center/above, east/right,
+   mid west/right, mid/above, mid east/left,
+   base west/left, base/below, base east/right,
+   south west/below left, south/below, south east/below right,
+   text/left, 10/right, 130/above}
+   \draw[shift=(s.\anchor)] plot[mark=x] coordinates{(0,0)}
+     node[\placement] {\scriptsize\texttt{(s.\anchor)}};
+\end{tikzpicture}
+\end{codeexample}
+\end{shape}
+\endinput
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlearrow.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,53 @@
+% !TeX spellcheck = en_US
+% !TeX root = tikz-ext-manual.tex
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+\section{Shape: Circle Cross Split}
+\begin{pgflibrary}{ext.shapes.circlecrosssplit}
+  A circular shape with four parts that can be individually filled.
+  \inspiration{ShapeSplitCircle-Q}{ShapeSplitCircle-A}
+\end{pgflibrary}
+\begin{shape}{circle cross split}
+This shape has four node parts that are placed near the center of a circle.
+
+\begin{key}{/pgf/circle cross split part fill=\marg{list} (initially none)}
+Sets the custom fill color for each node part shape.
+The items in \meta{list} should be separated by commas
+(so if there is more than one item in \meta{list}, it must be surrounded by braces).
+If \meta{list} has less entries than node parts,
+then the remaining node parts use the color from the last entry in the list.
+This key will automatically set |/pgf/circle cross split uses custom fill|.
+\end{key}
+\begin{key}{/pgf/circle cross split uses custom fill=\opt{\meta{boolean}} (default true)}
+This enables the use of a custom fill for each of the node parts
+(including the area covered by the |inner sep|).
+The background path for the shape should not be filled (e.\,g., in \tikzname,
+the |fill| option for the node must be implicitly or explicitly set to |none|).
+Internally, this key sets the \TeX-if |\ifpgfcirclecrosssplitcustomfill| appropriately. 
+\end{key}
+\begin{codeexample}[preamble=\usepgflibrary{ext.shapes.circlecrosssplit}]
+\begin{tikzpicture}\Huge
+\node[name=s, shape=circle cross split, shape example, inner xsep=1.5cm, fill=none,
+  circle cross split part fill={green,blue,red,yellow!90!black}]
+ {\nodepart{text}text\nodepart{two}two
+         \nodepart{three}three\nodepart{four}four};
+\foreach \anchor/\placement in
+    {north west/above left, north/above,      north east/above right,
+           west/left,      center/left,             east/right,
+       mid west/right,        mid/left,         mid east/left,
+      base west/left,        base/left,        base east/right,
+lower base west/left,  lower base/below, lower base east/right,
+ lower mid west/left,  lower mid/above,   lower mid east/right,
+     south west/below left, south/below,      south east/below right,
+   text/below, 10/right, 130/above, two/left, three/left, four/left}
+   \draw[shift=(s.\anchor)] plot[mark=x] coordinates{(0,0)}
+     node[\placement] {\scriptsize\texttt{(s.\anchor)}};
+\end{tikzpicture}
+\end{codeexample}
+\end{shape}
+\endinput
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-circlecrosssplit.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-heatmark.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-heatmark.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-heatmark.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,83 @@
+% !TeX spellcheck = en_US
+% !TeX root = tikz-ext-manual.tex
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+\section{Shape: Heatmark}
+\begin{pgflibrary}{ext.shapes.heatmark}
+  A circular shape that has customizable rings around it.
+  \inspiration{ShapeHeat-Q}{ShapeHeat-A}
+\end{pgflibrary}
+
+\begin{shape}{heatmark}
+  \begin{key}{/pgf/heatmark arcs=\meta{arcs num} (initially 3)}
+  Sets the number of arc around the circle to \meta{arcs num}.
+  \end{key}
+  \begin{key}{/pgf/heatmark arc width=\meta{arc width} (initially 4pt)}
+  Sets the width of the rings around the circle to \meta{arc width}.
+  \end{key}
+  \begin{key}{/pgf/heatmark arc sep=\meta{sep length} (initially 1pt)}
+  Sets the whitespace between the rings to \meta{sep length}.
+  \end{key}
+  \begin{key}{/pgf/heatmark arc rings=\meta{rings num} (initially 3)}
+  Sets the number of rings around the circle to \meta{rings num}
+  \end{key}
+  \begin{key}{/pgf/heatmark arc sep angle=\meta{sep angle} (initially 20)}
+  Sets the whitespace angle between the arcs in one ring to \meta{sep angle}.
+  \end{key}
+  \begin{key}{/pgf/heatmark inner opacity=\meta{inner opacity} (initially 0.8)}
+  Sets the opacity of the inner ring to \meta{inner opacity}.
+  \end{key}
+  \begin{key}{/pgf/heatmark outer opacity=\meta{low opacity} (initially 0.2)}
+  Sets the opacity of the outer ring to \meta{outer opacity}.
+  
+  The opacity of the rings between the outer and the inner ring will be interpolated by these two opacities.
+  \end{key}
+
+This shape takes the value of |/pgf/shape border rotate|%
+\indexKeyO[/pgf/]{shape border rotate} into consideration.
+
+For every ring and for every arc the following styke keys are tried.
+\begin{stylekey}{/pgf/heatmark ring \meta{ring number}}
+\end{stylekey}
+\begin{stylekey}{/pgf/heatmark arc \meta{arc number}}
+\end{stylekey}
+\begin{stylekey}{/pgf/heatmark ring \meta{ring number} arc \meta{arc number}}
+\end{stylekey}
+
+The \pgfname shape is setup in a way that even \tikzname\space
+styles can be used with a little bit work:
+\begin{codeexample}[preamble=\usetikzlibrary{ext.shapes.heatmark}]
+\tikz[
+  shape border rotate=90,
+  /pgf/heatmark ring 1/.append style={/tikz/fill=green},
+  /pgf/heatmark arc 1/.append style={/tikz/fill=blue},
+  /pgf/heatmark ring 2 arc 2/.append style={/tikz/fill=yellow!70!black}
+] \node[heatmark, fill=red] (n) {100};
+\end{codeexample}
+
+It is best to use this shape with no actual border (|draw = none|) and the |outer sep| set to zero.
+\begin{codeexample}[preamble=\usetikzlibrary{ext.shapes.heatmark},width=16cm]
+\begin{tikzpicture}\Huge
+\node[name=s, shape=heatmark, shape example,
+  fill=blue!25, draw=none, outer sep=0pt]
+  {Heatmark\vrule width 1pt height 2cm};
+\foreach \anchor/\placement in
+  {north west/above left, north/above,
+                          north east/above right,
+         west/left, center/above,      east/right,
+     mid west/right,   mid/above,  mid east/left,
+    base west/left,   base/below, base east/right,
+   south west/below left, south/below,
+                          south east/below right,
+   text/left, 10/right, 130/above}
+   \draw[shift=(s.\anchor)] plot[mark=x] coordinates{(0,0)}
+     node[\placement] {\scriptsize\texttt{(s.\anchor)}};
+\end{tikzpicture}
+\end{codeexample}
+\end{shape}
+\endinput
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-heatmark.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-rectround.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-rectround.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-rectround.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,58 @@
+% !TeX spellcheck = en_US
+% !TeX root = tikz-ext-manual.tex
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+
+\section{Shape: Rectangle with Rounded Corners}
+\begin{pgflibrary}{ext.shapes.rectangleroundedcorners}
+  A rectangle with rounded corners.
+\end{pgflibrary}
+
+\begin{shape}{rectangle with rounded corners}
+This library provides a |rectangle with rounded corners| where every corner can have a different radius.
+
+\begin{key}{/pgf/rectangle with rounded corners north west radius=\meta{dimen} (initially .5\string\pgflinewidth)}
+  Sets the north west radius to \meta{dimen}.
+\end{key}
+\begin{key}{/pgf/rectangle with rounded corners north east radius=\meta{dimen} (initially .5\string\pgflinewidth)}
+  Sets the north east radius to \meta{dimen}.
+\end{key}
+\begin{key}{/pgf/rectangle with rounded corners south west radius=\meta{dimen} (initially .5\string\pgflinewidth)}
+  Sets the south west radius to \meta{dimen}.
+\end{key}
+\begin{key}{/pgf/rectangle with rounded corners south east radius=\meta{dimen} (initially .5\string\pgflinewidth)}
+  Sets the south east radius to \meta{dimen}.
+\end{key}
+\begin{key}{/pgf/rectangle with rounded corners radius=\meta{dimen}}
+  Sets all radii to \meta{dimen}.
+\end{key}
+
+\begin{codeexample}[preamble=\usepgflibrary{ext.shapes.rectangleroundedcorners}]
+\begin{tikzpicture}\Huge
+\node[name=s, shape=rectangle with rounded corners, shape example,
+  rectangle with rounded corners north west radius=10pt,
+  rectangle with rounded corners north east radius=20pt,
+  rectangle with rounded corners south west radius=30pt,
+  rectangle with rounded corners south east radius=40pt] {Rectangle with rounded corners\vrule width 1pt height 2cm};
+\foreach \anchor/\placement in
+  {north west/above left, north/above, north east/above right,
+         west/left,      center/above,       east/right,
+     mid west/right,        mid/above,   mid east/left,
+    base west/left,        base/below,  base east/right,
+   south west/below left, south/below, south east/below right,
+   text/below, 10/right, 130/above,
+   north west center/below right,      north east center/left,
+   south west center/above right,      south east center/left,
+   below north west/left,  above south west/left, above south east/right, below north east/right,
+   right north west/above, right south west/below, left south east/below,  left north east/above}
+   \draw[shift=(s.\anchor)] plot[mark=x] coordinates{(0,0)}
+     node[\placement] {\scriptsize\texttt{(s.\anchor)}};
+\end{tikzpicture}
+\end{codeexample}
+\end{shape}
+\endinput
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-rectround.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-superellipse.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-superellipse.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-superellipse.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,105 @@
+% !TeX spellcheck = en_US
+% !TeX root = tikz-ext-manual.tex
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+
+\section{Shape: Superellipse}
+\begin{pgflibrary}{ext.shapes.superellipse}
+  Shape in the form of a ``superellipse''.
+  \inspiration{ShapeSuperEllipse-Q}{ShapeSuperEllipse-A}
+\end{pgflibrary}
+
+\begin{shape}{superellipse}
+This shape is defined by formula
+\begin{equation*}
+  \biggl|\frac x{r_x}\biggr|^m + \biggl|\frac y{r_y}\biggr|^n = 1
+\end{equation*}
+and will be plotted by
+\begin{align*}
+  x(t) &= |\cos t|^{\frac 2m} \cdot r_x \sgn(\cos t) \\
+  y(t) &= |\sin t|^{\frac 2n} \cdot r_y \sgn(\sin t) \\
+\end{align*}
+where $r_x$ is half the node's width and $r_y$ is half the node's height.
+
+\begin{key}{/pgf/superellipse x exponent=\meta{x exponent}(initially 2.5)}
+This sets $m$.
+\end{key}
+\begin{key}{/pgf/superellipse y exponent=\meta{y exponent}(initially 2.5)}
+This sets $n$.
+\end{key}
+\begin{key}{/pgf/superellipse step=\meta{step}(initially 5)}
+This specifies the step of the underlying plot handler.
+The smaller \meta{step} is, the slower computation will be.
+
+Sensible values for \meta{step} are integer dividers of 90, i.\,e.
+2, 3, 5, 6, 9, 10, 15, 18, 30 and 45.
+\end{key}
+\begin{key}{/pgf/superellipse exponent=\meta{exponent}}
+  Sets both |superellipse x exponent| and |superellipse y exponent| to \meta{exponent}.
+\end{key}
+
+\paragraph{Notes on Implementation}
+For implementing this shape, additional mathematical functions were declared.
+\begin{math-function}{superellipsex(\mvar{t}, \mvar{2/m}, \mvar{$r_x$})}
+\mathcommand
+Returns the $x$ value on a point of the superellipse with its center on the origin following
+\begin{equation*}
+   x = r_x\cos^{2/m} t
+\end{equation*}
+for values of $0 \leq t \leq 90$.
+\end{math-function}
+\begin{math-function}{superellipsey(\mvar{t}, \mvar{2/n}, \mvar{$r_y$})}
+\mathcommand
+Returns the $y$ value on a point of the superellipse with its center on the origin following
+\begin{equation*}
+   y = r_y\cos^{2/n} t
+\end{equation*}
+for values of $0 \leq t \leq 90$.
+\end{math-function}
+
+Both \pgfname math functions can be used at once with the following macro.
+\begin{command}{\pgfmathsuperellipseXY\marg{t}\marg{2/m}\marg{2/n}\marg{a}\marg{b}}
+Returns the $x$ value (in |\pgfmathresultX|) and the $y$ value (in |\pgfmathresultY|) of the superellipse with its center on the origin following
+\begin{align*}
+   x & = a\cos^{2/m} t \\
+   y & = b\cos^{2/n} t
+\end{align*}
+for values of $0 \leq t \leq 90$.
+
+Note: all arguments must be a valid number since they will not be parsed by \pgfname math.
+\end{command}
+
+And additional internal macro was defined following the original naming scheme.
+\def\temp{\begin{command}}%
+\expandafter\temp\expandafter{\csname pgfutil at prefix@macrotomacro\endcsname\marg{macro 1}\marg{macro 2}}
+Adds the once-expansion of \meta{macro 2} in front of \meta{macro 1}.
+\end{command}
+
+\begin{codeexample}[preamble=\usetikzlibrary{ext.shapes.superellipse}]
+\begin{tikzpicture}[superellipse step=1]\Huge
+\node[name=s,shape=superellipse,shape example] {Superellipse\vrule width 1pt height 2cm};
+\foreach \anchor/\placement in
+  {north west/above left, north/above, north east/above right,
+   west/left, center/above, east/right,
+   mid west/right, mid/above, mid east/left,
+   base west/left, base/below, base east/right,
+   south west/below left, south/below, south east/below right,
+   text/left, 10/right, 130/above}
+   \draw[shift=(s.\anchor)] plot[mark=x] coordinates{(0,0)}
+     node[\placement] {\scriptsize\texttt{(s.\anchor)}};
+\end{tikzpicture}
+\end{codeexample}
+%
+\begin{codeexample}[width=8cm,preamble=\usetikzlibrary{ext.shapes.superellipse}]
+\begin{tikzpicture}[minimum width=1cm, minimum height=3cm]
+\foreach \xe/\ye[count=\i] in {.5/.5, 1/1, 2/2, 3/3, .5/5}
+  \node[draw, superellipse, superellipse x exponent=\xe, superellipse y exponent=\ye] at (1.5*\i,0) {};
+\end{tikzpicture}
+\end{codeexample}
+\end{shape}
+\endinput
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-shapes-superellipse.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-trans.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-trans.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual-en-pgf-trans.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -12,7 +12,7 @@
 \label{pgflibrary:transformations}
 
 \begin{purepgflibrary}{ext.transformations.mirror}
-  This library adds mirror transformations to PGF.
+  This library adds mirror transformations to \pgfname.
 \end{purepgflibrary}
 
 Two approaches to mirror transformation exist:
@@ -20,11 +20,12 @@
 \item Using the reflection matrix (see left column).
 
   This depends on |\pgfpointnormalised|\indexCommandO\pgfpointnormalised which involves
-  the sine\indexMathFunctionO{sin} and the cosine\indexMathFunctionO{cos} functions of PGFmath.
+  the sine\indexMathFunctionO{sin} and the cosine\indexMathFunctionO{cos} functions of \pgfname math.
 
 \item Using built-in transformations (see right column).
 
-  This depends on |\pgfmathanglebetween|\indexCommandO\pgfmathanglebetween which involves the arctangent (|atan2|\indexMathFunctionO{atan2}) function of PGFmath.
+  This depends on |\pgfmathanglebetweenpoints|\indexCommandO\pgfmathanglebetweenpoints which
+  involves the arctangent (|atan2|\indexMathFunctionO{atan2}) function of \pgfname math.
 \end{enumerate}
 
 Which one is better? I don't know.

Added: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual.bib
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual.bib	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual.bib	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,299 @@
+'
+ at Misc{NodeFam-Q,
+  author  = {Holene},
+  month   = apr,
+  title   = {Dependent node size in {TikZ}},
+  year    = {2017},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/107227/dependent-node-size-in-tikz/121054#121054:text/html},
+  url     = {https://tex.stackexchange.com/q/107227/16595},
+  urldate = {2022-09-24},
+}
+
+ at Misc{NodeFam-A,
+  author  = {Qrrbrbirlbel},
+  month   = jun,
+  title   = {Answer to \enquote{{Dependent} node size in {TikZ}}},
+  year    = {2013},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/107227/dependent-node-size-in-tikz/121054#121054:text/html},
+  url     = {https://tex.stackexchange.com/a/121054/16595},
+  urldate = {2022-09-24},
+}
+
+'
+ at Misc{TimerRect-Q,
+  author  = {CrazyArm},
+  month   = apr,
+  title   = {Is {It} {Possible} to {Combine} {TikZ} {Distance} and {Line}-{To} {Operations}?},
+  year    = {2013},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/106558/is-it-possible-to-combine-tikz-distance-and-line-to-operations/106571#106571:text/html},
+  url     = {https://tex.stackexchange.com/q/106558/16595},
+  urldate = {2022-09-24},
+}
+
+ at Misc{TimerRect-A,
+  author     = {Qrrbrbirlbel},
+  month      = apr,
+  title      = {Answer to \enquote{{Is} {It} {Possible} to {Combine} {TikZ} {Distance} and {Line}-{To} {Operations}?}},
+  year       = {2013},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/106558/is-it-possible-to-combine-tikz-distance-and-line-to-operations/106571#106571:text/html},
+  shorttitle = {Answer to "{Is} {It} {Possible} to {Combine} {TikZ} {Distance} and {Line}-{To} {Operations}?},
+  url        = {https://tex.stackexchange.com/a/106571/16595},
+  urldate    = {2022-09-24},
+}
+
+'
+ at Misc{TimerPara-Q,
+  author     = {cis},
+  month      = may,
+  title      = {{TikZ}: {How} to place a coordinate at parabola-path-position?},
+  year       = {2020},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/543251/tikz-how-to-place-a-coordinate-at-parabola-path-position/621012#621012:text/html},
+  shorttitle = {{TikZ}},
+  url        = {https://tex.stackexchange.com/q/543251/16595},
+  urldate    = {2022-09-24},
+}
+
+ at Misc{TimerPara-A,
+  author     = {Qrrbrbirlbel},
+  month      = nov,
+  title      = {Answer to \enquote{{TikZ}: {How} to place a coordinate at parabola-path-position?}},
+  year       = {2021},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/543251/tikz-how-to-place-a-coordinate-at-parabola-path-position/621012#621012:text/html},
+  shorttitle = {Answer to "{TikZ}},
+  url        = {https://tex.stackexchange.com/a/621012/16595},
+  urldate    = {2022-09-24},
+}
+
+'
+ at Misc{Pattern-Q,
+  author     = {knut},
+  month      = mar,
+  title      = {{TikZ}: {Define} pattern with reference to external picture},
+  year       = {2013},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/103980/tikz-define-pattern-with-reference-to-external-picture/107144#107144:text/html},
+  shorttitle = {{TikZ}},
+  url        = {https://tex.stackexchange.com/q/103980/16595},
+  urldate    = {2022-09-24},
+}
+
+ at Misc{Pattern-A,
+  author     = {Qrrbrbirlbel},
+  month      = apr,
+  title      = {Answer to \enquote{{TikZ}: {Define} pattern with reference to external picture}},
+  year       = {2013},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/103980/tikz-define-pattern-with-reference-to-external-picture/107144#107144:text/html},
+  shorttitle = {Answer to "{TikZ}},
+  url        = {https://tex.stackexchange.com/a/107144/16595},
+  urldate    = {2022-09-24},
+}
+
+'
+ at Misc{WeekNum-Q,
+  author  = {Fence},
+  month   = nov,
+  title   = {Add week day to calendar},
+  year    = {2019},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/517338/add-week-day-to-calendar/651888#651888:text/html},
+  url     = {https://tex.stackexchange.com/q/517338/16595},
+  urldate = {2022-09-24},
+}
+
+ at Misc{WeekNum-A,
+  author  = {Qrrbrbirlbel},
+  month   = jul,
+  title   = {Answer to \enquote{{Add} week day to calendar}},
+  year    = {2022},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/517338/add-week-day-to-calendar/651888#651888:text/html},
+  url     = {https://tex.stackexchange.com/a/651888/16595},
+  urldate = {2022-09-24},
+}
+
+'
+ at Misc{CalCond-Q,
+  author  = {healyp},
+  month   = oct,
+  title   = {{TikZ} calendar and conditional tests},
+  year    = {2013},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/140948/tikz-calendar-and-conditional-tests/141027#141027:text/html},
+  url     = {https://tex.stackexchange.com/q/140948/16595},
+  urldate = {2022-09-24},
+}
+
+ at Misc{CalCond-A,
+  author  = {Qrrbrbirlbel},
+  month   = oct,
+  title   = {Answer to \enquote{{TikZ} calendar and conditional tests}},
+  year    = {2013},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/140948/tikz-calendar-and-conditional-tests/141027#141027:text/html},
+  url     = {https://tex.stackexchange.com/a/141027/16595},
+  urldate = {2022-09-24},
+}
+
+'
+ at Misc{CalMath-Q,
+  author     = {cis},
+  month      = dec,
+  title      = {{TikZ} / calendar: {Set} the height of a monthly calendar},
+  year       = {2018},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/464589/tikz-calendar-set-the-height-of-a-monthly-calendar/653146#653146:text/html},
+  shorttitle = {{TikZ} / calendar},
+  url        = {https://tex.stackexchange.com/q/464589/16595},
+  urldate    = {2022-09-24},
+}
+
+ at Misc{CalMath-A,
+  author     = {Qrrbrbirlbel},
+  month      = aug,
+  title      = {Answer to \enquote{{TikZ} / calendar: {Set} the height of a monthly calendar}},
+  year       = {2022},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/464589/tikz-calendar-set-the-height-of-a-monthly-calendar/653146#653146:text/html},
+  shorttitle = {Answer to "{TikZ} / calendar},
+  url        = {https://tex.stackexchange.com/a/653146/16595},
+  urldate    = {2022-09-24},
+}
+
+'
+ at Misc{FullArc-Q,
+  author  = {Peter, Anthony},
+  month   = apr,
+  title   = {A rather difficult ring like picture to be drawn},
+  year    = {2017},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/144293/a-rather-difficult-ring-like-picture-to-be-drawn/144297#144297:text/html},
+  url     = {https://tex.stackexchange.com/q/144293/16595},
+  urldate = {2022-09-24},
+}
+
+ at Misc{FullArc-A,
+  author  = {Qrrbrbirlbel},
+  month   = nov,
+  title   = {Answer to "{A} rather difficult ring like picture to be drawn"},
+  year    = {2013},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/144293/a-rather-difficult-ring-like-picture-to-be-drawn/144297#144297:text/html},
+  url     = {https://tex.stackexchange.com/a/144297/16595},
+  urldate = {2022-09-24},
+}
+
+'
+ at Misc{NodeFam-Ellipse,
+  author  = {nkk},
+  month   = jun,
+  title   = {How to prevent tikz custom node fill from covering the text when using node-families library},
+  year    = {2019},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/494862/how-to-prevent-tikz-custom-node-fill-from-covering-the-text-when-using-node-fami:text/html},
+  url     = {https://tex.stackexchange.com/q/494862/16595},
+  urldate = {2022-09-24},
+}
+
+'
+ at Misc{ShapeHeat-Q,
+  author  = {boje},
+  month   = may,
+  title   = {Heatmap over country like {Google} {Map}},
+  year    = {2013},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/112929/heatmap-over-country-like-google-map/113004#113004:text/html},
+  url     = {https://tex.stackexchange.com/q/112929/16595},
+  urldate = {2022-09-24},
+}
+
+ at Misc{ShapeHeat-A,
+  author  = {Qrrbrbirlbel},
+  month   = may,
+  title   = {Answer to \enquote{{Heatmap} over country like {Google} {Map}}},
+  year    = {2013},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/112929/heatmap-over-country-like-google-map/113004#113004:text/html},
+  url     = {https://tex.stackexchange.com/a/113004/16595},
+  urldate = {2022-09-24},
+}
+
+'
+ at Misc{ShapeSplitCircle-Q,
+  author  = {Marco},
+  month   = apr,
+  title   = {{TikZ} - {Four} {Colored} {Circle} {Split}},
+  year    = {2017},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/121686/tikz-four-colored-circle-split/121767#121767:text/html},
+  url     = {https://tex.stackexchange.com/q/121686/16595},
+  urldate = {2022-09-24},
+}
+
+ at Misc{ShapeSplitCircle-A,
+  author  = {Qrrbrbirlbel},
+  month   = jun,
+  title   = {Answer to \enquote{{TikZ} - {Four} {Colored} {Circle} {Split}}},
+  year    = {2013},
+  file    = {Snapshot:https\://tex.stackexchange.com/questions/121686/tikz-four-colored-circle-split/121767#121767:text/html},
+  url     = {https://tex.stackexchange.com/a/121767/16595},
+  urldate = {2022-09-24},
+}
+
+'
+ at Online{ShapeSuperEllipse-Q,
+  author     = {somenxavier},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/649144/an-oval-surrounded-a-long-text-inside-in-tikz-equivalent-cover-background-of/654759#654759:text/html},
+  month      = aug,
+  title      = {An oval surrounded a *long text* inside in {TikZ} [equivalent cover background of {METAFUN}]},
+  titleaddon = {{TeX} - {LaTeX} Stack Exchange},
+  url        = {https://tex.stackexchange.com/q/649144/16595},
+  urldate    = {2022-09-24},
+  year       = {2022},
+}
+
+ at Online{ShapeSuperEllipse-A,
+  author     = {Qrrbrbirlbel},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/649144/an-oval-surrounded-a-long-text-inside-in-tikz-equivalent-cover-background-of/654759#654759:text/html},
+  month      = aug,
+  title      = {Answer to \enquote{An oval surrounded a *long text* inside in {TikZ} [equivalent cover background of {METAFUN}]}},
+  titleaddon = {{TeX} - {LaTeX} Stack Exchange},
+  url        = {https://tex.stackexchange.com/a/654759/16595},
+  urldate    = {2022-09-24},
+  year       = {2022},
+}
+
+'
+ at Online{ShapeCircleArrow-Q,
+  author     = {projetmbc},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/95221/tikz-circled-arrow/95263#95263:text/html},
+  month      = jan,
+  title      = {{TikZ} - \enquote{Circled} arrow},
+  titleaddon = {{TeX} - {LaTeX} Stack Exchange},
+  url        = {https://tex.stackexchange.com/q/95221/16595},
+  urldate    = {2022-09-24},
+  year       = {2013},
+}
+
+ at Online{ShapeCircleArrow-A,
+  author     = {Qrrbrbirlbel},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/95221/tikz-circled-arrow/95263#95263:text/html},
+  month      = jan,
+  title      = {Answer to \enquote{{TikZ} - \enquote{Circled} arrow}},
+  titleaddon = {{TeX} - {LaTeX} Stack Exchange},
+  url        = {https://tex.stackexchange.com/a/95263/16595},
+  urldate    = {2022-09-24},
+  year       = {2013},
+}
+
+'
+ at Online{ForeachUse-Q,
+  author     = {Bar, Foo},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/110962/how-to-use-declared-tikz-functions-in-foreach-condition/110996#110996:text/html},
+  month      = apr,
+  title      = {How to use declared {TikZ} functions in {\textbackslash}foreach condition?},
+  titleaddon = {{TeX} - {LaTeX} Stack Exchange},
+  url        = {https://tex.stackexchange.com/q/110962/16595},
+  urldate    = {2022-09-24},
+  year       = {2013},
+}
+
+ at Online{ForeachUse-A,
+  author     = {Qrrbrbirlbel},
+  file       = {Snapshot:https\://tex.stackexchange.com/questions/110962/how-to-use-declared-tikz-functions-in-foreach-condition/110996#110996:text/html},
+  month      = apr,
+  shorttitle = {Answer to "How to use declared {TikZ} functions in {\textbackslash}foreach condition?},
+  title      = {Answer to \enquote{How to use declared {TikZ} functions in {\textbackslash}foreach condition?}},
+  titleaddon = {{TeX} - {LaTeX} Stack Exchange},
+  url        = {https://tex.stackexchange.com/a/110996/16595},
+  urldate    = {2022-09-24},
+  year       = {2013},
+}
+
+ at Comment{jabref-meta: databaseType:bibtex;}


Property changes on: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual.bib
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/doc/latex/tikz-ext/tikz-ext-manual.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -19,7 +19,6 @@
 %\iftikzextmanualexternalize
   \tikzexternalize[
     prefix=tikz/,
-%    prefix=../../tikz-extensions-tikz/,
 %    mode=convert with system call,
     %mode=list and make,
     %mode=list only,export=true,% simply skips EVERY picture -> good for debugging the text.

Added: trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.circlearrow.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.circlearrow.code.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.circlearrow.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,66 @@
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+\pgfset{
+    circle arrow start angle/.initial=,
+    circle arrow end angle/.initial=,
+    circle arrow delta angle/.initial=,
+    circle arrow arrows/.initial=-,
+    circle arrow/@turn left/.style={/pgf/circle arrow arrows=->,/pgf/circle arrow delta angle=340},
+    circle arrow/@turn right/.style={/pgf/circle arrow arrows=<-,/pgf/circle arrow delta angle=340},
+    circle arrow turn left north/.style  = {/pgf/circle arrow/@turn left,  /pgf/circle arrow start angle=100},
+    circle arrow turn left east/.style   = {/pgf/circle arrow/@turn left,  /pgf/circle arrow start angle=10},
+    circle arrow turn left south/.style  = {/pgf/circle arrow/@turn left,  /pgf/circle arrow start angle=280},
+    circle arrow turn left west/.style   = {/pgf/circle arrow/@turn left,  /pgf/circle arrow start angle=190},
+    circle arrow turn right north/.style = {/pgf/circle arrow/@turn right, /pgf/circle arrow start angle=100},
+    circle arrow turn right east/.style  = {/pgf/circle arrow/@turn right, /pgf/circle arrow start angle=10},
+    circle arrow turn right south/.style = {/pgf/circle arrow/@turn right, /pgf/circle arrow start angle=280},
+    circle arrow turn right west/.style  = {/pgf/circle arrow/@turn right, /pgf/circle arrow start angle=190},
+}
+\pgfdeclareshape{circle arrow}{
+    \inheritsavedanchors[from=circle]
+    \inheritanchorborder[from=circle]
+    \inheritanchor[from=circle]{north}
+    \inheritanchor[from=circle]{north west}
+    \inheritanchor[from=circle]{north east}
+    \inheritanchor[from=circle]{center}
+    \inheritanchor[from=circle]{west}
+    \inheritanchor[from=circle]{east}
+    \inheritanchor[from=circle]{mid}
+    \inheritanchor[from=circle]{mid west}
+    \inheritanchor[from=circle]{mid east}
+    \inheritanchor[from=circle]{base}
+    \inheritanchor[from=circle]{base west}
+    \inheritanchor[from=circle]{base east}
+    \inheritanchor[from=circle]{south}
+    \inheritanchor[from=circle]{south west}
+    \inheritanchor[from=circle]{south east}
+    \backgroundpath{
+        \pgfkeysgetvalue{/pgf/circle arrow start angle}\pgf at sh@circlearrow at s
+        \pgfkeysgetvalue{/pgf/circle arrow end angle}\pgf at sh@circlearrow at e
+        \pgfkeysgetvalue{/pgf/circle arrow delta angle}\pgf at sh@circlearrow at d
+        \ifx\pgf at sh@circlearrow at s\pgfutil at empty%
+            \pgfmathsetmacro\pgf at sh@circlearrow at s{\pgf at sh@circlearrow at e-\pgf at sh@circlearrow at d}%
+        \else
+            \ifx\pgf at sh@circlearrow at e\pgfutil at empty%
+                \pgfmathsetmacro\pgf at sh@circlearrow at e{\pgf at sh@circlearrow at s+\pgf at sh@circlearrow at d}%
+            \fi%
+        \fi
+        \pgfutil at tempdima=\radius
+        \pgfmathsetlength{\pgf at xb}{\pgfkeysvalueof{/pgf/outer xsep}}%
+        \pgfmathsetlength{\pgf at yb}{\pgfkeysvalueof{/pgf/outer ysep}}%
+        \ifdim\pgf at xb<\pgf at yb
+          \advance\pgfutil at tempdima by-\pgf at yb
+        \else
+          \advance\pgfutil at tempdima by-\pgf at xb
+        \fi
+        \pgfpathmoveto{\pgfpointadd{\centerpoint}{\pgfpointpolar{\pgf at sh@circlearrow at s}{\pgfutil at tempdima}}}%
+        \pgfpatharc{\pgf at sh@circlearrow at s}{\pgf at sh@circlearrow at e}{\pgfutil at tempdima}%
+        \pgfkeysgetvalue{/pgf/circle arrow arrows}\pgf at temp
+        \expandafter\pgfsetarrows\expandafter{\pgf at temp}%
+    }
+}
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.circlearrow.code.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.circlecrosssplit.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.circlecrosssplit.code.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.circlecrosssplit.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,292 @@
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+\usepgflibrary{shapes.multipart}
+\let\pgfnodeparttrbox\pgfnodeparttwobox
+\let\pgfnodepartblbox\pgfnodepartthreebox
+\let\pgfnodepartbrbox\pgfnodepartfourbox
+\newif\ifpgfcirclecrosssplitcustomfill
+\pgfset{%
+  circle cross split part fill/.code=%
+    \def\pgf at lib@sh at ccs@list at fill{#1}%
+    \pgfcirclecrosssplitcustomfilltrue,%
+  circle cross split uses custom fill/.is if=pgfcirclecrosssplitcustomfill
+}
+\def\pgf at lib@sh at ccs@list at fill{none}%
+\pgfdeclareshape{circle cross split}{%
+  \nodeparts{text,two,three,four}%
+  \savedanchor\centerpoint{%
+    \pgfmathsetlength\pgf at xa{\pgfkeysvalueof{/pgf/inner xsep}}%
+    \pgfmathsetlength\pgf at ya{\pgfkeysvalueof{/pgf/inner ysep}}%
+    \pgf at x =\wd\pgfnodeparttextbox
+    \pgf at yb=\dp\pgfnodeparttextbox
+    \pgf at y=\dp\pgfnodeparttwobox
+    \ifdim\pgf at yb>\pgf at y
+      \pgf at y=\pgf at yb
+    \fi
+    \advance\pgf at x\pgf at xa
+    \advance\pgf at y-\pgf at ya
+    \advance\pgf at x.5\pgflinewidth
+    \advance\pgf at y-.5\pgflinewidth
+  }%
+  \savedanchor\twoanchor{%
+    \pgfmathsetlength\pgf at xa{\pgfkeysvalueof{/pgf/inner xsep}}%
+    \pgfmathsetlength\pgf at ya{\pgfkeysvalueof{/pgf/inner ysep}}%
+    \advance\pgf at x.5\pgflinewidth
+    \advance\pgf at x\pgf at xa
+    \advance\pgf at y.5\pgflinewidth
+    \advance\pgf at y\pgf at ya
+    \pgf at yb\dp\pgfnodeparttextbox
+    \pgf at yc\dp\pgfnodeparttwobox
+    \ifdim\pgf at yb>\pgf at yc
+      \pgf at yc\pgf at yb
+    \fi
+    \advance\pgf at y\pgf at yc
+  }%
+  \savedanchor\threeanchor{%
+    \pgfmathsetlength\pgf at ya{\pgfkeysvalueof{/pgf/inner ysep}}%
+    \pgf at x\wd\pgfnodeparttextbox
+    \pgf at yb\dp\pgfnodeparttextbox
+    \pgf at yc\dp\pgfnodeparttwobox
+    \ifdim\pgf at yb>\pgf at yc
+      \pgf at yc\pgf at yb
+    \fi
+    \advance\pgf at y-\pgf at yc
+    \advance\pgf at y-2\pgf at ya
+    \advance\pgf at y-\pgflinewidth
+    \pgf at yb\ht\pgfnodepartthreebox
+    \pgf at yc\ht\pgfnodepartfourbox
+    \ifdim\pgf at yb>\pgf at yc
+      \pgf at yc\pgf at yb
+    \fi
+    \advance\pgf at y-\pgf at yc
+    \advance\pgf at x-\wd\pgfnodepartthreebox
+  }%
+  \saveddimen\radius{%
+    % height (upper):
+    \pgf at y=\ht\pgfnodeparttextbox
+    \ifdim\pgf at y<\ht\pgfnodeparttwobox
+      \pgf at y=\ht\pgfnodeparttwobox
+    \fi
+    \ifdim\dp\pgfnodeparttextbox>\dp\pgfnodeparttwobox
+      \advance\pgf at y by\dp\pgfnodeparttextbox
+    \else
+      \advance\pgf at y by\dp\pgfnodeparttwobox
+    \fi
+    % height (lower):
+    \pgf at yb\ht\pgfnodepartthreebox
+    \ifdim\pgf at yb<\ht\pgfnodepartfourbox
+      \pgf at yb=\ht\pgfnodepartfourbox
+    \fi
+    \pgf at yc=\dp\pgfnodepartthreebox
+    \ifdim\pgf at yc<\dp\pgfnodepartfourbox
+      \advance\pgf at yb by\dp\pgfnodepartfourbox
+    \else
+      \advance\pgf at yb by\pgf at yc
+    \fi
+    \ifdim\pgf at yc>\pgf at y
+      \pgf at y=\pgf at yc
+    \fi
+    \pgfmathsetlength\pgf at ya{\pgfkeysvalueof{/pgf/inner ysep}}%
+    \advance\pgf at y2\pgf at ya
+    %
+    \pgf at x\wd\pgfnodeparttextbox
+    \pgf at xa\wd\pgfnodepartthreebox
+    \pgf at xb\wd\pgfnodeparttwobox
+    \pgf at xc\wd\pgfnodepartfourbox
+    \ifdim\pgf at xa>\pgf at x
+      \pgf at x\pgf at xa
+    \fi
+    \ifdim\pgf at xb>\pgf at x
+      \pgf at x\pgf at xb
+    \fi
+    \ifdim\pgf at xc>\pgf at x
+      \pgf at x\pgf at xc
+    \fi
+    \pgfmathsetlength\pgf at xa{\pgfkeysvalueof{/pgf/inner xsep}}%
+    \advance\pgf at x by 2\pgf at xa
+    \ifdim\pgf at y>\pgf at x
+      \pgf at x=\pgf at y
+    \fi
+    \advance\pgf at x by\pgflinewidth
+    %
+    \pgf at xa=\pgf at x
+    \pgf at ya=\pgf at y
+    % from circle:
+    \pgf at process{\pgfpointnormalised{}}%
+    \ifdim\pgf at x>\pgf at y%
+        \c at pgf@counta=\pgf at x%
+        \ifnum\c at pgf@counta=0\relax%
+        \else%
+          \divide\c at pgf@counta by 255\relax%
+          \pgf at xa=16\pgf at xa\relax%
+          \divide\pgf at xa by\c at pgf@counta%
+          \pgf at xa=16\pgf at xa\relax%
+        \fi%
+      \else%
+        \c at pgf@counta=\pgf at y%
+        \ifnum\c at pgf@counta=0\relax%
+        \else%
+          \divide\c at pgf@counta by 255\relax%
+          \pgf at ya=16\pgf at ya\relax%
+          \divide\pgf at ya by\c at pgf@counta%
+          \pgf at xa=16\pgf at ya\relax%
+        \fi%
+    \fi%
+    \pgf at x=\pgf at xa%
+    %
+    \pgfmathsetlength{\pgf at xb}{\pgfkeysvalueof{/pgf/minimum width}}%
+    \pgfmathsetlength{\pgf at yb}{\pgfkeysvalueof{/pgf/minimum height}}%
+    \ifdim\pgf at x<.5\pgf at xb
+        \pgf at x=.5\pgf at xb
+    \fi
+    \ifdim\pgf at x<.5\pgf at yb
+        \pgf at x=.5\pgf at yb
+    \fi
+    %
+    \pgfmathsetlength{\pgf at xb}{\pgfkeysvalueof{/pgf/outer xsep}}%
+    \pgfmathsetlength{\pgf at yb}{\pgfkeysvalueof{/pgf/outer ysep}}%
+    \ifdim\pgf at xb<\pgf at yb
+      \advance\pgf at x\pgf at yb
+    \else
+      \advance\pgf at x\pgf at xb
+    \fi
+  }%
+  \inheritanchorborder[from=circle]%
+  \inheritanchor[from=circle]{north}%
+  \inheritanchor[from=circle]{north west}%
+  \inheritanchor[from=circle]{north east}%
+  \inheritanchor[from=circle]{center}%
+  \inheritanchor[from=circle]{west}%
+  \inheritanchor[from=circle]{east}%
+  \inheritanchor[from=circle]{mid}%
+  \inheritanchor[from=circle]{mid west}%
+  \inheritanchor[from=circle]{mid east}%
+  \inheritanchor[from=circle]{base}%
+  \inheritanchor[from=circle]{base west}%
+  \inheritanchor[from=circle]{base east}%
+  \inheritanchor[from=circle]{south}%
+  \inheritanchor[from=circle]{south west}%
+  \inheritanchor[from=circle]{south east}%
+  \anchor{two}{\twoanchor}%
+  \anchor{three}{\threeanchor}%
+  \anchor{four}{
+    \threeanchor
+    \pgf at ya=\pgf at y
+    \twoanchor
+    \pgf at y=\pgf at ya
+  }%
+  \anchor{lower base}{%
+    \threeanchor
+    \pgf at ya=\pgf at y
+    \centerpoint
+    \pgf at y=\pgf at ya
+  }
+  \anchor{lower base west}{%
+    \threeanchor
+    \pgf at ya=\pgf at y
+    \centerpoint
+    \pgf at y=\pgf at ya
+    \advance\pgf at x by-\radius
+  }
+  \anchor{lower base east}{%
+    \threeanchor
+    \pgf at ya=\pgf at y
+    \centerpoint
+    \pgf at y=\pgf at ya
+    \advance\pgf at x by\radius
+  }
+  \anchor{lower mid}{%
+    \threeanchor
+    \pgf at ya=\pgf at y
+    \centerpoint
+    \pgf at y=\pgf at ya
+    \pgfmathsetlength\pgf at ya{+.5ex}%
+    \advance\pgf at y by\pgf at ya
+  }
+  \anchor{lower mid west}{%
+    \threeanchor
+    \pgf at ya=\pgf at y
+    \centerpoint
+    \pgf at y=\pgf at ya
+    \advance\pgf at x by-\radius
+    \pgfmathsetlength\pgf at ya{+.5ex}%
+    \advance\pgf at y by\pgf at ya
+  }
+  \anchor{lower mid east}{%
+    \threeanchor
+    \pgf at ya=\pgf at y
+    \centerpoint
+    \pgf at y=\pgf at ya
+    \advance\pgf at x by\radius
+    \pgfmathsetlength\pgf at ya{+.5ex}%
+    \advance\pgf at y by\pgf at ya
+  }
+  \inheritbackgroundpath[from=circle]
+  \beforebackgroundpath{%
+    \pgfutil at tempdima=\radius
+    \pgfmathsetlength{\pgf at xb}{\pgfkeysvalueof{/pgf/outer xsep}}%
+    \pgfmathsetlength{\pgf at yb}{\pgfkeysvalueof{/pgf/outer ysep}}%
+    \ifdim\pgf at xb<\pgf at yb
+      \advance\pgfutil at tempdima by-\pgf at yb
+    \else
+      \advance\pgfutil at tempdima by-\pgf at xb
+    \fi
+    \advance\pgfutil at tempdima by-.5\pgflinewidth%
+    \pgfsetshortenstart{0pt}%
+    \pgfsetshortenend{0pt}%
+    \pgfsetarrows{-}%
+    \pgfpathmoveto
+      {\pgfpointadd{\centerpoint}{\pgfqpoint{-\pgfutil at tempdima}{0pt}}}%
+    \pgfpathlineto
+      {\pgfpointadd{\centerpoint}{\pgfqpoint{\pgfutil at tempdima}{0pt}}}%
+    \pgfpathmoveto
+      {\pgfpointadd{\centerpoint}{\pgfqpoint{0pt}{-\pgfutil at tempdima}}}%
+    \pgfpathlineto
+      {\pgfpointadd{\centerpoint}{\pgfqpoint{0pt}{\pgfutil at tempdima}}}%
+    \pgfusepathqstroke
+  }%
+  \behindbackgroundpath{%
+    \pgfutil at tempdima=\radius
+    \pgfmathsetlength{\pgf at xb}{\pgfkeysvalueof{/pgf/outer xsep}}%  
+    \pgfmathsetlength{\pgf at yb}{\pgfkeysvalueof{/pgf/outer ysep}}%  
+    \ifdim\pgf at xb<\pgf at yb
+      \advance\pgfutil at tempdima by-\pgf at yb
+    \else
+      \advance\pgfutil at tempdima by-\pgf at xb
+    \fi
+    \advance\pgfutil at tempdima by-.5\pgflinewidth%
+    \ifpgfcirclecrosssplitcustomfill%
+      \pgf at lib@sh at rs@process at list{\pgf at lib@sh at ccs@list at fill}{4}%
+      {%
+        \pgfmathloop
+           \ifnum\pgfmathcounter>4%
+           \else%
+             \pgf at lib@sh at getalpha\pgf at lib@sh at rs@number{\pgfmathcounter}%
+              \edef\pgf at tempa
+                {\csname pgf at lib@sh at rs@\pgf at lib@sh at rs@number @item\endcsname}%
+              \ifx\pgf at tempa\pgf at lib@sh at rs@nonetext\else
+                \pgfsetfillcolor{\pgf at tempa}%
+                \ifcase\pgfmathcounter\or
+                  \def\pgf at lib@sh at ccs@angle{90}\or
+                  \def\pgf at lib@sh at ccs@angle{0}\or
+                  \def\pgf at lib@sh at ccs@angle{180}\else
+                  \def\pgf at lib@sh at ccs@angle{270}%
+                \fi
+                \pgfpathmoveto{\centerpoint}%
+                \pgfpathlineto{\pgfpointadd{\centerpoint}
+                  {\pgfqpointpolar{\pgf at lib@sh at ccs@angle}{\pgfutil at tempdima}}}%
+                \pgfpatharc{+\pgf at lib@sh at ccs@angle}{\pgf at lib@sh at ccs@angle+90}
+                  {+\pgfutil at tempdima}%
+                \pgfpathclose
+                \pgfusepathqfill
+              \fi
+        \repeatpgfmathloop
+      }%
+    \fi
+  }%
+}
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.circlecrosssplit.code.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.heatmark.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.heatmark.code.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.heatmark.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,181 @@
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+\pgfset{
+    heatmark arc width/.initial=+4pt,
+    heatmark arc sep/.initial=+1pt,
+    heatmark arc rings/.initial=3,
+    heatmark arcs/.initial=3,
+    heatmark arc sep angle/.initial=20,
+    heatmark inner opacity/.initial=.8,
+    heatmark outer opacity/.initial=.2
+}
+\pgfdeclareshape{heatmark}
+%
+% Draws a circle around the text
+%
+{
+  \savedanchor\centerpoint{%
+    \pgf at x=.5\wd\pgfnodeparttextbox%
+    \pgf at y=.5\ht\pgfnodeparttextbox%
+    \advance\pgf at y by-.5\dp\pgfnodeparttextbox%
+  }
+
+  \saveddimen\innerradius{%
+    % 
+    % Caculate ``height radius''
+    % 
+    \pgf at ya=.5\ht\pgfnodeparttextbox%
+    \advance\pgf at ya by.5\dp\pgfnodeparttextbox%
+    \pgfmathsetlength\pgf at yb{\pgfkeysvalueof{/pgf/inner ysep}}%
+    \advance\pgf at ya by\pgf at yb%
+    % 
+    % Caculate ``width radius''
+    % 
+    \pgf at xa=.5\wd\pgfnodeparttextbox%
+    \pgfmathsetlength\pgf at xb{\pgfkeysvalueof{/pgf/inner xsep}}%
+    \advance\pgf at xa by\pgf at xb%
+    % 
+    % Calculate length of radius vector:
+    % 
+    \pgf at process{\pgfpointnormalised{\pgfqpoint{\pgf at xa}{\pgf at ya}}}%
+    \ifdim\pgf at x>\pgf at y%
+        \c at pgf@counta=\pgf at x%
+        \ifnum\c at pgf@counta=0\relax%
+        \else%
+          \divide\c at pgf@counta by 255\relax%
+          \pgf at xa=16\pgf at xa\relax%
+          \divide\pgf at xa by\c at pgf@counta%
+          \pgf at xa=16\pgf at xa\relax%
+        \fi%
+      \else%
+        \c at pgf@counta=\pgf at y%
+        \ifnum\c at pgf@counta=0\relax%
+        \else%
+          \divide\c at pgf@counta by 255\relax%
+          \pgf at ya=16\pgf at ya\relax%
+          \divide\pgf at ya by\c at pgf@counta%
+          \pgf at xa=16\pgf at ya\relax%
+        \fi%
+    \fi%
+    \pgf at x=\pgf at xa%
+    % 
+    % If necessary, adjust radius so that the size requirements are
+    % met: 
+    % 
+    \pgfmathsetlength{\pgf at xb}{\pgfkeysvalueof{/pgf/minimum width}}%  
+    \pgfmathsetlength{\pgf at yb}{\pgfkeysvalueof{/pgf/minimum height}}%  
+    \ifdim\pgf at x<.5\pgf at xb%
+        \pgf at x=.5\pgf at xb%
+    \fi%
+    \ifdim\pgf at x<.5\pgf at yb%
+        \pgf at x=.5\pgf at yb%
+    \fi%
+  }%
+
+  \saveddimen\radius{%
+    \pgfmathsetlength{\pgf at xb}{\pgfkeysvalueof{/pgf/outer xsep}}%  
+    \pgfmathsetlength{\pgf at yb}{\pgfkeysvalueof{/pgf/outer ysep}}%  
+    \ifdim\pgf at xb<\pgf at yb%
+      \advance\pgf at x by\pgf at yb%
+    \else%
+      \advance\pgf at x by\pgf at xb%
+    \fi%
+    \pgfmathsetcount\c at pgf@counta{\pgfkeysvalueof{/pgf/heatmark arc rings}}%
+    \pgfmathsetlength\pgf at xa{\pgfkeysvalueof{/pgf/heatmark arc width}+\pgfkeysvalueof{/pgf/heatmark arc sep}}%
+    \multiply\pgf at xa\c at pgf@counta
+    \advance\pgf at x\pgf at xa
+  }%
+  %
+  % Anchors
+  % 
+  \inheritanchor[from=circle]{north}
+  \inheritanchor[from=circle]{north west}
+  \inheritanchor[from=circle]{north east}
+  \inheritanchor[from=circle]{center}
+  \inheritanchor[from=circle]{west}
+  \inheritanchor[from=circle]{east}
+  \inheritanchor[from=circle]{mid}
+  \inheritanchor[from=circle]{mid west}
+  \inheritanchor[from=circle]{mid east}
+  \inheritanchor[from=circle]{base}
+  \inheritanchor[from=circle]{base west}
+  \inheritanchor[from=circle]{base east}
+  \inheritanchor[from=circle]{south}
+  \inheritanchor[from=circle]{south west}
+  \inheritanchor[from=circle]{south east}
+  \inheritanchorborder[from=circle]
+  %
+  % Background path
+  %
+  \backgroundpath{
+    \pgfutil at tempdima=\innerradius%
+    \pgfpathcircle{\centerpoint}{\pgfutil at tempdima}%
+  }%
+  %
+  %
+  %
+  \behindbackgroundpath{%
+    \pgfmathsetcount\c at pgf@counta{\pgfkeysvalueof{/pgf/heatmark arc rings}}%     heat arc rings
+    \pgfmathsetcount\c at pgf@countb{\pgfkeysvalueof{/pgf/heatmark arcs}}%          heat arcs
+    \pgfmathsetlength\pgf at xa{\pgfkeysvalueof{/pgf/heatmark arc width}}%          heat arc width
+    \pgfmathsetlength\pgf at xb{\pgfkeysvalueof{/pgf/heatmark arc sep}}%            heat arc sep
+    %\pgfmathsetmacro\pgf at tempa{\pgfkeysvalueof{/pgf/heat arc sep angle}}%    heat arc sep angle
+    \pgfmathsetmacro\pgf at tempb{360/\c at pgf@countb-(\pgfkeysvalueof{/pgf/heatmark arc sep angle})}% heat arc
+    \pgfmathsetmacro\pgf at tempc{\pgfkeysvalueof{/pgf/shape border rotate}}%           heat rotate
+    %
+    \pgfmathsetmacro\pgf at tempd{\pgfkeysvalueof{/pgf/heatmark inner opacity}}%     heat opacity high
+    \ifnum\c at pgf@counta=1
+      \def\tikzext at heatmark@opacity at seps{0}%
+    \else
+      \pgfmathsetmacro\tikzext at heatmark@opacity at seps
+      {(\pgf at tempd-(\pgfkeysvalueof{/pgf/heatmark outer opacity}))%
+         /(\c at pgf@counta-1)}%
+    \fi
+    \pgfutil at tempcnta=0
+    \pgfutil at tempcntb=0
+    \pgf at ya\innerradius\relax
+    \pgftransformshift{\centerpoint}
+    \pgfutil at loop % ring loop
+      \advance\pgf at ya\pgf at xb % current radius + heat arc sep
+      \pgf at yb\pgf at ya         
+      \advance\pgf at yb\pgf at xa % current radius + heat arc sep + heat arc width
+      \pgfsetfillopacity{\pgf at tempd}%
+      \begingroup
+        \edef\pgf at marshal{\noexpand\pgfset{heatmark ring \the\numexpr\pgfutil at tempcnta+1\relax/.try}}%
+        \pgf at marshal
+        \csname tikz at options\endcsname
+        {%
+        \pgfutil at loop
+          \pgfmathsetmacro\tikzext at heatmark@start at angle{\pgf at tempc-.5*\pgf at tempb+\pgfutil at tempcntb*(360/\c at pgf@countb)}%
+          % path
+          \begingroup
+            \edef\pgf at marshal{\noexpand\pgfset{heatmark arc \the\numexpr\pgfutil at tempcntb+1\relax/.try}%
+                              \noexpand\pgfset{heatmark ring \the\numexpr\pgfutil at tempcnta+1\relax\space arc \the\numexpr\pgfutil at tempcntb+1\relax/.try}}%
+            \pgf at marshal
+            \csname tikz at options\endcsname
+            \pgfpathmoveto{\pgfpointpolar{\tikzext at heatmark@start at angle}{\pgf at ya}}%
+            \pgfpatharc{\tikzext at heatmark@start at angle}{\tikzext at heatmark@start at angle+\pgf at tempb}{\pgf at ya}%
+            \pgfpathlineto{\pgfpointpolar{\tikzext at heatmark@start at angle+\pgf at tempb}{\pgf at yb}}%
+            \pgfpatharc{\tikzext at heatmark@start at angle+\pgf at tempb}{\tikzext at heatmark@start at angle}{\pgf at yb}%
+            \pgfpathclose
+            \pgfusepathqfill
+          \endgroup
+          \advance\pgfutil at tempcntb\@ne
+          \ifnum\pgfutil at tempcntb<\c at pgf@countb
+        \pgfutil at repeat
+        }%
+      \endgroup
+      \advance\pgfutil at tempcnta\@ne
+      \ifnum\pgfutil at tempcnta<\c at pgf@counta
+        \pgf at ya\pgf at yb
+        \pgfmathsetmacro\pgf at tempd{\pgf at tempd-\tikzext at heatmark@opacity at seps}%
+    \pgfutil at repeat
+    \pgftransformshift{\pgfqpointscale{-1}{\centerpoint}}%
+  }
+}
+\endinput


Property changes on: trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.heatmark.code.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.rectangleroundedcorners.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.rectangleroundedcorners.code.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.rectangleroundedcorners.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,318 @@
+\pgfset{
+  rectangle with rounded corners north west radius/.initial=.5\pgflinewidth,
+  rectangle with rounded corners north east radius/.initial=.5\pgflinewidth,
+  rectangle with rounded corners south west radius/.initial=.5\pgflinewidth,
+  rectangle with rounded corners south east radius/.initial=.5\pgflinewidth,
+  rectangle with rounded corners radius/.style={
+    /pgf/rectangle with rounded corners north west radius={#1},
+    /pgf/rectangle with rounded corners north east radius={#1},
+    /pgf/rectangle with rounded corners south west radius={#1},
+    /pgf/rectangle with rounded corners south east radius={#1}}
+}%
+\pgfdeclareshape{rectangle with rounded corners}{%
+  \savedmacro\rectanglewithroundedcornersparameter{%
+    %
+    % width = max(text width + 2 * inner xseps, minimum width) + 2 * outer xseps
+    \pgf at x=\wd\pgfnodeparttextbox
+    \pgfmathsetlength\pgf at xc{\pgfkeysvalueof{/pgf/inner xsep}}%
+    \advance\pgf at x by 2\pgf at xc
+    \pgfmathsetlength\pgf at xc{\pgfkeysvalueof{/pgf/minimum width}}%
+    \ifdim\pgf at x<\pgf at xc
+      \pgf at x=\pgf at xc
+    \fi
+    %
+    \pgfmathsetlength\pgf at xc{\pgfkeysvalueof{/pgf/outer xsep}}%
+    \edef\outerxsep{\the\pgf at xc}%
+    \addtosavedmacro\outerxsep
+    \advance\pgf at x by 2\pgf at xc
+    \pgf at x=.5\pgf at x
+    \edef\halfwidth{\the\pgf at x}%
+    \addtosavedmacro\halfwidth
+    %
+    % height = max(text height + text depth + 2 * inner yseps, minimum height) + 2 * outer yseps
+    \pgf at y=\ht\pgfnodeparttextbox
+    \advance\pgf at y by \dp\pgfnodeparttextbox
+    \pgfmathsetlength\pgf at yc{\pgfkeysvalueof{/pgf/inner ysep}}%
+    \advance\pgf at y by 2\pgf at yc
+    \pgfmathsetlength\pgf at yc{\pgfkeysvalueof{/pgf/minimum height}}%
+    \ifdim\pgf at y<\pgf at yc
+      \pgf at y=\pgf at yc
+    \fi
+    %
+    \pgfmathsetlength\pgf at yc{\pgfkeysvalueof{/pgf/outer ysep}}%
+    \edef\outerysep{\the\pgf at yc}%
+    \addtosavedmacro\outerysep
+    \advance\pgf at y by 2\pgf at yc
+    \pgf at y=.5\pgf at y
+    \edef\halfheight{\the\pgf at y}%
+    \addtosavedmacro\halfheight
+    %
+    % \centerpoint
+    \pgf at x=.5\wd\pgfnodeparttextbox
+    \pgf at y=.5\ht\pgfnodeparttextbox
+    \advance\pgf at y by -.5\dp\pgfnodeparttextbox
+    \pgfextract at process\centerpoint{}%
+    \addtosavedmacro\centerpoint
+    %
+    \pgfmathsetlengthmacro\northwestradius{\pgfkeysvalueof{/pgf/rectangle with rounded corners north west radius}}
+    \pgfmathsetlengthmacro\northeastradius{\pgfkeysvalueof{/pgf/rectangle with rounded corners north east radius}}
+    \pgfmathsetlengthmacro\southwestradius{\pgfkeysvalueof{/pgf/rectangle with rounded corners south west radius}}
+    \pgfmathsetlengthmacro\southeastradius{\pgfkeysvalueof{/pgf/rectangle with rounded corners south east radius}}
+    \addtosavedmacro\northwestradius
+    \addtosavedmacro\northeastradius
+    \addtosavedmacro\southwestradius
+    \addtosavedmacro\southeastradius
+  }%
+  \anchor{center}{%
+    \rectanglewithroundedcornersparameter
+    \centerpoint
+  }
+  \anchor{west}{%
+    \rectanglewithroundedcornersparameter
+    \centerpoint
+    \advance\pgf at x by -\halfwidth
+  }
+  \anchor{east}{%
+    \rectanglewithroundedcornersparameter
+    \centerpoint
+    \advance\pgf at x by \halfwidth
+  }
+  \anchor{north}{%
+    \rectanglewithroundedcornersparameter
+    \centerpoint
+    \advance\pgf at y by \halfheight
+  }
+  \anchor{south}{%
+    \rectanglewithroundedcornersparameter
+    \centerpoint
+    \advance\pgf at y by -\halfheight
+  }
+  \anchor{mid}{%
+    \rectanglewithroundedcornersparameter
+    \centerpoint
+    \pgfmathsetlength\pgf at y{+.5ex}%
+  }
+  \anchor{mid west}{%
+    \csname pgf at anchor@rectangle with rounded corners at west\endcsname
+    \pgfmathsetlength\pgf at y{+.5ex}%
+  }
+  \anchor{mid east}{%
+    \csname pgf at anchor@rectangle with rounded corners at east\endcsname
+    \pgfmathsetlength\pgf at y{+.5ex}%
+  }
+  \anchor{base}{%
+    \rectanglewithroundedcornersparameter
+    \centerpoint
+    \pgf at y=0pt
+  }
+  \anchor{base west}{%
+    \csname pgf at anchor@rectangle with rounded corners at west\endcsname
+    \pgf at y=0pt
+  }
+  \anchor{base east}{%
+    \csname pgf at anchor@rectangle with rounded corners at east\endcsname
+    \pgf at y=0pt
+  }
+  \anchor{north west}{%
+    \csname pgf at anchor@rectangle with rounded corners at north west center\endcsname
+    \ifdim\northwestradius=0pt
+    \else
+      \pgf at process{\pgfpointadd{}{\pgfpointpolar{135}{\northwestradius+\outerxsep and \northwestradius+\outerysep}}}%
+    \fi
+  }
+  \anchor{north west center}{%
+    \rectanglewithroundedcornersparameter
+    \pgf at x=-\halfwidth
+    \pgf at y=\halfheight
+    \ifdim\northwestradius=0pt
+    \else
+      \advance\pgf at x by \outerxsep
+      \advance\pgf at x by \northwestradius
+      \advance\pgf at y by -\outerysep
+      \advance\pgf at y by -\northwestradius
+    \fi
+    \pgf at process{\pgfpointadd{}{\centerpoint}}%
+  }
+  \anchor{north east}{%
+    \csname pgf at anchor@rectangle with rounded corners at north east center\endcsname
+    \ifdim\northeastradius=0pt
+    \else
+      \pgf at process{\pgfpointadd{}{\pgfpointpolar{45}{\northeastradius+\outerxsep and \northeastradius+\outerysep}}}%
+    \fi
+  }
+  \anchor{north east center}{%
+    \rectanglewithroundedcornersparameter
+    \pgf at x=\halfwidth
+    \pgf at y=\halfheight
+    \ifdim\northeastradius=0pt
+    \else
+      \advance\pgf at x by -\outerxsep
+      \advance\pgf at x by -\northeastradius
+      \advance\pgf at y by -\outerysep
+      \advance\pgf at y by -\northeastradius
+    \fi
+    \pgf at process{\pgfpointadd{}{\centerpoint}}%
+  }
+  \anchor{south west}{%
+    \csname pgf at anchor@rectangle with rounded corners at south west center\endcsname
+    \ifdim\southwestradius=0pt
+    \else
+      \pgf at process{\pgfpointadd{}{\pgfpointpolar{225}{\southwestradius+\outerxsep and \southwestradius+\outerysep}}}%
+    \fi
+  }
+  \anchor{south west center}{%
+    \rectanglewithroundedcornersparameter
+    \pgf at x=-\halfwidth
+    \pgf at y=-\halfheight
+    \ifdim\southwestradius=0pt
+    \else
+      \advance\pgf at x by \outerxsep
+      \advance\pgf at x by \southwestradius
+      \advance\pgf at y by \outerysep
+      \advance\pgf at y by \southwestradius
+    \fi
+    \pgf at process{\pgfpointadd{}{\centerpoint}}%
+  }
+  \anchor{south east}{%
+    \csname pgf at anchor@rectangle with rounded corners at south east center\endcsname
+    \ifdim\southeastradius=0pt
+    \else
+      \pgf at process{\pgfpointadd{}{\pgfpointpolar{315}{\southeastradius+\outerxsep and \southeastradius+\outerysep}}}%
+    \fi
+  }
+  \anchor{south east center}{%
+    \rectanglewithroundedcornersparameter
+    \pgf at x=\halfwidth
+    \pgf at y=-\halfheight
+    \ifdim\southeastradius=0pt
+    \else
+      \advance\pgf at x by -\outerxsep
+      \advance\pgf at x by -\southeastradius
+      \advance\pgf at y by \outerysep
+      \advance\pgf at y by \southeastradius
+    \fi
+    \pgf at process{\pgfpointadd{}{\centerpoint}}%
+  }
+  \anchor{below north west}{%
+    \csname pgf at anchor@rectangle with rounded corners at north west center\endcsname
+    \advance\pgf at x by -\northwestradius
+    \advance\pgf at x by -\outerxsep
+  }
+  \anchor{above south west}{%
+    \csname pgf at anchor@rectangle with rounded corners at south west center\endcsname
+    \advance\pgf at x by -\southwestradius
+    \advance\pgf at x by -\outerxsep
+  }
+  \anchor{below north east}{%
+    \csname pgf at anchor@rectangle with rounded corners at north east center\endcsname
+    \advance\pgf at x by \northeastradius
+    \advance\pgf at x by \outerxsep
+  }
+  \anchor{above south east}{%
+    \csname pgf at anchor@rectangle with rounded corners at south east center\endcsname
+    \advance\pgf at x by \southeastradius
+    \advance\pgf at x by \outerxsep
+  }
+  \anchor{right north west}{%
+    \csname pgf at anchor@rectangle with rounded corners at north west center\endcsname
+    \advance\pgf at y by \northwestradius
+    \advance\pgf at y by \outerysep
+  }
+  \anchor{right south west}{%
+    \csname pgf at anchor@rectangle with rounded corners at south west center\endcsname
+    \advance\pgf at y by -\southwestradius
+    \advance\pgf at y by -\outerysep
+  }
+  \anchor{left north east}{%
+    \csname pgf at anchor@rectangle with rounded corners at north east center\endcsname
+    \advance\pgf at y by \northeastradius
+    \advance\pgf at y by \outerysep
+  }
+  \anchor{left south east}{%
+    \csname pgf at anchor@rectangle with rounded corners at south east center\endcsname
+    \advance\pgf at y by -\southeastradius
+    \advance\pgf at y by -\outerysep
+  }
+  \backgroundpath{%
+    \rectanglewithroundedcornersparameter
+    %
+    \pgf at xa=\halfwidth
+    \advance\pgf at xa by -\outerxsep
+    \edef\HalfWidth{\the\pgf at xa}%
+    %
+    \pgf at ya=\halfheight
+    \advance\pgf at ya by -\outerysep
+    \edef\HalfHeight{\the\pgf at ya}%
+    %
+    \pgftransformshift{\centerpoint}%
+    %
+    \pgfpathmoveto{\pgfqpoint{\HalfWidth}{0pt}}%
+    \pgfpathlineto{\pgfpoint {+\HalfWidth}{\HalfHeight-\northeastradius}}%
+    \pgfpatharc{0}{90}{\northeastradius}%
+    \pgfpathlineto{\pgfpoint{-\HalfWidth+\northwestradius}{+\HalfHeight}}
+    \pgfpatharc{90}{180}{\northwestradius}%
+    \pgfpathlineto{\pgfpoint{+-\HalfWidth}{-\HalfHeight+\southwestradius}}%
+    \pgfpatharc{180}{270}{\southwestradius}%
+    \pgfpathlineto{\pgfpoint{\HalfWidth-\southeastradius}{+-\HalfHeight}}%
+    \pgfpatharc{270}{360}{\southeastradius}%
+    \pgfpathclose
+    \pgftransformshift{\pgfqpointscale{-1}{\centerpoint}}%
+  }%
+  \anchorborder{%
+    \pgfextract at process\externalpoint{}%
+    \ifdim\pgf at x=0pt
+      \ifdim\pgf at y<0pt
+        \csname pgf at anchor@rectangle with rounded corners at south\endcsname
+      \else
+        \csname pgf at anchor@rectangle with rounded corners at north\endcsname
+      \fi
+    \else
+      \ifdim\pgf at y=0pt
+        \ifdim\pgf at x<0pt
+          \csname pgf at anchor@rectangle with rounded corners at west\endcsname
+        \else
+          \csname pgf at anchor@rectangle with rounded corners at east\endcsname
+        \fi
+      \else
+        \rectanglewithroundedcornersparameter
+        \pgfmathanglebetweenpoints{\pgfpointorigin}{\externalpoint}%
+        \let\angle\pgfmathresult
+        \pgf at xa=\pgf at x
+        \pgf at ya=\pgf at y
+        \pgfextract at process\externalPoint{\pgfpointadd{}{\centerpoint}}%
+        \ifdim\pgf at xa<0pt
+          \ifdim\pgf at ya<0pt
+            % south west
+            \pgf at sh@rwrc at anchorborder{above south west}{right south west}{south west}{180}{270}{\southwestradius}%
+          \else
+            % north west
+            \pgf at sh@rwrc at anchorborder{right north west}{below north west}{north west}{90}{180}{\northwestradius}%
+          \fi
+        \else
+          \ifdim\pgf at ya<0pt
+            % south east
+            \pgf at sh@rwrc at anchorborder{left south east}{above south east}{south east}{270}{360}{\southeastradius}%
+          \else
+            % north east
+            \pgf at sh@rwrc at anchorborder{below north east}{left north east}{north east}{0}{90}{\northeastradius}%
+          \fi
+        \fi
+      \fi
+    \fi
+  }
+}
+\def\pgf at sh@rwrc at anchorborder#1#2#3#4#5#6{%
+  \pgfmathanglebetweenpoints{\centerpoint}{\csname pgf at anchor@rectangle with rounded corners@#1\endcsname}%
+  \let\angleA\pgfmathresult
+  \pgfmathanglebetweenpoints{\centerpoint}{\csname pgf at anchor@rectangle with rounded corners@#2\endcsname}%
+  \let\angleB\pgfmathresult
+  \if\ifdim\angle pt>\angleA pt 0\else1\fi\ifdim\angle pt<\angleB pt 0\else 2\fi
+    \pgfmathpointintersectionoflineandarc{\externalPoint}{\centerpoint}
+      {\csname pgf at anchor@rectangle with rounded corners@#3 center\endcsname}
+      {#4}{#5}{#6+\outerxsep and #6+\outerysep}%
+  \else
+    \pgf at process{\pgfpointadd{\pgfpointborderrectangle{\externalpoint}{\pgfqpoint{\halfwidth}{\halfheight}}}{\centerpoint}}%
+  \fi
+}
+
+\endinput


Property changes on: trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.rectangleroundedcorners.code.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.superellipse.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.superellipse.code.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.superellipse.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,198 @@
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+\usepgflibrary{shapes.geometric,intersections}
+\pgfset{
+  superellipse x exponent/.initial=2.5,
+  superellipse y exponent/.initial=2.5,
+  superellipse step/.initial=4,
+  superellipse exponent/.style={/pgf/superellipse x exponent={#1},/pgf/superellipse y exponent={#1}}}
+
+% Evaluates the x-value of a superellipse around the center
+% #1 = t (0≤t≤90)
+% #2 = 2/m (x-exp)
+% #3 = a (x-rad)
+\pgfmathdeclarefunction{superellipsex}{3}{%
+  \pgfmathcos@{#1}%
+  \pgfmathpow@{\pgfmathresult}{#2}%
+  \pgfmathmultiply@{\pgfmathresult}{#3}}
+
+% Evaluates the y-value of a superellipse around the center
+% #1 = t (0≤t≤90)
+% #2 = 2/n (y-exp)
+% #3 = a (y-rad)
+\pgfmathdeclarefunction{superellipsey}{3}{%
+  \pgfmathsin@{#1}%
+  \pgfmathpow@{\pgfmathresult}{#2}%
+  \pgfmathmultiply@{\pgfmathresult}{#3}}
+
+% Evaluates the x- and y- value of superellipse around the center
+% #1 = t (0≤t≤90)
+% #2 = 2/m (x-exp)
+% #3 = 2/n (y-exp)
+% #4 = a (x-rad)
+% #5 = b (y-rad)
+\def\pgfmathsuperellipseXY#1#2#3#4#5{%
+  \begingroup
+    \pgfmathsuperellipsex@{#1}{#2}{#4}%
+    \let\pgfmath at temp\pgfmathresult
+    \pgfmathsuperellipsey@{#1}{#3}{#5}%
+    \edef\pgfmath at temp{\def\noexpand\pgfmathresultX{\pgfmath at temp}%
+                       \def\noexpand\pgfmathresultY{\pgfmathresult}}%
+    \expandafter
+  \endgroup\pgfmath at temp}
+
+\pgfdeclareshape{superellipse}{%
+  \inheritsavedanchors[from=ellipse]
+  \inheritanchor[from=ellipse]{text}\inheritanchor[from=ellipse]{center}
+  \inheritanchor[from=ellipse]{mid}\inheritanchor[from=ellipse]{base}
+  \inheritanchor[from=ellipse]{north}\inheritanchor[from=ellipse]{south}
+  \inheritanchor[from=ellipse]{west}\inheritanchor[from=ellipse]{east}
+  \inheritanchor[from=ellipse]{mid west}\inheritanchor[from=ellipse]{base west}
+  \inheritanchor[from=ellipse]{mid east}\inheritanchor[from=ellipse]{base east}
+  \anchor{north east}{%
+    \pgf at process{\radius}%
+    \pgfmathpow@{.70710678118}{\xexponent}%
+    \pgf at x=\pgfmathresult\pgf at x
+    \pgfmathpow@{.70710678118}{\yexponent}%
+    \pgf at y=\pgfmathresult\pgf at y
+    \pgfpointadd{}{\centerpoint}%
+  }
+  \anchor{north west}{%
+    \pgf at process{\radius}%
+    \pgfmathpow@{.70710678118}{\xexponent}%
+    \pgf at x=-\pgfmathresult\pgf at x
+    \pgfmathpow@{.70710678118}{\yexponent}%
+    \pgf at y=\pgfmathresult\pgf at y
+    \pgfpointadd{}{\centerpoint}%
+  }
+  \anchor{south west}{%
+    \pgf at process{\radius}%
+    \pgfmathpow@{.70710678118}{\xexponent}%
+    \pgf at x=-\pgfmathresult\pgf at x
+    \pgfmathpow@{.70710678118}{\yexponent}%
+    \pgf at y=-\pgfmathresult\pgf at y
+    \pgfpointadd{}{\centerpoint}%
+  }
+  \anchor{south east}{%
+    \pgf at process{\radius}%
+    \pgfmathpow@{.70710678118}{\xexponent}%
+    \pgf at x=\pgfmathresult\pgf at x
+    \pgfmathpow@{.70710678118}{\yexponent}%
+    \pgf at y=-\pgfmathresult\pgf at y
+    \pgfpointadd{}{\centerpoint}%
+  }
+  \savedmacro\xexponent{%
+    \pgfmathreciprocal{\pgfkeysvalueof{/pgf/superellipse x exponent}}%
+    \pgfmathmultiply@{\pgfmathresult}{2}%
+    \let\xexponent\pgfmathresult
+  }
+  \savedmacro\yexponent{%
+    \pgfmathreciprocal{\pgfkeysvalueof{/pgf/superellipse y exponent}}%
+    \pgfmathmultiply@{\pgfmathresult}{2}%
+    \let\yexponent\pgfmathresult
+  }
+  \savedmacro\step{%
+    \pgfmathtruncatemacro\step{\pgfkeysvalueof{/pgf/superellipse step}}%
+  }
+  \backgroundpath{%
+    \pgf at process{\radius}%
+    \pgfmathsetmacro\xradius{\pgf at x-(\pgfkeysvalueof{/pgf/outer xsep})}%
+    \pgfmathsetmacro\yradius{\pgf at y-(\pgfkeysvalueof{/pgf/outer ysep})}%
+    \let\pgf at tempa\pgfutil at empty\let\pgf at tempb\pgfutil at empty
+    \let\pgf at tempc\pgfutil at empty\let\pgf at tempd\pgfutil at empty
+    \c at pgf@counta=\step
+    \pgfutil at loop
+    \ifnum\c at pgf@counta<90
+      \pgfmathsuperellipseXY{\the\c at pgf@counta}{\xexponent}{\yexponent}{\xradius}{\yradius}%
+      \edef\pgf at temp{\noexpand\pgfplotstreampoint{\noexpand\pgfqpoint{\pgfmathresultX pt}{\pgfmathresultY pt}}}%
+      \pgfutil at append@macrotomacro\pgf at tempa\pgf at temp
+      \edef\pgf at temp{\noexpand\pgfplotstreampoint{\noexpand\pgfqpoint{-\pgfmathresultX pt}{\pgfmathresultY pt}}}%
+      \pgfutil at prefix@macrotomacro\pgf at tempb\pgf at temp
+      \edef\pgf at temp{\noexpand\pgfplotstreampoint{\noexpand\pgfqpoint{-\pgfmathresultX pt}{-\pgfmathresultY pt}}}%
+      \pgfutil at append@macrotomacro\pgf at tempc\pgf at temp
+      \edef\pgf at temp{\noexpand\pgfplotstreampoint{\noexpand\pgfqpoint{\pgfmathresultX pt}{-\pgfmathresultY pt}}}%
+      \pgfutil at prefix@macrotomacro\pgf at tempd\pgf at temp
+      \advance\c at pgf@counta by\step
+    \pgfutil at repeat
+    \pgftransformshift{\centerpoint}%
+    \pgfplothandlerclosedcurve
+    \pgfplotstreamstart
+    \pgfplotstreampoint{\pgfqpoint{\xradius pt}{0pt}}% east
+    \pgf at tempa
+    \pgfplotstreampoint{\pgfqpoint{0pt}{\yradius pt}}% north
+    \pgf at tempb
+    \pgfplotstreampoint{\pgfqpoint{-\xradius pt}{0pt}}% west
+    \pgf at tempc
+    \pgfplotstreampoint{\pgfqpoint{0pt}{-\yradius pt}}% south
+    \pgf at tempd
+    \pgfplotstreamend
+    \pgftransformshift{\centerpoint\pgf at x=-\pgf at x\pgf at y=-\pgf at y}
+  }
+  \anchorborder{%
+    \pgfextract at process\externalpoint{}%
+    \ifdim\pgf at x=0pt % catch special case x = 0
+      \ifdim\pgf at y<0pt \pgf at anchor@superellipse at south\else\pgf at anchor@superellipse at north\fi
+    \else
+      \ifdim\pgf at y=0pt % catch special case y = 0
+        \ifdim\pgf at x<0pt \pgf at anchor@superellipse at west\else\pgf at anchor@superellipse at east\fi
+      \else % both are not zero
+        % save original direction
+        \pgf at xa=\pgf at x
+        \pgf at ya=\pgf at y
+        % make both positive, we're not looking at one quadrant
+        \ifdim\pgf at xa<0pt \pgf at x=-\pgf at x\fi
+        \ifdim\pgf at ya<0pt \pgf at y=-\pgf at y\fi
+        % save that point again
+        \pgfextract at process\externalpoint{}%
+        % we need to do the calculations without any transformations
+        % since we're using plots and \pgfpointborderrectangle
+        \pgftransformreset
+        \pgfintersectionofpaths{%
+          % from center to point on rectangle that encompasses superellipse
+          \pgf at relevantforpicturesizefalse
+          \pgfpathmoveto{\pgfpointorigin}%
+          \pgfpathlineto{\pgfpointborderrectangle{\externalpoint}{\radius}}%
+        }{%
+          \pgf at relevantforpicturesizefalse
+          \pgf at process{\radius}
+          \edef\xradius{\pgf at sys@tonumber\pgf at x}%
+          \edef\yradius{\pgf at sys@tonumber\pgf at y}%
+          \let\pgf at tempa\pgfutil at empty
+          \c at pgf@counta=\step
+          \pgfutil at loop
+          \ifnum\c at pgf@counta<90
+            \pgfmathsuperellipseXY{\the\c at pgf@counta}{\xexponent}{\yexponent}{\xradius}{\yradius}%
+            \edef\pgf at temp{\noexpand\pgfplotstreampoint{\noexpand\pgfqpoint{\pgfmathresultX pt}{\pgfmathresultY pt}}}%
+            \pgfutil at append@macrotomacro\pgf at tempa\pgf at temp
+            \advance\c at pgf@counta by\step
+          \pgfutil at repeat
+          % we're only using curveto since closedcurve
+          % messes with our other path
+          \pgfplothandlercurveto
+          \pgfplotstreamstart
+          \pgfplotstreampoint{\pgfqpoint{\xradius pt}{0pt}}% east
+          \pgf at tempa
+          \pgfplotstreampoint{\pgfqpoint{0pt}{\yradius pt}}% north
+          \pgfplotstreamend
+        }%
+        \ifnum\pgfintersectionsolutions>0 % only if a solution was found
+          \pgf at process{\pgfpointintersectionsolution{1}}%
+        \else % otherwise take the border on the rectangle (close enough?)
+          \pgf at process{\pgfpointborderrectangle{\externalpoint}{\radius}}%
+        \fi
+        \ifdim\pgf at xa<0pt \pgf at x=-\pgf at x\fi
+        \ifdim\pgf at ya<0pt \pgf at y=-\pgf at y\fi
+        \pgf at process{\pgfpointadd{}{\centerpoint}}%
+      \fi
+    \fi
+  }
+}
+\def\pgfutil at prefix@macrotomacro#1#2{%
+    \expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter%
+        #1\expandafter\expandafter\expandafter{\expandafter#2#1}}
+\endinput


Property changes on: trunk/Master/texmf-dist/tex/latex/tikz-ext/pgflibraryext.shapes.superellipse.code.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.calendar-plus.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.calendar-plus.code.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.calendar-plus.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -48,7 +48,7 @@
 % Overwriting original \tikz at lib@cal at if@else at code
 %
 \def\tikz at lib@cal at if@else at code#1#2#3{%
-  \tikzcalendar at addto\tikz at lib@cal at ifs{\ifdate{#1}{#2}{#3}}%
+  \pgfutil at addto@macro\tikz at lib@cal at ifs{\ifdate{#1}{#2}{#3}}%
   \tikz at lib@cal at scanner%
 }
 
@@ -62,7 +62,7 @@
       \tikz at before@day%
       \scope%
         \tikz at atbegin@day%
-        \let\tikzcalendar at addto\pgfutil at secondoftwo
+        \let\pgfutil at addto@macro\pgfutil at secondoftwo
         \tikz at lib@cal at ifs%
         \tikzdaycode%
         \tikz at atend@day%
@@ -72,7 +72,7 @@
   \endgroup%
 }
 
-\def\tikzcalendar at addto#1#2{\expandafter\def\expandafter#1\expandafter{#1#2}}
+\def\pgfutil at addto@macro#1#2{\expandafter\def\expandafter#1\expandafter{#1#2}}
 
 \pgfmathdeclarefunction{weeksinmonthofyear}{3}{% #1 = first weekday, #2 = month, #3 = year
   \begingroup

Modified: trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.misc.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.misc.code.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.misc.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -39,28 +39,28 @@
 %% this allows to use \foreach[use int={start to end step delta}] without(!) a list in {}
 %% the values start, end and delta are evaluated by PGFmath at the start of the loop.
 %% In addition to use int, there's also use float.
-\newif\ifqrr at pgf@foreach at no@list
+\newif\iftikzext at pgf@foreach at no@list
 \pgfqkeys{/pgf/foreach}{
   use int/.code={%
-    \qrr at pgf@foreach at no@list at parse@to\pgfmathtruncatemacro#1\pgffor at stop
+    \tikzext at pgf@foreach at no@list at parse@to\pgfmathtruncatemacro#1\pgffor at stop
   },
   use float/.code={%
-    \qrr at pgf@foreach at no@list at parse@to\pgfmathsetmacro#1\pgffor at stop
+    \tikzext at pgf@foreach at no@list at parse@to\pgfmathsetmacro#1\pgffor at stop
   }
 }
 
-\def\qrr at pgf@foreach at no@list at parse@to#1#2to#3\pgffor at stop{%
-  \qrr at pgf@foreach at no@listtrue
+\def\tikzext at pgf@foreach at no@list at parse@to#1#2to#3\pgffor at stop{%
+  \tikzext at pgf@foreach at no@listtrue
   #1\foreachStart{#2}%
   \pgfutil at in@{step}{#3}
   \ifpgfutil at in@
-    \qrr at pgf@foreach at no@list at parse@step{#1}#3\pgffor at stop
+    \tikzext at pgf@foreach at no@list at parse@step{#1}#3\pgffor at stop
   \else
-    \qrr at pgf@foreach at no@list at parse@step{#1}#3step1\pgffor at stop
+    \tikzext at pgf@foreach at no@list at parse@step{#1}#3step1\pgffor at stop
   \fi
-  \edef\qrr at pgf@foreach at no@list at list{\foreachStart,\foreachSecond,...,\foreachEnd}%
+  \edef\tikzext at pgf@foreach at no@list at list{\foreachStart,\foreachSecond,...,\foreachEnd}%
 }
-\def\qrr at pgf@foreach at no@list at parse@step#1#2step#3\pgffor at stop{%
+\def\tikzext at pgf@foreach at no@list at parse@step#1#2step#3\pgffor at stop{%
   #1\foreachEnd{#2}%
   #1\foreachSecond{\foreachStart+#3}%
 }
@@ -68,9 +68,9 @@
   \pgfutil at ifnextchar i{\pgffor@@vars at end}{%
     \pgfutil at ifnextchar[{\pgffor@@vars at opt}{%]
       \pgfutil at ifnextchar/{\pgffor@@vars at slash@gobble}{%
-         \ifqrr at pgf@foreach at no@list\expandafter\pgfutil at firstoftwo\else
+         \iftikzext at pgf@foreach at no@list\expandafter\pgfutil at firstoftwo\else
            \expandafter\pgfutil at secondoftwo\fi
-         {\qrr at pgf@foreach at no@listfalse\pgffor at macro@list\qrr at pgf@foreach at no@list at list}
+         {\tikzext at pgf@foreach at no@listfalse\pgffor at macro@list\tikzext at pgf@foreach at no@list at list}
          {\pgffor@@vars}}}}}%
 
 %% Handlers
@@ -198,7 +198,7 @@
     \else
       \expandafter\pgfutil at secondoftwo
     \fi
-    {\qrr at misc@handle at else#2\pgf at stop}{\qrr at misc@handle at else#2else\pgf at stop}%
+    {\tikzext at misc@handle at else#2\pgf at stop}{\tikzext at misc@handle at else#2else\pgf at stop}%
   },
   TeX/if/.code n args={4}{%
     \if#1#2\expandafter\pgfutil at firstoftwo\else\expandafter\pgfutil at secondoftwo\fi
@@ -222,7 +222,7 @@
   },
   tex/.search also=/utils/TeX,
 }
-\def\qrr at misc@handle at else#1else#2\pgf at stop{%
+\def\tikzext at misc@handle at else#1else#2\pgf at stop{%
   \ifdim\pgfmathresult pt=0pt
     \expandafter\pgfutil at firstoftwo
   \else

Modified: trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.node-families.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.node-families.code.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.node-families.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -6,20 +6,22 @@
 % 2. under the GNU Free Documentation License.
 %
 
-\def\tikz at nf@align at left#1{}
-\def\tikz at nf@align at center#1{\kern.5#1}
-\def\tikz at nf@align at right#1{\kern#1}
+\def\tikzext at nf@align at left#1{}
+\def\tikzext at nf@align at center#1{\kern.5#1}
+\def\tikzext at nf@align at right#1{\kern#1}
 
 \pgfqkeys{/tikz/node family}{
   width/.initial=,
+  width/.append style={/pgf/minimum width=nf_width},
   height/.initial=,
-  size/.style=\pgfqkeys{/tikz/node family}{width={#1},height={#1}},
+  height/.append style={/pgf/minimum height=nf_height},
+  size/.code=\pgfqkeys{/tikz/node family}{width={#1},height={#1}},
   text depth/.initial=,
   text height/.initial=,
   text width align/.is choice,
-  text width align/left/.code=\let\tikz at nf@align at action\tikz at nf@align at left,
-  text width align/center/.code=\let\tikz at nf@align at action\tikz at nf@align at center,
-  text width align/right/.code=\let\tikz at nf@align at action\tikz at nf@align at right,
+  text width align/left/.code=\let\tikzext at nf@align at action\tikzext at nf@align at left,
+  text width align/center/.code=\let\tikzext at nf@align at action\tikzext at nf@align at center,
+  text width align/right/.code=\let\tikzext at nf@align at action\tikzext at nf@align at right,
   text width align=center,
   text width/.initial=,
   text/.code=\pgfqkeys{/tikz/node family}{text depth={#1},text height={#1},text width={#1}},
@@ -28,40 +30,39 @@
 \tikzset{node family/.code=\pgfqkeys{/tikz/node family}{#1}}
 
 % #1 = family type + name
-\def\tikz at nf@save#1{%
+\def\tikzext at nf@save#1{%
   %\errmessage{#1}%
   \immediate\write\pgfutil at auxout{%
-    \noexpand\expandafter\noexpand\gdef\noexpand\csname tikz at nf@#1 at previous\endcsname
-      {\csname tikz at nf@#1 at next\endcsname}%
+    \noexpand\expandafter\noexpand\gdef\noexpand\csname tikzext at nf@#1 at previous\endcsname
+      {\csname tikzext at nf@#1 at next\endcsname}%
   }%
-  %\expandafter\global\expandafter\let\csname tikz at nf@#1 at next\endcsname\relax
 }
 
 % #1 = value to set
 % #2 = family type
 % #3 = return dimen
-\def\tikz at nf@getandset#1#2#3{%
+\def\tikzext at nf@getandset#1#2#3{%
     % what's our family's name?
     #3=0pt\relax
-    \pgfkeysgetvalue{/tikz/node family/#2}\tikz at nf@familyname
-    \pgfutil at ifxempty\tikz at nf@familyname{% no family to deal with
+    \pgfkeysgetvalue{/tikz/node family/#2}\tikzext at nf@familyname
+    \pgfutil at ifxempty\tikzext at nf@familyname{% no family to deal with
     }{%
-      \edef\tikz at nf@familyname{\pgfkeysvalueof{/tikz/node family/prefix}\tikz at nf@familyname}%
+      \edef\tikzext at nf@familyname{\pgfkeysvalueof{/tikz/node family/prefix}\tikzext at nf@familyname}%
       % we need to save the value for the next run
-      \pgfutil at IfUndefined{tikz at nf@#2@\tikz at nf@familyname @next}{%
+      \pgfutil at IfUndefined{tikzext at nf@#2@\tikzext at nf@familyname @next}{%
         % first time: define first value and install hook at end of picture
-        \expandafter\xdef\csname tikz at nf@#2@\tikz at nf@familyname @next\endcsname{#1}%
-        \edef\tikz at temp{\noexpand\tikz at nf@save{#2@\tikz at nf@familyname}}%
+        \expandafter\xdef\csname tikzext at nf@#2@\tikzext at nf@familyname @next\endcsname{#1}%
+        \edef\tikz at temp{\noexpand\tikzext at nf@save{#2@\tikzext at nf@familyname}}%
         %\expandafter\AtVeryEndDocument\expandafter{\tikz at temp}%
         \expandafter\pgfutil at g@addto at macro\expandafter\tikz at atend@picture\expandafter{\tikz at temp}%
       }{%
-        \ifdim\csname tikz at nf@#2@\tikz at nf@familyname @next\endcsname<#1\relax
-          \expandafter\xdef\csname tikz at nf@#2@\tikz at nf@familyname @next\endcsname{#1}%
+        \ifdim\csname tikzext at nf@#2@\tikzext at nf@familyname @next\endcsname<#1\relax
+          \expandafter\xdef\csname tikzext at nf@#2@\tikzext at nf@familyname @next\endcsname{#1}%
         \fi
       }%
-      \pgfutil at IfUndefined{tikz at nf@#2@\tikz at nf@familyname @previous}{% first run, ignore
+      \pgfutil at IfUndefined{tikzext at nf@#2@\tikzext at nf@familyname @previous}{% first run, ignore
       }{% set previous value
-        #3=\csname tikz at nf@#2@\tikz at nf@familyname @previous\endcsname\relax
+        #3=\csname tikzext at nf@#2@\tikzext at nf@familyname @previous\endcsname\relax
       }%
     }%
 }
@@ -75,7 +76,7 @@
     \pgfmathsetlength\pgf at xc{\pgfkeysvalueof{/pgf/inner xsep}}%
     \advance\pgf at x by 2\pgf at xc%
     % Qrr: family width
-    \tikz at nf@getandset{\the\pgf at x}{width}{\pgfutil at tempdima}%
+    \tikzext at nf@getandset{\the\pgf at x}{width}{\pgfutil at tempdima}%
     \ifdim\pgf at x<\pgfutil at tempdima
       \pgf at x=\pgfutil at tempdima
     \fi
@@ -98,9 +99,9 @@
     \pgfmathsetlength\pgf at yc{\pgfkeysvalueof{/pgf/inner ysep}}%
     \advance\pgf at y by 2\pgf at yc%
     % Qrr: family height
-    \tikz at nf@getandset{\the\pgf at y}{height}{\pgfutil at tempdima}%
+    \tikzext at nf@getandset{\the\pgf at y}{height}{\pgfutil at tempdima}%
     \ifdim\pgf at y<\pgfutil at tempdima
-      \pgf at y=\pgfutil at tempa
+      \pgf at y=\pgfutil at tempdima
     \fi
     %
     \pgfmathsetlength\pgf at yb{\pgfkeysvalueof{/pgf/minimum height}}%
@@ -116,7 +117,7 @@
     \advance\pgf at y by\pgf at ya%
   }%
 
-\savedanchor\southwest{%
+  \savedanchor\southwest{%
     % Calculate x
     %
     % First, is width < minimum width?
@@ -124,7 +125,7 @@
     \pgfmathsetlength\pgf at xc{\pgfkeysvalueof{/pgf/inner xsep}}%
     \advance\pgf at x by 2\pgf at xc%
     % Qrr: family width
-    \tikz at nf@getandset{\the\pgf at x}{width}{\pgfutil at tempdima}%
+    \tikzext at nf@getandset{\the\pgf at x}{width}{\pgfutil at tempdima}%
     \ifdim\pgf at x<\pgfutil at tempdima
       \pgf at x=\pgfutil at tempdima
     \fi
@@ -147,7 +148,7 @@
     \pgfmathsetlength\pgf at yc{\pgfkeysvalueof{/pgf/inner ysep}}%
     \advance\pgf at y by 2\pgf at yc%
     % Qrr: family height
-    \tikz at nf@getandset{\the\pgf at y}{height}{\pgfutil at tempdima}%
+    \tikzext at nf@getandset{\the\pgf at y}{height}{\pgfutil at tempdima}%
     \ifdim\pgf at y<\pgfutil at tempdima
       \pgf at y=\pgfutil at tempdima
     \fi
@@ -226,8 +227,8 @@
     \fi
     \pgf at x=\pgf at xa%
     % Qrr: check for families
-    \tikz at nf@getandset{\the\dimexpr2\pgf at x\relax}{width}{\pgfutil at tempdima}%
-    \tikz at nf@getandset{\the\dimexpr2\pgf at x\relax}{height}{\pgfutil at tempdimb}%
+    \tikzext at nf@getandset{\the\dimexpr2\pgf at x\relax}{width}{\pgfutil at tempdima}%
+    \tikzext at nf@getandset{\the\dimexpr2\pgf at x\relax}{height}{\pgfutil at tempdimb}%
     % Qrr: and adjust like minimum width and minimum height
     \ifdim\pgf at x<.5\pgfutil at tempdima
       \pgf at x=.5\pgfutil at tempdima
@@ -285,17 +286,17 @@
 \pgfqkeys{/tikz/node family}{
   setup shape/.code={%
     \expandafter\pgfutil at prefixto@macro\csname pgf at sh@s@#1\endcsname{%
-      \tikz at nf@getandset{\the\wd\pgfnodeparttextbox}{text width}{\pgfutil at tempdima}%
+      \tikzext at nf@getandset{\the\wd\pgfnodeparttextbox}{text width}{\pgfutil at tempdima}%
       \ifdim\wd\pgfnodeparttextbox<\pgfutil at tempdima
         \pgfutil at tempdimb=\pgfutil at tempdima
         \advance\pgfutil at tempdimb-\wd\pgfnodeparttextbox
-        \setbox\pgfnodeparttextbox=\hbox to \pgfutil at tempdima{\tikz at nf@align at action\pgfutil at tempdimb\box\pgfnodeparttextbox}%
+        \setbox\pgfnodeparttextbox=\hbox to \pgfutil at tempdima{\tikzext at nf@align at action\pgfutil at tempdimb\box\pgfnodeparttextbox}%
       \fi
-      \tikz at nf@getandset{\the\dp\pgfnodeparttextbox}{text depth}{\pgfutil at tempdima}%
+      \tikzext at nf@getandset{\the\dp\pgfnodeparttextbox}{text depth}{\pgfutil at tempdima}%
       \ifdim\dp\pgfnodeparttextbox<\pgfutil at tempdima
           \dp\pgfnodeparttextbox=\pgfutil at tempdima
       \fi
-      \tikz at nf@getandset{\the\ht\pgfnodeparttextbox}{text height}{\pgfutil at tempdima}%
+      \tikzext at nf@getandset{\the\ht\pgfnodeparttextbox}{text height}{\pgfutil at tempdima}%
       \ifdim\ht\pgfnodeparttextbox<\pgfutil at tempdima
           \ht\pgfnodeparttextbox=\pgfutil at tempdima
       \fi
@@ -303,3 +304,36 @@
   },
   setup shape/.list={rectangle,circle,Rectangle,Circle}
 }
+
+%% nf functions
+\def\tikzext at nf@function at default{{\the\pgf at x}{\the\pgf at y}}
+\def\tikzext at nf@function at default@double{{\the\dimexpr2\pgf at x\relax}{\the\dimexpr2\pgf at y\relax}}
+\def\tikzext at nf@function at circle{{\the\pgf at x}{\the\pgf at x}}
+\def\tikzext at nf@function at circle@double{{\the\dimexpr2\pgf at x\relax}{\the\dimexpr2\pgf at x\relax}}
+
+\pgfmathdeclarefunction{nf_width}{0}{%
+  \begingroup
+    \pgfutil at IfUndefined{tikzext at nf@function@\pgf at sm@shape at name}{%
+      \let\tikzext at nf@function\tikzext at nf@function at default
+    }{%
+      \pgfutil at IfUndefined{tikzext at nf@function@\pgf at sm@shape at name @extra}{}{\csname tikzext at nf@function@\pgf at sm@shape at name @extra\endcsname}%
+      \expandafter\let\expandafter\tikzext at nf@function\csname tikzext at nf@function@\pgf at sm@shape at name\endcsname
+    }%
+    \tikzext at nf@getandset{\expandafter\pgfutil at firstoftwo\tikzext at nf@function}{width}{\pgfutil at tempdima}%
+    \edef\pgfmathresult{\pgf at sys@tonumber\pgfutil at tempdima}%
+    \pgfmath at smuggleone\pgfmathresult
+  \endgroup
+}
+\pgfmathdeclarefunction{nf_height}{0}{%
+  \begingroup
+    \pgfutil at IfUndefined{tikzext at nf@function@\pgf at sm@shape at name}{%
+      \let\tikzext at nf@function\tikzext at nf@function at default
+    }{%
+      \pgfutil at IfUndefined{tikzext at nf@function@\pgf at sm@shape at name @extra}{}{\csname tikzext at nf@function@\pgf at sm@shape at name @extra\endcsname}%
+      \expandafter\let\expandafter\tikzext at nf@function\csname tikzext at nf@function@\pgf at sm@shape at name\endcsname
+    }%
+    \tikzext at nf@getandset{\expandafter\pgfutil at secondoftwo\tikzext at nf@function}{height}{\pgfutil at tempdima}%
+    \edef\pgfmathresult{\pgf at sys@tonumber\pgfutil at tempdima}%
+    \pgfmath at smuggleone\pgfmathresult
+  \endgroup
+}
\ No newline at end of file

Added: trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.node-families.shapes.geometric.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.node-families.shapes.geometric.code.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.node-families.shapes.geometric.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -0,0 +1,38 @@
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
+
+\usetikzlibrary{ext.node-families,shapes.geometric}
+
+\let\tikzext at nf@function at ellipse    \tikzext at nf@function at default@double
+\let\tikzext at nf@function at star       \tikzext at nf@function at circle
+\let\tikzext at nf@function at diamond    \tikzext at nf@function at default@double
+\let\tikzext at nf@function at star       \tikzext at nf@function at circle@double
+\expandafter\let\csname tikzext at nf@function at regular polygon\endcsname
+                                    \tikzext at nf@function at circle@double
+\let\tikzext at nf@function at trapezium\tikzext at nf@function at default@double
+\def\tikzext at nf@function at semicircle {{\the\dimexpr2\pgf at x\relax}{\the\pgf at x}}
+\expandafter\def\csname tikzext at nf@function at isosceles triangle\endcsname
+                                    {{\the\dimexpr2\pgf at ya\relax}{\the\pgf at xa}}
+\def\tikzext at nf@function at kite       {{\the\dimexpr2\pgf at xa\relax}{\the\dimexpr\pgf at ya+\pgf at yb\relax}}
+\def\tikzext at nf@function at dart       {{\the\dimexpr2\pgf at ya\relax}{\the\pgf at xb}}
+\expandafter\def\csname tikzext at nf@function at circular sector\endcsname{{\the\pgf at xc}{\the\pgf at xa}}
+\def\tikzext at nf@function at cylinder{{\the\dimexpr2\pgfutil at tempdimb\relax}{\the\pgf at x}}
+
+\tikzset{node family/setup shape/.list={
+    ellipse,
+    star,
+    diamond,
+    regular polygon,
+    trapezium,
+    semicircle,
+    isosceles triangle,
+    kite,
+    dart,
+    circular sector,
+    cylinder
+}}
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.node-families.shapes.geometric.code.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.paths.ortho.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.paths.ortho.code.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.paths.ortho.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -8,12 +8,12 @@
 
 %% For the operators r-lr, r-rl, r-ud and r-du we need to check after TikZ found r
 \let\tikz at orig@rect\tikz at rect
-\def\tikz at rect{\pgfutil at ifnextchar e\tikz at orig@rect\qrr at tikz@r}
-\def\qrr at tikz@r -{%
-  \pgfutil at ifnextchar l\qrr at tikz@lr at lineto{%
-    \pgfutil at ifnextchar r\qrr at tikz@rl at lineto{%
-      \pgfutil at ifnextchar u\qrr at tikz@ud at lineto{%
-        \pgfutil at ifnextchar d\qrr at tikz@du at lineto\tikz at expand
+\def\tikz at rect{\pgfutil at ifnextchar e\tikz at orig@rect\tikzext at tikz@r}
+\def\tikzext at tikz@r -{%
+  \pgfutil at ifnextchar l\tikzext at tikz@lr at lineto{%
+    \pgfutil at ifnextchar r\tikzext at tikz@rl at lineto{%
+      \pgfutil at ifnextchar u\tikzext at tikz@ud at lineto{%
+        \pgfutil at ifnextchar d\tikzext at tikz@du at lineto\tikz at expand
       }%
     }%
   }%
@@ -21,34 +21,33 @@
 %% For the operator |-| we need to check after TikZ found |-
 \let\tikz at orig@vh at lineto@next\tikz at vh@lineto at next
 \def\tikz at vh@lineto at next{%
-  \pgfutil at ifnextchar|{\expandafter\qrr at tikz@vhv at lineto\pgfutil at gobble}%
-    {\pgfutil at ifnextchar\tikz at activebar{\expandafter\qrr at tikz@vhv at lineto\pgfutil at gobble}%
+  \pgfutil at ifnextchar|{\expandafter\tikzext at tikz@vhv at lineto\pgfutil at gobble}%
+    {\pgfutil at ifnextchar\tikz at activebar{\expandafter\tikzext at tikz@vhv at lineto\pgfutil at gobble}%
       {\tikz at orig@vh at lineto@next}}}
 %% For the operator -|- we need to check after TikZ found -|
 \let\tikz at orig@hv at lineto\tikz at hv@lineto
 \def\tikz at hv@lineto{%
-  \pgfutil at ifnextchar-{\expandafter\qrr at tikz@hvh at lineto\pgfutil at gobble}%
+  \pgfutil at ifnextchar-{\expandafter\tikzext at tikz@hvh at lineto\pgfutil at gobble}%
     {\tikz at orig@hv at lineto}}
 
 %% |-|[<opts>] and -|-[<opts>] are allowed
-\def\qrr at tikz@vhv at lineto{\pgfutil at ifnextchar[{\qrr at tikz@collect at hvvh@options\qrr at tikz@vhv at lineto@next}{\qrr at tikz@collect at hvvh@options\qrr at tikz@vhv at lineto@next[]}}
-\def\qrr at tikz@hvh at lineto{\pgfutil at ifnextchar[{\qrr at tikz@collect at hvvh@options\qrr at tikz@hvh at lineto@next}{\qrr at tikz@collect at hvvh@options\qrr at tikz@hvh at lineto@next[]}}
+\def\tikzext at tikz@vhv at lineto{\pgfutil at ifnextchar[{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@vhv at lineto@next}{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@vhv at lineto@next[]}}
+\def\tikzext at tikz@hvh at lineto{\pgfutil at ifnextchar[{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@hvh at lineto@next}{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@hvh at lineto@next[]}}
 
 %% r-rl[<opts>], r-lr[<opts>], etc.
-\def\qrr at tikz@rl at lineto rl{\pgfutil at ifnextchar[{\qrr at tikz@collect at hvvh@options\qrr at tikz@rl at lineto@next}{\qrr at tikz@collect at hvvh@options\qrr at tikz@rl at lineto@next[]}}
-\def\qrr at tikz@lr at lineto lr{\pgfutil at ifnextchar[{\qrr at tikz@collect at hvvh@options\qrr at tikz@lr at lineto@next}{\qrr at tikz@collect at hvvh@options\qrr at tikz@lr at lineto@next[]}}
-\def\qrr at tikz@du at lineto du{\pgfutil at ifnextchar[{\qrr at tikz@collect at hvvh@options\qrr at tikz@du at lineto@next}{\qrr at tikz@collect at hvvh@options\qrr at tikz@du at lineto@next[]}}
-\def\qrr at tikz@ud at lineto ud{\pgfutil at ifnextchar[{\qrr at tikz@collect at hvvh@options\qrr at tikz@ud at lineto@next}{\qrr at tikz@collect at hvvh@options\qrr at tikz@ud at lineto@next[]}}
+\def\tikzext at tikz@rl at lineto rl{\pgfutil at ifnextchar[{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@rl at lineto@next}{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@rl at lineto@next[]}}
+\def\tikzext at tikz@lr at lineto lr{\pgfutil at ifnextchar[{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@lr at lineto@next}{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@lr at lineto@next[]}}
+\def\tikzext at tikz@du at lineto du{\pgfutil at ifnextchar[{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@du at lineto@next}{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@du at lineto@next[]}}
+\def\tikzext at tikz@ud at lineto ud{\pgfutil at ifnextchar[{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@ud at lineto@next}{\tikzext at tikz@collect at hvvh@options\tikzext at tikz@ud at lineto@next[]}}
 
 %% TikZ interjects are done, the rest is independent:
 
-\newlength\qrr at tikz@udlr at distance
-\newlength\qrr at tikz@hvvh at distance
-\newif\ifqrr at tikz@hvvh at middle         % checks whether spacing = 0 was selected
-\newif\ifqrr at tikz@hvvh at fromcenter
-\newif\iftikz at ortho@preflush
-\tikz at ortho@preflushtrue
-\let\tikz at origtotarget\pgfutil at empty
+\newlength\tikzext at tikz@udlr at distance
+\newlength\tikzext at tikz@hvvh at distance
+\newif\iftikzext at tikz@hvvh at middle         % checks whether spacing = 0 was selected
+\newif\iftikzext at tikz@hvvh at fromcenter
+\newif\iftikzext at ortho@preflush
+\tikzext at ortho@preflushtrue
 
 %%% HVVH/UDLR
 \tikzset{%
@@ -57,29 +56,29 @@
   hvvh/.search also=/tikz,%
   udlr/.search also=/tikz,%
   hvvh/middle 0 to 1/.style={hvvh/spacing=0},%
-  hvvh/from center/.is if=qrr at tikz@hvvh at fromcenter,%
+  hvvh/from center/.is if=tikzext at tikz@hvvh at fromcenter,%
   udlr/from center/.style={/tikz/hvvh/from center={#1}},
   hvvh/spacing/.code=% spacing = 0 means that the middle part are the pos-itions 0 to 1,
   %                                           the first part is -1 to 0, the last part is to 2
-    \pgfmathint{#1}\let\qrr at tikz@hvvh at timing@parts\pgfmathresult% in case they are calculations to be done
-    \ifcase\qrr at tikz@hvvh at timing@parts\relax
-      \qrr at tikz@hvvh at middletrue
-      \def\qrr at tikz@hvvh at timing@parts{1}%
-      \def\qrr at tikz@hvvh at timing@first{0}%
-      \def\qrr at tikz@hvvh at timing@last{1}%
-      \def\qrr at tikz@hvvh at timing@subtr{0}%
-      \def\qrr at tikz@hvvh at timing@factor{1}%
+    \pgfmathint{#1}\let\tikzext at tikz@hvvh at timing@parts\pgfmathresult% in case they are calculations to be done
+    \ifcase\tikzext at tikz@hvvh at timing@parts\relax
+      \tikzext at tikz@hvvh at middletrue
+      \def\tikzext at tikz@hvvh at timing@parts{1}%
+      \def\tikzext at tikz@hvvh at timing@first{0}%
+      \def\tikzext at tikz@hvvh at timing@last{1}%
+      \def\tikzext at tikz@hvvh at timing@subtr{0}%
+      \def\tikzext at tikz@hvvh at timing@factor{1}%
     \else            % in all other cases n > 0 the kinks are at pos = 1/n and (n - 1)/n
-      \qrr at tikz@hvvh at middlefalse
-      \pgfmathreciprocal{#1}\let\qrr at tikz@hvvh at timing@first\pgfmathresult
-      \pgfmathsetmacro\qrr at tikz@hvvh at timing@last{1-\pgfmathresult}%
+      \tikzext at tikz@hvvh at middlefalse
+      \pgfmathreciprocal{#1}\let\tikzext at tikz@hvvh at timing@first\pgfmathresult
+      \pgfmathsetmacro\tikzext at tikz@hvvh at timing@last{1-\pgfmathresult}%
       \pgfmathreciprocal{#1-2}%
-      \let\qrr at tikz@hvvh at timing@subtr\pgfmathresult
-      \pgfmathsetmacro\qrr at tikz@hvvh at timing@factor{1+2*\pgfmathresult}%
+      \let\tikzext at tikz@hvvh at timing@subtr\pgfmathresult
+      \pgfmathsetmacro\tikzext at tikz@hvvh at timing@factor{1+2*\pgfmathresult}%
     \fi,%
-  hvvh/ratio/.code=\pgfmathsetmacro\qrr at tikz@hvvh at ratio{#1},%
+  hvvh/ratio/.code=\pgfmathsetmacro\tikzext at tikz@hvvh at ratio{#1},%
   % TODO: not possible to do distance in TikZ coordinate system
-  hvvh/distance/.code=\pgfmathsetlength\qrr at tikz@hvvh at distance{#1}\let\qrr at tikz@hvvh at ratio\pgfutil at empty,%
+  hvvh/distance/.code=\pgfmathsetlength\tikzext at tikz@hvvh at distance{#1}\let\tikzext at tikz@hvvh at ratio\pgfutil at empty,%
   udlr/distance/.style={%
     /tikz/udlr/ud distance={#1},%
     /tikz/udlr/du distance={#1},%
@@ -98,27 +97,27 @@
   \pgf at process{\tikz at timer@start}\pgf at ya\pgf at y
   \pgf at process{\tikz at timer@end}\pgf at yc\pgf at y
   \pgf at process{\tikz at timer@middle}\pgf at xb\tikz at time pt%
-  \ifdim\tikz at time pt<\qrr at tikz@hvvh at timing@first pt% first quarter
-    \ifqrr at tikz@hvvh at middle
+  \ifdim\tikz at time pt<\tikzext at tikz@hvvh at timing@first pt% first quarter
+    \iftikzext at tikz@hvvh at middle
       \advance\pgf at xb1pt%
     \else
-      \pgf at xb\qrr at tikz@hvvh at timing@parts\pgf at xb
+      \pgf at xb\tikzext at tikz@hvvh at timing@parts\pgf at xb
     \fi
     \edef\tikz at marshal{\noexpand\pgftransformlineattime{\pgf at sys@tonumber{\pgf at xb}}{\noexpand\tikz at timer@start}{%
         \noexpand\pgfqpoint{\the\pgf at x}{\the\pgf at ya}}}%
   \else
-    \ifdim\tikz at time pt>\qrr at tikz@hvvh at timing@last pt% last quarter
-      \ifqrr at tikz@hvvh at middle
+    \ifdim\tikz at time pt>\tikzext at tikz@hvvh at timing@last pt% last quarter
+      \iftikzext at tikz@hvvh at middle
         \advance\pgf at xb-1pt%
       \else
-        \pgf at xb\qrr at tikz@hvvh at timing@parts\pgf at xb
+        \pgf at xb\tikzext at tikz@hvvh at timing@parts\pgf at xb
       \fi
-      \advance\pgf at xb\dimexpr-\qrr at tikz@hvvh at timing@parts pt+1pt\relax%
+      \advance\pgf at xb\dimexpr-\tikzext at tikz@hvvh at timing@parts pt+1pt\relax%
       \edef\tikz at marshal{\noexpand\pgftransformlineattime{\pgf at sys@tonumber{\pgf at xb}}%
         {\noexpand\pgfqpoint{\the\pgf at x}{\the\pgf at yc}}{\noexpand\tikz at timer@end}}%
     \else% middle half
-      \pgf at xb\qrr at tikz@hvvh at timing@factor\pgf at xb%
-      \advance\pgf at xb-\qrr at tikz@hvvh at timing@subtr pt%
+      \pgf at xb\tikzext at tikz@hvvh at timing@factor\pgf at xb%
+      \advance\pgf at xb-\tikzext at tikz@hvvh at timing@subtr pt%
       \edef\tikz at marshal{\noexpand\pgftransformlineattime{\pgf at sys@tonumber{\pgf at xb}}%
         {\noexpand\pgfqpoint{\the\pgf at x}{\the\pgf at ya}}{\noexpand\tikz at timer@middle}}%
     \fi\fi\tikz at marshal}
@@ -126,27 +125,27 @@
   \pgf at process{\tikz at timer@start}\pgf at xa\pgf at x
   \pgf at process{\tikz at timer@end}\pgf at xc\pgf at x
   \pgf at process{\tikz at timer@middle}\pgf at xb\tikz at time pt%
-  \ifdim\tikz at time pt<\qrr at tikz@hvvh at timing@first pt% first quarter
-    \ifqrr at tikz@hvvh at middle
+  \ifdim\tikz at time pt<\tikzext at tikz@hvvh at timing@first pt% first quarter
+    \iftikzext at tikz@hvvh at middle
       \advance\pgf at xb1pt%
     \else
-      \pgf at xb\qrr at tikz@hvvh at timing@parts\pgf at xb
+      \pgf at xb\tikzext at tikz@hvvh at timing@parts\pgf at xb
     \fi
     \edef\tikz at marshal{\noexpand\pgftransformlineattime{\pgf at sys@tonumber{\pgf at xb}}{\noexpand\tikz at timer@start}{%
         \noexpand\pgfqpoint{\the\pgf at xa}{\the\pgf at y}}}%
   \else
-    \ifdim\tikz at time pt>\qrr at tikz@hvvh at timing@last pt% last quarter
-    \ifqrr at tikz@hvvh at middle
+    \ifdim\tikz at time pt>\tikzext at tikz@hvvh at timing@last pt% last quarter
+    \iftikzext at tikz@hvvh at middle
       \advance\pgf at xb-1pt%
     \else
-      \pgf at xb\qrr at tikz@hvvh at timing@parts\pgf at xb
+      \pgf at xb\tikzext at tikz@hvvh at timing@parts\pgf at xb
     \fi
-      \advance\pgf at xb by\dimexpr-\qrr at tikz@hvvh at timing@parts pt+1pt\relax%
+      \advance\pgf at xb by\dimexpr-\tikzext at tikz@hvvh at timing@parts pt+1pt\relax%
       \edef\tikz at marshal{\noexpand\pgftransformlineattime{\pgf at sys@tonumber{\pgf at xb}}%
         {\noexpand\pgfqpoint{\the\pgf at xc}{\the\pgf at y}}{\noexpand\tikz at timer@end}}%
     \else% middle half
-      \pgf at xb=\qrr at tikz@hvvh at timing@factor\pgf at xb
-      \advance\pgf at xb by-\qrr at tikz@hvvh at timing@subtr pt%
+      \pgf at xb=\tikzext at tikz@hvvh at timing@factor\pgf at xb
+      \advance\pgf at xb by-\tikzext at tikz@hvvh at timing@subtr pt%
       \edef\tikz at marshal{\noexpand\pgftransformlineattime{\pgf at sys@tonumber{\pgf at xb}}%
         {\noexpand\pgfqpoint{\the\pgf at xa}{\the\pgf at y}}{\noexpand\tikz at timer@middle}}%
       \fi\fi\tikz at marshal}%
@@ -153,31 +152,31 @@
 
 %% collect options and nodes, coordinates and pics onpath
 \let\tikz at hvvh@currentoption\pgfutil at empty
-\def\qrr at tikz@collect at hvvh@options#1[#2]{\edef\tikz at hvvh@currentoption{#2}#1}
-\def\qrr at tikz@hvh at lineto@next{%
-  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\qrr at tikz@hvh at lineto@next}
-    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\qrr at tikz@hvh at lineto@next}%
-      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\qrr at tikz@hvh at lineto@next}{\tikz at scan@one at point\qrr at tikz@@hvh at lineto}}}}%
-\def\qrr at tikz@vhv at lineto@next{%
-  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\qrr at tikz@vhv at lineto@next}
-    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\qrr at tikz@vhv at lineto@next}%
-      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\qrr at tikz@vhv at lineto@next}{\tikz at scan@one at point\qrr at tikz@@vhv at lineto}}}}%
-\def\qrr at tikz@ud at lineto@next{%
-  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\qrr at tikz@ud at lineto@next}
-    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\qrr at tikz@ud at lineto@next}
-      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\qrr at tikz@ud at lineto@next}{\tikz at scan@one at point\qrr at tikz@@ud at lineto}}}}%
-\def\qrr at tikz@du at lineto@next{%
-  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\qrr at tikz@du at lineto@next}
-    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\qrr at tikz@du at lineto@next}
-      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\qrr at tikz@du at lineto@next}{\tikz at scan@one at point\qrr at tikz@@du at lineto}}}}%
-\def\qrr at tikz@lr at lineto@next{%
-  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\qrr at tikz@lr at lineto@next}
-    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\qrr at tikz@lr at lineto@next}
-      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\qrr at tikz@lr at lineto@next}{\tikz at scan@one at point\qrr at tikz@@lr at lineto}}}}%
-\def\qrr at tikz@rl at lineto@next{%
-  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\qrr at tikz@rl at lineto@next}
-    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\qrr at tikz@rl at lineto@next}
-      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\qrr at tikz@rl at lineto@next}{\tikz at scan@one at point\qrr at tikz@@rl at lineto}}}}%
+\def\tikzext at tikz@collect at hvvh@options#1[#2]{\edef\tikz at hvvh@currentoption{#2}#1}
+\def\tikzext at tikz@hvh at lineto@next{%
+  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\tikzext at tikz@hvh at lineto@next}
+    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\tikzext at tikz@hvh at lineto@next}%
+      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\tikzext at tikz@hvh at lineto@next}{\tikz at scan@one at point\tikzext at tikz@@hvh at lineto}}}}%
+\def\tikzext at tikz@vhv at lineto@next{%
+  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\tikzext at tikz@vhv at lineto@next}
+    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\tikzext at tikz@vhv at lineto@next}%
+      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\tikzext at tikz@vhv at lineto@next}{\tikz at scan@one at point\tikzext at tikz@@vhv at lineto}}}}%
+\def\tikzext at tikz@ud at lineto@next{%
+  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\tikzext at tikz@ud at lineto@next}
+    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\tikzext at tikz@ud at lineto@next}
+      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\tikzext at tikz@ud at lineto@next}{\tikz at scan@one at point\tikzext at tikz@@ud at lineto}}}}%
+\def\tikzext at tikz@du at lineto@next{%
+  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\tikzext at tikz@du at lineto@next}
+    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\tikzext at tikz@du at lineto@next}
+      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\tikzext at tikz@du at lineto@next}{\tikz at scan@one at point\tikzext at tikz@@du at lineto}}}}%
+\def\tikzext at tikz@lr at lineto@next{%
+  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\tikzext at tikz@lr at lineto@next}
+    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\tikzext at tikz@lr at lineto@next}
+      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\tikzext at tikz@lr at lineto@next}{\tikz at scan@one at point\tikzext at tikz@@lr at lineto}}}}%
+\def\tikzext at tikz@rl at lineto@next{%
+  \pgfutil at ifnextchar n{\tikz at collect@label at onpath\tikzext at tikz@rl at lineto@next}
+    {\pgfutil at ifnextchar c{\tikz at collect@coordinate at onpath\tikzext at tikz@rl at lineto@next}
+      {\pgfutil at ifnextchar p{\tikz at collect@pic at onpath\tikzext at tikz@rl at lineto@next}{\tikz at scan@one at point\tikzext at tikz@@rl at lineto}}}}%
 
 \def\tikz at do@hvvh#1#2#3#4#5{%
 % #1 = first kink
@@ -200,7 +199,7 @@
   \tikz at scan@next at command}%
 
 %% -|- operator
-\def\qrr at tikz@@hvh at lineto#1{%
+\def\tikzext at tikz@@hvh at lineto#1{%
   \edef\tikz at timer@start{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
   \pgf at xb=\tikz at lastx
   \pgf at xc=\tikz at lastx
@@ -211,12 +210,12 @@
     \pgfqkeys{/tikz/hvvh}{/tikz/style/.expand once=\tikz at hvvh@currentoption}%
     \iftikz at shapeborder
       \pgf at process{\pgfpointshapeborder{\tikz at shapeborder@name}{\pgfqpoint{\pgf at xb}{\tikz at lasty}}}%
-      \ifqrr at tikz@hvvh at fromcenter
+      \iftikzext at tikz@hvvh at fromcenter
         \pgf at xc\pgf at xb
       \fi
-      \pgfutil at ifxempty\qrr at tikz@hvvh at ratio{%
-        \ifdim\qrr at tikz@hvvh at distance<0pt\relax
-          \ifqrr at tikz@hvvh at fromcenter
+      \pgfutil at ifxempty\tikzext at tikz@hvvh at ratio{%
+        \ifdim\tikzext at tikz@hvvh at distance<0pt\relax
+          \iftikzext at tikz@hvvh at fromcenter
             \pgf at xc\tikz at lastx
           \else
             \pgf at xc\pgf at x
@@ -223,39 +222,39 @@
           \fi
         \fi
         \ifdim\pgf at xb>\tikz at lastx
-          \qrr at tikz@hvvh at distance-\qrr at tikz@hvvh at distance
+          \tikzext at tikz@hvvh at distance-\tikzext at tikz@hvvh at distance
         \fi
       }{%
-        \ifqrr at tikz@hvvh at fromcenter
-          \qrr at tikz@hvvh at distance\tikz at lastx
+        \iftikzext at tikz@hvvh at fromcenter
+          \tikzext at tikz@hvvh at distance\tikz at lastx
         \else
-          \qrr at tikz@hvvh at distance\pgf at x
+          \tikzext at tikz@hvvh at distance\pgf at x
         \fi
-        \advance\qrr at tikz@hvvh at distance-\pgf at xc
-        \qrr at tikz@hvvh at distance\qrr at tikz@hvvh at ratio\qrr at tikz@hvvh at distance
+        \advance\tikzext at tikz@hvvh at distance-\pgf at xc
+        \tikzext at tikz@hvvh at distance\tikzext at tikz@hvvh at ratio\tikzext at tikz@hvvh at distance
       }%
-      \advance\pgf at xc\qrr at tikz@hvvh at distance
+      \advance\pgf at xc\tikzext at tikz@hvvh at distance
       \edef\pgf at tempa{\noexpand\pgfqpoint{\the\pgf at xc}{\the\pgf at yc}}%
       \edef\pgf at tempb{\noexpand\pgfqpoint{\the\pgf at xc}{\the\tikz at lasty}}%
       \edef\pgf at temp{\pgfqpoint{\the\pgf at x}{\the\pgf at y}}%
     \else
       \let\tikz at shapeborder@name\pgfutil at empty
-      \ifqrr at tikz@hvvh at fromcenter
+      \iftikzext at tikz@hvvh at fromcenter
         \pgf at xc\pgf at xb
       \fi
-      \pgfutil at ifxempty\qrr at tikz@hvvh at ratio{%
-        \ifdim\qrr at tikz@hvvh at distance<0pt\relax
+      \pgfutil at ifxempty\tikzext at tikz@hvvh at ratio{%
+        \ifdim\tikzext at tikz@hvvh at distance<0pt\relax
           \pgf at xc\tikz at lastx
         \fi
         \ifdim\pgf at xb>\tikz at lastx
-          \qrr at tikz@hvvh at distance-\qrr at tikz@hvvh at distance
+          \tikzext at tikz@hvvh at distance-\tikzext at tikz@hvvh at distance
         \fi
       }{%
-        \qrr at tikz@hvvh at distance\tikz at lastx
-        \advance\qrr at tikz@hvvh at distance-\pgf at xc
-        \qrr at tikz@hvvh at distance\qrr at tikz@hvvh at ratio\qrr at tikz@hvvh at distance
+        \tikzext at tikz@hvvh at distance\tikz at lastx
+        \advance\tikzext at tikz@hvvh at distance-\pgf at xc
+        \tikzext at tikz@hvvh at distance\tikzext at tikz@hvvh at ratio\tikzext at tikz@hvvh at distance
       }%
-      \advance\pgf at xc\qrr at tikz@hvvh at distance
+      \advance\pgf at xc\tikzext at tikz@hvvh at distance
       \edef\pgf at tempa{\noexpand\pgfqpoint{\the\pgf at xc}{\the\pgf at yc}}%
       \edef\pgf at tempb{\noexpand\pgfqpoint{\the\pgf at xc}{\the\tikz at lasty}}%
       \edef\pgf at temp{\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
@@ -270,7 +269,7 @@
   \pgf at marshal}%
 
 %% |-| operator
-\def\qrr at tikz@@vhv at lineto#1{%
+\def\tikzext at tikz@@vhv at lineto#1{%
   \edef\tikz at timer@start{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
   \pgf at xc=\tikz at lastx
   \pgf at yb=\tikz at lasty
@@ -281,12 +280,12 @@
     \pgfqkeys{/tikz/hvvh}{/tikz/style/.expand once=\tikz at hvvh@currentoption}%
     \iftikz at shapeborder
       \pgf at process{\pgfpointshapeborder{\tikz at shapeborder@name}{\pgfqpoint{\tikz at lastx}{\pgf at yb}}}%
-      \ifqrr at tikz@hvvh at fromcenter
+      \iftikzext at tikz@hvvh at fromcenter
         \pgf at yc\pgf at yb
       \fi
-      \ifx\qrr at tikz@hvvh at ratio\pgfutil at empty
-        \ifdim\qrr at tikz@hvvh at distance<0pt\relax
-          \ifqrr at tikz@hvvh at fromcenter
+      \ifx\tikzext at tikz@hvvh at ratio\pgfutil at empty
+        \ifdim\tikzext at tikz@hvvh at distance<0pt\relax
+          \iftikzext at tikz@hvvh at fromcenter
             \pgf at yc\tikz at lasty
           \else
             \pgf at yc\pgf at y
@@ -293,39 +292,39 @@
           \fi
         \fi
         \ifdim\pgf at yb>\tikz at lasty
-          \qrr at tikz@hvvh at distance-\qrr at tikz@hvvh at distance
+          \tikzext at tikz@hvvh at distance-\tikzext at tikz@hvvh at distance
         \fi
       \else
-        \ifqrr at tikz@hvvh at fromcenter
-          \qrr at tikz@hvvh at distance\tikz at lasty
+        \iftikzext at tikz@hvvh at fromcenter
+          \tikzext at tikz@hvvh at distance\tikz at lasty
         \else
-          \qrr at tikz@hvvh at distance\pgf at y
+          \tikzext at tikz@hvvh at distance\pgf at y
         \fi
-        \advance\qrr at tikz@hvvh at distance-\pgf at yc
-        \qrr at tikz@hvvh at distance\qrr at tikz@hvvh at ratio\qrr at tikz@hvvh at distance
+        \advance\tikzext at tikz@hvvh at distance-\pgf at yc
+        \tikzext at tikz@hvvh at distance\tikzext at tikz@hvvh at ratio\tikzext at tikz@hvvh at distance
       \fi
-      \advance\pgf at yc\qrr at tikz@hvvh at distance
+      \advance\pgf at yc\tikzext at tikz@hvvh at distance
       \edef\pgf at tempa{\noexpand\pgfqpoint{\the\pgf at xc}{\the\pgf at yc}}%
       \edef\pgf at tempb{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\pgf at yc}}%
       \edef\pgf at temp{\pgfqpoint{\the\pgf at x}{\the\pgf at y}}%
     \else
       \let\tikz at shapeborder@name\pgfutil at empty
-      \ifqrr at tikz@hvvh at fromcenter
+      \iftikzext at tikz@hvvh at fromcenter
         \pgf at yc\pgf at yb
       \fi
-      \ifx\qrr at tikz@hvvh at ratio\pgfutil at empty
-        \ifdim\qrr at tikz@hvvh at distance<0pt\relax
+      \ifx\tikzext at tikz@hvvh at ratio\pgfutil at empty
+        \ifdim\tikzext at tikz@hvvh at distance<0pt\relax
           \pgf at yc\tikz at lasty
         \fi
         \ifdim\pgf at yb>\tikz at lasty
-          \qrr at tikz@hvvh at distance-\qrr at tikz@hvvh at distance
+          \tikzext at tikz@hvvh at distance-\tikzext at tikz@hvvh at distance
         \fi
       \else
-        \qrr at tikz@hvvh at distance\tikz at lasty
-        \advance\qrr at tikz@hvvh at distance-\pgf at yc
-        \qrr at tikz@hvvh at distance\qrr at tikz@hvvh at ratio\qrr at tikz@hvvh at distance
+        \tikzext at tikz@hvvh at distance\tikz at lasty
+        \advance\tikzext at tikz@hvvh at distance-\pgf at yc
+        \tikzext at tikz@hvvh at distance\tikzext at tikz@hvvh at ratio\tikzext at tikz@hvvh at distance
       \fi
-      \advance\pgf at yc\qrr at tikz@hvvh at distance
+      \advance\pgf at yc\tikzext at tikz@hvvh at distance
       \edef\pgf at tempa{\noexpand\pgfqpoint{\the\pgf at xc}{\the\pgf at yc}}%
       \edef\pgf at tempb{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\pgf at yc}}%
       \edef\pgf at temp{\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
@@ -340,7 +339,7 @@
   \pgf at marshal}%
 
 %% r-ud operator
-\def\qrr at tikz@@ud at lineto#1{%
+\def\tikzext at tikz@@ud at lineto#1{%
   \edef\tikz at timer@start{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
   \pgf at xc\tikz at lastx
   \pgf at yb\tikz at lasty
@@ -350,11 +349,11 @@
   \tikz at make@last at position{#1}%
   \begingroup
     \pgfqkeys{/tikz/udlr}{/tikz/style/.expand once=\tikz at hvvh@currentoption}%
-    \pgfmathsetlength\qrr at tikz@udlr at distance{\pgfkeysvalueof{/tikz/udlr/ud distance}}%
+    \pgfmathsetlength\tikzext at tikz@udlr at distance{\pgfkeysvalueof{/tikz/udlr/ud distance}}%
     \iftikz at shapeborder
       \advance\pgf at y1pt%
       \pgf at process{\pgfpointshapeborder{\tikz at shapeborder@name}{\pgfqpoint{\pgf at x}{\pgf at y}}}%
-      \ifqrr at tikz@hvvh at fromcenter
+      \iftikzext at tikz@hvvh at fromcenter
         \pgf at yc\pgf at yb
       \else\ifx\pgf at temp\relax
           \pgf at yc\pgf at yb
@@ -361,23 +360,23 @@
         \fi
       \fi
       \ifdim\pgf at yc<\pgf at y
-        \ifqrr at tikz@hvvh at fromcenter
+        \iftikzext at tikz@hvvh at fromcenter
           \pgf at yc=\tikz at lasty
         \else
           \pgf at yc=\pgf at y
         \fi
       \fi
-      \advance\pgf at yc\qrr at tikz@udlr at distance
+      \advance\pgf at yc\tikzext at tikz@udlr at distance
       \edef\pgf at temp{\noexpand\pgfqpoint{\the\pgf at x}{\the\pgf at y}}%
     \else
       \let\tikz at shapeborder@name\pgfutil at empty
       \ifx\pgf at temp\relax\else
-        \ifqrr at tikz@hvvh at fromcenter\else
+        \iftikzext at tikz@hvvh at fromcenter\else
           \pgf at yb\pgf at yc
         \fi
       \fi
       \ifdim\pgf at yb<\tikz at lasty\pgf at yb\tikz at lasty\fi
-      \advance\pgf at yb\qrr at tikz@udlr at distance
+      \advance\pgf at yb\tikzext at tikz@udlr at distance
       \pgf at yc\pgf at yb
       \edef\pgf at temp{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
     \fi
@@ -391,7 +390,7 @@
   \pgf at marshal}%
 
 %% r-du operator
-\def\qrr at tikz@@du at lineto#1{%
+\def\tikzext at tikz@@du at lineto#1{%
   \edef\tikz at timer@start{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
   \pgf at xc\tikz at lastx
   \pgf at yb\tikz at lasty
@@ -401,11 +400,11 @@
   \tikz at make@last at position{#1}%
   \begingroup
     \pgfqkeys{/tikz/udlr}{/tikz/style/.expand once=\tikz at hvvh@currentoption}%
-    \pgfmathsetlength\qrr at tikz@udlr at distance{\pgfkeysvalueof{/tikz/udlr/du distance}}%
+    \pgfmathsetlength\tikzext at tikz@udlr at distance{\pgfkeysvalueof{/tikz/udlr/du distance}}%
     \iftikz at shapeborder
       \advance\pgf at y-1pt%
       \pgf at process{\pgfpointshapeborder{\tikz at shapeborder@name}{\pgfqpoint{\pgf at x}{\pgf at y}}}%
-      \ifqrr at tikz@hvvh at fromcenter
+      \iftikzext at tikz@hvvh at fromcenter
         \pgf at yc\pgf at yb
       \else\ifx\pgf at temp\relax
           \pgf at yc\pgf at yb
@@ -412,23 +411,23 @@
         \fi
       \fi
       \ifdim\pgf at yc>\pgf at y
-        \ifqrr at tikz@hvvh at fromcenter
+        \iftikzext at tikz@hvvh at fromcenter
           \pgf at yc=\tikz at lasty
         \else
           \pgf at yc=\pgf at y
         \fi
       \fi
-      \advance\pgf at yc-\qrr at tikz@udlr at distance
+      \advance\pgf at yc-\tikzext at tikz@udlr at distance
       \edef\pgf at temp{\noexpand\pgfqpoint{\the\pgf at x}{\the\pgf at y}}%
     \else
       \let\tikz at shapeborder@name\pgfutil at empty
       \ifx\pgf at temp\relax\else
-        \ifqrr at tikz@hvvh at fromcenter\else
+        \iftikzext at tikz@hvvh at fromcenter\else
           \pgf at yb\pgf at yc
         \fi
       \fi
       \ifdim\pgf at yb>\tikz at lasty\pgf at yb\tikz at lasty\fi
-      \advance\pgf at yb-\qrr at tikz@udlr at distance
+      \advance\pgf at yb-\tikzext at tikz@udlr at distance
       \pgf at yc\pgf at yb
       \edef\pgf at temp{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
     \fi
@@ -442,7 +441,7 @@
   \pgf at marshal}%
 
 %% r-lr operator
-\def\qrr at tikz@@lr at lineto#1{%
+\def\tikzext at tikz@@lr at lineto#1{%
   \edef\tikz at timer@start{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
   \pgf at xb\tikz at lastx
   \pgf at yc\tikz at lasty
@@ -452,11 +451,11 @@
   \tikz at make@last at position{#1}%
   \begingroup
     \pgfqkeys{/tikz/udlr}{/tikz/style/.expand once=\tikz at hvvh@currentoption}%
-    \pgfmathsetlength\qrr at tikz@udlr at distance{\pgfkeysvalueof{/tikz/udlr/lr distance}}%
+    \pgfmathsetlength\tikzext at tikz@udlr at distance{\pgfkeysvalueof{/tikz/udlr/lr distance}}%
     \iftikz at shapeborder
       \advance\pgf at x-1pt%
       \pgf at process{\pgfpointshapeborder{\tikz at shapeborder@name}{\pgfqpoint{\pgf at x}{\pgf at y}}}%
-      \ifqrr at tikz@hvvh at fromcenter
+      \iftikzext at tikz@hvvh at fromcenter
         \pgf at xc\pgf at xb
       \else\ifx\pgf at temp\relax
           \pgf at xc\pgf at xb
@@ -463,23 +462,23 @@
         \fi
       \fi
       \ifdim\pgf at xc>\pgf at x
-        \ifqrr at tikz@hvvh at fromcenter
+        \iftikzext at tikz@hvvh at fromcenter
           \pgf at xc=\tikz at lastx
         \else
           \pgf at xc=\pgf at x
         \fi
       \fi
-      \advance\pgf at xc-\qrr at tikz@udlr at distance
+      \advance\pgf at xc-\tikzext at tikz@udlr at distance
       \edef\pgf at temp{\noexpand\pgfqpoint{\the\pgf at x}{\the\pgf at y}}%
     \else
       \let\tikz at shapeborder@name\pgfutil at empty
       \ifx\pgf at temp\relax\else
-        \ifqrr at tikz@hvvh at fromcenter\else
+        \iftikzext at tikz@hvvh at fromcenter\else
           \pgf at xb\pgf at xc
         \fi
       \fi
       \ifdim\pgf at xb>\tikz at lastx\pgf at xb\tikz at lastx\fi
-      \advance\pgf at xb-\qrr at tikz@udlr at distance
+      \advance\pgf at xb-\tikzext at tikz@udlr at distance
       \pgf at xc\pgf at xb
       \edef\pgf at temp{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
     \fi
@@ -493,7 +492,7 @@
   \pgf at marshal}%
 
 %% r-rl operator
-\def\qrr at tikz@@rl at lineto#1{%
+\def\tikzext at tikz@@rl at lineto#1{%
   \edef\tikz at timer@start{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
   \pgf at xb\tikz at lastx
   \pgf at yc\tikz at lasty
@@ -503,11 +502,11 @@
   \tikz at make@last at position{#1}%
   \begingroup
     \pgfqkeys{/tikz/udlr}{/tikz/style/.expand once=\tikz at hvvh@currentoption}%
-    \pgfmathsetlength\qrr at tikz@udlr at distance{\pgfkeysvalueof{/tikz/udlr/rl distance}}%
+    \pgfmathsetlength\tikzext at tikz@udlr at distance{\pgfkeysvalueof{/tikz/udlr/rl distance}}%
     \iftikz at shapeborder%
       \advance\pgf at x1pt%
       \pgf at process{\pgfpointshapeborder{\tikz at shapeborder@name}{\pgfqpoint{\pgf at x}{\pgf at y}}}%
-      \ifqrr at tikz@hvvh at fromcenter
+      \iftikzext at tikz@hvvh at fromcenter
         \pgf at xc\pgf at xb
       \else\ifx\pgf at temp\relax
           \pgf at xc\pgf at xb
@@ -514,23 +513,23 @@
         \fi
       \fi
       \ifdim\pgf at xc<\pgf at x
-        \ifqrr at tikz@hvvh at fromcenter
+        \iftikzext at tikz@hvvh at fromcenter
           \pgf at xc=\tikz at lastx
         \else
           \pgf at xc=\pgf at x
         \fi
       \fi
-      \advance\pgf at xc\qrr at tikz@udlr at distance
+      \advance\pgf at xc\tikzext at tikz@udlr at distance
       \edef\pgf at temp{\noexpand\pgfqpoint{\the\pgf at x}{\the\pgf at y}}%
     \else
       \let\tikz at shapeborder@name\pgfutil at empty%
       \ifx\pgf at temp\relax\else
-        \ifqrr at tikz@hvvh at fromcenter\else
+        \iftikzext at tikz@hvvh at fromcenter\else
           \pgf at xb\pgf at xc
         \fi
       \fi
       \ifdim\pgf at xb<\tikz at lastx\pgf at xb\tikz at lastx\fi
-      \advance\pgf at xb\qrr at tikz@udlr at distance
+      \advance\pgf at xb\tikzext at tikz@udlr at distance
       \pgf at xc\pgf at xb
       \edef\pgf at temp{\noexpand\pgfqpoint{\the\tikz at lastx}{\the\tikz at lasty}}%
     \fi
@@ -544,9 +543,8 @@
   \pgf at marshal}%
 
 %% a few nice to haves, use with to or edge operator
-\let\tikz at origtotarget\pgfutil at empty
 \tikzset{
-  node as new start/.is if=tikz at ortho@preflush,
+  node as new start/.is if=tikzext at ortho@preflush,
   node as new start,
   horizontal vertical/.style={to path={-| (\tikztotarget) \tikztonodes}},
   vertical horizontal/.style={to path={|- (\tikztotarget) \tikztonodes}},
@@ -554,23 +552,23 @@
   vertical horizontal vertical/.style={to path={|-| (\tikztotarget) \tikztonodes}},
   only vertical second/.style={to path={
     \pgfextra
-      \let\tikz at ortho@anchor\pgfutil at empty
-      \let\tikz at origtotarget\pgfutil at empty
+      \let\tikzext at ortho@anchor\pgfutil at empty
+      \let\tikzext at origtotarget\pgfutil at empty
       \tikz at scan@one at point\pgfutil at firstofone(\tikztostart)\relax
       \iftikz at shapeborder
         \tikz at scan@one at point\pgfutil at firstofone(\tikztotarget)\relax
         \ifdim\pgf at y>\tikz at lasty\relax
           \edef\tikztostart{\tikztostart.north}%
-          \iftikz at shapeborder\def\tikz at ortho@anchor{.south}\fi
+          \iftikz at shapeborder\def\tikzext at ortho@anchor{.south}\fi
         \else
           \edef\tikztostart{\tikztostart.south}%
-          \iftikz at shapeborder\def\tikz at ortho@anchor{.north}\fi
+          \iftikz at shapeborder\def\tikzext at ortho@anchor{.north}\fi
         \fi
       \fi
       \def\tikz at tempa{#1}%
       \ifx\tikz at tempa\pgfutil at empty\else
-        \let\tikz at origtotarget\tikztotarget
-        \edef\tikztotarget{[xshift={#1}]\tikztotarget\tikz at ortho@anchor}%
+        \let\tikzext at origtotarget\tikztotarget
+        \edef\tikztotarget{[xshift={#1}]\tikztotarget\tikzext at ortho@anchor}%
       \fi
     \endpgfextra
     [insert path/.expanded={
@@ -577,28 +575,28 @@
       (perpendicular cs: horizontal line through={(\tikztostart)},
                          vertical line through={(\tikztotarget)}) -- (\tikztotarget)}] \tikztonodes
       \pgfextra
-        \ifx\tikz at origtotarget\pgfutil at empty\else
-          \iftikz at ortho@preflush(\tikz at origtotarget)\fi\fi\endpgfextra}},
+        \ifx\tikzext at origtotarget\pgfutil at empty\else
+          \iftikzext at ortho@preflush(\tikzext at origtotarget)\fi\fi\endpgfextra}},
   only vertical second/.default=,
   only horizontal second/.style={to path={
     \pgfextra
-      \let\tikz at ortho@anchor\pgfutil at empty
-      \let\tikz at origtotarget\pgfutil at empty
+      \let\tikzext at ortho@anchor\pgfutil at empty
+      \let\tikzext at origtotarget\pgfutil at empty
       \tikz at scan@one at point\pgfutil at firstofone(\tikztostart)\relax
       \iftikz at shapeborder
         \tikz at scan@one at point\pgfutil at firstofone(\tikztotarget)\relax
         \ifdim\pgf at x>\tikz at lastx\relax
           \edef\tikztostart{\tikztostart.east}%
-          \iftikz at shapeborder\def\tikz at ortho@anchor{.west}\fi
+          \iftikz at shapeborder\def\tikzext at ortho@anchor{.west}\fi
         \else
           \edef\tikztostart{\tikztostart.west}%
-          \iftikz at shapeborder\def\tikz at ortho@anchor{.east}\fi
+          \iftikz at shapeborder\def\tikzext at ortho@anchor{.east}\fi
         \fi
       \fi
       \def\tikz at tempa{#1}%
       \ifx\tikz at tempa\pgfutil at empty\else
-        \let\tikz at origtotarget\tikztotarget
-        \edef\tikztotarget{[yshift={#1}]\tikztotarget\tikz at ortho@anchor}%
+        \let\tikzext at origtotarget\tikztotarget
+        \edef\tikztotarget{[yshift={#1}]\tikztotarget\tikzext at ortho@anchor}%
       \fi
     \endpgfextra
     [insert path/.expanded={
@@ -605,28 +603,28 @@
       (perpendicular cs: vertical line through={(\tikztostart)},
                          horizontal line through={(\tikztotarget)}) -- (\tikztotarget)}] \tikztonodes
     \pgfextra
-      \ifx\tikz at origtotarget\pgfutil at empty\else
-        \iftikz at ortho@preflush(\tikz at origtotarget)\fi\fi\endpgfextra}},
+      \ifx\tikzext at origtotarget\pgfutil at empty\else
+        \iftikzext at ortho@preflush(\tikzext at origtotarget)\fi\fi\endpgfextra}},
   only horizontal second/.default=,
   only vertical first/.style={to path={
     \pgfextra
-      \let\tikz at ortho@anchor\pgfutil at empty
-      \let\tikz at origtotarget\pgfutil at empty
+      \let\tikzext at ortho@anchor\pgfutil at empty
+      \let\tikzext at origtotarget\pgfutil at empty
       \tikz at scan@one at point\pgfutil at firstofone(\tikztotarget)\relax
       \iftikz at shapeborder
-        \let\tikz at origtotarget\tikztotarget
+        \let\tikzext at origtotarget\tikztotarget
         \tikz at scan@one at point\pgfutil at firstofone(\tikztostart)\relax
         \ifdim\pgf at y>\tikz at lasty\relax
           \edef\tikztotarget{\tikztotarget.south}%
-          \iftikz at shapeborder\def\tikz at ortho@anchor{.north}\fi
+          \iftikz at shapeborder\def\tikzext at ortho@anchor{.north}\fi
         \else
           \edef\tikztotarget{\tikztotarget.north}%
-          \iftikz at shapeborder\def\tikz at ortho@anchor{.south}\fi
+          \iftikz at shapeborder\def\tikzext at ortho@anchor{.south}\fi
         \fi
       \fi
       \def\tikz at tempa{#1}%
       \ifx\tikz at tempa\pgfutil at empty\else
-        \edef\tikztostart{[xshift={#1}]\tikztostart\tikz at ortho@anchor}%
+        \edef\tikztostart{[xshift={#1}]\tikztostart\tikzext at ortho@anchor}%
       \fi
     \endpgfextra
     [insert path/.expanded={(\tikztostart)}] 
@@ -634,28 +632,28 @@
                         horizontal line through={(\tikztotarget)})
     \tikztonodes
     \pgfextra
-      \ifx\tikz at origtotarget\pgfutil at empty\else
-        \iftikz at ortho@preflush(\tikz at origtotarget)\fi\fi\endpgfextra}},
+      \ifx\tikzext at origtotarget\pgfutil at empty\else
+        \iftikzext at ortho@preflush(\tikzext at origtotarget)\fi\fi\endpgfextra}},
   only vertical first/.default=,
   only horizontal first/.style={to path={
     \pgfextra
-      \let\tikz at ortho@anchor\pgfutil at empty
-      \let\tikz at origtotarget\pgfutil at empty
+      \let\tikzext at ortho@anchor\pgfutil at empty
+      \let\tikzext at origtotarget\pgfutil at empty
       \tikz at scan@one at point\pgfutil at firstofone(\tikztotarget)\relax
       \iftikz at shapeborder
-        \let\tikz at origtotarget\tikztotarget
+        \let\tikzext at origtotarget\tikztotarget
         \tikz at scan@one at point\pgfutil at firstofone(\tikztostart)\relax
         \ifdim\pgf at x>\tikz at lastx\relax
           \edef\tikztotarget{\tikztotarget.west}%
-          \iftikz at shapeborder\def\tikz at ortho@anchor{.east}\fi
+          \iftikz at shapeborder\def\tikzext at ortho@anchor{.east}\fi
         \else
           \edef\tikztotarget{\tikztotarget.east}%
-          \iftikz at shapeborder\def\tikz at ortho@anchor{.west}\fi
+          \iftikz at shapeborder\def\tikzext at ortho@anchor{.west}\fi
         \fi
       \fi
       \def\tikz at tempa{#1}%
       \ifx\tikz at tempa\pgfutil at empty\else
-        \edef\tikztostart{[yshift={#1}]\tikztostart\tikz at ortho@anchor}%
+        \edef\tikztostart{[yshift={#1}]\tikztostart\tikzext at ortho@anchor}%
       \fi
     \endpgfextra
     [insert path/.expanded={(\tikztostart)}]
@@ -662,22 +660,22 @@
       -- (perpendicular cs: horizontal line through/.expanded={(\tikztostart)},
                               vertical line through={(\tikztotarget)})
     \tikztonodes \pgfextra
-      \ifx\tikz at origtotarget\pgfutil at empty\else
-        \iftikz at ortho@preflush(\tikz at origtotarget)\fi\fi\endpgfextra}},
+      \ifx\tikzext at origtotarget\pgfutil at empty\else
+        \iftikzext at ortho@preflush(\tikzext at origtotarget)\fi\fi\endpgfextra}},
   only horizontal first/.default=,
   only vertical first to center/.style={to path={
       \pgfextra
-        \let\tikz at origtotarget\tikztotarget
+        \let\tikzext at origtotarget\tikztotarget
       \endpgfextra
     (\tikztostart) -- (perpendicular cs: vertical line through={(\tikztostart)},
                                          horizontal line through={(\tikztotarget)})
-    \tikztonodes \ifx\tikz at origtotarget\pgfutil at empty\else\iftikz at ortho@preflush(\tikz at origtotarget)\fi\fi}},
+    \tikztonodes \ifx\tikzext at origtotarget\pgfutil at empty\else\iftikzext at ortho@preflush(\tikzext at origtotarget)\fi\fi}},
   only horizontal first to center/.style={to path={
       \pgfextra
-        \let\tikz at origtotarget\tikztotarget
+        \let\tikzext at origtotarget\tikztotarget
       \endpgfextra
     (\tikztostart) -- (perpendicular cs: horizontal line through={(\tikztostart)},
                                          vertical line through={(\tikztotarget)})
-    \tikztonodes \ifx\tikz at origtotarget\pgfutil at empty\else\iftikz at ortho@preflush(\tikz at origtotarget)\fi\fi}}%
+    \tikztonodes \ifx\tikzext at origtotarget\pgfutil at empty\else\iftikzext at ortho@preflush(\tikzext at origtotarget)\fi\fi}}%
 }
 \endinput
\ No newline at end of file

Modified: trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.patterns.images.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.patterns.images.code.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.patterns.images.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -1,3 +1,10 @@
+% Copyright 2022 by Qrrbrbirlbel
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Free Documentation License.
+%
 % This is the TikZ library patterns.images
 % Load with \usetikzlibrary{patterns.images}
 %
@@ -8,13 +15,13 @@
 %  - use image as pattern=<name>
 %  - image as pattern=<opt arguments for \pgftext>
 
-\def\pgfsetupimageaspattern{\pgfutil at ifnextchar[\qrr at pgfsetupimageaspattern{\qrr at pgfsetupimageaspattern[]}}
-\def\qrr at pgfsetupimageaspattern[#1]#2#3{% #1 = options
+\def\pgfsetupimageaspattern{\pgfutil at ifnextchar[\tikzext at pgfsetupimageaspattern{\tikzext at pgfsetupimageaspattern[]}}
+\def\tikzext at pgfsetupimageaspattern[#1]#2#3{% #1 = options
                                         % #2 = image name
                                         % #3 = file name
-  \pgfdeclareimage[#1]{qrr at pgf@iap@#2}{#3}%
-  \sbox\pgfutil at tempboxa{\pgfuseimage{qrr at pgf@iap@#2}}%
-  \expandafter\edef\csname qrr at pgf@iap@#2@\endcsname{{\the\wd\pgfutil at tempboxa}{\the\ht\pgfutil at tempboxa}}%
+  \pgfdeclareimage[#1]{tikzext at pgf@iap@#2}{#3}%
+  \sbox\pgfutil at tempboxa{\pgfuseimage{tikzext at pgf@iap@#2}}%
+  \expandafter\edef\csname tikzext at pgf@iap@#2@\endcsname{{\the\wd\pgfutil at tempboxa}{\the\ht\pgfutil at tempboxa}}%
 }
 \tikzset{
   image as pattern/name/.initial=,
@@ -22,13 +29,13 @@
   image as pattern/options/.style={/tikz/image as pattern/option/.append style={#1}},
   image as pattern/.default=,
   image as pattern/.code={
-    \tikzset{image as pattern/.cd,#1}
+    \pgfqkeys{/tikz/image as pattern}{#1}%
     \pgfkeysgetvalue{/tikz/image as pattern/name}\tikz at temp
     \pgfutil at ifxempty\tikz at temp{%
       \tikzerror{You need to specify a name for the ``image-pattern'' to be used.}%
     }{%
-      \edef\tikz at tempa{\expandafter\expandafter\expandafter\pgfutil at firstoftwo\csname qrr at pgf@iap@\tikz at temp @\endcsname}%
-      \edef\tikz at tempb{\expandafter\expandafter\expandafter\pgfutil at secondoftwo\csname qrr at pgf@iap@\tikz at temp @\endcsname}%
+      \edef\tikz at tempa{\expandafter\expandafter\expandafter\pgfutil at firstoftwo\csname tikzext at pgf@iap@\tikz at temp @\endcsname}%
+      \edef\tikz at tempb{\expandafter\expandafter\expandafter\pgfutil at secondoftwo\csname tikzext at pgf@iap@\tikz at temp @\endcsname}%
       \pgfkeysalso{/tikz/path picture={%
         \pgf at process{\pgfpointanchor{path picture bounding box}{north east}}%
         \pgf at xa\pgf at x\pgf at ya\pgf at y
@@ -37,7 +44,7 @@
         \pgfutil at loop
           {%
           \pgfutil at loop
-            \expandafter\pgftext\expandafter[/tikz/image as pattern/option,at=\pgfqpoint{\pgf at xb}{\pgf at yb}]{\pgfuseimage{qrr at pgf@iap@\tikz at temp}}%
+            \expandafter\pgftext\expandafter[/tikz/image as pattern/option,at=\pgfqpoint{\pgf at xb}{\pgf at yb}]{\pgfuseimage{tikzext at pgf@iap@\tikz at temp}}%
             \ifdim\pgf at yb<\pgf at ya
             \advance\pgf at yb\tikz at tempb
           \pgfutil at repeat

Modified: trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.positioning-plus.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.positioning-plus.code.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.positioning-plus.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -66,7 +66,7 @@
 \tikzset{east above/.code =\tikz at lib@place at handle@{#1}{south east}{0}{1}{north east}{1}}
 \tikzset{east below/.code=\tikz at lib@place at handle@{#1}{north east}{0}{-1}{south east}{1}}
 
-\newif\ifqrr at tikz@lib at place@postransform
+\newif\iftikzext at tikz@lib at place@postransform
 \tikzset{node distance transformation/.is if=qrr at tikz@lib at place@postransform}
 \def\tikz at lib@place at handle@@#1#2#3#4{%
   \pgfutil at in@{of }{#1}%
@@ -81,7 +81,7 @@
     \expandafter\tikz at lib@place at parse@nums\expandafter{\tikz at lib@place at nums}%
     \pgf at x=#2\pgf at x
     \pgf at y=#3\pgf at y
-    \ifqrr at tikz@lib at place@postransform
+    \iftikzext at tikz@lib at place@postransform
       \pgf at pos@transform{\pgf at x}{\pgf at y}% change from original
     \fi
     \edef\tikz at lib@pos at call{\noexpand\pgftransformshift{\noexpand\pgfqpoint{\the\pgf at x}{\the\pgf at y}}}%
@@ -91,7 +91,7 @@
 \def\tikz at lib@place at handle@#1#2#3#4#5#6{%
   \pgfutil at in@{:}{#1}%
   \ifpgfutil at in@
-    \tikz at lib@place at handle@qrr@#1\tikz at stop
+    \tikzext at lib@place at handle@#1\tikz at stop
     \ifx\pgf at temp\pgfutil at empty
       \let\pgf at temp\tikz at node@distance
     \fi
@@ -107,24 +107,24 @@
     \expandafter\tikz at lib@place at handle@@\expandafter{\tikz at temp}{#3}{#4}{#5}%
   \fi
 }
-\def\tikz at lib@place at handle@qrr@#1:#2\tikz at stop{%
+\def\tikzext at lib@place at handle@#1:#2\tikz at stop{%
   \pgfutil at in@{and}{#1}%
   \ifpgfutil at in@
-    \tikz at lib@place at handle@qrr@@#1\tikz at stop
+    \tikzext at lib@place at handle@@#1\tikz at stop
   \else
-    \tikz at lib@place at handle@qrr@@#1and#1\tikz at stop
+    \tikzext at lib@place at handle@@#1and#1\tikz at stop
   \fi
   \def\pgf at temp{#2}%
 }
-\def\tikz at lib@place at handle@qrr@@#1and#2\tikz at stop{%
+\def\tikzext at lib@place at handle@@#1and#2\tikz at stop{%
   \def\pgf at tempa{#1}%
   \def\pgf at tempb{#2}%
 }
-\def\qrr at xyshift@starred#1#2#3{%
+\def\tikzext at xyshift@starred#1#2#3{%
   \edef\tikz at marshal{\noexpand\pgfutil at in@{and}{\tikz at node@distance}}%
   \tikz at marshal
   \ifpgfutil at in@
-    \expandafter\tikz at lib@place at handle@qrr@@\tikz at node@distance\tikz at stop
+    \expandafter\tikzext at lib@place at handle@@\tikz at node@distance\tikz at stop
   \else
     \let#3\tikz at node@distance
   \fi
@@ -144,8 +144,8 @@
     \pgftransformshift{\pgfqpoint{\pgf at x}{\pgf at y}}%
   \fi}
 \tikzset{
-  xshift*/.code=\qrr at xyshift@starred{#1}x\pgf at tempb,
-  yshift*/.code=\qrr at xyshift@starred{#1}y\pgf at tempa
+  xshift*/.code=\tikzext at xyshift@starred{#1}x\pgf at tempb,
+  yshift*/.code=\tikzext at xyshift@starred{#1}y\pgf at tempa
 }
 
 \def\pgfutil at firstofmany#1#2\pgf at stop{#1}
@@ -233,7 +233,7 @@
   \begingroup
     \edef\pgfmath at temp{\noexpand\pgfutil at in@{and}{\tikz at node@distance}}%
     \pgfmath at temp\ifpgfutil at in@
-      \expandafter\tikz at lib@place at handle@qrr@@\tikz at node@distance\tikz at stop
+      \expandafter\tikzext at lib@place at handle@@\tikz at node@distance\tikz at stop
     \else
       \let\pgf at tempb\tikz at node@distance
     \fi
@@ -245,7 +245,7 @@
   \begingroup
     \edef\pgfmath at temp{\noexpand\pgfutil at in@{and}{\tikz at node@distance}}%
     \pgfmath at temp\ifpgfutil at in@
-      \expandafter\tikz at lib@place at handle@qrr@@\tikz at node@distance\tikz at stop
+      \expandafter\tikzext at lib@place at handle@@\tikz at node@distance\tikz at stop
     \else
       \let\pgf at tempa\tikz at node@distance
     \fi
@@ -256,7 +256,7 @@
 %\tikzdeclarecoordinatesystem{node distance}{%
 %  \tikz at cs@nd#1\tikz at stop}
 %\def\tikz at cs@nd#1,#2\tikz at stop{%
-%  \def\qrr at xyshift@starred at action##1{\pgftransformshift{##1}}%
-%  \qrr at xyshift@starred{#1}x\pgf at tempb
-%  \qrr at xyshift@starred{#2}y\pgf at tempa}
+%  \def\tikzext at xyshift@starred at action##1{\pgftransformshift{##1}}%
+%  \tikzext at xyshift@starred{#1}x\pgf at tempb
+%  \tikzext at xyshift@starred{#2}y\pgf at tempa}
 \endinput

Modified: trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.transformations.mirror.code.tex
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.transformations.mirror.code.tex	2022-09-25 20:13:09 UTC (rev 64505)
+++ trunk/Master/texmf-dist/tex/latex/tikz-ext/tikzlibraryext.transformations.mirror.code.tex	2022-09-25 20:13:55 UTC (rev 64506)
@@ -10,61 +10,121 @@
   mirror/.code={%
     \pgfutil at in@{--}{#1}%
     \ifpgfutil at in@
-      \tikz at trans@mirror#1\@nil
+      \tikzext at trans@mirror#1\tikz at stop
     \else
-      \tikz at scan@one at point\pgfqtransformmirror#1\relax
+      \tikz at addtransform{\tikz at scan@one at point\pgfqtransformmirror#1\relax}%
     \fi},
-  ymirror/.code={\pgfutil at ifnextchar(\tikz at trans@ymirror at coordinate\tikz at trans@ymirror at simple#1\@nil},
-  xmirror/.code={\pgfutil at ifnextchar(\tikz at trans@xmirror at coordinate\tikz at trans@xmirror at simple#1\@nil},
+  ymirror/.code={\pgfutil at ifnextchar(\tikzext at trans@ymirror at coordinate\tikzext at trans@ymirror at simple#1\tikz at stop},
+  xmirror/.code={\pgfutil at ifnextchar(\tikzext at trans@xmirror at coordinate\tikzext at trans@xmirror at simple#1\tikz at stop},
   mirror x/.code={%
     \pgfextract at process\tikz at temp{\tikz at scan@one at point\pgfutil at firstofone#1\relax}%
-    \pgftransformmirror{\tikz at temp}{\pgfpointadd{\tikz at temp}{\pgfqpointxy{0}{1}}}},
+    \edef\tikz at marshal{%
+      \noexpand\tikz at addtransform{%
+        \noexpand\pgftransformmirror
+          {\expandafter\noexpand\tikz at temp}
+          {\noexpand\pgfpointadd{\expandafter\noexpand\tikz at temp}
+                                {\noexpand\pgfqpointxy{0}{1}}}}}%
+    \tikz at marshal
+  },
   mirror y/.code={%
     \pgfextract at process\tikz at temp{\tikz at scan@one at point\pgfutil at firstofone#1\relax}%
-    \pgftransformmirror{\tikz at temp}{\pgfpointadd{\tikz at temp}{\pgfqpointxy{1}{0}}}},
+    \edef\tikz at marshal{%
+    \noexpand\tikz at addtransform{%
+      \noexpand\pgftransformmirror
+        {\expandafter\noexpand\tikz at temp}
+        {\noexpand\pgfpointadd{\expandafter\noexpand\tikz at temp}
+                              {\noexpand\pgfqpointxy{1}{0}}}}}%
+    \tikz at marshal
+  },
   mirror/.value required,
-  ymirror/.value required,
-  xmirror/.value required,
-  mirror x/.value required,
-  mirror y/.value required}
-\def\tikz at trans@mirror#1--#2\@nil{%
-  \pgftransformmirror{\tikz at scan@one at point\pgfutil at firstofone#1\relax}
-                     {\tikz at scan@one at point\pgfutil at firstofone#2\relax}}
-\def\tikz at trans@xmirror at simple#1\@nil{\pgftransformxmirror{#1}}
-\def\tikz at trans@ymirror at simple#1\@nil{\pgftransformymirror{#1}}
-\def\tikz at trans@xmirror at coordinate#1\@nil{%
-  \tikz at scan@one at point\pgfutil at firstofone#1\pgftransformxmirror{+\the\pgf at x}}
-\def\tikz at trans@ymirror at coordinate#1\@nil{%
-  \tikz at scan@one at point\pgfutil at firstofone#1\pgftransformymirror{+\the\pgf at y}}
+  ymirror/.default=+0pt,
+  xmirror/.default=+0pt,
+  mirror x/.default={(0,0)},
+  mirror y/.default={(0,0)}%
+}
+\def\tikzext at trans@mirror#1--#2\tikz at stop{%
+  \tikz at addtransform{%
+    \pgftransformmirror{\tikz at scan@one at point\pgfutil at firstofone#1\relax}
+                       {\tikz at scan@one at point\pgfutil at firstofone#2\relax}}}
+\def\tikzext at trans@xmirror at simple#1\tikz at stop{\tikz at addtransform{\pgftransformxmirror{#1}}}
+\def\tikzext at trans@ymirror at simple#1\tikz at stop{\tikz at addtransform{\pgftransformymirror{#1}}}
+\def\tikzext at trans@xmirror at coordinate#1\tikz at stop{%
+  \tikz at scan@one at point\pgfutil at firstofone#1\relax
+  \edef\tikz at marshal{%
+    \noexpand\tikz at addtransform{%
+      \noexpand\pgftransformxmirror{+\the\pgf at x}%
+    }%
+  }%
+  \tikz at marshal
+}
+\def\tikzext at trans@ymirror at coordinate#1\tikz at stop{%
+  \tikz at scan@one at point\pgfutil at firstofone#1\relax
+  \edef\tikz at marshal{%
+    \noexpand\tikz at addtransform{%
+      \noexpand\pgftransformymirror{+\the\pgf at y}%
+    }%
+  }%
+  \tikz at marshal
+}
 
 \tikzset{
   Mirror/.code={%
     \pgfutil at in@{--}{#1}%
     \ifpgfutil at in@
-      \tikz at trans@Mirror#1\@nil
+      \tikzext at trans@Mirror#1\tikz at stop
     \else
-      \tikz at scan@one at point\pgfqtransformMirror#1\relax
+      \tikz at addtransform{\tikz at scan@one at point\pgfqtransformMirror#1\relax}%
     \fi},
-  yMirror/.code={\pgfutil at ifnextchar(\tikz at trans@yMirror at coordinate\tikz at trans@yMirror at simple#1\@nil},
-  xMirror/.code={\pgfutil at ifnextchar(\tikz at trans@xMirror at coordinate\tikz at trans@xMirror at simple#1\@nil},
+  yMirror/.code={\pgfutil at ifnextchar(\tikzext at trans@yMirror at coordinate\tikzext at trans@yMirror at simple#1\tikz at stop},
+  xMirror/.code={\pgfutil at ifnextchar(\tikzext at trans@xMirror at coordinate\tikzext at trans@xMirror at simple#1\tikz at stop},
   Mirror x/.code={%
     \pgfextract at process\tikz at temp{\tikz at scan@one at point\pgfutil at firstofone#1\relax}%
-    \pgftransformMirror{\tikz at temp}{\pgfpointadd{\tikz at temp}{\pgfqpointxy{0}{1}}}},
+    \edef\tikz at marshal{%
+      \noexpand\tikz at addtransform{%
+        \noexpand\pgftransformMirror
+          {\expandafter\noexpand\tikz at temp}
+          {\noexpand\pgfpointadd{\expandafter\noexpand\tikz at temp}
+                                {\noexpand\pgfqpointxy{0}{1}}}}}%
+    \tikz at marshal
+  },
   Mirror y/.code={%
     \pgfextract at process\tikz at temp{\tikz at scan@one at point\pgfutil at firstofone#1\relax}%
-    \pgftransformMirror{\tikz at temp}{\pgfpointadd{\tikz at temp}{\pgfqpointxy{1}{0}}}},
+    \edef\tikz at marshal{%
+    \noexpand\tikz at addtransform{%
+      \noexpand\pgftransformMirror
+        {\expandafter\noexpand\tikz at temp}
+        {\noexpand\pgfpointadd{\expandafter\noexpand\tikz at temp}
+                              {\noexpand\pgfqpointxy{1}{0}}}}}%
+    \tikz at marshal
+  },
   Mirror/.value required,
-  yMirror/.value required,
-  xMirror/.value required,
-  Mirror x/.value required,
-  Mirror y/.value required}
-\def\tikz at trans@Mirror#1--#2\@nil{%
-  \pgftransformMirror{\tikz at scan@one at point\pgfutil at firstofone#1\relax}
-                     {\tikz at scan@one at point\pgfutil at firstofone#2\relax}}
-\def\tikz at trans@xMirror at simple#1\@nil{\pgftransformxMirror{#1}}
-\def\tikz at trans@yMirror at simple#1\@nil{\pgftransformyMirror{#1}}
-\def\tikz at trans@xMirror at coordinate#1\@nil{%
-  \tikz at scan@one at point\pgfutil at firstofone#1\pgftransformxMirror{+\the\pgf at x}}
-\def\tikz at trans@yMirror at coordinate#1\@nil{%
-  \tikz at scan@one at point\pgfutil at firstofone#1\pgftransformyMirror{+\the\pgf at y}}
+  yMirror/.default=+0pt,
+  xMirror/.default=+0pt,
+  Mirror x/.default={(0,0)},
+  Mirror y/.default={(0,0)}%
+}
+\def\tikzext at trans@Mirror#1--#2\tikz at stop{%
+  \tikz at addtransform{%
+    \pgftransformMirror{\tikz at scan@one at point\pgfutil at firstofone#1\relax}
+                       {\tikz at scan@one at point\pgfutil at firstofone#2\relax}}}
+\def\tikzext at trans@xMirror at simple#1\tikz at stop{\tikz at addtransform{\pgftransformxMirror{#1}}}
+\def\tikzext at trans@yMirror at simple#1\tikz at stop{\tikz at addtransform{\pgftransformyMirror{#1}}}
+\def\tikzext at trans@xMirror at coordinate#1\tikz at stop{%
+  \tikz at scan@one at point\pgfutil at firstofone#1\relax
+  \edef\tikz at marshal{%
+    \noexpand\tikz at addtransform{%
+      \noexpand\pgftransformxMirror{+\the\pgf at x}%
+    }%
+  }%
+  \tikz at marshal
+}
+\def\tikzext at trans@yMirror at coordinate#1\tikz at stop{%
+  \tikz at scan@one at point\pgfutil at firstofone#1\relax
+  \edef\tikz at marshal{%
+    \noexpand\tikz at addtransform{%
+      \noexpand\pgftransformyMirror{+\the\pgf at y}%
+    }%
+  }%
+  \tikz at marshal
+}
 \endinput



More information about the tex-live-commits mailing list.