diff options
Diffstat (limited to 'macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-show.tex')
-rw-r--r-- | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-show.tex | 346 |
1 files changed, 0 insertions, 346 deletions
diff --git a/macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-show.tex b/macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-show.tex deleted file mode 100644 index 3b3a00e745..0000000000 --- a/macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-show.tex +++ /dev/null @@ -1,346 +0,0 @@ -%tkz-obj-eu-show.tex -% Copyright 2022 Alain Matthes -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either version 1.3 -% of this license or (at your option) any later version. -% The latest version of this license is in -% http://www.latex-project.org/lppl.txt -% and version 1.3 or later is part of all distributions of LaTeX -% version 2005/12/01 or later. -% This work has the LPPL maintenance status “maintained”. -% The Current Maintainer of this work is Alain Matthes. - -\def\fileversion{4.25c} -\def\filedate{2022/09/23} -\typeout{2022/09/23 4.25c tkz-obj-eu-show.tex} -\makeatletter -%<--------------------------------------------------------------------------–> -% finding specific points in a triangle -%<--------------------------------------------------------------------------–> -% equi points -%<--------------------------------------------------------------------------–> -% draw ? show ? -\pgfkeys{/tkzEquiPt/.cd, - from/.store in = {\tkz@frompoint}, - dist/.store in = {\tkz@equ@dist}, - show/.is if = tkz@equi@show, - dist = 2, - show = false, - /tkzEquiPt/.search also={/tikz} -} - -\def\tkzDefEquiPoints{\pgfutil@ifnextchar[{\tkz@DefEquiPoints}{% - \tkz@DefEquiPoints[]}} -\def\tkz@DefEquiPoints[#1](#2,#3){% -\pgfqkeys{/tkzEquiPt}{#1} -\begingroup - \tkzUProjection(#2,#3)(\tkz@frompoint) - \pgfnodealias{tkzEQpoint}{tkzPointResult} - \tkzVecKNorm[\tkz@equ@dist](tkzEQpoint,#2) - \pgfnodealias{tkzFirstPointResult}{tkzPointResult} - \tkzVecKNorm[-\tkz@equ@dist](tkzEQpoint,#2) - \pgfnodealias{tkzSecondPointResult}{tkzPointResult} - \iftkz@equi@show - \tkzCompass[compass style,#1](\tkz@frompoint,tkzFirstPointResult) - \tkzCompass[compass style,#1](\tkz@frompoint,tkzSecondPointResult) - \fi -\endgroup -} - -%<--------------------------- The SHOW --------------------------------–> -%<--------------------------------------------------------------------------–> -\global\def\tkz@numsh{0} -\pgfkeys{/show/.cd, - mediator/.code = \def\tkz@numsh{0}, - perpendicular/.code args = {through #1} {\global\def\tkz@numsh{1}% - \def\tkz@through{#1}}, - orthogonal/.code args = {through #1} {\global\def\tkz@numsh{1}% - \global\def\tkz@through{#1}}, - parallel/.code args = {through #1} {\global\def\tkz@numsh{2}% - \global\def\tkz@through{#1}}, - bisector/.code = \global\def\tkz@numsh{3}, - K/.code = \def\tkz@koeff{#1}, - length/.code = \def\tkz@show@length{#1}, - ratio/.code = \def\tkz@show@ratio{#1}, - gap/.code = \def\tkz@show@gap{#1}, - size/.code = \def\tkz@show@size{#1}, - /show/.unknown/.code = {\let\searchname=\pgfkeyscurrentname - \pgfkeysalso{\searchname/.try=#1, - /tkzcompass/\searchname/.retry=#1, - /tikz/\searchname/.retry=#1}% - } - } -\def\tkzShowLine{\pgfutil@ifnextchar[{\tkz@ShowLine}{\tkz@ShowLine[]}} -\def\tkz@ShowLine[#1](#2){% -\begingroup -\pgfqkeys{/show}{ K = 1, - gap = 2, - ratio = .5, - length = 1, - size = 1 - } -\pgfqkeys{/show}{#1} -\ifcase\tkz@numsh% - % first case 0 - \tkzShowMediatorLine[#1](#2) - \or% 1 - \tkzShowOrthLine[#1](#2)(\tkz@through) - \or% 2 - \tkzShowLLLine[#1](#2)(\tkz@through) - \or% 3 - \tkzShowBisectorLine[#1](#2) -\fi -\endgroup -} - -\def\tkzShowMediatorLine{% - \pgfutil@ifnextchar[{\tkz@ShowMediatorLine}{\tkz@ShowMediatorLine[]}} -\def\tkz@ShowMediatorLine[#1](#2,#3){% -\begingroup -\pgfkeys{show/.cd, gap = 2, - ratio = .5, - length = 1 - } -\pgfkeys{show/.cd,#1} - \path (#2) -- (#3) coordinate[pos=.5](tkzmidpoint); - \tkzURotateAngle(#2,60)(#3) - \pgfnodealias{tkzFirstPointResult}{tkzPointResult} - \tkzURotateAngle(#3,60)(#2) - \pgfnodealias{tkzSecondPointResult}{tkzPointResult} - \tkz@VecKOrthNorm[1](tkzmidpoint,#2) - \pgfnodealias{MED@tmp1}{tkzPointResult} - \tkz@VecKOrthNorm[1](tkzmidpoint,#3) - \pgfnodealias{MED@tmp2}{tkzPointResult} - \tkz@VecKNorm[\tkz@show@gap](tkzmidpoint,MED@tmp1) - \pgfnodealias{MED@1}{tkzPointResult} - \tkz@VecKNorm[\tkz@show@gap](tkzmidpoint,MED@tmp2) - \pgfnodealias{MED@2}{tkzPointResult} - \tkzCompass[compass style,#1,length=\tkz@show@ratio*\tkz@show@length](#2,MED@1) - \tkzCompass[compass style,#1](#3,MED@1) - \tkzCompass[compass style,#1,length=\tkz@show@ratio*\tkz@show@length](#2,MED@2) - \tkzCompass[compass style,#1](#3,MED@2) -\endgroup -} -\def\tkzShowLLLine{\pgfutil@ifnextchar[{\tkz@ShowLLLine}{\tkz@ShowLLLine[]}} -\def\tkz@ShowLLLine[#1](#2,#3)(#4){% -\begingroup -\pgfkeys{show/.cd,gap=2,ratio=.75,length=1} -\pgfkeys{show/.cd,#1} - \tkz@VecKCoLinear[1](#2,#3,#4) - \pgfnodealias{tkz@lltmp}{tkzPointResult} - \tkzCompass[compass style,#1](#4,tkz@lltmp) - \tkzCompass[compass style,#1,length=\tkz@show@ratio*\tkz@show@length](#3,tkz@lltmp) -\endgroup -} - -%<--------------------------------------------------------------------------–> -% tkzLineOrth -%<--------------------------------------------------------------------------–> -% pas de projection ortho car le point peut être sur la droite. -% manque les tests . Il faudrait voir si on peut projeter et choisir -\def\tkzShowOrthLine{\pgfutil@ifnextchar[{\tkz@ShowOrthLine}{\tkz@ShowOrthLine[]}} -\def\tkz@ShowOrthLine[#1](#2,#3)(#4){% -\begingroup -\pgfkeys{show/.cd, - ratio = .75, - length = 1, - gap = -1, - size = 1} -\pgfkeys{show/.cd,#1} - \tkzDefPointWith(#2,#3) - \pgfnodealias{tkz@OLtmp}{tkzPointResult} - \tkz@VecKCoLinear[1](#2,tkz@OLtmp,#4) - \pgfnodealias{tkzPointCo}{tkzPointResult} - \tkzInterLL(#2,#3)(#4,tkzPointCo) - \pgfnodealias{tkzPOpoint}{tkzPointResult} - \tkz@@CalcLength(#4,tkzPOpoint){tkz@mathLen} - \tkz@VecKNorm[1](#2,#3) - \pgfnodealias{PO@tmp}{tkzPointResult} - \tkz@VecKCoLinear[1](#2,PO@tmp,tkzPOpoint) - \pgfnodealias{PO@tmp2}{tkzPointResult} - \tkz@VecKCoLinear[-1](#2,PO@tmp,tkzPOpoint) - \pgfnodealias{PO@tmp1}{tkzPointResult} - \tkz@VecKCoLinear[\tkz@show@size](tkzPOpoint,PO@tmp1,tkzPOpoint) - \pgfnodealias{PO@1}{tkzPointResult} - \tkz@VecKCoLinear[\tkz@show@size](tkzPOpoint,PO@tmp2,tkzPOpoint) - \pgfnodealias{PO@2}{tkzPointResult} - \ifdim\tkz@mathLen pt>10 pt\relax - \tkz@VecKNorm[1](#4,tkzPOpoint) - \pgfnodealias{PO@tmp1}{tkzPointResult} - \else - \tkz@VecKOrthNorm[1](tkzPOpoint,PO@2) - \pgfnodealias{PO@tmp1}{tkzPointResult} - \fi - \tkz@VecKCoLinear[-\tkz@show@gap](PO@tmp1,tkzPOpoint,tkzPOpoint) - \pgfnodealias{PO@3}{tkzPointResult} - \tkzCompass[compass style,#1,length=\tkz@show@ratio *\tkz@show@length](#4,PO@1) - \tkzCompass[compass style,#1,length=\tkz@show@ratio *\tkz@show@length](#4,PO@2) - \tkzCompass[compass style,#1,length=\tkz@show@ratio *\tkz@show@length](PO@1,PO@3) - \tkzCompass[compass style,#1,length=\tkz@show@length](PO@2,PO@3) -\endgroup -} -%<-------------------------------------------------------------------------–> -% bisector Line -%<-------------------------------------------------------------------------–> -\def\tkzShowBisectorLine{% - \pgfutil@ifnextchar[{\tkz@ShowBisectorLine}{\tkz@ShowBisectorLine[]}} -\def\tkz@ShowBisectorLine[#1](#2,#3,#4){% -\begingroup -\pgfkeys{show/.cd, gap = 2, - ratio =. 5, - length = 1, - size = 1 - } -\pgfkeys{show/.cd,#1} - \tkzVecKNorm(#3,#2) - \pgfnodealias{tkz@pt1}{tkzPointResult} - \tkzVecKNorm(#3,#4) - \pgfnodealias{tkz@pt2}{tkzPointResult} - \tkzDefMidPoint(tkz@pt1,tkz@pt2) - \pgfnodealias{tkz@pt3}{tkzPointResult} - \tkzDefEquilateral(tkz@pt2,tkz@pt1) - \pgfnodealias{tkz@pt4}{tkzPointResult} - \tkzDefMidPoint(tkz@pt3,tkz@pt4) - \pgfnodealias{tkz@ptm}{tkzPointResult} - \tkzVecKNorm(#3,tkz@ptm) - \pgfnodealias{tkzBisPoint}{tkzPointResult} - \tkzVecKNorm[\tkz@show@size](#3,#2) - \pgfnodealias{BI@1}{tkzPointResult} - \tkzVecKNorm[\tkz@show@size](#3,#4) - \pgfnodealias{BI@2}{tkzPointResult} - \tkzVecK[\tkz@show@gap](#3,tkzBisPoint) - \pgfnodealias{tkzBisPoint}{tkzPointResult} - \tkzCompass[compass style,#1,length=\tkz@show@ratio *\tkz@show@length](#3,BI@1) - \tkzCompass[compass style,#1,length=\tkz@show@ratio *\tkz@show@length](#3,BI@2) - \tkzCompass[compass style,#1,length=\tkz@show@length](BI@1,tkzBisPoint) - \tkzCompass[compass style,#1,length=\tkz@show@ratio *\tkz@show@length](BI@2,tkzBisPoint) -\endgroup -} -%<--------------------------------------------------------------------------–> -% Transformations Géométriques -%<--------------------------------------------------------------------------–> -%<--------------------------------------------------------------------------–> -% The SHOW -%<--------------------------------------------------------------------------–> -\def\tkz@numst{0} -\pgfkeys{/showtsf/.cd, - reflection/.code args={over #1--#2}{% - \def\tkzdeb{#1} - \def\tkzfin{#2} - \def\tkz@numst{0}}, - symmetry/.code args={center #1}{% - \def\tkzcenter{#1} - \def\tkz@numst{1}}, - projection/.code args={onto #1--#2}{% - \def\tkzdeb{#1} - \def\tkzfin{#2} - \def\tkz@numst{2}}, -translation/.code args={from #1 to #2}{% - \def\tkzfrom{#1}% - \def\tkzto{#2}% - \def\tkz@numst{3}}, - K/.code = \def\tkz@koeff{#1}, - length/.code = \def\tkz@show@length{#1}, - ratio/.code = \def\tkz@show@ratio{#1}, - gap/.code = \def\tkz@show@gap{#1}, - size/.code = \def\tkz@show@size{#1}, -/showtsf/.unknown/.code = {\let\searchname=\pgfkeyscurrentname - \pgfkeysalso{\searchname/.try=#1, - /tkzcompass/\searchname/.retry=#1, - /tikz/\searchname/.retry=#1}} -} -%<--------------------------------------------------------------------------–> -\def\tkzShowTransformation{\pgfutil@ifnextchar[{\tkz@ShowTransformation}{% - \tkz@ShowTransformation[]}} -\def\tkz@ShowTransformation[#1](#2){% -\begingroup - \pgfqkeys{/showtsf}{K=1,gap=2,size=1,ratio=.5,length=1} - \pgfqkeys{/showtsf}{#1} - \pgfinterruptboundingbox -\ifcase\tkz@numst% - % first case 0 - \tkzShowSymOrth[#1](\tkzdeb,\tkzfin)(#2) - \or% 1 - \tkzShowCSym[#1](\tkzcenter)(#2) - \or% 2 - \tkzShowProjection[#1](\tkzdeb,\tkzfin)(#2) - \or% 3 - \tkzShowTranslation[#1](\tkzfrom,\tkzto)(#2) - \fi - \endpgfinterruptboundingbox -\endgroup -} -%<--------------------------------------------------------------------------–> -\def\tkzShowTranslation{\pgfutil@ifnextchar[{\tkz@ShowTranslation}{% - \tkz@ShowTranslation[]}} - -\def\tkz@ShowTranslation[#1](#2,#3)(#4){% -\begingroup -\tkz@VecKCoLinear[1](#2,#3,#4) \pgfnodealias{tkz@lltmp}{tkzPointResult} -\tkzCompass[compass style,#1](#4,tkz@lltmp) -\tkzCompass[compass style,#1,length=\tkz@show@ratio*\tkz@show@length](#3,tkz@lltmp) -\endgroup} -%<--------------------------------------------------------------------------–> -\def\tkzShowSymOrth{\pgfutil@ifnextchar[{\tkz@ShowSymOrth}{% - \tkz@ShowSymOrth[]}} -\def\tkz@ShowSymOrth[#1](#2,#3)(#4){% -\begingroup - \pgfpointdiff{\pgfpointanchor{#2}{center}}% - {\pgfpointanchor{#3}{center}}% - \tkz@ax =\pgf@y% - \tkz@ay =\pgf@x% - \path[coordinate](#4)--++(-\tkz@ax,\tkz@ay) coordinate (tkz@point); - \tkzInterLL(#2,#3)(#4,tkz@point) - \pgfnodealias{tkzPointofSym}{tkzPointResult} - \tkz@VecK[2](#4,tkzPointofSym) - \pgfnodealias{tkz@pointtsf}{tkzPointResult} - \tkzCompass[compass style,#1](#2,#4) - \tkzCompass[compass style,#1,length=\tkz@show@ratio*\tkz@show@length](#3,#4) - \tkzCompass[compass style,#1](#2,tkz@pointtsf) - \tkzCompass[compass style,#1,length=\tkz@show@ratio*\tkz@show@length](#3,tkz@pointtsf) -\endgroup -} -%<--------------------------------------------------------------------------–> -\def\tkzShowCSym{\pgfutil@ifnextchar[{\tkz@ShowCSym}{\tkz@ShowCSym[]}} - -\def\tkz@ShowCSym[#1](#2)(#3){% -\begingroup - \pgfpointdiff{\pgfpointanchor{#2}{center}}% - {\pgfpointanchor{#3}{center}}% - \tkz@ax=\pgf@x% - \tkz@ay=\pgf@y% -\path[coordinate](#2)--++(-\tkz@ax,-\tkz@ay) coordinate (tkz@pointtsf); - \tkzCompass[compass style,#1](#2,tkz@pointtsf) - \tkzCompass[compass style,#1](#2,#3) -\endgroup -} -%<--------------------------------------------------------------------------–> -\def\tkzShowProjection{\pgfutil@ifnextchar[{\tkz@ShowProjection}{% - \tkz@ShowProjection[]}} -\def\tkz@ShowProjection[#1](#2,#3)(#4){% -\begingroup - \pgfpointdiff{\pgfpointanchor{#2}{center}}% - {\pgfpointanchor{#3}{center}}% - \tkz@ax =\pgf@y% - \tkz@ay =\pgf@x% - \path[coordinate](#4)--++(-\tkz@ax,\tkz@ay) coordinate (tkz@point); - \tkzInterLL(#2,#3)(#4,tkz@point) - \pgfnodealias{tkz@pointtsf}{tkzPointResult} - \tkz@VecKCoLinear[1](#2,#3,tkz@pointtsf) - \pgfnodealias{SO@tmp1}{tkzPointResult} - \tkz@VecKCoLinear[-1](#2,#3,tkz@pointtsf) - \pgfnodealias{SO@tmp2}{tkzPointResult} - \tkz@VecKNorm[\tkz@show@size](tkz@pointtsf,SO@tmp1) - \pgfnodealias{SO@1}{tkzPointResult} - \tkz@VecKNorm[\tkz@show@size](tkz@pointtsf,SO@tmp2) - \pgfnodealias{SO@2}{tkzPointResult} - \tkz@VecKNorm[-\tkz@show@gap](tkz@pointtsf,#4) - \pgfnodealias{SO@3}{tkzPointResult} - \tkzCompass[compass style,#1](#4,SO@1) - \tkzCompass[compass style,#1](#4,SO@2) - \tkzCompass[compass style,#1](SO@1,SO@3) - \tkzCompass[compass style,#1,length=\tkz@show@ratio*\tkz@show@length](SO@2,SO@3) -\endgroup -} -\makeatother -\endinput
\ No newline at end of file |