From 3e399d8526bd786d65f34c90728b33d02814da00 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 10 Feb 2020 03:02:26 +0000 Subject: CTAN sync 202002100302 --- macros/latex/contrib/euclideangeometry/README.txt | 2 +- .../euclideangeometry/euclideangeometry-man.pdf | Bin 558102 -> 558099 bytes .../euclideangeometry/euclideangeometry-man.tex | 92 +++++- .../euclideangeometry/euclideangeometry.dtx | 319 +++++---------------- .../euclideangeometry/euclideangeometry.pdf | Bin 455029 -> 436347 bytes 5 files changed, 157 insertions(+), 256 deletions(-) (limited to 'macros/latex/contrib/euclideangeometry') diff --git a/macros/latex/contrib/euclideangeometry/README.txt b/macros/latex/contrib/euclideangeometry/README.txt index 28e984c559..4e3d182cd6 100644 --- a/macros/latex/contrib/euclideangeometry/README.txt +++ b/macros/latex/contrib/euclideangeometry/README.txt @@ -10,7 +10,7 @@ %% License information appended %% File README.txt for package euclideangeometry - [2020-02-02 v.0.1.2 Extension package for curve2e] + [2020-02-09 v.0.1.3 Extension package for curve2e] The package bundle euclideangeometry is composed of the following files diff --git a/macros/latex/contrib/euclideangeometry/euclideangeometry-man.pdf b/macros/latex/contrib/euclideangeometry/euclideangeometry-man.pdf index 1364546e34..46062de27e 100644 Binary files a/macros/latex/contrib/euclideangeometry/euclideangeometry-man.pdf and b/macros/latex/contrib/euclideangeometry/euclideangeometry-man.pdf differ diff --git a/macros/latex/contrib/euclideangeometry/euclideangeometry-man.tex b/macros/latex/contrib/euclideangeometry/euclideangeometry-man.tex index 9c668874fa..ab35cdb93d 100644 --- a/macros/latex/contrib/euclideangeometry/euclideangeometry-man.tex +++ b/macros/latex/contrib/euclideangeometry/euclideangeometry-man.tex @@ -10,9 +10,95 @@ \usepackage{etoolbox,enumitem,xspace,xcolor,euclideangeometry} \usepackage{url} +\providecommand\file{} +\renewcommand*\file[1]{{\normalfont\texttt{#1}}} +\providecommand\prog{} +\renewcommand*\prog[1]{{\normalfont\texttt{#1}}} +\newcommand*\conta[1]{\texttt{\slshape#1}} +\providecommand\cs{} +\renewcommand\cs[1]{{\normalfont\texttt{\char92#1}}} +\providecommand\meta{} +\renewcommand*\meta[1]{{\normalfont$\langle$\textit{#1}$\rangle$}} +\providecommand\marg{} +\renewcommand*\marg[1]{{\ttfamily \char123\meta{#1}\char125}} +\newcommand*\Marg[1]{{\normalfont\ttfamily\{#1\}}}\let\Arg\Marg +\providecommand\oarg{} +\renewcommand*\oarg[1]{{\ttfamily[\meta{#1}]}} +\newcommand*\Oarg[1]{{\ttfamily[#1]}} +\newcommand*\aarg[1]{{\ttfamily{<\meta{#1}>}}} +\newcommand*\Aarg[1]{{\ttfamily<#1>}} +\newcommand*\Bambiente[1]{\texttt{\char92begin\{#1\}}} +\newcommand*\Eambiente[1]{\texttt{\char92end\{#1\}}} +\newcommand*\garg[1]{\texttt{(\splitgarg#1,!)}}\let\parg\garg +\newcommand*\Garg[1]{\texttt{(#1)}}\let\Parg\Garg + \def\secgarg#1,{#1} + \def\splitgarg#1,#2!{% + \ifstrequal{#2}{}{\meta{#1}}{\meta{#1},\meta{\secgarg#2}}} +\providecommand\pack{} +\renewcommand*\pack[1]{{\normalfont\textsf{#1}}} +\providecommand\opt{} +\renewcommand*\opt[1]{{\normalfont\textsl{#1}}}\let\opz\opt +\providecommand\env{} +\renewcommand*\env[1]{{\normalfont\textit{\bfseries#1}}}\let\amb\env + +\providecommand*\ped[1]{\ensuremath{_{\mathrm{#1}}}} +\providecommand*\ap[1]{\ensuremath{^{\mathrm{#1}}}} +\providecommand*\unit[1]{\ensuremath{\,\mathrm{#1}}} +\providecommand*\sigla[1]{\textsc{\lowercase{#1}}} +\providecommand*\iu{\ensuremath{\mathrm{i}}}\let\gei\iu +\providecommand*\eu{\ensuremath{\mathop{\mathrm{e}}\nolimits}} + +\providecommand\GetFileInfo{} +\makeatletter +\renewcommand*\GetFileInfo[1]{% + \def\filename{#1}% + \def\@tempb##1 v.##2 ##3\relax##4\relax{% + \def\filedate{##1}\def\fileversion{##2}\def\fileinfo{##3}}% + \edef\@tempa{\csname ver@#1\endcsname}% + \expandafter\@tempb\@tempa\relax? ? \relax\relax} +\makeatother + +\DeclareRobustCommand*{\Ars}{% for the bibliography + \textsf{\lower -.48ex\hbox{\rotatebox{-20}{A}}\kern -.3em{rs}}% + \kern -.05em\TeX\unskip\kern -.17em\lower -.357ex\hbox{nica}\xspace} + + +\definecolor{verdeguit}{rgb}{0, 0.40, 0} +\providecommand\GuIT{\mbox{\color{verdeguit}\def\I{\textcolor{black}{I}}% + \fontfamily{lmr}\fontseries{m}\fontshape{sc}\selectfont +g\raisebox{-0.715ex}{\kern-0.26em u}\kern-0.13em\I\kern-0.14em t}\xspace} + + +\makeatletter \AfterEndPreamble{% -\apptocmd{\TeX}{{}\xspace}{}{} -\apptocmd{\LaTeX}{{}\xspace}{}{}} +\DeclareRobustCommand{\TeX}{T\kern-.1667em\lower.5ex\hbox{E}\kern-.125emX\@\xspace} +\DeclareRobustCommand{\LaTeX}{L\kern-.36em% + {\sbox\z@ T% + \vbox to\ht\z@{\hbox{\check@mathfonts + \fontsize\sf@size\z@ + \math@fontsfalse\selectfont + A}% + \vss}% + }% + \kern-.15em% + \TeX}}\makeatother + +\DeclareRobustCommand*\TeXLive{\TeX\ Live\xspace} +\DeclareRobustCommand*\MiKTeX{MiK\TeX} +\DeclareRobustCommand*\MacTeX{Mac\TeX} +\DeclareRobustCommand*\pdfLaTeX{pdf\/\LaTeX} +\DeclareRobustCommand*\LuaLaTeX{Lua\LaTeX} +\DeclareRobustCommand*\XeLaTeX{X\ifdim\fontdimen1\font=0pt\kern-0.15em\fi +\lower.5ex\hbox{\rotatebox[origin=c]{180}{E}}% +\ifdim\fontdimen1\font=0pt\kern-0.15em\else\kern-0.275em\fi +\LaTeX} +\DeclareRobustCommand*\TikZ{Ti\emph{k}Z\xspace} +\DeclareRobustCommand*\TUGboat{\textsl{TUG\-boat}\xspace} + +\def\hz{\hskip0pt} + + + \newcommand\heart[3]{% \edef\X{\fpeval{#1*16*(sind(#2)^3)}} @@ -152,7 +238,7 @@ The \pack{euclideangeometry} package requires the advanced functionalities of th user is invoking \pack{euclideangeometry}, it is certain s/he does not want to use the native picture environment, but the modern extended one; therefore the only meaningful possible options are - \opt{latex} and\opt{pstricks}; such options influence only the shape + \opt{latex} and \opt{pstricks}; such options influence only the shape of the arrow tips; with option \opt{latex} they are triangular, while with \opt{pstricks} they have the shape of a stealth aircraft. The difference is very small; therefore we imagine that diff --git a/macros/latex/contrib/euclideangeometry/euclideangeometry.dtx b/macros/latex/contrib/euclideangeometry/euclideangeometry.dtx index 6078fe5cfa..36a7a438c3 100644 --- a/macros/latex/contrib/euclideangeometry/euclideangeometry.dtx +++ b/macros/latex/contrib/euclideangeometry/euclideangeometry.dtx @@ -45,7 +45,7 @@ This work consists of files: %\ProvidesPackage{euclideangeometry}% %File README.txt for package euclideangeometry %<*package|readme> - [2020-02-02 v.0.1.2 Extension package for curve2e] + [2020-02-09 v.0.1.3 Extension package for curve2e] % %<*driver> \documentclass{ltxdoc}\errorcontextlines=100 @@ -56,6 +56,13 @@ This work consists of files: \usepackage{multicol,amsmath,fancyvrb,graphicx,verbatim} \usepackage{etoolbox,enumitem,xspace,xcolor,euclideangeometry} \providecommand*\diff{\mathop{}\!\mathrm{d}} +\providecommand\file{} +\renewcommand*\file[1]{{\normalfont\texttt{#1}}} +\providecommand\prog{} +\renewcommand*\prog[1]{{\normalfont\texttt{#1}}} +\newcommand*\conta[1]{\texttt{\slshape#1}} +\providecommand\cs{} +\renewcommand\cs[1]{{\normalfont\texttt{\char92#1}}} \renewcommand\meta[1]{{\normalfont\textlangle\textit{#1}\textrangle}} \renewcommand\marg[1]{\texttt{\{\meta{#1}\}}} \providecommand\Marg{} @@ -81,9 +88,6 @@ This work consists of files: \providecommand\TB{\mbox{\normalfont\slshape TUGboat}\xspace} -\AfterEndPreamble{% -\apptocmd{\TeX}{{}\xspace}{}{} -\apptocmd{\LaTeX}{{}\xspace}{}{}} \begin{document}\errorcontextlines=100 @@ -110,7 +114,7 @@ This work consists of files: % installed with your updated complete \TeX system installation. % Please refer to the user manual before using this package. -% \CheckSum{1557} +%^^A \CheckSum{} %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %\StopEventually{} %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -128,32 +132,6 @@ This work consists of files: %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % This package has been already identified by the commands extracted % by the |docstrip| package, during the |.dtx| file compilation. -% Therefore we start providing the |\GetFileInfo| in case the package -% is used outside a “documented \TeX\ source”; we just provide the -% definition from the |ltxdoc| class code. -% \begin{macrocode} -\makeatletter -\providecommand\GetFileInfo{} -\renewcommand\GetFileInfo[1]{% - \def\filename{#1}% - \def\@tempb##1 v.##2 ##3\relax##4\relax{% - \def\filedate{##1}\def\fileversion{##2}\def\fileinfo{##3}}% - \edef\@tempa{\csname ver@#1\endcsname}% - \expandafter\@tempb\@tempa\relax? ? \relax\relax} -% \end{macrocode} -% -% But in order to make the file date comparison for loading a suitable -% version of |curve2e| we need to strip away its date dash signs, -% so we define the |\cleanfiledate| macro that defines a |\FileDate| macro -% with a purely numerical string, suitable for numerical comparisons; -% if the fetched class file is so old that the date is not in the ISO -% format (for example with slashes instead of dashes) the macro fails -% and the interpreter comparison algorithm produces \TeX\ error messages. -% \begin{macrocode} -\def\cleanfiledate#1-#2-#3!{\unless\ifx#3\empty -\edef\FileDate{#1#2#3}\else\unless\ifx#2\empty -\edef\FileDate{#1#2}\else\edef\FileDate{#1}\fi\fi} -% \end{macrocode} % In any case, if the test checks that the |curve2e| file date is too old; % it warns the user with an emphasised error message on the console, % loading this |euclideangeometry| package is stopped and the whole @@ -167,87 +145,26 @@ This work consists of files: %************************************************************* %\end{flushleft} % This message should be sufficiently strong in order to avoid using -% this package with a vintage version of \TeXLive or Mik\TeX. +% this package with a vintage version of \TeXLive or \MikTeX. % \begin{macrocode} \RequirePackage{curve2e} -\GetFileInfo{curve2e.sty} -\expandafter\cleanfiledate\filedate! - -\ifnum\FileDate<20200118 -\typeout{*************************************************************} -\typeout{Package curve2e too old} -\typeout{Be sure that your TeX installation is complete and up to date} -\typeout{*************************************************************} -\typeout{Input of euclideangeometry stopped and job aborted} -\typeout{*************************************************************} -\expandafter\@@end\fi +\@ifpackagelater{curve2e}{2020/01/18}{}% + {% + \typeout{*************************************************************} + \typeout{Package curve2e too old} + \typeout{Be sure that your TeX installation is complete and up to date} + \typeout{*************************************************************} + \typeout{Input of euclideangeometry stopped and job aborted} + \typeout{*************************************************************} + \@@end + }% % \end{macrocode} %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \subsection{Service macros} %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% The following macros are useful for typesetting the manual; but they -% might be useful also for the final user; they mostly define commands -% that classify the various entities of the programming language with -% (generally different) font families, series and shapes; but the commands -% that receive the “name of an argument” enclose this name between math -% angle brackets. -% \begin{macrocode} -\providecommand\file{} -\renewcommand*\file[1]{{\normalfont\texttt{#1}}} -\providecommand\prog{} -\renewcommand*\prog[1]{{\normalfont\texttt{#1}}} -\newcommand*\conta[1]{\texttt{\slshape#1}} -\providecommand\cs{} -\renewcommand\cs[1]{{\normalfont\texttt{\char92#1}}} -\providecommand\meta{} -\renewcommand*\meta[1]{{\normalfont$\langle$\textit{#1}$\rangle$}} -\providecommand\marg{} -\renewcommand*\marg[1]{{\ttfamily \char123\meta{#1}\char125}} -\newcommand*\Marg[1]{{\normalfont\ttfamily\{#1\}}}\let\Arg\Marg -\providecommand\oarg{} -\renewcommand*\oarg[1]{{\ttfamily[\meta{#1}]}} -\newcommand*\Oarg[1]{{\ttfamily[#1]}} -\newcommand*\aarg[1]{{\ttfamily{<\meta{#1}>}}} -\newcommand*\Aarg[1]{{\ttfamily<#1>}} -\newcommand*\Bambiente[1]{\texttt{\char92begin\{#1\}}} -\newcommand*\Eambiente[1]{\texttt{\char92end\{#1\}}} -\newcommand*\garg[1]{\texttt{(\splitgarg#1,!)}}\let\parg\garg -\newcommand*\Garg[1]{\texttt{(#1)}}\let\Parg\Garg - \def\secgarg#1,{#1} - \def\splitgarg#1,#2!{% - \ifstrequal{#2}{}{\meta{#1}}{\meta{#1},\meta{\secgarg#2}}} -\providecommand\pack{} -\renewcommand*\pack[1]{{\normalfont\textsf{#1}}} -\providecommand\opt{} -\renewcommand*\opt[1]{{\normalfont\textsl{#1}}}\let\opz\opt -\providecommand\env{} -\renewcommand*\env[1]{{\normalfont\textit{\bfseries#1}}}\let\amb\env -% \end{macrocode} -% The next commands are defined in the |babel-italian| module for |babel|; -% |\ped| introduces a subscript in math mode, but the command may be used -% also in text mode; the same holds true also for |\ap| that introduces -% a superscript. |\unit| is a shorthand for attaching the units of measure -% in math upright roman font, with an unbreakable space between the measure -% and its units; |\sigla| is the Italian equivalent of |\acronym|, that -% avoids any conflict with other packages; |\iu| (alias|\gei|) typesets -% the imaginary unit in roman font according to the ISO regulations; -% |\eu| defines the roman type “e”, the Neper number, as a math operator; -% we all know that “e” is not an operator, but it is used very often as -% the base of an exponential, therefore, in math mode it is better to -% leave the necessary space before and after it, without any space between -% it and its exponent. -% \begin{macrocode} -\providecommand*\ped[1]{\ensuremath{_{\mathrm{#1}}}} -\providecommand*\ap[1]{\ensuremath{^{\mathrm{#1}}}} -\providecommand*\unit[1]{\ensuremath{\,\mathrm{#1}}} -\providecommand*\sigla[1]{\textsc{\lowercase{#1}}} -\providecommand*\iu{\ensuremath{\mathrm{i}}}\let\gei\iu -\providecommand*\eu{\ensuremath{\mathop{\mathrm{e}}\nolimits}} -% \end{macrocode} % -% The next code is used to typeset the logo of \Ars logo, and the logo -% of \LyX; the other command |\GuIT| typesets equally well the \GuIT logo; +% The next code is used to typeset the \GuIT logo; % if necessary the |\RequirePackage| macro loads the |xspace| package; % therefore these macros do not require any special terminator of the % control sequence name, because the |\xspace| command takes care of the @@ -256,56 +173,13 @@ This work consists of files: % punctuation marks, parentheses, quotation marks, and so on. % % \begin{macrocode} -\DeclareRobustCommand*{\Ars}{% - \textsf{\lower -.48ex\hbox{\rotatebox{-20}{A}}\kern -.3em{rs}}% - \kern -.05em\TeX\unskip\kern -.17em\lower -.357ex\hbox{nica}\xspace} - -\DeclareRobustCommand*\LyX{% - L\kern-0.2em\raisebox{-0.5ex}{Y}\kern-0.2em{X}\xspace} \definecolor{verdeguit}{rgb}{0, 0.40, 0} -\RequirePackage{iftex} \def\GuIT{\mbox{\color{verdeguit}\def\I{\textcolor{black}{I}}% -\ifPDFTeX - \usefont{T1}{lmr}{m}{sc} -\else - \usefont{TU}{lmr}{m}{sc} -\fi + \fontfamily{lmr}\fontseries{m}\fontshape{sc}\selectfont g\raisebox{-0.715ex}{\kern-0.26em u}\kern-0.13em\I\kern-0.14em t}\xspace} % \end{macrocode} -% The following macros |\usecs| and |\whilenum| allow the use the internal -% \LaTeX control sequence names that contain a |@| sign. They are not so -% useful in this package, but they might be useful for the end user. -% \begin{macrocode} -\providecommand*\usecs[1]{\csname#1\endcsname} -\providecommand*\whilenum[2]{\usecs{@whilenum}#1\do{#2}} -% \end{macrocode} -% Accordingly the following two macros, and their English aliases, allow -% to delay the output of a (possibly floating) object to a page of the -% desired parity; they are not infallible, because the the |\afterpage| -% command defined by package |afterpage| (loaded if necessary) operates -% on the typesetting program output routine and the object to be delayed -% might be lost on the way, or might get delayed too much; these facts -% take place very seldom, but are not impossible, the solution is to move -% back several paragraphs the command with is argument. -% \begin{macrocode} -\RequirePackage{afterpage} -\providecommand\supaginapari[1]{% - \afterpage{% - \ifodd\value{page}\expandafter\@firstoftwo - \else\expandafter\@secondoftwo - \fi{\supaginapari{#1}}{#1} - } -}\let\onevenpage\supaginapari -\providecommand\supaginadispari[1]{% - \afterpage{% - \ifodd\value{page}\expandafter\@secondoftwo - \else\expandafter\@firstoftwo - \fi{\supaginadispari{#1}}{#1} - } -}\let\onoddpage\supaginadispari -% \end{macrocode} -% The following \LaTeX related logos are provided so as to make them +% The following \LaTeX related logos are provided so as to make them % coherent with the smart final space we have discussed above. The real % difference is that it is necessary to use tue |etoolbox| facilities; % therefore the package is (possibly) loaded. With it we add at the end @@ -324,11 +198,21 @@ g\raisebox{-0.715ex}{\kern-0.26em u}\kern-0.13em\I\kern-0.14em t}\xspace} % \begin{macrocode} \RequirePackage{etoolbox} \AfterEndPreamble{% -\apptocmd{\TeX}{{}\xspace}{}{} -\apptocmd{\LaTeX}{{}\xspace}{}{}} +\DeclareRobustCommand{\TeX}{T\kern-.1667em + \lower.5ex\hbox{E}\kern-.125emX\@\xspace} +\DeclareRobustCommand{\LaTeX}{L\kern-.36em% + {\sbox\z@ T% + \vbox to\ht\z@{\hbox{\check@mathfonts + \fontsize\sf@size\z@ + \math@fontsfalse\selectfont + A}% + \vss}% + }% + \kern-.15em% + \TeX}} \DeclareRobustCommand*\TeXLive{\TeX\ Live\xspace} -\DeclareRobustCommand*\MiKTeX{MiK\TeX} +\DeclareRobustCommand*\MikTeX{Mik\TeX} \DeclareRobustCommand*\MacTeX{Mac\TeX} \DeclareRobustCommand*\pdfLaTeX{pdf\/\LaTeX} \DeclareRobustCommand*\LuaLaTeX{Lua\LaTeX} @@ -337,19 +221,7 @@ g\raisebox{-0.715ex}{\kern-0.26em u}\kern-0.13em\I\kern-0.14em t}\xspace} \ifdim\fontdimen1\font=0pt\kern-0.15em\else\kern-0.275em\fi \LaTeX} \DeclareRobustCommand*\TikZ{Ti\emph{k}Z\xspace} -\DeclareRobustCommand*\TUGboat{\textsl{TUG\-boat}\xspace} -% \end{macrocode} -% The following command is useful to output two column floats when -% typesetting in |twocolumn| mode. -% \begin{macrocode} -\renewcommand\dbltopfraction{1.} -% \end{macrocode} -% This apparently useless command becomes useful to separate a font -% selection command or the |\item| command from the following text so -% as to allow hyphenation in what follows; it is just a very innocent -% dirty trick, but it works. -% \begin{macrocode} -\def\hz{\hskip0pt} + % \end{macrocode} % Here we have a command that allows to display some framed code; it is % usable also to display the syntax of some commands; and when doing this @@ -453,11 +325,11 @@ g\raisebox{-0.715ex}{\kern-0.26em u}\kern-0.13em\I\kern-0.14em t}\xspace} % to use the optional asterisk to frame the text. % \begin{macrocode} \providecommand\Pbox{} +\newlength\PbDim \RenewDocumentCommand\Pbox{D(){0,0} O{cc} m O{0.5ex} s D<>{0}}{% \put(#1){\rotatebox{#6}{\makebox(0,0){% -\dimendef\Dim=2566\relax -\settowidth\Dim{#2}% -\edef\Rapp{\fpeval{\Dim/{1ex}}}% +\settowidth\PbDim{#2}% +\edef\Rapp{\fpeval{\PbDim/{1ex}}}% \fptest{\Rapp > 1.5}{\fboxsep=0.5ex}{\fboxsep=0.75ex}% \IfBooleanTF{#5}{\fboxrule=0.4pt}{\fboxrule=0pt}% \fptest{#4 = 0sp}% @@ -514,95 +386,30 @@ g\raisebox{-0.715ex}{\kern-0.26em u}\kern-0.13em\I\kern-0.14em t}\xspace} % \begin{macrocode} \def\EUGsplitArgs(#1,#2)#3#4{\edef#3{#1}\edef#4{#2}} - +\newlength\EUGZbox \providecommand\Zbox{} -\RenewDocumentCommand\Zbox{R(){0,0} D(){0,0} O{bl} m}{% -\EUGsplitArgs(#2)\ZboxX\ZboxY % separa la x e la y della scatola +\RenewDocumentCommand\Zbox{r() D(){0,0} O{bl} m}{% +\EUGsplitArgs(#2)\ZboxX\ZboxY % splits box dimensions \fboxsep=2\unitlength -\ifnum\ZboxX=\csuse{z@} +\ifnum\ZboxX=\z@ \def\ZTesto{\fbox{#4}}% \else - \ifnum\ZboxY=\csuse{z@} + \ifnum\ZboxY=\z@ \def\ZTesto{\fbox{\parbox{\ZboxX\unitlength}{#4}}}% \else \def\ZTesto{% - \setbox2560=\hbox{\fbox{% + \setbox\EUGZbox=\hbox{\fbox{% \parbox[c][\ZboxY\unitlength][c]{\ZboxX\unitlength}{#4}}}% - \dimen2560=\dimexpr(\ht2560 +\dp2560)/2\relax - \ht2560=\dimen2560\relax - \dp2560=\dimen2560\relax - \box2560% + \dimen\EUGZbox=\dimexpr(\ht\EUGZbox +\dp\EUGZbox)/2\relax + \ht\EUGZbox=\dimen\EUGZbox\relax + \dp\EUGZbox=\dimen\EUGZbox\relax + \box\EUGZbox% }% \fi \fi \put(#1){\makebox(0,0)[#3]{\ZTesto}}\ignorespaces} % \end{macrocode} -%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%\subsection{The \texttt{Example} environment} -%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% Another very useful facility is the |Esempio| environment; -% it has an English alias |Example|, but we suggest to use the Italian -% name, because it is safer in order to avoid conflicts with other packages; -% this environment is very handy to typeset a stretch of code side by -% side its typeset result obtained by executing it; it has advantages and -% disadvantages, though. A similar environment was used to show the -% examples in the \emph{The \LaTeX Companion}; another similar environment -% may be used from the |tcolorbox| package (by T.F.~Sturm, read its -% documentation by using the terminal command |texdoc tcolorbox|) -% environment |tcolorbox| and using the keyword |sidebyside| among the -% options; package |fancyvrb| also offers a similar environment. -% The critical disadvantage is that that you cannot use any of these -% environments, not even this |Esempio| one, when typesetting a -% documented \TeX file, such as the one you are reading now. In facts -% the |.dtx| file has all text lines that start with a comment character, -% and the code parts, to be output to a |.sty|, or |.cls|, or whatever -% other file used by the \TeX system to format documents, are explicitly -% marked with the special delimiters \verb*|% \begin{macrocode}| and -% \verb*|% \end{macrocode}|. -% -% Therefore with those packages and with this |Esempio| environment -% the code you want to show appears with all lines with a |%| at the -% beginning. This certainly does not help the description of a software -% and this is the very reason why this package has a separate -% |euclideangeometry-man| manual typeset with the |article| class. -% -% Nevertheless this environment makes use of the facilities of the -% |verbatim| environment. -% -% \begin{macrocode} -\RequirePackage{verbatim} -\newwrite\example@out -\ProvideDocumentEnvironment{Esempio}{s O{\normalsize} D(){0.40}} -{\par\addvspace{3.0ex plus 0.8ex minus 0.5ex}\vskip -\parskip -\dimendef\Wboxu=2570 \dimendef\Wboxd=2572 -\Wboxu=#3\textwidth\relax -\Wboxd=\dimexpr\linewidth-\columnsep-\Wboxu\relax -\begingroup -\@bsphack -\immediate\openout\example@out\jobname-temp.tex -\let\do\@makeother\dospecials\catcode`\^^M\active -\def\verbatim@processline{% - \immediate\write\example@out{\the\verbatim@line}}% -\verbatim@start\relax}% -{\immediate\closeout\example@out\@esphack\endgroup -\begin{minipage}{\textwidth}% -\IfBooleanTF{#1}{\begin{minipage}{\textwidth}}{\begin{minipage}{\Wboxu}}% -#2\relax -\verbatiminput{\jobname-temp.tex} -\end{minipage}% -\IfBooleanTF{#1}{\par\bigskip}{\hfill}% -\IfBooleanTF{#1}{\begin{minipage}{\textwidth}}{\begin{minipage}{\Wboxd}}% -\raggedleft -\input{\jobname-temp} -\end{minipage} -\end{minipage}\par -%\medskip -%\par\addvspace{3.0ex plus 0.8ex minus 0.5ex}\vskip -\parskip -} -% \end{macrocode} - %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \subsection{Service macros for ellipses} %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -708,7 +515,7 @@ g\raisebox{-0.715ex}{\kern-0.26em u}\kern-0.13em\I\kern-0.14em t}\xspace} \XpartOfVect\IntPu to \xu \YpartOfVect\IntPu to \yu \XpartOfVect\IntPd to \xd \YpartOfVect\IntPd to \yd \edef\Den{\fpeval{-(\a*\d-\b*\c)}}% - \fptest{abs(\Den)<1e-5}{% almost vanishing determinant + \fptest{abs(\Den)<1e-5}{% Almost vanishing determinant \def#5{0,0}% }{% Determinant OK \edef\Numx{\fpeval{(\c*(\b*\xu-\a*\yu)-\a*(\d*\xd-\c*\yd))/\Den}}% @@ -770,13 +577,13 @@ g\raisebox{-0.715ex}{\kern-0.26em u}\kern-0.13em\I\kern-0.14em t}\xspace} % % \begin{macrocode} -\NewDocumentCommand\ThreePointCircle{s d() d() d()}{% +\NewDocumentCommand\ThreePointCircle{s r() r() r()}{% \AxisOf#2and#3to\Mu\Du \AxisOf#2and#4to\Md\Dd \IntersectionOfLines(\Mu)(\Du)and(\Md)(\Dd)to\C \SubVect#2from\C to\R \IfBooleanTF{#1}{\CircleWithCenter\C Radius\R}{}\ignorespaces} -\NewDocumentCommand\ThreePointCircleCenter{d() d() d() m}{% +\NewDocumentCommand\ThreePointCircleCenter{r() r() r() m}{% \ThreePointCircle(#1)(#2)(#3)\CopyVect\C to#4} % \end{macrocode} % @@ -819,7 +626,7 @@ g\raisebox{-0.715ex}{\kern-0.26em u}\kern-0.13em\I\kern-0.14em t}\xspace} %\begin{ttsyntax} %\cs{AxisOf}\meta{P1} and\meta{P2} to\meta{Axis1}\meta{Axis2} %\end{ttsyntax} -% Macros |\SegmentCenter| and |\MiddlePointOf| are alias to one another; +% Macros |\SegmentCenter| and |\MiddlePointOf| are alias of one another; % their syntax is: %\begin{ttsyntax} %\cs{SegmentCenter}\parg{P1}\parg{P2}to\meta{center} @@ -1231,15 +1038,16 @@ g\raisebox{-0.715ex}{\kern-0.26em u}\kern-0.13em\I\kern-0.14em t}\xspace} % See the documentation \file{euclideangeometry-man.pdf} for more % information and usage examples. % \begin{macrocode} - +\newcount\RPI \NewDocumentCommand\RegPolygon{s D(){0,0} m m O{0} D<>{\relax} }{{% -\countdef\I=258 \I=0 +%\countdef\RPI=258 +\RPI=0 \CopyVect#5:#3to\P \CopyVect\fpeval{360/#4}:1to\R \put(#2){#6\relax - \moveto(\P)\fpdowhile{\I < #4}% - {\MultVect\P by\R to\P%\GetCoord(\P)\X\Y - \lineto(\P)\advance\I by 1}% + \moveto(\P)\fpdowhile{\RPI < #4}% + {\MultVect\P by\R to\P + \lineto(\P)\advance\RPI by 1}% \IfBooleanTF{#1}% {\fillpath}{#6\strokepath}}}\ignorespaces} %%%%%%%%% @@ -1541,6 +1349,13 @@ g\raisebox{-0.715ex}{\kern-0.26em u}\kern-0.13em\I\kern-0.14em t}\xspace} % facilities; but, taking into consideration my age, I would invite % the users to consider the possibility of assuming the maintenance % of this package. +%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%\section*{Aknowledgements} +%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% I am very grateful to Enrico Gregorio who let me know the several +% glitches I made in my first version; besides being a real \TeX wizard, +% he is a wise person and suggested me several things that was important +% to change, because they could offer risks of confusion with other packages. % %\iffalse % diff --git a/macros/latex/contrib/euclideangeometry/euclideangeometry.pdf b/macros/latex/contrib/euclideangeometry/euclideangeometry.pdf index 6246a0b604..d3c88483e3 100644 Binary files a/macros/latex/contrib/euclideangeometry/euclideangeometry.pdf and b/macros/latex/contrib/euclideangeometry/euclideangeometry.pdf differ -- cgit v1.2.3