From e2c17c234c6f771a8184b3ed6ca58c92d3fbbdba Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Tue, 8 Feb 2022 21:50:43 +0000 Subject: tkz-euclide (8feb22) git-svn-id: svn://tug.org/texlive/trunk@61948 c570f23f-e606-0410-a88d-b1316a301751 --- .../tex/latex/tkz-euclide/tkz-euclide.cfg | 83 ++++++++++- .../tex/latex/tkz-euclide/tkz-euclide.sty | 20 ++- .../tex/latex/tkz-euclide/tkz-lib-eu-marks.tex | 6 +- .../tex/latex/tkz-euclide/tkz-lib-eu-shape.tex | 6 +- .../tex/latex/tkz-euclide/tkz-obj-eu-axesmin.tex | 13 +- .../latex/tkz-euclide/tkz-obj-eu-circles-by.tex | 6 +- .../tex/latex/tkz-euclide/tkz-obj-eu-circles.tex | 6 +- .../tex/latex/tkz-euclide/tkz-obj-eu-compass.tex | 6 +- .../latex/tkz-euclide/tkz-obj-eu-draw-angles.tex | 95 ++++++------- .../latex/tkz-euclide/tkz-obj-eu-draw-circles.tex | 7 +- .../latex/tkz-euclide/tkz-obj-eu-draw-lines.tex | 15 +- .../latex/tkz-euclide/tkz-obj-eu-draw-polygons.tex | 11 +- .../tkz-euclide/tkz-obj-eu-draw-triangles.tex | 8 +- .../tex/latex/tkz-euclide/tkz-obj-eu-grids.tex | 6 +- .../tex/latex/tkz-euclide/tkz-obj-eu-lines.tex | 25 +++- .../tex/latex/tkz-euclide/tkz-obj-eu-points-by.tex | 77 ++++++++-- .../latex/tkz-euclide/tkz-obj-eu-points-rnd.tex | 6 +- .../latex/tkz-euclide/tkz-obj-eu-points-spc.tex | 100 +++++++++++-- .../latex/tkz-euclide/tkz-obj-eu-points-with.tex | 6 +- .../tex/latex/tkz-euclide/tkz-obj-eu-points.tex | 6 +- .../tex/latex/tkz-euclide/tkz-obj-eu-polygons.tex | 6 +- .../latex/tkz-euclide/tkz-obj-eu-protractor.tex | 6 +- .../tex/latex/tkz-euclide/tkz-obj-eu-sectors.tex | 6 +- .../tex/latex/tkz-euclide/tkz-obj-eu-show.tex | 6 +- .../tex/latex/tkz-euclide/tkz-obj-eu-triangles.tex | 16 +-- .../tex/latex/tkz-euclide/tkz-tools-eu-BB.tex | 6 +- .../tex/latex/tkz-euclide/tkz-tools-eu-angles.tex | 9 +- .../tex/latex/tkz-euclide/tkz-tools-eu-base.tex | 6 +- .../tex/latex/tkz-euclide/tkz-tools-eu-colors.tex | 6 +- .../tkz-euclide/tkz-tools-eu-intersections.tex | 157 ++++++++++++--------- .../tex/latex/tkz-euclide/tkz-tools-eu-math.tex | 7 +- .../tex/latex/tkz-euclide/tkz-tools-eu-modules.tex | 6 +- .../tex/latex/tkz-euclide/tkz-tools-eu-text.tex | 6 +- .../latex/tkz-euclide/tkz-tools-eu-utilities.tex | 15 +- 34 files changed, 516 insertions(+), 250 deletions(-) (limited to 'Master/texmf-dist/tex') diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-euclide.cfg b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-euclide.cfg index fee32ea5fcb..36ed515b7b4 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-euclide.cfg +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-euclide.cfg @@ -16,9 +16,9 @@ % and save the file in a directory part of your TEXINPUTS environment % variable. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-euclide.cfg} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-euclide.cfg} %<------ colors ---------------------------------------–> \def\tkz@backgroundcolor{white} \def\tkz@textcolor{black} @@ -133,7 +133,8 @@ \tikzset{line style/.style = {line width = \tkz@euc@linewidth, color = \tkz@euc@linecolor, style = \tkz@euc@linestyle, - add = {\tkz@euc@lineleft} and {\tkz@euc@lineright}% + add = {\tkz@euc@lineleft} and {\tkz@euc@lineright}, + line cap = round } } \tikzset{label seg style/.style = {color = \tkz@mainlinecolor, @@ -178,9 +179,79 @@ fill = \tkz@fillcolor, left = 3pt} } -%<--------------------------- vector --------------------------------------–> -\tikzset{vector style/.style={>=latex,->} +% +%<--------------------------- arrow --------------------------------------–> +% Syntax: +% +% - tkz arrow=` +% - tkz arrow= at ( = .5 by default) +% - tkz arrow={[] at } +% +% +% Example usages: +% +% \draw[tkz arrow=Stealth] (A) -- (B); +% \draw[tkz arrow={To[scale=3] at .3}] (A)-- (B); +% \draw[tkz arrow={Latex[scale=5,blue] at .8}] (A)-- (B); + +\tikzset{ +tkz arrow/.default=Latex, + tkz arrow/.code=% + {% + \pgfutil@in@{ at }{#1}% + \ifpgfutil@in@ + \mytikz@parsearrow#1\mytikz@stop + \else + \mytikz@parsearrow#1 at .5\mytikz@stop + \fi + } +} +\def\mytikz@parsearrow#1 at #2\mytikz@stop{% + \pgfutil@in@{[}{#1}% + \ifpgfutil@in@ + \mytikz@parsearrow@opt{#2}#1\mytikz@stop + \else + \mytikz@parsearrow@opt{#2}#1[]\mytikz@stop + \fi } + +% #1 = pos, #2 = arrow end tip, #3 = arrow options +\def\mytikz@parsearrow@opt#1#2[#3]\mytikz@stop{% + \pgfkeysalso{decoration={ + markings, + mark=at position #1 with {\arrow[#3]{#2}} + }, + postaction={decorate} + }% +} +%<-------------------------------------------------------------------------> +\tikzset{ + on each path/.style={ + decorate, + decoration={ + show path construction, + moveto code={}, + lineto code={ + \path [#1] + (\tikzinputsegmentfirst) -- (\tikzinputsegmentlast); + }, + curveto code={ + \path [#1] (\tikzinputsegmentfirst) + .. controls + (\tikzinputsegmentsupporta) and (\tikzinputsegmentsupportb) + .. + (\tikzinputsegmentlast); + }, + closepath code={ + \path [#1] + (\tikzinputsegmentfirst) -- (\tikzinputsegmentlast); + }}}} + %<--------------------------- arrows --------------------------------------–> +\tikzset{tkz arrows/.style=% +{postaction={on each path={tkz arrow={Latex[scale=2,color=black]}}}}} +%<--------------------------- vector --------------------------------------–> +\tikzset{vector style/.style={>=Latex,->}} +%<--------------------------- tkzdotted --------------------------------------–> \tikzset{tkzdotted/.style={% dash pattern=on 0.4\pgflinewidth off #1\pgflinewidth,line cap=round, shorten >=#1\pgflinewidth/2,shorten <=#1\pgflinewidth/2, tkzdotted/.default=8}} diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-euclide.sty b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-euclide.sty index ffe08e9468f..e59c97fa0fa 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-euclide.sty +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-euclide.sty @@ -10,11 +10,11 @@ % The Current Maintainer of this work is Alain Matthes. %<------------------------------------------------------------> -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-euclide.sty} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-euclide.sty} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{tkz-euclide}[ 2022/01/19 4.03 for pure Euclidean Geometry ] +\ProvidesPackage{tkz-euclide}[ 2022/02/07 4.05b for pure Euclidean Geometry ] \@ifpackageloaded{tkz-base}{ \newdimen\tkzRadius @@ -23,6 +23,7 @@ \newif\iftkz@line@normed \newif\ifnormtkzcode@execute% german ? right angle \newif\iftkz@swap@sc%---------------------- semi circle +\newif\iftkz@swap@tr }{ \RequirePackage{tikz} \usetikzlibrary{angles, @@ -64,6 +65,16 @@ \newif\iftkz@vec@normed %--------------------- lines \newif\iftkz@line@normed +%--------------------- circles +\newif\iftkzClipOutCircle +%--------------------- polygons +\newif\iftkzClipOutPoly +%--------------------- triangles +\newif\iftkz@swap@tr +\newif\iftkz@permute +%--------------------- intersections +\newif\iftkzFlagLC\tkzFlagLCfalse +\newif\iftkzFlagCC\tkzFlagCCfalse %--------------------- tkz axis \newif\iftkz@X@noticks \newif\iftkz@Y@noticks @@ -76,6 +87,7 @@ \newif\iftkz@np \newif\iftkz@swap \newif\iftkz@init@NO +\newif\iftkz@integer \newif\iftkz@Rep@orig%--------------------- Rep \newif\iftkzLengthIncm%--------------------- Math \newif\iftkz@sop@show%--------------------- marks diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-lib-eu-marks.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-lib-eu-marks.tex index 86bb1c2f759..88edcbd70e1 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-lib-eu-marks.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-lib-eu-marks.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-lib-eu-marks.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-lib-eu-marks.tex} \makeatletter %<--------------------------------------------------------------------------–> % Création des symboles diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-lib-eu-shape.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-lib-eu-shape.tex index 2445260c3e5..66824d184be 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-lib-eu-shape.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-lib-eu-shape.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-lib-eu-shape.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-lib-eu-shape.tex} \makeatletter %<--------------------------------------------------------------------------–> % Création des symboles diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-axesmin.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-axesmin.tex index e7ba177379e..65e0c5b944b 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-axesmin.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-axesmin.tex @@ -10,22 +10,21 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-axesmin} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-axesmin} \makeatletter -\newif\ifinteger \def\removedot#1.{#1} \newcommand\tkzgetinteger[1]{\expandafter\tkz@getinteger#1.\@nil} \def\tkz@getinteger#1.#2\@nil{% \ifx\empty#2\empty - \integertrue + \tkz@integertrue \else \ifnum\removedot#2=0 - \integertrue + \tkz@integertrue \else - \integerfalse + \tkz@integerfalse \fi \fi } diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-circles-by.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-circles-by.tex index 506ec8c739a..0fcc4f210f7 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-circles-by.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-circles-by.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-circles.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-circles.tex} \makeatletter %<--------------------------------------------------------------------------–> % tkzCircle center and one point diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-circles.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-circles.tex index 7ea8b3136d2..9f0168d8357 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-circles.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-circles.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-circles.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-circles.tex} \makeatletter %<--------------------------------------------------------------------------–> % tkzCircle center and one point diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-compass.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-compass.tex index 30e07a08a8d..3ecb646303b 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-compass.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-compass.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-compass.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-compass.tex} \makeatletter %<--------------------------------------------------------------------------–> % Author Alain Matthes diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-angles.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-angles.tex index 0818c0fd26a..6b5ed5ae7e2 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-angles.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-angles.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-tool-eu-angles.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-tool-eu-angles.tex} \makeatletter %<--------------------------------------------------------------------------–> % tkzSetUpArc @@ -202,25 +202,25 @@ color = teal!20, size = 4pt, pos = .5, - mark = |, + mark = none, /@tkzmarkarc/.search also={/tikz}, } \def\tkzMarkArc{\pgfutil@ifnextchar[{\tkz@MarkArc}{\tkz@MarkArc[]}} \def\tkz@MarkArc[#1](#2,#3,#4){% \begingroup \pgfqkeys{/@tkzmarkarc}{#1} \def\tkz@mymarkarc{\pgfsetplotmarksize{\tkz@mkarcsize}\pgfuseplotmark{\tkz@markarcseg}} - \tkz@@CalcLength(#2,#3){tkz@radius} - \tkzFindSlopeAngle(#2,#3)\tkzGetAngle{tkz@FirstAngle} - \tkzFindSlopeAngle(#2,#4)\tkzGetAngle{tkz@SecondAngle} - \pgfmathparse{\tkz@FirstAngle}\edef\tkz@FirstAngle{\pgfmathresult}% - \pgfmathparse{\tkz@SecondAngle}\edef\tkz@SecondAngle{\pgfmathresult}% - \pgfmathgreaterthan{\tkz@FirstAngle}{0} - \ifdim\pgfmathresult pt=1 pt\relax% - \pgfmathgreaterthan{\tkz@FirstAngle}{\tkz@SecondAngle} - \ifdim\pgfmathresult pt=1 pt\relax% - \pgfmathsubtract{\tkz@FirstAngle}{360} - \edef\tkz@FirstAngle{\pgfmathresult}% - \fi +\tkz@@CalcLength(#2,#3){tkz@radius} +\tkzFindSlopeAngle(#2,#3)\tkzGetAngle{tkz@FirstAngle} +\tkzFindSlopeAngle(#2,#4)\tkzGetAngle{tkz@SecondAngle} +\pgfmathparse{\tkz@FirstAngle}\edef\tkz@FirstAngle{\pgfmathresult}% +\pgfmathparse{\tkz@SecondAngle}\edef\tkz@SecondAngle{\pgfmathresult}% +\pgfmathgreaterthan{\tkz@FirstAngle}{0} +\ifdim\pgfmathresult pt=1 pt\relax% + \pgfmathgreaterthan{\tkz@FirstAngle}{\tkz@SecondAngle} + \ifdim\pgfmathresult pt=1 pt\relax% + \pgfmathsubtract{\tkz@FirstAngle}{360} + \edef\tkz@FirstAngle{\pgfmathresult}% +\fi \else \pgfmathgreaterthan{\tkz@FirstAngle}{\tkz@SecondAngle} \ifdim\pgfmathresult pt=1 pt\relax% @@ -232,46 +232,43 @@ \edef\tkz@FirstAngle{\pgfmathresult}% \pgfmathadd{\tkz@SecondAngle}{\tkz@delta} \edef\tkz@SecondAngle{\pgfmathresult} - \begin{scope}[decoration={markings, - mark=at position \tkz@mkarcpos with {\tkz@mymarkarc}}] - \path[shift = {(#2)},\tkz@mkcolor,/@tkzmarkarc/.cd,#1,postaction={decorate}]% - (\tkz@FirstAngle:\tkz@radius pt) arc (\tkz@FirstAngle:\tkz@SecondAngle:\tkz@radius pt); - \end{scope} +\begin{scope}[decoration={markings,mark=at position \tkz@mkarcpos with {\tkz@mymarkarc}}] +\path[shift = {(#2)},\tkz@mkcolor,/@tkzmarkarc/.cd,#1,postaction={decorate}]% +(\tkz@FirstAngle:\tkz@radius pt) arc (\tkz@FirstAngle:\tkz@SecondAngle:\tkz@radius pt); +\end{scope} \endgroup } \def\tkzLabelArc{\pgfutil@ifnextchar[{\tkz@LabelArc}{\tkz@LabelArc[]}} \def\tkz@LabelArc[#1](#2,#3,#4)#5{% \begingroup - \pgfqkeys{/@tkzmarkarc}{#1} - \tkz@@CalcLength(#2,#3){tkz@radius} - \tkzFindSlopeAngle(#2,#3)\tkzGetAngle{tkz@FirstAngle} - \tkzFindSlopeAngle(#2,#4)\tkzGetAngle{tkz@SecondAngle} - \pgfmathparse{\tkz@FirstAngle}\edef\tkz@FirstAngle{\pgfmathresult}% - \pgfmathparse{\tkz@SecondAngle}\edef\tkz@SecondAngle{\pgfmathresult}% - \pgfmathgreaterthan{\tkz@FirstAngle}{0} - \ifdim\pgfmathresult pt=1 pt\relax% - \pgfmathgreaterthan{\tkz@FirstAngle}{\tkz@SecondAngle} - \ifdim\pgfmathresult pt=1 pt\relax% - \pgfmathsubtract{\tkz@FirstAngle}{360} - \edef\tkz@FirstAngle{\pgfmathresult}% - \fi - \else - \pgfmathgreaterthan{\tkz@FirstAngle}{\tkz@SecondAngle} - \ifdim\pgfmathresult pt=1 pt\relax% - \pgfmathadd{\tkz@SecondAngle}{360} - \edef\tkz@SecondAngle{\pgfmathresult}% +\pgfqkeys{/@tkzmarkarc}{#1} +\tkz@@CalcLength(#2,#3){tkz@radius} +\tkzFindSlopeAngle(#2,#3)\tkzGetAngle{tkz@FirstAngle} +\tkzFindSlopeAngle(#2,#4)\tkzGetAngle{tkz@SecondAngle} +\pgfmathparse{\tkz@FirstAngle}\edef\tkz@FirstAngle{\pgfmathresult}% +\pgfmathparse{\tkz@SecondAngle}\edef\tkz@SecondAngle{\pgfmathresult}% +\pgfmathgreaterthan{\tkz@FirstAngle}{0} +\ifdim\pgfmathresult pt=1 pt\relax% +\pgfmathgreaterthan{\tkz@FirstAngle}{\tkz@SecondAngle} + \ifdim\pgfmathresult pt=1 pt\relax% + \pgfmathsubtract{\tkz@FirstAngle}{360} + \edef\tkz@FirstAngle{\pgfmathresult}% \fi - \fi - \pgfmathsubtract{\tkz@FirstAngle}{\tkz@delta} - \edef\tkz@FirstAngle{\pgfmathresult}% - \pgfmathadd{\tkz@SecondAngle}{\tkz@delta} - \edef\tkz@SecondAngle{\pgfmathresult} - \begin{scope}[decoration={markings, - mark=at position \tkz@mkarcpos with \node{#5};}] - \path[shift = {(#2)},/@tkzmarkarc/.cd,#1,postaction={decorate}]% - (\tkz@FirstAngle:\tkz@radius pt) arc (\tkz@FirstAngle:\tkz@SecondAngle:\tkz@radius pt); - \end{scope} +\else +\pgfmathgreaterthan{\tkz@FirstAngle}{\tkz@SecondAngle} + \ifdim\pgfmathresult pt=1 pt\relax% + \pgfmathadd{\tkz@SecondAngle}{360} + \edef\tkz@SecondAngle{\pgfmathresult}% + \fi +\fi +\pgfmathsubtract{\tkz@FirstAngle}{\tkz@delta} +\edef\tkz@FirstAngle{\pgfmathresult}% +\pgfmathadd{\tkz@SecondAngle}{\tkz@delta} +\edef\tkz@SecondAngle{\pgfmathresult} +\begin{scope}[decoration={markings,mark=at position \tkz@mkarcpos with \node{#5};}] + \path[shift = {(#2)},/@tkzmarkarc/.cd,#1,postaction={decorate}]% + (\tkz@FirstAngle:\tkz@radius pt) arc (\tkz@FirstAngle:\tkz@SecondAngle:\tkz@radius pt); \end{scope} \endgroup } %<---------------------------------------------------------------------------> diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-circles.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-circles.tex index 963f0f7da7b..95c29886e19 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-circles.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-circles.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-draw-circles.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-draw-circles.tex} \makeatletter @@ -186,7 +186,6 @@ } %<--------------------------- Clip Circle ---------------------------------–> -\newif\iftkzClipOutCircle \def\tkz@numcc{0} \pgfkeys{/tkzclipc/.cd, through/.code = \def\tkz@numcoc{0}, diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-lines.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-lines.tex index 41c11c1c66d..3b07d9f9cac 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-lines.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-lines.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-draw-lines.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-draw-lines.tex} \makeatletter \def\tkz@numdl{0} @@ -20,7 +20,7 @@ /tkzdrawl/.search also={/tikz} } %<--------------------------------------------------------------------------–> -% Drawing a line > +% Drawing a line %<--------------------------------------------------------------------------–> \def\tkzDrawLine{\pgfutil@ifnextchar[{\tkz@DrawLine}{\tkz@DrawLine[]}} \def\tkz@DrawLine[#1](#2,#3){% @@ -42,8 +42,7 @@ \next#2\@nil } %<--------------------------------------------------------------------------–> -\def\tkzDrawLines{\pgfutil@ifnextchar[{\tkz@DrawLines}{% - \tkz@DrawLines[]}} +\def\tkzDrawLines{\pgfutil@ifnextchar[{\tkz@DrawLines}{\tkz@DrawLines[]}} \def\tkz@DrawLines[#1](#2){% \xdef\tkz@optline{#1} \begingroup @@ -107,7 +106,7 @@ \def\tkz@multiDrawSeg#1 #2\@nil{% \protected@edef\tkz@temp{ - \noexpand \tkzDrawSegment[\tkz@optseg](#1)}\tkz@temp% + \noexpand \tkzDrawSegment[\tkz@optseg](#1)}\tkz@temp% \def\tkz@nextArg{#2}% \ifx\tkzutil@empty\tkz@nextArg \let\next\@gobble @@ -120,7 +119,7 @@ \def\tkz@optseg{#1} \begingroup \let\next\tkz@multiDrawSeg - \next#2 \@nil % + \next#2 \@nil % \endgroup } %<--------------------------------------------------------------------------–> diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-polygons.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-polygons.tex index 951cc0c6296..fae41863a76 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-polygons.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-polygons.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-polygons.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-polygons.tex} \makeatletter %<--------------------------------------------------------------------------–> % Polygon @@ -24,7 +24,7 @@ \tkz@DrawPolygon[]}} \def\tkz@DrawPolygon[#1](#2,#3){% \begingroup - \draw[line style,#1] (#2) + \draw[line style,line join=round,#1] (#2) \foreach \pt in {#2,#3}{--(\pt)}--cycle;% \endgroup } @@ -73,7 +73,7 @@ {\tkz@DrawRectangle[]}} \def\tkz@DrawRectangle[#1](#2,#3){% \begingroup - \draw[#1](#2) -| (#3) -| (#2); + \draw[line join=round,#1](#2) -| (#3) -| (#2); \endgroup } %<-------------------------- gold rectangle -------------------------------–> @@ -113,7 +113,6 @@ % %<--------------------------------------------------------------------------–> -\newif\iftkzClipOutPoly% \pgfkeys{tkzclippolygon/.cd, out code/.is if = tkzClipOutPoly, out/.code = \tkzClipOutPolyfalse} diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-triangles.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-triangles.tex index e6e1a161b3a..4679ab85d17 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-triangles.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-draw-triangles.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-draw-triangles.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-draw-triangles.tex} \makeatletter %<--------------------------------------------------------------------------–> % Draw Triangles @@ -65,7 +65,7 @@ \or% 9 \tkzDefIsoscelesRightTriangle(#2,#3) \fi - \draw[/drawtriangle/.cd,line style,#1] (#2)--(#3)--(tkzPointResult)--cycle; + \draw[/drawtriangle/.cd,line style,line join=round,#1] (#2)--(#3)--(tkzPointResult)--cycle; \endgroup } diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-grids.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-grids.tex index 2febd433289..207b537c613 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-grids.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-grids.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-grids.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-grids.tex} \makeatletter %<--------------------------------------------------------------------------–> % Setup Grid diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-lines.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-lines.tex index 8f9811c76fe..fddfca07239 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-lines.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-lines.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-lines.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-lines.tex} \makeatletter %<--------------------------------------------------------------------------–> % les lignes @@ -205,12 +205,18 @@ %<-------------------------------------------------------------------------–> \def\tkzTgtFromP(#1,#2)(#3){% \begingroup - \tkzDefMidPoint(#1,#3) \tkz@@CalcLengthcm(#1,#2){tkz@radone} + \tkzDefMidPoint(#1,#3) \tkz@@CalcLengthcm(tkzPointResult,#1){tkz@radtwo} \tkzInterCCR(#1,\tkz@radone)(tkzPointResult,\tkz@radtwo){% - tkzFirstPointResult}{% - tkzSecondPointResult}% + tkzFirstPointResult}{tkzSecondPointResult}% + \tkzFindAngle(#3,tkzFirstPointResult,#1) \tkzGetAngle{tkz@an} + \ifdim\tkz@an pt<180 pt\relax% + \else + \pgfnodealias{tkzPointTmp}{tkzSecondPointResult} + \pgfnodealias{tkzSecondPointResult}{tkzFirstPointResult} + \pgfnodealias{tkzFirstPointResult}{tkzPointTmp} + \fi \endgroup } %<-------------------------------------------------------------------------–> @@ -221,6 +227,13 @@ \tkzInterCCR(#1,#2)(tkzPointResult,\tkzLengthResult){% tkzFirstPointResult}{% tkzSecondPointResult}% + \tkzFindAngle(#3,tkzFirstPointResult,#1) \tkzGetAngle{tkz@an} + \ifdim\tkz@an pt<180 pt\relax% + \else + \pgfnodealias{tkzPointTmp}{tkzSecondPointResult} + \pgfnodealias{tkzSecondPointResult}{tkzFirstPointResult} + \pgfnodealias{tkzFirstPointResult}{tkzPointTmp} + \fi \endgroup } %<--------------------------------------------------------------------------–> diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-by.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-by.tex index b10b308f35d..4def351f354 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-by.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-by.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-tools-el-points-by.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-tools-el-points-by.tex} \makeatletter %<--------------------------------------------------------------------------–> % Transformations Géométriques @@ -44,9 +44,12 @@ \def\tkz@numtrsf{7}}, inversion negative/.code args={center #1 through #2}{ \def\tkzcenter{#1}% \def\tkzpoint{#2}% - \def\tkz@numtrsf{8}} -% inversion négative ? -} + \def\tkz@numtrsf{8}}, + rotation with nodes/.code args={center #1 from #2 to #3}{ \def\tkzcenter{#1}% + \def\tkzfrom{#2}% + \def\tkzto{#3}% + \def\tkz@numtrsf{9}} +} %<--------------------------------------------------------------------------–> \def\tkzDefPointBy{\pgfutil@ifnextchar[{\tkz@DefPointBy}{\tkz@DefPointBy[]}} \def\tkz@DefPointBy[#1](#2){% @@ -71,7 +74,9 @@ \tkzUInversePoint(\tkzcenter,\tkzpoint)(#2) \or% 8 \tkzUInverseNegativePoint(\tkzcenter,\tkzpoint)(#2) -\fi +\or% 9 + \tkzURotateWithNodes(\tkzcenter,\tkzfrom,\tkzto)(#2) +\fi \endgroup } %<--------------------------------------------------------------------------–> @@ -97,7 +102,9 @@ \or% 7 \tkzInversePoint(\tkzcenter,\tkzpoint)(#2){#3} \or% 8 - \tkzInverseNegativePoint(\tkzcenter,\tkzpoint)(#2){#3} + \tkzInverseNegativePoint(\tkzcenter,\tkzpoint)(#2){#3} + \or% 9 + \tkzRotateWithNodes(\tkzcenter,\tkzfrom,\tkzto)(#2){#3} \fi \endgroup } @@ -441,6 +448,7 @@ } \endgroup } +%<--------------------------------------------------------------------------–> \def\tkzUInverseNegativePoint(#1,#2)(#3){% \begingroup \tkz@@CalcLengthcm(#1,#2){tkz@lna}% @@ -449,7 +457,58 @@ \tkzVecKNorm[\tkz@lnc](#1,#3) \tkzUCSym(#1)(tkzPointResult) \endgroup -} +} +%<--------------------------------------------------------------------------–> +%<--------------- rotate with nodes ------------------------–> +%<--------------------------------------------------------------------------–> +\def\tkzRotateWithNodes(#1,#2,#3)(#4)#5{% +\begingroup +\gdef\tkz@LastList{#5} + \foreach\PointRotWN in {#4}{% + \FirstPointInList\tkz@LastList + \ifx\tkz@FirstPoint\tkzutil@empty + \def\tkz@pointtsf{\PointRotWN '} + \else + \def\tkz@pointtsf{\tkz@FirstPoint} + \fi + \tkzFindAngle(#2,#1,#3) + \tkz@@extractxy{\PointRotWN} + \tkz@ax\pgf@x% + \tkz@ay\pgf@y% + \tkz@@extractxy{#1} + \tkz@bx\pgf@x% + \tkz@by\pgf@y% + \pgfmathrotatepointaround{\pgfpoint{\tkz@ax}{\tkz@ay}}% + {\pgfpoint{\tkz@bx}{\tkz@by}}% + {\tkzAngleResult} + \tkz@bx\pgf@x% + \tkz@by\pgf@y% + \pgfinterruptboundingbox + \path[coordinate](\tkz@bx,\tkz@by) coordinate (\tkz@pointtsf);% + \endpgfinterruptboundingbox +} +\endgroup +} +%<--------------------------------------------------------------------------–> +\def\tkzURotateWithNodes(#1,#2,#3)(#4){% +\begingroup + \tkzFindAngle(#2,#1,#3) + \pgf@process{\pgfpointanchor{#4}{center}}% + \tkz@ax\pgf@x% + \tkz@ay\pgf@y% + \pgf@process{\pgfpointanchor{#1}{center}}% + \tkz@bx\pgf@x% + \tkz@by\pgf@y% + \pgfmathrotatepointaround{\pgfpoint{\tkz@ax}{\tkz@ay}}% + {\pgfpoint{\tkz@bx}{\tkz@by}}% + {\tkzAngleResult} + \tkz@bx\pgf@x% + \tkz@by\pgf@y% + \pgfinterruptboundingbox + \path (\tkz@bx,\tkz@by) coordinate (tkzPointResult);% + \endpgfinterruptboundingbox +\endgroup +} %<--------------------------------------------------------------------------–> % Fin des transformations %<--------------------------------------------------------------------------–> diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-rnd.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-rnd.tex index 11d94cb8f27..b6f51bc53af 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-rnd.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-rnd.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-el-points-rnd.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-el-points-rnd.tex} %<--------------------------------------------------------------------------–> \makeatletter %<-------------------------------------------------------------------------–> diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-spc.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-spc.tex index daa2b85a52c..09c803dde00 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-spc.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-spc.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-el-points.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-el-points.tex} \makeatletter %add ExCenter %<--------------------------------------------------------------------------–> @@ -81,6 +81,28 @@ \endgroup } %<--------------------------------------------------------------------------–> +\def\tkz@simicenter{0} +\pgfkeys{/tkzsimicenter/.cd, + ext/.code = \def\tkz@simicenter{0}, + int/.code = \def\tkz@simicenter{1}, + node/.code = , + R/.code = , + ext +}% + +\def\tkzDefSimilitudeCenter{\pgfutil@ifnextchar[{\tkz@DefSimilitudeCenter}% + {\tkz@DefSimilitudeCenter[]}} +\def\tkz@DefSimilitudeCenter[#1](#2,#3)(#4,#5){% +\pgfqkeys{/tkzsimicenter}{#1} +\begingroup +\ifcase\tkz@simicenter% + \tkzDefExtSimilitudeCenter[#1](#2,#3)(#4,#5) + \or% 1 + \tkzDefIntSimilitudeCenter[#1](#2,#3)(#4,#5) +\fi +\endgroup +} +%<--------------------------------------------------------------------------–> % Internal Similitude center % Two circles have two similitude centers namely the internal center of % similitude Si and the external similitude center Se. @@ -90,7 +112,9 @@ /tkzSimilitudeCenter/.cd, node/.code = \def\tkz@numhomo{0}, R/.code = \def\tkz@numhomo{1}, - node + node, + /tkzSimilitudeCenter/.unknown/.code = {\let\searchname=\pgfkeyscurrentname + \pgfkeysalso{\searchname/.try=#1, /tikz/\searchname/.retry=#1}} } \def\tkzDefIntSimilitudeCenter{\pgfutil@ifnextchar[{\tkz@DefIntSimilitudeCenter}{\tkz@DefIntSimilitudeCenter[]}} \def\tkz@DefIntSimilitudeCenter[#1](#2,#3)(#4,#5){% @@ -131,7 +155,58 @@ } \let\tkzDefExtHomotheticCenter\tkzDefExtSimilitudeCenter +%<--------------------------------------------------------------------------–> +% Harmonic Division +%<--------------------------------------------------------------------------–> +% A , B , C ,D CA/CB = DA/DB +%<--------------------------------------------------------------------------–> +\def\tkz@numdha{0} +\pgfkeys{/tkzharmonic/.cd, + ext/.code = \def\tkz@numdha{0}, + int/.code = \def\tkz@numdha{1}, + both/.code = \def\tkz@numdha{2}, + both, +}% + +\def\tkzDivHarmonic{\pgfutil@ifnextchar[{\tkz@DivHarmonic}{\tkz@DivHarmonic[]}} +\def\tkz@DivHarmonic[#1](#2){% +\begingroup +\pgfqkeys{/tkzharmonic}{#1} + \ifcase\tkz@numdha% + \tkzDefDivHarmonicExt(#2) + \or% + \tkzDefDivHarmonicInt(#2) + \or% + \tkzDefDivHarmonicBoth(#2) + \fi +\endgroup +} +\def\tkzDefDivHarmonicExt(#1,#2,#3){% +\begingroup + \tkz@@CalcLengthcm(#3,#1){tkz@da} + \tkz@@CalcLengthcm(#3,#2){tkz@db} + \path[coordinate] (barycentric cs:#1={-\tkz@db},#2={\tkz@da}) coordinate (tkzPointResult); +\endgroup +} + +\def\tkzDefDivHarmonicInt(#1,#2,#3){% +\begingroup + \tkz@@CalcLengthcm(#3,#1){tkz@da} + \tkz@@CalcLengthcm(#3,#2){tkz@db} + \path[coordinate] (barycentric cs:#1={\tkz@db},#2={\tkz@da}) coordinate (tkzPointResult); +\endgroup +} + +\def\tkzDefDivHarmonicBoth(#1,#2,#3){% +\begingroup +\edef\tkz@k{\fpeval{#3}} + \path[coordinate] (barycentric cs:#1=1,#2={\tkz@k}) coordinate (tkzFirstPointResult); + \path[coordinate] (barycentric cs:#1=1,#2={-\tkz@k}) coordinate (tkzSecondPointResult); +\endgroup +} + +\let\tkzDefHarmonic\tkzDivHarmonic %<--------------------------------------------------------------------------–> % golden ratio %<--------------------------------------------------------------------------–> @@ -510,16 +585,24 @@ %<--------------------------------------------------------------------------–> % Point on circle %<--------------------------------------------------------------------------–> +\def\tkz@numptcirc{0} \pgfkeys{/tkzptcircle/.cd, - angle/.store in = \tkz@angle, - angle = 0 , - center/.store in = \tkz@center, - radius/.store in = \tkz@radius, + through/.code args = {angle #1 center #2 point #3} {\def\tkz@angle{#1}% + \def\tkz@center{#2}% + \def\tkz@through{#3}% + \def\tkz@numptcirc{0}}, + R/.code args = {angle #1 center #2 radius #3} {\def\tkz@angle{#1}% + \def\tkz@center{#2}% + \def\tkz@radius{#3}% + \def\tkz@numptcirc{1}}, } \def\tkzDefPointOnCircle{\pgfutil@ifnextchar[{\tkz@DefPointOnCircle}{\tkz@DefPointOnCircle[]}} \def\tkz@DefPointOnCircle[#1]{% \begingroup \pgfqkeys{/tkzptcircle}{#1} + \ifcase\tkz@numptcirc% + \tkz@@CalcLengthcm(\tkz@center,\tkz@through){tkz@radius} +\fi \path (\tkz@center) --++(\tkz@angle:\tkz@radius) coordinate(tkzPointResult); \endgroup } @@ -532,5 +615,6 @@ \path (#2) to [#1] coordinate (tkzPointResult) (#3); \endgroup } + \makeatother \endinput \ No newline at end of file diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-with.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-with.tex index 5d204fbd85a..27951df7aca 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-with.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points-with.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-el-points-with.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-el-points-with.tex} \makeatletter %<--------------------------------------------------------------------------–> % Vectors diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points.tex index 20d0988a826..ecf22fbd9c7 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-points.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-points.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-points.tex} \makeatletter %<---------------------------------------------------------------------------> % init def point diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-polygons.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-polygons.tex index 871cd6a36d2..42f5a4f5ced 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-polygons.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-polygons.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-polygons.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-polygons.tex} % bug in regular polygon side 2020/03/09 \makeatletter %<--------------------------------------------------------------------------–> diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-protractor.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-protractor.tex index ec13a910fd9..bb679c6beaf 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-protractor.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-protractor.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-protractor.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-protractor.tex} \makeatletter %<--------------------------------------------------------------------------–> % !!! idea from Y. Combe !!! diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-sectors.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-sectors.tex index 7de5a1f1b17..ee07eddbd13 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-sectors.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-sectors.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-sectors.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-sectors.tex} \makeatletter %<----------------------- Sectors ------------------------------–> \gdef\tkz@nums{0} diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-show.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-show.tex index a22f1534f60..649ab09f7b3 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-show.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-show.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-show.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-show.tex} \makeatletter %<--------------------------------------------------------------------------–> % finding specific points in a triangle diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-triangles.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-triangles.tex index 4ab0ae915ed..04d9ea258bf 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-triangles.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-obj-eu-triangles.tex @@ -10,11 +10,10 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-triangles.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-triangles.tex} \makeatletter -\newif\iftkz@swap@tr %<--------------------------------------------------------------------------–> % Triangle Equilateral %<--------------------------------------------------------------------------–> @@ -35,7 +34,6 @@ \endgroup } %<--------------------------------------------------------------------------–> - \def\tkzDefIsoscelesRightTriangle{\pgfutil@ifnextchar[{\tkz@DefIsoscelesRightTriangle}{% \tkz@DefIsoscelesRightTriangle[]}} @@ -142,16 +140,16 @@ golden/.code = \def\tkz@numtr{4}, sublime/.code = \def\tkz@numtr{4}, euclid/.code = \def\tkz@numtr{5}, - euclide/.code = \def\tkz@numtr{5}, + euclide/.code = \def\tkz@numtr{5}, gold/.code = \def\tkz@numtr{6}, cheops/.code = \def\tkz@numtr{7}, two angles/.code args = {#1 and #2} { \def\tkz@numtr{8}% \def\tkz@alpha{#1}% \def\tkz@beta{#2}}, isosceles right/.code = \def\tkz@numtr{9}, - swap/.is if = tkz@swap@tr, - swap/.default = true, - swap = false, + swap/.is if = tkz@swap@tr, + swap/.default = true, + swap = false, equilateral } diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-BB.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-BB.tex index 9d7af23518f..4af6ca4f099 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-BB.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-BB.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-obj-eu-BB.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-obj-eu-BB.tex} \makeatletter %<--------------------------------------------------------------------------–> \def\tkzShowBB{\pgfutil@ifnextchar[{\tkz@ShowBB}{\tkz@ShowBB[]}} diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-angles.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-angles.tex index 8e28c4a2b32..0748e4462a9 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-angles.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-angles.tex @@ -10,13 +10,14 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-tools-angles.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-tools-angles.tex} \makeatletter %<--------------------------------------------------------------------------–> %<--------------------------------------------------------------------------–> -% thanks karu : http://tex.stackexchange.com/questions/151667/tkzgetangle-strange-behavior/196224#196224 \tkzGetAngle strange behavior +% thanks karu : http://tex.stackexchange.com/questions/151667/tkzgetangle-strange-behavior/196224#196224 +% \tkzGetAngle strange behavior % defines \tkz@FirstAngle and \tkz@SecondAngle sens trigo %<--------------------------------------------------------------------------–> \def\tkzNormalizeAngle(#1,#2){% diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-base.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-base.tex index b48a191b1f1..9ad90734b2d 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-base.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-base.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-tools-eu-base.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-tools-eu-base.tex} \makeatletter %<--------------------------------------------------------------------------–> \global\let\tkz@tmp@xa\tkz@init@xmin% modif 2016 diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-colors.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-colors.tex index 5380ce9257d..8f95c8e4ad9 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-colors.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-colors.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-tools-eu-colors} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-tools-eu-colors} \makeatletter %<------ Initialisation of the colors with tkzSetUpColors -----------------> diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-intersections.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-intersections.tex index fb1633937f1..74d351e2e41 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-intersections.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-intersections.tex @@ -13,9 +13,9 @@ % The Current Maintainer of this work is Alain Matthes. % utf8 encoding -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-tools-intersections.tex} +\def\fileversion{4.04} +\def\filedate{2022/01/22} +\typeout{2022/01/22 4.04 tkz-tools-intersections.tex} \makeatletter %<--------------------------------------------------------------------------–> % intersection de deux lignes @@ -127,28 +127,29 @@ \def\tkzTestInterLC(#1,#2)(#3,#4){% \tkz@Projection(#1,#2)(#3){tkz@pth}% distance centre à la ligne \tkz@@CalcLength(#3,tkz@pth){tkz@mathLen}% -\tkz@@CalcLength(#3,#4){tkzLengthResult} +\tkz@@CalcLength(#3,#4){tkzLengthResult}%calcul du rayon \ifdim\tkz@mathLen pt>\tkzLengthResult pt\relax% -\def\tkzflagLC{-1} +\tkzFlagLCfalse \else -\def\tkzflagLC{1} +\tkzFlagLCtrue \fi } %<--------------------------------------------------------------------------–> \def\tkz@numlc{0} \pgfkeys{/linecircle/.cd, - node/.code = \def\tkz@numlc{0}, - R/.code = \def\tkz@numlc{1}, - with nodes/.code = \def\tkz@numlc{2}, - common/.store in = \tkz@common, - common = {}, + node/.code = \def\tkz@numlc{0}, + R/.code = \def\tkz@numlc{1}, + with nodes/.code = \def\tkz@numlc{2}, + common/.store in = \tkz@common, + near/.store in = \tkz@near, + common = {}, + near = {}, node } %<--------------------------------------------------------------------------–> \def\tkzInterLC{\pgfutil@ifnextchar[{\tkz@InterLC}{\tkz@InterLC[]}} \def\tkz@InterLC[#1](#2,#3)(#4,#5){% \begingroup -\pgfkeys{linecircle/.cd} \pgfqkeys{/linecircle}{#1} \pgfinterruptboundingbox \ifcase\tkz@numlc% @@ -164,7 +165,8 @@ {tkzSecondPointResult}% \fi \ifx\tkz@common\tkzutil@empty - \tkzFindAngle(#2,tkzFirstPointResult,#4) \tkzGetAngle{tkz@an} + \ifx\tkz@near\tkzutil@empty + \tkzFindAngle(tkzSecondPointResult,tkzFirstPointResult,#4) \tkzGetAngle{tkz@an} \ifdim\tkz@an pt<180 pt\relax% \else \pgfnodealias{tkzPointTmp}{tkzSecondPointResult} @@ -172,8 +174,18 @@ \pgfnodealias{tkzFirstPointResult}{tkzPointTmp} \fi \else + \tkz@@CalcLength(#2,tkzFirstPointResult){tkzLengthFirst} + \tkz@@CalcLength(#2,tkzSecondPointResult){tkzLengthSecond} + \ifdim \tkzLengthFirst pt < \tkzLengthSecond pt\relax% + \else + \pgfnodealias{tkzPointTmp}{tkzSecondPointResult} + \pgfnodealias{tkzSecondPointResult}{tkzFirstPointResult} + \pgfnodealias{tkzFirstPointResult}{tkzPointTmp} + \fi + \fi + \else \tkz@@CalcLength(\tkz@common,tkzSecondPointResult){tkz@mathLen} - \ifdim\tkz@mathLen pt<0.05pt\relax% + \ifdim\tkz@mathLen pt<0.1pt\relax% \else \pgfnodealias{tkzPointTmp}{tkzSecondPointResult} \pgfnodealias{tkzSecondPointResult}{tkzFirstPointResult} @@ -256,60 +268,10 @@ \tkzInterLCR(#1,#2)(#3,\tkz@radius pt){#6}{#7} \endgroup } - -%<--------------------------------------------------------------------------–> -% Intersection de deux cercles -%<--------------------------------------------------------------------------–> -\def\tkz@numcc{0} -\pgfkeys{ -/circlecircle/.cd, - node/.code = {\global\def\tkz@numcc{0}}, - R/.code = {\global\def\tkz@numcc{1}}, - with nodes/.code = {\global\def\tkz@numcc{2}}, - common/.store in = \tkz@common, - common = {}, -} %<--------------------------------------------------------------------------–> -\def\tkzInterCC{\pgfutil@ifnextchar[{\tkz@InterCC}{\tkz@InterCC[]}} -\def\tkz@InterCC[#1](#2,#3)(#4,#5){% -\begingroup -\pgfkeys{/circlecircle/.cd,node} -\pgfqkeys{/circlecircle}{#1} -\ifcase\tkz@numcc% - % first case 0 - \tkz@save@length - \tkz@@CalcLengthcm(#2,#3){tkz@rayA} - \tkz@@CalcLengthcm(#4,#5){tkz@rayB} - \tkz@restore@length - \tkzInterCCR(#2,\tkz@rayA)(#4,\tkz@rayB){tkzFirstPointResult}{% - tkzSecondPointResult} - \or% 1 - \tkzInterCCR(#2,#3)(#4,#5){tkzFirstPointResult}{tkzSecondPointResult}% - \or%2 - \tkzInterCCWithNodes(#2,#3)(#4,#5){tkzFirstPointResult}{tkzSecondPointResult} -\fi - \ifx\tkz@common\tkzutil@empty - \tkzFindAngle(#2,tkzFirstPointResult,#4) \tkzGetAngle{tkz@an} - \ifdim\tkz@an pt<180 pt\relax% - \else - \pgfnodealias{tkzPointTmp}{tkzSecondPointResult} - \pgfnodealias{tkzSecondPointResult}{tkzFirstPointResult} - \pgfnodealias{tkzFirstPointResult}{tkzPointTmp} - \fi - \else -\tkz@@CalcLength(\tkz@common,tkzSecondPointResult){tkz@mathLen} - \ifdim\tkz@mathLen pt<0.05pt\relax% - \else - \pgfnodealias{tkzPointTmp}{tkzSecondPointResult} - \pgfnodealias{tkzSecondPointResult}{tkzFirstPointResult} - \pgfnodealias{tkzFirstPointResult}{tkzPointTmp} - \fi - \fi -\endgroup -} +% Intersection of 2 circles %<--------------------------------------------------------------------------–> %<--------------------------------------------------------------------------–> - % méthode % /* circle_circle_intersection() * % * Determine the points where 2 circles in a common plane intersect. @@ -385,6 +347,71 @@ % % return 1; % } +%<--------------------------------------------------------------------------–> +% Intersection de deux cercles +%<--------------------------------------------------------------------------–> +%<---------- test ------------------------------------------------------–> +% test avec des nodes +\def\tkzTestInterCC(#1,#2)(#3,#4){% +\tkz@@CalcLength(#1,#3){tkz@mathLen}% distance entre les centres +\tkz@@CalcLength(#2,#1){tkz@rA}%calcul du rayon +\tkz@@CalcLength(#4,#3){tkz@rB}%calcul du rayon +\edef\tkz@rS{\fpeval{\tkz@rA+\tkz@rB}} +\ifdim\tkz@mathLen pt > \tkz@rS pt\relax% +\tkzFlagCCfalse +\else +\tkzFlagCCtrue +\fi +} + +\def\tkz@numcc{0} +\pgfkeys{ +/circlecircle/.cd, + node/.code = \def\tkz@numcc{0}, + R/.code = \def\tkz@numcc{1}, + with nodes/.code = \def\tkz@numcc{2}, + common/.store in = \tkz@common, + common = {}, + node +} +%<--------------------------------------------------------------------------–> +\def\tkzInterCC{\pgfutil@ifnextchar[{\tkz@InterCC}{\tkz@InterCC[]}} +\def\tkz@InterCC[#1](#2,#3)(#4,#5){% +\begingroup +\pgfqkeys{/circlecircle}{#1} +\ifcase\tkz@numcc% + % first case 0 + \tkz@save@length + \tkz@@CalcLengthcm(#2,#3){tkz@rayA} + \tkz@@CalcLengthcm(#4,#5){tkz@rayB} + \tkz@restore@length + \tkzInterCCR(#2,\tkz@rayA)(#4,\tkz@rayB){tkzFirstPointResult}{% + tkzSecondPointResult} + \or% 1 + \tkzInterCCR(#2,#3)(#4,#5){tkzFirstPointResult}{tkzSecondPointResult}% + \or%2 + \tkzInterCCWithNodes(#2,#3)(#4,#5){tkzFirstPointResult}{tkzSecondPointResult} +\fi + \ifx\tkz@common\tkzutil@empty + \tkzFindAngle(#2,tkzFirstPointResult,#4) \tkzGetAngle{tkz@an} + \ifdim\tkz@an pt<180 pt\relax% + \else + \pgfnodealias{tkzPointTmp}{tkzSecondPointResult} + \pgfnodealias{tkzSecondPointResult}{tkzFirstPointResult} + \pgfnodealias{tkzFirstPointResult}{tkzPointTmp} + \fi + \else +\tkz@@CalcLength(\tkz@common,tkzSecondPointResult){tkz@mathLen} + \ifdim\tkz@mathLen pt<0.05pt\relax% + \else + \pgfnodealias{tkzPointTmp}{tkzSecondPointResult} + \pgfnodealias{tkzSecondPointResult}{tkzFirstPointResult} + \pgfnodealias{tkzFirstPointResult}{tkzPointTmp} + \fi + \fi +\endgroup +} +%<--------------------------------------------------------------------------–> \def\tkzInterCCR(#1,#2)(#3,#4)#5#6{% \begingroup diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-math.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-math.tex index 3cc9943e8ef..9efc3f10ab0 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-math.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-math.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-tools-eu-math.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-tools-eu-math.tex} \makeatletter %<--------------------------------------------------------------------------> % \tkzpointnormalised# @@ -54,7 +54,6 @@ % \veclen mais avec fp % option cm le résultat est en cm sinon en pt %<--------------------------------------------------------------------------> -%\newif\iftkzLengthIncm \iftkzLengthIncmtrue \pgfkeys{tkzcalclen/.cd, cm/.is if = tkzLengthIncm, cm/.default = true, diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-modules.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-modules.tex index 7ac948f2db6..04db27c968a 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-modules.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-modules.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-tools-utilities.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-tools-utilities.tex} \makeatletter %<------------- % chargement des modules ----------------------------------> \def\tkz@obj@all{angles,arcs,compass,defcircles,deflines,defpoints,defpointsby,defpointsrnd,defpointswith,polygons,protractor,sectors,show,triangles}% diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-text.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-text.tex index 3f419f19bd5..36da262f36a 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-text.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-text.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-tools-eu-text.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-tools-eu-text.tex} \makeatletter %<--------------------------------------------------------------------------–> % tkzText diff --git a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-utilities.tex b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-utilities.tex index 65173a1d3c8..3662ead8765 100644 --- a/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-utilities.tex +++ b/Master/texmf-dist/tex/latex/tkz-euclide/tkz-tools-eu-utilities.tex @@ -10,9 +10,9 @@ % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. -\def\fileversion{4.03} -\def\filedate{2022/01/19} -\typeout{2022/01/19 4.03 tkz-tools-eu-utilities.tex} +\def\fileversion{4.05b} +\def\filedate{2022/02/07} +\typeout{2022/02/07 4.05b tkz-tools-eu-utilities.tex} \makeatletter \pgfkeys{/tkzClip/.cd, space/.store in = {\tkz@CLI@space}, @@ -168,5 +168,14 @@ space = {}} } \def\EnabledNumprint{\let\numprint\tkz@numprint} %<---------------------------------------------------------–> +\def\tkzSwapPoints(#1,#2){ + \pgfnodealias{tkzPointTmp}{#2} + \pgfnodealias{#2}{#1} + \pgfnodealias{#1}{tkzPointTmp}} +%<---------------------------------------------------------–> +\def\tkzPermute(#1,#2,#3){ +\tkzURotateWithNodes(#1,#3,#2)(#3) \tkzGetPoint{tkzpt} +\tkzURotateWithNodes(#1,#2,#3)(#2) \tkzGetPoint{#2} +\tkzSwapPoints(tkzpt,#3)} \makeatother \endinput \ No newline at end of file -- cgit v1.2.3