diff options
author | Karl Berry <karl@freefriends.org> | 2020-01-05 23:11:08 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-01-05 23:11:08 +0000 |
commit | 81e3895f623a90cd9effa1316ff86721fac1c685 (patch) | |
tree | d3c47201908aa161db7c5994fbebd511146a09f9 | |
parent | 151d643febdfc2f4147d920463fec10668b03be9 (diff) |
curve2e (6jan20)
git-svn-id: svn://tug.org/texlive/trunk@53331 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/curve2e/README.txt | 25 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/curve2e/curve2e.pdf | bin | 703517 -> 710384 bytes | |||
-rw-r--r-- | Master/texmf-dist/source/latex/curve2e/curve2e.dtx | 93 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/curve2e/curve2e-v161.sty | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/curve2e/curve2e.sty | 10 |
5 files changed, 82 insertions, 48 deletions
diff --git a/Master/texmf-dist/doc/latex/curve2e/README.txt b/Master/texmf-dist/doc/latex/curve2e/README.txt index 84e7fecffbb..1d74851d13a 100644 --- a/Master/texmf-dist/doc/latex/curve2e/README.txt +++ b/Master/texmf-dist/doc/latex/curve2e/README.txt @@ -6,11 +6,11 @@ %% %% curve2e.dtx (with options: `readme') %% -%% Copyright (C) 2005--2019 Claudio Beccari all rights reserved. +%% Copyright (C) 2005--2020 Claudio Beccari all rights reserved. %% License information appended %% File README.txt for package curve2e - [2019-12-06 v.2.0.7 Extension package for pict2e] + [2020-01-05 v.2.0.8 Extension package for pict2e] @@ -24,7 +24,9 @@ ltxdoc.cfg curve2e.dtx is the documented TeX source file of file curve2e.sty; you get curve2e.sty, curve2e.pdf, and curve2e-v161.sty by running pdflatex on curve2e.dtx. The ltxdoc.cfg file customises the way the documentation -file is typeset. This specific .cfg file is part of the ltxdoc package functionality and it is supposed to be configured for each specifica other bundle. +file is typeset. This specific .cfg file is part of the ltxdoc package +functionality and it is supposed to be configured for each specific +other bundle. README.txt, this file, contains general information. @@ -41,7 +43,7 @@ slope, to draw arcs and curved vectors, to draw curves where just the interpolating nodes are specified together with the slopes at the nodes; closed paths of any shape can be filled with color; all coordinates are treated as ordered pairs, i.e. 'complex numbers'; -coordinates may be expressed also in polar form. +coordinates may be expressed also in polar form. Coordinates may be specified with macros, so that editing any drawing is rendered much simpler: any point specified with a macro is modified only once in the macro definition. Some of these features have been incorporated in the 2011 version of pict2e; therefore this package avoids any modification to the original pict2e commands. @@ -49,9 +51,12 @@ pict2e commands. Curve2e now accepts polar coordinates in addition to the usual cartesian ones; several macros have been upgraded and a new macro for tracing cubic Bezier splines with their control nodes specified in polar form is -available. The same applies to quadratic Bezier splines. The \multiput +available. The same applies to quadratic Bezier splines. The multiput command has been completely modified in a backwards compatible way, as -to manipulate the increment components in a configurable way. +to manipulate the increment components in a configurable way. A new +xmultiput command has been defined that is more configurable than the +original one; both \multiput and \xmultiput are backwards compatible with +the original picture environment definition. This version solves a conflict with package eso-pic. @@ -71,10 +76,10 @@ have an older or a basic/incomplete installation of the TeX system, such L3 functions might not be available. This is why this package checks the presence of the developer interface; in case such interface is not available it falls back to the previous version -renamed curve2e-v161.sty, which is part of this bundle, and that must -not be renamed in any way. The compatibility mentioned above implies -that the user macros remain the same, but their implementation requires -the L3 interface. +renamed curve2e-v161.sty, which is part of this bundle; this order +package name must not be modified in any way. The compatibility mentioned +above implies that the user macros remain the same, but their +implementation requires the L3 interface. The package has the LPPL status of author maintained. diff --git a/Master/texmf-dist/doc/latex/curve2e/curve2e.pdf b/Master/texmf-dist/doc/latex/curve2e/curve2e.pdf Binary files differindex 38387510998..cd2c9f9c77c 100644 --- a/Master/texmf-dist/doc/latex/curve2e/curve2e.pdf +++ b/Master/texmf-dist/doc/latex/curve2e/curve2e.pdf diff --git a/Master/texmf-dist/source/latex/curve2e/curve2e.dtx b/Master/texmf-dist/source/latex/curve2e/curve2e.dtx index d8500552442..2bf4c5af2d0 100644 --- a/Master/texmf-dist/source/latex/curve2e/curve2e.dtx +++ b/Master/texmf-dist/source/latex/curve2e/curve2e.dtx @@ -6,7 +6,7 @@ \keepsilent \preamble - Copyright (C) 2005--2019 Claudio Beccari all rights reserved. + Copyright (C) 2005--2020 Claudio Beccari all rights reserved. License information appended \endpreamble @@ -47,7 +47,7 @@ README.txt and curve2e-v161.sty. %<+package>\ProvidesPackage{curve2e}% %<+readme>File README.txt for package curve2e %<*package|readme> - [2019-12-06 v.2.0.7 Extension package for pict2e] + [2020-01-05 v.2.0.8 Extension package for pict2e] %</package|readme> %<*driver> \documentclass{ltxdoc}\errorcontextlines=9 @@ -110,7 +110,7 @@ README.txt and curve2e-v161.sty. %</driver> % \fi % -% \CheckSum{5592} +% \CheckSum{5600} % \begin{abstract} % This file documents the |curve2e| extension package to the |pict2e| % bundle implementation; the latter was described by Lamport @@ -476,7 +476,7 @@ README.txt and curve2e-v161.sty. % \begin{verbatim} % \unitlength=.5mm % \begin{picture}(60,20) -% \put(0,0){\GraphGrid(80,20)} +% \GraphGrid(80,20) % \put(0,0){\vector(1.5,2.3){10}} % \put(20,0){\Vector(10,15.33333)} % \VECTOR(40,0)(50,15.33333) @@ -488,7 +488,7 @@ README.txt and curve2e-v161.sty. % \begin{minipage}{.48\textwidth}\centering % \unitlength=.5mm % \begin{picture}(60,20) -% \put(0,0){\GraphGrid(80,20)} +% \GraphGrid(80,20) % \put(0,0){\vector(1.5,2.3){10}} % \put(20,0){\Vector(10,15.33333)} % \VECTOR(40,0)(50,15.33333) @@ -538,7 +538,7 @@ README.txt and curve2e-v161.sty. %\begin{minipage}{0.55\textwidth} %\begin{verbatim} %\begin{picture}(40,30) -%\put(0,0){\GraphGrid(40,30)} +%\GraphGrid(40,30) %\Zbox(40,0)[l]{40,0}[1] %\Zbox(90:30)[bc]{90{:}30}[1] %\Zbox(60:30)[bc]{60{:}30}[1] @@ -551,7 +551,7 @@ README.txt and curve2e-v161.sty. %\hfill %\begin{minipage}{0.4\textwidth} %\begin{picture}(40,30) -%\put(0,0){\GraphGrid(40,30)} +%\GraphGrid(40,30) %\Zbox(40,0)[l]{40,0}[1] %\Zbox(90:30)[bc]{90{:}30}[1] %\Zbox(60:30)[bc]{60{:}30}[1] @@ -614,7 +614,7 @@ README.txt and curve2e-v161.sty. % \begin{verbatim} % \unitlength=1mm % \begin{picture}(40,40) -% \put(0,0){\GraphGrid(40,40)} +% \GraphGrid(40,40) % \Dashline(0,0)(40,10){4} % \put(0,0){\circle*{2}} % \Dashline(40,10)(0,25){4} @@ -631,7 +631,7 @@ README.txt and curve2e-v161.sty. % \begin{minipage}{.48\textwidth}\centering % \unitlength=1mm % \begin{picture}(40,40) -% \put(0,0){\GraphGrid(40,40)} +% \GraphGrid(40,40) % \Dashline(0,0)(40,10){4} % \put(0,0){\circle*{2}} % \Dashline(40,10)(0,25){4} @@ -653,7 +653,7 @@ README.txt and curve2e-v161.sty. %\begin{minipage}{0.55\textwidth} %\begin{verbatim} %\begin{picture}(40,30) -%\put(0,0){\GraphGrid(40,30)} +%\GraphGrid(40,30) %\Dashline(0,0)(40,10){2}\Dashline(0,0)(40,20){2} %\Dashline(0,0)(40,30){2}\Dashline(0,0)(30,30){2} %\Dashline(0,0)(20,30){2}\Dashline(0,0)(10,30){2} @@ -668,7 +668,7 @@ README.txt and curve2e-v161.sty. %\hfill %\begin{minipage}{0.4\textwidth}\raggedleft %\begin{picture}(40,30) -%\put(0,0){\GraphGrid(40,30)} +%\GraphGrid(40,30) %\Dashline(0,0)(40,10){2} %\Dashline(0,0)(40,20){2} %\Dashline(0,0)(40,30){2} @@ -701,7 +701,7 @@ README.txt and curve2e-v161.sty. %\begin{minipage}{0.55\textwidth} %\begin{verbatim} %\begin{picture}(40,30) -%\put(0,0){\GraphGrid(40,30)} +%\GraphGrid(40,30) %\Dotline(0,0)(40,10){1.5}\Dotline(0,0)(40,20){1.5} %\Dotline(0,0)(40,30){1.5}\Dotline(0,0)(30,30){1.5} %\Dotline(0,0)(20,30){1.5}\Dotline(0,0)(10,30){1.5} @@ -715,7 +715,7 @@ README.txt and curve2e-v161.sty. %\hfill %\begin{minipage}{0.4\textwidth}\raggedleft %\begin{picture}(40,30) -%\put(0,0){\GraphGrid(40,30)} +%\GraphGrid(40,30) %\Dotline(0,0)(40,10){1.5} %\Dotline(0,0)(40,20){1.5} %\Dotline(0,0)(40,30){1.5} @@ -731,7 +731,7 @@ README.txt and curve2e-v161.sty. %\end{minipage} %\caption{Different length dotted lines with the same nominal dot gap; % again notice the relative polar coordinates for the dotted lines -% starting at thhe grid lower right vertex.} +% starting at the grid lower right vertex.} %\label{fig:dottedlines} %\end{figure} %^^A @@ -787,7 +787,7 @@ README.txt and curve2e-v161.sty. % \begin{verbatim} % \unitlength=0.5mm % \begin{picture}(60,40) -% \put(0,0){\GraphGrid(60,40)} +% \GraphGrid(60,40) % \Arc(0,20)(30,0){60} % \VECTOR(0,20)(30,0)\VECTOR(0,20)(32.5,36) % \VectorArc(0,20)(15,10){60} @@ -800,7 +800,7 @@ README.txt and curve2e-v161.sty. % \begin{minipage}{.48\textwidth}\centering % \unitlength=0.5mm % \begin{picture}(60,40) -% \put(0,0){\GraphGrid(60,40)} +% \GraphGrid(60,40) % \Arc(0,20)(30,0){60} % \VECTOR(0,20)(30,0)\VECTOR(0,20)(32.5,36) % \VectorArc(0,20)(15,10){60} @@ -1336,7 +1336,7 @@ README.txt and curve2e-v161.sty. %\begin{Verbatim}[fontsize=\setfontsize{8}] %\unitlength=0.01\linewidth %\begin{picture}(100,100) -%\put(0,0){\GraphGrid(100,100)} +%\GraphGrid(100,100) %\multiput(0,0)(10,10){11}{\circle*{2}} %\color{blue!70!white} %\multiput(0,0)(10,0){11}{\circle*{2}}% @@ -1360,7 +1360,7 @@ README.txt and curve2e-v161.sty. %\begin{minipage}{0.45\linewidth} %\unitlength=0.01\linewidth %\begin{picture}(100,100) -%\put(0,0){\GraphGrid(100,100)} +%\GraphGrid(100,100) %\multiput(0,0)(10,10){11}{\circle*{2}} %\color{blue!70!white} %\multiput(0,0)(10,0){11}{\circle*{2}}% @@ -1398,7 +1398,7 @@ README.txt and curve2e-v161.sty. %\begin{verbatim} %\unitlength=0.0095\linewidth %\begin{picture}(100,100) -%\put(0,0){\GraphGrid(100,100)} +%\GraphGrid(100,100) %\put(50,50){\thicklines\circle{100}} %\xmultiput[50,50](60:40)(-30:1){12}% % {\makebox(0,0){\circle*{2}}}% @@ -1415,7 +1415,7 @@ README.txt and curve2e-v161.sty. %\begin{minipage}{0.45\textwidth}\raggedleft %\unitlength=0.0095\linewidth %\begin{picture}(100,100) -%\put(0,0){\GraphGrid(100,100)} +%\GraphGrid(100,100) %\put(50,50){\thicklines\circle{100}} %\xmultiput[50,50](60:40)(-30:1){12}% % {\makebox(0,0){\circle*{2}}}[\MultVect\R by\D to\R]% @@ -1577,7 +1577,7 @@ README.txt and curve2e-v161.sty. % in our preamble, we add, if not already defined by the package, the two % new commands that allow to make floating point tests, and to implement % a “while” cycle\footnote{Thanks to Brian Dunn who spotted a bug in -% the previous definitions.} +% the previous version definitions.} % \begin{macrocode} % \ExplSyntaxOn @@ -1753,8 +1753,8 @@ README.txt and curve2e-v161.sty. % specific slopes. % % It is necessary to redefine the low level macros \cs{moveto}, -% \cs{lineto}, and \cs{curveto}, because their original definition -% accepts only cartesian coordinates. We proceed the same as for the +% \cs{lineto}, and \cs{curveto}, because their original definitions +% accept only cartesian coordinates. We proceed the same as for the % \cs{put} command. % \begin{macrocode} \let\originalmoveto\moveto @@ -2360,8 +2360,8 @@ README.txt and curve2e-v161.sty. %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \subsection{The red service grid} %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% The next command is very useful for debugging while editing one's -% drawing; it draws a red grid with square meshes that are ten drawing +% The next command is handy for debugging while editing one's +% drawing; it draws a red grid with square meshes that are ten drawing % units apart; there is no graduation along the grid, since it is % supposed to be a debugging aid and the user should know what he/she is % doing; nevertheless it is advisable to displace the grid by means of a @@ -2369,14 +2369,34 @@ README.txt and curve2e-v161.sty. % coordinates that are multiples of 10. Missing to do so the readings % become cumbersome. The |\RoundUp| macro provides to increase the % grid dimensions to integer multiples of ten. +% Actually the new definition of this command does not need a |put| +% command (although it is not prohibited to use it) because its syntax +% now is the following one +%\begin{flushleft} +%\cs{GraphGrid}\parg{ll corner offset}\parg{grid dimensions} +%\end{flushleft} +% where the first argument is optional: if it is missing, the lower +% left corner is put at the origin of the canvas coordinates. Of course +% also the lower left corner offset is recommended to be specified with +% coordinates that are integer multiples of~10; this is particularly +% important when the |picture| environment offset is specified wit non +% integer multiple of~10 values. +% Actually, since both arguments are delimited with round parentheses, +% a single argument is assumed to contain the grid dimensions, while +% if both arguments are given, the first one is the lower left corner +% offset, and the second one the grid dimensions. % \begin{macrocode} -\def\GraphGrid(#1,#2){\bgroup\textcolor{red}{\linethickness{.1\p@}% +\def\Gr@phGrid(#1,#2){\bgroup\textcolor{red}{\linethickness{.1\p@}% \RoundUp#1modulo10to\@GridWd \RoundUp#2modulo10to\@GridHt \@tempcnta=\@GridWd \divide\@tempcnta10\relax \advance\@tempcnta\@ne \multiput(0,0)(10,0){\@tempcnta}{\line(0,1){\@GridHt}}% \@tempcnta=\@GridHt \divide\@tempcnta10\advance\@tempcnta\@ne \multiput(0,0)(0,10){\@tempcnta}{\line(1,0){\@GridWd}}\thinlines}% \egroup\ignorespaces} +\NewDocumentCommand\GraphGrid{r() d()}{% +\IfValueTF{#2}{\put(#1){\Gr@phGrid(#2)}}% + {\put(0,0){\Gr@phGrid(#1)}}} + % \end{macrocode} % Rounding up is useful because also the grid margins fall on coordinates % multiples of 10. It resorts to the |\Integer| macro that will be @@ -4090,7 +4110,9 @@ ltxdoc.cfg curve2e.dtx is the documented TeX source file of file curve2e.sty; you get curve2e.sty, curve2e.pdf, and curve2e-v161.sty by running pdflatex on curve2e.dtx. The ltxdoc.cfg file customises the way the documentation -file is typeset. This specific .cfg file is part of the ltxdoc package functionality and it is supposed to be configured for each specifica other bundle. +file is typeset. This specific .cfg file is part of the ltxdoc package +functionality and it is supposed to be configured for each specific +other bundle. README.txt, this file, contains general information. @@ -4107,7 +4129,7 @@ slope, to draw arcs and curved vectors, to draw curves where just the interpolating nodes are specified together with the slopes at the nodes; closed paths of any shape can be filled with color; all coordinates are treated as ordered pairs, i.e. 'complex numbers'; -coordinates may be expressed also in polar form. +coordinates may be expressed also in polar form. Coordinates may be specified with macros, so that editing any drawing is rendered much simpler: any point specified with a macro is modified only once in the macro definition. Some of these features have been incorporated in the 2011 version of pict2e; therefore this package avoids any modification to the original pict2e commands. @@ -4115,9 +4137,12 @@ pict2e commands. Curve2e now accepts polar coordinates in addition to the usual cartesian ones; several macros have been upgraded and a new macro for tracing cubic Bezier splines with their control nodes specified in polar form is -available. The same applies to quadratic Bezier splines. The \multiput +available. The same applies to quadratic Bezier splines. The multiput command has been completely modified in a backwards compatible way, as -to manipulate the increment components in a configurable way. +to manipulate the increment components in a configurable way. A new +xmultiput command has been defined that is more configurable than the +original one; both \multiput and \xmultiput are backwards compatible with +the original picture environment definition. This version solves a conflict with package eso-pic. @@ -4137,10 +4162,10 @@ have an older or a basic/incomplete installation of the TeX system, such L3 functions might not be available. This is why this package checks the presence of the developer interface; in case such interface is not available it falls back to the previous version -renamed curve2e-v161.sty, which is part of this bundle, and that must -not be renamed in any way. The compatibility mentioned above implies -that the user macros remain the same, but their implementation requires -the L3 interface. +renamed curve2e-v161.sty, which is part of this bundle; this order +package name must not be modified in any way. The compatibility mentioned +above implies that the user macros remain the same, but their +implementation requires the L3 interface. The package has the LPPL status of author maintained. diff --git a/Master/texmf-dist/tex/latex/curve2e/curve2e-v161.sty b/Master/texmf-dist/tex/latex/curve2e/curve2e-v161.sty index edbfd8c5015..b2aae70aace 100644 --- a/Master/texmf-dist/tex/latex/curve2e/curve2e-v161.sty +++ b/Master/texmf-dist/tex/latex/curve2e/curve2e-v161.sty @@ -6,7 +6,7 @@ %% %% curve2e.dtx (with options: `v161') %% -%% Copyright (C) 2005--2019 Claudio Beccari all rights reserved. +%% Copyright (C) 2005--2020 Claudio Beccari all rights reserved. %% License information appended %% diff --git a/Master/texmf-dist/tex/latex/curve2e/curve2e.sty b/Master/texmf-dist/tex/latex/curve2e/curve2e.sty index e2230216d3e..878e6610710 100644 --- a/Master/texmf-dist/tex/latex/curve2e/curve2e.sty +++ b/Master/texmf-dist/tex/latex/curve2e/curve2e.sty @@ -6,12 +6,12 @@ %% %% curve2e.dtx (with options: `package') %% -%% Copyright (C) 2005--2019 Claudio Beccari all rights reserved. +%% Copyright (C) 2005--2020 Claudio Beccari all rights reserved. %% License information appended %% \NeedsTeXFormat{LaTeX2e}[2019/01/01] \ProvidesPackage{curve2e}% - [2019-12-06 v.2.0.7 Extension package for pict2e] + [2020-01-05 v.2.0.8 Extension package for pict2e] @@ -295,13 +295,17 @@ \endgroup \ignorespaces}} -\def\GraphGrid(#1,#2){\bgroup\textcolor{red}{\linethickness{.1\p@}% +\def\Gr@phGrid(#1,#2){\bgroup\textcolor{red}{\linethickness{.1\p@}% \RoundUp#1modulo10to\@GridWd \RoundUp#2modulo10to\@GridHt \@tempcnta=\@GridWd \divide\@tempcnta10\relax \advance\@tempcnta\@ne \multiput(0,0)(10,0){\@tempcnta}{\line(0,1){\@GridHt}}% \@tempcnta=\@GridHt \divide\@tempcnta10\advance\@tempcnta\@ne \multiput(0,0)(0,10){\@tempcnta}{\line(1,0){\@GridWd}}\thinlines}% \egroup\ignorespaces} +\NewDocumentCommand\GraphGrid{r() d()}{% +\IfValueTF{#2}{\put(#1){\Gr@phGrid(#2)}}% + {\put(0,0){\Gr@phGrid(#1)}}} + \def\RoundUp#1modulo#2to#3{\expandafter\@tempcnta\Integer#1.??% \count254\@tempcnta\divide\count254by#2\relax \multiply\count254by#2\relax |