summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/curve2e
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/curve2e')
-rw-r--r--Master/texmf-dist/tex/latex/curve2e/curve2e.sty34
1 files changed, 21 insertions, 13 deletions
diff --git a/Master/texmf-dist/tex/latex/curve2e/curve2e.sty b/Master/texmf-dist/tex/latex/curve2e/curve2e.sty
index 3edfbecf539..052cc398b0f 100644
--- a/Master/texmf-dist/tex/latex/curve2e/curve2e.sty
+++ b/Master/texmf-dist/tex/latex/curve2e/curve2e.sty
@@ -11,7 +11,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[2016/01/01]
\ProvidesPackage{curve2e}%
- [2019-03-29 v.2.0.1 Extension package for pict2e]
+ [2019-10-17 v.2.0.3 Extension package for pict2e]
@@ -48,7 +48,8 @@
\@wholewidth#1\@halfwidth.5\@wholewidth\ignorespaces}%
\newcommand\defaultlinethickness[1]{\defaultlinewidth=#1\relax
\def\thicklines{\linethickness{\defaultlinewidth}}%
-\def\thinlines{\linethickness{.5\defaultlinewidth}}\thinlines \ignorespaces}%
+\def\thinlines{\linethickness{.5\defaultlinewidth}}\thinlines
+ \ignorespaces}%
\def\LIne(#1){{\GetCoord(#1)\@tX\@tY
\moveto(0,0)
\pIIe@lineto{\@tX\unitlength}{\@tY\unitlength}\strokepath}\ignorespaces
@@ -129,20 +130,27 @@
\def\SplitPolar@@(#1:#2)#3#4{\DirFromAngle#1to\@DirA
\ScaleVect\@DirA by#2to\@DirA
\expandafter\SplitNod@@\expandafter(\@DirA)#3#4}
-
\let\originalput\put
\def\put(#1){\bgroup\GetCoord(#1)\@tX\@tY
\edef\x{\noexpand\egroup\noexpand\originalput(\@tX,\@tY)}\x}
-
-\let\originalmultiput\multiput
-\let\original@multiput\@multiput
-
-\long\def\@multiput(#1)#2#3{\bgroup\GetCoord(#1)\@mptX\@mptY
-\edef\x{\noexpand\egroup\noexpand\original@multiput(\@mptX,\@mptY)}%
-\x{#2}{#3}\ignorespaces}
-
-\gdef\multiput(#1)#2{\bgroup\GetCoord(#1)\@mptX\@mptY
-\edef\x{\noexpand\egroup\noexpand\originalmultiput(\@mptX,\@mptY)}\x(}%)
+\RenewDocumentCommand{\multiput}{ d() d() m m o }{%
+\IfNoValueTF{#1}{\PackageError{curve2e}{%
+ \string\multiput\space initial point coordinates missing}%
+ {Nothing done}}%
+ {\IfNoValueTF{#2}{\PackageError{curve2e}{%
+ \string\multiput\space Increment components missing}%
+ {Nothing done}%
+ }%
+ {\GetCoord(#2)\dX\dY
+ \put(#1){\def\X{0}\def\Y{0}\@multicnt=#3\relax
+ \@whilenum \@multicnt > \z@\do{%
+ \put(\X,\Y){#4}\IfValueTF{#5}{#5}{%
+ \edef\X{\fpeval{\X+\dX}}\edef\Y{\fpeval{\Y+\dY}}}%
+ \advance\@multicnt\m@ne
+ }%
+ }}
+ }%
+}
\def\vector(#1)#2{%
\begingroup
\GetCoord(#1)\d@mX\d@mY