texlive[56257] Master/texmf-dist: pict2e (3sep20)

commits+karl at tug.org commits+karl at tug.org
Thu Sep 3 23:12:16 CEST 2020


Revision: 56257
          http://tug.org/svn/texlive?view=revision&revision=56257
Author:   karl
Date:     2020-09-03 23:12:16 +0200 (Thu, 03 Sep 2020)
Log Message:
-----------
pict2e (3sep20)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/pict2e/p2e-drivers.pdf
    trunk/Master/texmf-dist/doc/latex/pict2e/pict2e.pdf
    trunk/Master/texmf-dist/source/latex/pict2e/pict2e.dtx
    trunk/Master/texmf-dist/tex/latex/pict2e/pict2e.sty

Modified: trunk/Master/texmf-dist/doc/latex/pict2e/p2e-drivers.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/pict2e/pict2e.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/pict2e/pict2e.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/pict2e/pict2e.dtx	2020-09-03 21:11:59 UTC (rev 56256)
+++ trunk/Master/texmf-dist/source/latex/pict2e/pict2e.dtx	2020-09-03 21:12:16 UTC (rev 56257)
@@ -23,7 +23,7 @@
 %
 %<*package>
 \NeedsTeXFormat{LaTeX2e}[1999/12/01]
-\ProvidesPackage{pict2e}[2020/06/20 v0.3e Improved picture commands (HjG,RN,JT)]
+\ProvidesPackage{pict2e}[2020/08/16 v0.4a Improved picture commands (HjG,RN,JT)]
 %</package>
 %
 %<*driver>
@@ -63,9 +63,8 @@
 % \fi
 %
 % \GetFileInfo{pict2e.sty}
-% \def\docdate{2020/06/20}
+% \def\docdate{2020/08/16}
 %
-% \CheckSum{2206}
 %
 % ^^A ========
 %
@@ -190,6 +189,7 @@
 % \changes{v0.3d}{2020/06/13}{\cmd{\@sline} renamed \cmd{\pIIe at sline} (RN)}
 % \changes{v0.3e}{2020/06/20}{Added \cmd{\Vector}, \cmd{\polyvector}
 %   suggested by FMi (RN)}
+% \changes{v0.4a}{2020/08/16}{Default lengths to match extended \LaTeX\ version}
 % \fi
 %
 % \changes{v0.1a}{2003/07/18}{First version. (RN)}
@@ -1501,6 +1501,27 @@
 %
 % \subsection{Preliminaries}
 %
+% \begin{macro}{\@defaultunitsset}
+% Command to accept a number or length expression.
+% Added to \LaTeX\ 2020-10-01 release but provided here for older releases.
+%
+% Set a length register, |#1|,
+% accepting number or an etex length expression, |#2|,
+% with default unit, |#3|.
+%
+% |#3| can be a literal unit such as |cm| or a length register such
+% as |\unitlength|.
+%
+% This is used in all |picture| commands that take picture coordinates.
+% So |\put(2,2)| as previously but now |\put(\textwidth-5cm,0.4\texteight)|
+% Note that you can only use expressions with lengths, |\put(1+2,0)| is not
+% supported.
+%    \begin{macrocode}
+\def\@defaultunitsset#1#2#3{%
+  \@defaultunits#1\dimexpr#2#3\relax\relax\@nnil}
+%    \end{macrocode}
+% \end{macro}
+%
 % \begin{macro}{\pIIe at mode}
 % \begin{macro}{\pIIe at code}
 % \begin{macro}{\Gin at driver}
@@ -2412,7 +2433,7 @@
     \begingroup
     \pIIe at checkslopeargsline{#1}{#2}%
     \@tempdima=#1pt\relax \@tempdimb=#2pt\relax
-    \@linelen #3\unitlength
+    \@defaultunitsset\@linelen{#3}\unitlength
     \ifdim\@linelen<\z@ \@badlinearg \else
       \pIIe at sline
       \pIIe at moveto\z@\z@
@@ -2485,10 +2506,10 @@
     \begingroup
     \pIIe at checkslopeargsvector{#1}{#2}%
     \@tempdima=#1pt\relax \@tempdimb=#2pt\relax
-    \@linelen#3\unitlength
+    \@defaultunitsset\@linelen{#3}\unitlength
     \ifdim\@linelen<\z@ \@badlinearg \else
       \pIIe at sline
-      \@linelen#3\unitlength
+      \@defaultunitsset\@linelen{#3}\unitlength
       \pIIe at pyth{\@tempdima}{\@tempdimb}\dimen@
       \ifdim\@tempdima=\z@ \else
         \ifdim\@tempdimb=\z@ \else
@@ -2871,7 +2892,7 @@
 %     argument (RN,HjG)}
 % \changes{v0.2n}{2004/04/22}{Allow zero diameter (RN/HjG)}
 %    \begin{macrocode}
-      \@tempdima#1\unitlength
+      \@defaultunitsset\@tempdima{#1}\unitlength
       \ifdim\@tempdima<\z@ \pIIe at badcircarg \fi
       \divide\@tempdima\tw@
       \pIIe at circle\@tempdima
@@ -3038,16 +3059,12 @@
 % \cite[p.~223]{LAMPORT} does not specify explicitly whether the
 % \oarg{rad} argument should be given in terms of \cmd{\unitlength} or
 % as an absolute length.
-% To implement this feature, we borrow from the \textsf{graphics}
-% package:
-% See \cmd{\Gin at defaultbp} and \cmd{\Gin at def@bp} from
-% \texttt{graphics.dtx}.
+% This is now re-implemented in terms of \cmd{@defaultunitsset}.
 %    \begin{macrocode}
   \newcommand*\pIIe at defaultUL[2]{%
-    \afterassignment\pIIe at def@UL\dimen@#2\unitlength\relax{#1}{#2}}
+    \@defaultunitsset\dimen@{#2}\unitlength
+    \edef#1{\the\dimen@}}
 %    \end{macrocode}
-% However, things are simpler in our case, since we always need the
-% value stored in \cmd{\dimen@}.
 % Hence, we could\slash should omit the unnecessary argument!?)
 % \changes{v0.2h}{2004/01/07}{Check for negative or zero radius
 %     argument (RN,HjG)}
@@ -3103,8 +3120,8 @@
 %    \end{macrocode}
 % In analogy to circles, we need only half of the size value.
 %    \begin{macrocode}
-    \@ovxx#1\unitlength \divide\@ovxx\tw@
-    \@ovyy#2\unitlength \divide\@ovyy\tw@
+    \@defaultunitsset\@ovxx{#1}\unitlength \divide\@ovxx\tw@
+    \@defaultunitsset\@ovyy{#2}\unitlength \divide\@ovyy\tw@
     \@tempdimc \ifdim\@ovyy>\@ovxx \@ovxx \else \@ovyy \fi
     \ifdim\pIIe at maxovalrad<\@tempdimc \@tempdimc\pIIe at maxovalrad\relax \fi
 %    \end{macrocode}
@@ -3238,9 +3255,12 @@
 %    \begin{macrocode}
       \@killglue
       \begingroup
-      \@ovxx#2\unitlength \@ovyy#3\unitlength
-      \@ovdx#4\unitlength \@ovdy#5\unitlength
-      \@xdim#6\unitlength \@ydim#7\unitlength
+      \@defaultunitsset\@ovxx{#2}\unitlength
+      \@defaultunitsset\@ovyy{#3}\unitlength
+      \@defaultunitsset\@ovdx{#4}\unitlength
+      \@defaultunitsset\@ovdy{#5}\unitlength
+      \@defaultunitsset\@xdim{#6}\unitlength
+      \@defaultunitsset\@ydim{#7}\unitlength
 %    \end{macrocode}
 % \noindent
 % \BigIndent $P_1 = P_m + 1/3 (P_0 - P_m)$
@@ -3398,10 +3418,12 @@
   \def\pIIe at arc@@(#1,#2)#3{%
     \if at tempswa
       \pIIe at moveto\z@\z@
-      \pIIe at arc{\z@}{\z@}{#3\unitlength}{#1}{#2}%
+      \@defaultunitsset\@tempdimc{#3}\unitlength
+      \pIIe at arc{\z@}{\z@}{\@tempdimc}{#1}{#2}%
       \pIIe at closepath\pIIe at fillGraph
     \else
-      \pIIe at arc[1]{\z@}{\z@}{#3\unitlength}{#1}{#2}%
+      \@defaultunitsset\@tempdimc{#3}\unitlength
+      \pIIe at arc[1]{\z@}{\z@}{\@tempdimc}{#1}{#2}%
       \pIIe at strokeGraph
     \fi}
   \ifx\undefined\arc
@@ -3428,12 +3450,16 @@
   \def\Line(#1,#2)(#3,#4){\polyline(#1,#2)(#3,#4)}
   \def\polyline(#1,#2){%
     \@killglue
-    \pIIe at moveto{#1\unitlength}{#2\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at moveto{\@tempdimc}{\@tempdimb}%
     \@ifnextchar\lp at r{\@polyline}{\PackageWarning{pict2e}%
       {Polygonal lines require at least two vertices!}%
     \ignorespaces}}
   \def\@polyline(#1,#2){%
-    \pIIe at lineto{#1\unitlength}{#2\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at lineto{\@tempdimc}{\@tempdimb}%
     \@ifnextchar\lp at r{\@polyline}{\pIIe at strokeGraph\ignorespaces}}
   \def\Vector(#1,#2)(#3,#4){\polyvector(#1,#2)(#3,#4)}
   \def\polyvector(#1,#2){%
@@ -3445,8 +3471,10 @@
 %    \end{macrocode}
 % See the similar definition for \cmd{\vector} (\ref{sec:implementation:vector})
 %    \begin{macrocode}
-    \@xdim#1\unitlength \@tempdima=#3\unitlength 
-    \@ydim#2\unitlength \@tempdimb=#4\unitlength 
+    \@defaultunitsset\@xdim{#1}\unitlength
+    \@defaultunitsset\@tempdima{#3}\unitlength 
+    \@defaultunitsset\@ydim{#2}\unitlength
+    \@defaultunitsset\@tempdimb{#4}\unitlength 
     \advance\@tempdima-\@xdim \advance\@tempdimb-\@ydim
     \ifdim\@tempdima=\z@ \@linelen\@tempdimb \else
       \ifdim\@tempdimb=\z@ \@linelen\@tempdima \else
@@ -3467,11 +3495,16 @@
     \@ifstar{\begingroup\@tempswatrue\@polygon}%
       {\begingroup\@tempswafalse\@polygon}}
   \def\@polygon(#1,#2){%
-    \pIIe at moveto{#1\unitlength}{#2\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at moveto{\@tempdimc}{\@tempdimb}%
     \@ifnextchar\lp at r{\@@polygon}{\PackageWarning{pict2e}%
       {Polygons require at least two vertices!}%
     \ignorespaces}}
-  \def\@@polygon(#1,#2){\pIIe at lineto{#1\unitlength}{#2\unitlength}%
+  \def\@@polygon(#1,#2){%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at lineto{\@tempdimc}{\@tempdimb}%
     \@ifnextchar\lp at r{\@@polygon}{\pIIe at closepath
       \if at tempswa\pIIe at fillGraph\else\pIIe at strokeGraph\fi
       \endgroup
@@ -3497,20 +3530,33 @@
 %    \begin{macrocode}
   \def\moveto(#1,#2){%
     \@killglue
-    \pIIe at moveto{#1\unitlength}{#2\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at moveto{\@tempdimc}{\@tempdimb}%
     \ignorespaces}
   \def\lineto(#1,#2){%
     \@killglue
-    \pIIe at lineto{#1\unitlength}{#2\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at lineto{\@tempdimc}{\@tempdimb}%
     \ignorespaces}
   \def\curveto(#1,#2)(#3,#4)(#5,#6){%
     \@killglue
-    \pIIe at curveto{#1\unitlength}{#2\unitlength}{#3\unitlength}{#4\unitlength}%
-      {#5\unitlength}{#6\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \@defaultunitsset\@tempdima{#3}\unitlength
+    \@defaultunitsset\dimen@{#4}\unitlength
+    \@defaultunitsset\@ovxx{#5}\unitlength
+    \@defaultunitsset\@ovyy{#6}\unitlength
+    \pIIe at curveto{\@tempdimc}{\@tempdimb}{\@tempdima}{\dimen@}%
+      {\@ovxx}{\@ovyy}%
     \ignorespaces}
   \newcommand*\circlearc[6][0]{%
     \@killglue
-    \pIIe at arc[#1]{#2\unitlength}{#3\unitlength}{#4\unitlength}{#5}{#6}%
+    \@defaultunitsset\@tempdimc{#2}\unitlength
+    \@defaultunitsset\@tempdimb{#3}\unitlength
+    \@defaultunitsset\@tempdima{#4}\unitlength
+    \pIIe at arc[#1]{\@tempdimc}{\@tempdimb}{\@tempdima}{#5}{#6}%
     \ignorespaces}
   \def\closepath{\pIIe at closepath}
   \def\strokepath{\pIIe at strokeGraph}
@@ -3596,9 +3642,17 @@
     \def\pIIe@@cbezier#1)#2(#3)#4(#5)#6({\@cbezier#1)(#3)(#5)(}%
     \def\@cbezier[#1](#2,#3)(#4,#5)(#6,#7)(#8,#9){%
       \@killglue
-      \pIIe at moveto{#2\unitlength}{#3\unitlength}%
-      \pIIe at curveto{#4\unitlength}{#5\unitlength}%
-        {#6\unitlength}{#7\unitlength}{#8\unitlength}{#9\unitlength}%
+      \@defaultunitsset\@tempdimc{#2}\unitlength
+      \@defaultunitsset\@tempdimb{#3}\unitlength
+      \pIIe at moveto{\@tempdimc}{\@tempdimb}%
+      \@defaultunitsset\@tempdimc{#4}\unitlength
+      \@defaultunitsset\@tempdimb{#5}\unitlength
+      \@defaultunitsset\@tempdima{#6}\unitlength
+      \@defaultunitsset\dimen@{#7}\unitlength
+      \@defaultunitsset\@ovxx{#8}\unitlength
+      \@defaultunitsset\@ovyy{#9}\unitlength
+      \pIIe at curveto{\@tempdimc}{\@tempdimb}%
+        {\@tempdima}{\dimen@}{\@ovxx}{\@ovyy}%
       \pIIe at strokeGraph
       \ignorespaces}%
   }

Modified: trunk/Master/texmf-dist/tex/latex/pict2e/pict2e.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/pict2e/pict2e.sty	2020-09-03 21:11:59 UTC (rev 56256)
+++ trunk/Master/texmf-dist/tex/latex/pict2e/pict2e.sty	2020-09-03 21:12:16 UTC (rev 56257)
@@ -24,7 +24,7 @@
 %% This work consists of all files listed in `manifest.txt'.
 %% 
 \NeedsTeXFormat{LaTeX2e}[1999/12/01]
-\ProvidesPackage{pict2e}[2020/06/20 v0.3e Improved picture commands (HjG,RN,JT)]
+\ProvidesPackage{pict2e}[2020/08/16 v0.4a Improved picture commands (HjG,RN,JT)]
 \edef\Gin at codes{%
  \catcode`\noexpand\^^A\the\catcode`\^^A\relax
  \catcode`\noexpand\"\the\catcode`\"\relax
@@ -34,6 +34,8 @@
 \@makeother\"%
 \@makeother\!%
 \@makeother\:%
+\def\@defaultunitsset#1#2#3{%
+  \@defaultunits#1\dimexpr#2#3\relax\relax\@nnil}
 \newcommand*\pIIe at mode{-1}
 \newcommand*\pIIe at code[1]{}
 \providecommand*\Gin at driver{}
@@ -388,7 +390,7 @@
     \begingroup
     \pIIe at checkslopeargsline{#1}{#2}%
     \@tempdima=#1pt\relax \@tempdimb=#2pt\relax
-    \@linelen #3\unitlength
+    \@defaultunitsset\@linelen{#3}\unitlength
     \ifdim\@linelen<\z@ \@badlinearg \else
       \pIIe at sline
       \pIIe at moveto\z@\z@
@@ -423,10 +425,10 @@
     \begingroup
     \pIIe at checkslopeargsvector{#1}{#2}%
     \@tempdima=#1pt\relax \@tempdimb=#2pt\relax
-    \@linelen#3\unitlength
+    \@defaultunitsset\@linelen{#3}\unitlength
     \ifdim\@linelen<\z@ \@badlinearg \else
       \pIIe at sline
-      \@linelen#3\unitlength
+      \@defaultunitsset\@linelen{#3}\unitlength
       \pIIe at pyth{\@tempdima}{\@tempdimb}\dimen@
       \ifdim\@tempdima=\z@ \else
         \ifdim\@tempdimb=\z@ \else
@@ -492,7 +494,7 @@
     \def\@circle#1{\begingroup \@tempswafalse\pIIe at circ{#1}}
     \def\@dot#1{\begingroup \@tempswatrue\pIIe at circ{#1}}
   \newcommand*\pIIe at circ[1]{%
-      \@tempdima#1\unitlength
+      \@defaultunitsset\@tempdima{#1}\unitlength
       \ifdim\@tempdima<\z@ \pIIe at badcircarg \fi
       \divide\@tempdima\tw@
       \pIIe at circle\@tempdima
@@ -525,7 +527,8 @@
       {The radius of a circle, dot, arc or oval corner must be greater than zero.}}%
   \newcommand*\maxovalrad{20pt}
   \newcommand*\pIIe at defaultUL[2]{%
-    \afterassignment\pIIe at def@UL\dimen@#2\unitlength\relax{#1}{#2}}
+    \@defaultunitsset\dimen@{#2}\unitlength
+    \edef#1{\the\dimen@}}
   \newcommand*\pIIe at def@UL{}
   \def\pIIe at def@UL#1\relax#2#3{%
     \edef#2{\the\dimen@}}
@@ -537,8 +540,8 @@
       \ifdim\pIIe at maxovalrad<\z@ \pIIe at badcircarg \fi
       \pIIe at oval}
   \def\@oval(#1,#2)[#3]{%
-    \@ovxx#1\unitlength \divide\@ovxx\tw@
-    \@ovyy#2\unitlength \divide\@ovyy\tw@
+    \@defaultunitsset\@ovxx{#1}\unitlength \divide\@ovxx\tw@
+    \@defaultunitsset\@ovyy{#2}\unitlength \divide\@ovyy\tw@
     \@tempdimc \ifdim\@ovyy>\@ovxx \@ovxx \else \@ovyy \fi
     \ifdim\pIIe at maxovalrad<\@tempdimc \@tempdimc\pIIe at maxovalrad\relax \fi
     \@xdim\@ovxx \advance\@xdim-\@tempdimc
@@ -574,9 +577,12 @@
     \ifnum #1=\z@
       \@killglue
       \begingroup
-      \@ovxx#2\unitlength \@ovyy#3\unitlength
-      \@ovdx#4\unitlength \@ovdy#5\unitlength
-      \@xdim#6\unitlength \@ydim#7\unitlength
+      \@defaultunitsset\@ovxx{#2}\unitlength
+      \@defaultunitsset\@ovyy{#3}\unitlength
+      \@defaultunitsset\@ovdx{#4}\unitlength
+      \@defaultunitsset\@ovdy{#5}\unitlength
+      \@defaultunitsset\@xdim{#6}\unitlength
+      \@defaultunitsset\@ydim{#7}\unitlength
       \pIIe at bezier@QtoC\@ovxx\@ovdx\@ovro
       \pIIe at bezier@QtoC\@ovyy\@ovdy\@ovri
       \pIIe at bezier@QtoC\@xdim\@ovdx\@clnwd
@@ -654,10 +660,12 @@
   \def\pIIe at arc@@(#1,#2)#3{%
     \if at tempswa
       \pIIe at moveto\z@\z@
-      \pIIe at arc{\z@}{\z@}{#3\unitlength}{#1}{#2}%
+      \@defaultunitsset\@tempdimc{#3}\unitlength
+      \pIIe at arc{\z@}{\z@}{\@tempdimc}{#1}{#2}%
       \pIIe at closepath\pIIe at fillGraph
     \else
-      \pIIe at arc[1]{\z@}{\z@}{#3\unitlength}{#1}{#2}%
+      \@defaultunitsset\@tempdimc{#3}\unitlength
+      \pIIe at arc[1]{\z@}{\z@}{\@tempdimc}{#1}{#2}%
       \pIIe at strokeGraph
     \fi}
   \ifx\undefined\arc
@@ -669,12 +677,16 @@
   \def\Line(#1,#2)(#3,#4){\polyline(#1,#2)(#3,#4)}
   \def\polyline(#1,#2){%
     \@killglue
-    \pIIe at moveto{#1\unitlength}{#2\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at moveto{\@tempdimc}{\@tempdimb}%
     \@ifnextchar\lp at r{\@polyline}{\PackageWarning{pict2e}%
       {Polygonal lines require at least two vertices!}%
     \ignorespaces}}
   \def\@polyline(#1,#2){%
-    \pIIe at lineto{#1\unitlength}{#2\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at lineto{\@tempdimc}{\@tempdimb}%
     \@ifnextchar\lp at r{\@polyline}{\pIIe at strokeGraph\ignorespaces}}
   \def\Vector(#1,#2)(#3,#4){\polyvector(#1,#2)(#3,#4)}
   \def\polyvector(#1,#2){%
@@ -683,8 +695,10 @@
       \PackageWarning{pict2e}%
       {Polygonal vectors require at least two vertices!}\ignorespaces}}
   \def\@polyvector(#1,#2)(#3,#4){%
-    \@xdim#1\unitlength \@tempdima=#3\unitlength
-    \@ydim#2\unitlength \@tempdimb=#4\unitlength
+    \@defaultunitsset\@xdim{#1}\unitlength
+    \@defaultunitsset\@tempdima{#3}\unitlength
+    \@defaultunitsset\@ydim{#2}\unitlength
+    \@defaultunitsset\@tempdimb{#4}\unitlength
     \advance\@tempdima-\@xdim \advance\@tempdimb-\@ydim
     \ifdim\@tempdima=\z@ \@linelen\@tempdimb \else
       \ifdim\@tempdimb=\z@ \@linelen\@tempdima \else
@@ -702,11 +716,16 @@
     \@ifstar{\begingroup\@tempswatrue\@polygon}%
       {\begingroup\@tempswafalse\@polygon}}
   \def\@polygon(#1,#2){%
-    \pIIe at moveto{#1\unitlength}{#2\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at moveto{\@tempdimc}{\@tempdimb}%
     \@ifnextchar\lp at r{\@@polygon}{\PackageWarning{pict2e}%
       {Polygons require at least two vertices!}%
     \ignorespaces}}
-  \def\@@polygon(#1,#2){\pIIe at lineto{#1\unitlength}{#2\unitlength}%
+  \def\@@polygon(#1,#2){%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at lineto{\@tempdimc}{\@tempdimb}%
     \@ifnextchar\lp at r{\@@polygon}{\pIIe at closepath
       \if at tempswa\pIIe at fillGraph\else\pIIe at strokeGraph\fi
       \endgroup
@@ -713,20 +732,33 @@
       \ignorespaces}}
   \def\moveto(#1,#2){%
     \@killglue
-    \pIIe at moveto{#1\unitlength}{#2\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at moveto{\@tempdimc}{\@tempdimb}%
     \ignorespaces}
   \def\lineto(#1,#2){%
     \@killglue
-    \pIIe at lineto{#1\unitlength}{#2\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \pIIe at lineto{\@tempdimc}{\@tempdimb}%
     \ignorespaces}
   \def\curveto(#1,#2)(#3,#4)(#5,#6){%
     \@killglue
-    \pIIe at curveto{#1\unitlength}{#2\unitlength}{#3\unitlength}{#4\unitlength}%
-      {#5\unitlength}{#6\unitlength}%
+    \@defaultunitsset\@tempdimc{#1}\unitlength
+    \@defaultunitsset\@tempdimb{#2}\unitlength
+    \@defaultunitsset\@tempdima{#3}\unitlength
+    \@defaultunitsset\dimen@{#4}\unitlength
+    \@defaultunitsset\@ovxx{#5}\unitlength
+    \@defaultunitsset\@ovyy{#6}\unitlength
+    \pIIe at curveto{\@tempdimc}{\@tempdimb}{\@tempdima}{\dimen@}%
+      {\@ovxx}{\@ovyy}%
     \ignorespaces}
   \newcommand*\circlearc[6][0]{%
     \@killglue
-    \pIIe at arc[#1]{#2\unitlength}{#3\unitlength}{#4\unitlength}{#5}{#6}%
+    \@defaultunitsset\@tempdimc{#2}\unitlength
+    \@defaultunitsset\@tempdimb{#3}\unitlength
+    \@defaultunitsset\@tempdima{#4}\unitlength
+    \pIIe at arc[#1]{\@tempdimc}{\@tempdimb}{\@tempdima}{#5}{#6}%
     \ignorespaces}
   \def\closepath{\pIIe at closepath}
   \def\strokepath{\pIIe at strokeGraph}
@@ -753,9 +785,17 @@
     \def\pIIe@@cbezier#1)#2(#3)#4(#5)#6({\@cbezier#1)(#3)(#5)(}%
     \def\@cbezier[#1](#2,#3)(#4,#5)(#6,#7)(#8,#9){%
       \@killglue
-      \pIIe at moveto{#2\unitlength}{#3\unitlength}%
-      \pIIe at curveto{#4\unitlength}{#5\unitlength}%
-        {#6\unitlength}{#7\unitlength}{#8\unitlength}{#9\unitlength}%
+      \@defaultunitsset\@tempdimc{#2}\unitlength
+      \@defaultunitsset\@tempdimb{#3}\unitlength
+      \pIIe at moveto{\@tempdimc}{\@tempdimb}%
+      \@defaultunitsset\@tempdimc{#4}\unitlength
+      \@defaultunitsset\@tempdimb{#5}\unitlength
+      \@defaultunitsset\@tempdima{#6}\unitlength
+      \@defaultunitsset\dimen@{#7}\unitlength
+      \@defaultunitsset\@ovxx{#8}\unitlength
+      \@defaultunitsset\@ovyy{#9}\unitlength
+      \pIIe at curveto{\@tempdimc}{\@tempdimb}%
+        {\@tempdima}{\dimen@}{\@ovxx}{\@ovyy}%
       \pIIe at strokeGraph
       \ignorespaces}%
   }



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