diff options
author | Karl Berry <karl@freefriends.org> | 2020-04-18 20:56:01 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-04-18 20:56:01 +0000 |
commit | 8520e46c50136c5a6160de5f7b8c7fb574821288 (patch) | |
tree | b7a6238aa56e5ffd26f0306e804a609fcaa086d4 /Master/texmf-dist/tex | |
parent | 55b88cc13c3235652884f20a23da14aae7ef35d9 (diff) |
pst-eucl (18apr20)
git-svn-id: svn://tug.org/texlive/trunk@54785 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r-- | Master/texmf-dist/tex/generic/pst-eucl/pst-eucl.tex | 63 |
1 files changed, 54 insertions, 9 deletions
diff --git a/Master/texmf-dist/tex/generic/pst-eucl/pst-eucl.tex b/Master/texmf-dist/tex/generic/pst-eucl/pst-eucl.tex index c5e67dae20e..3a881739bb2 100644 --- a/Master/texmf-dist/tex/generic/pst-eucl/pst-eucl.tex +++ b/Master/texmf-dist/tex/generic/pst-eucl/pst-eucl.tex @@ -20,8 +20,8 @@ \csname PSTEuclideLoaded\endcsname \let\PSTEuclideLoaded\endinput % -\def\fileversion{1.71} -\def\filedate{2020/02/26} +\def\fileversion{1.72} +\def\filedate{2020/04/18} %% \message{`PST-Euclide v\fileversion, \filedate\space (dr,hv)}% %% prologue for postcript @@ -560,12 +560,8 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% #2 #4 #6 -> coordinates for nodes %% #3 #5 #7 -> nodes name -\def\pstTriangle{\@ifnextchar[\Pst@Triangle{\Pst@Triangle[]}} -\def\Pst@Triangle[#1]{% - \begingroup - \psset{#1}% - \@ifnextchar(\pstTriangle@ii{\pstTriangle@ii(0,0)}% -} +\def\pstTriangle{\pst@object{pstTriangle}}% +\def\pstTriangle@i{\@ifnextchar(\pstTriangle@ii{\pstTriangle@ii(0,0)}}% \def\pstTriangle@ii(#1)#2(#3)#4(#5)#6{% \pst@killglue %%begin modif alaindelplanque 11/2003 @@ -628,7 +624,7 @@ \Pst@Geonode@i[](#5){#6}%%NEW DR 15112001 \pst@TraceTriangle{#2}{#4}{#6}% \egroup -\endgroup}% +}% % \def\pst@TraceTriangle#1#2#3{\pspolygon(#1)(#2)(#3)}% % @@ -2361,6 +2357,55 @@ \endgroup }% % +%% \pstTriangleLC[Options]{A}{B}{C}{L}[S1][S2][S3] +%% Draw the Lemonie of triangle ABC +%% Parameters: +%% #1 -> options +%% #2 -> [input] the node A +%% #3 -> [input] the node B +%% #4 -> [input] the node C +%% #5 -> [output] the output Lemoine Point L +%% #6 -> [output] the optional output point on BC +%% #7 -> [output] the optional output point on CA +%% #8 -> [output] the optional output point on AB +\def\pstTriangleLC{\@ifnextchar[\Pst@TriangleLC{\Pst@TriangleLC[]}} +\def\Pst@TriangleLC[#1]#2#3#4#5{% + \begingroup + \@InitListMng % + \psset{#1}% + \def\pst@triangle@node@A{#2} + \def\pst@triangle@node@B{#3} + \def\pst@triangle@node@C{#4} + \def\pst@triangle@node@L{#5} + \@ifnextchar[\Pst@TriangleLC@i{\Pst@TriangleLC@j[BC_L][CA_L][AB_L]}} +\def\Pst@TriangleLC@i[#1][#2][#3]{% + \pstMiddleAB[PointName=none,PointSymbol=none]{\pst@triangle@node@B}{\pst@triangle@node@C}{BC_M} + \pstMiddleAB[PointName=none,PointSymbol=none]{\pst@triangle@node@C}{\pst@triangle@node@A}{CA_M} + \pstBisectorAOB[PointName=none,PointSymbol=none]{\pst@triangle@node@B}{\pst@triangle@node@A}{\pst@triangle@node@C}{A_T}{A_S} + \pstBisectorAOB[PointName=none,PointSymbol=none]{\pst@triangle@node@C}{\pst@triangle@node@B}{\pst@triangle@node@A}{B_T}{B_S} + \pstOrtSym[PointName=none,PointSymbol=none]{\pst@triangle@node@A}{A_T}{BC_M}[BC_LL] + \pstOrtSym[PointName=none,PointSymbol=none]{\pst@triangle@node@B}{B_T}{CA_M}[CA_LL] + \pstInterLL[PointName=none,PointSymbol=none]{\pst@triangle@node@A}{BC_LL}{\pst@triangle@node@B}{CA_LL}{\pst@triangle@node@L} + \pstInterLL[PointName=none,PointSymbol=none]{\pst@triangle@node@A}{\pst@triangle@node@L}{\pst@triangle@node@B}{\pst@triangle@node@C}{#1} + \pstInterLL[PointName=none,PointSymbol=none]{\pst@triangle@node@B}{\pst@triangle@node@L}{\pst@triangle@node@C}{\pst@triangle@node@A}{#2} + \pstInterLL[PointName=none,PointSymbol=none]{\pst@triangle@node@C}{\pst@triangle@node@L}{\pst@triangle@node@A}{\pst@triangle@node@B}{#3} + \Pst@ManageParamList{\pst@triangle@node@L}% + \Pst@ManageParamList{#1}% + \Pst@ManageParamList{#2}% + \Pst@ManageParamList{#3}% + \endgroup +}% +\def\Pst@TriangleLC@j[#1][#2][#3]{% + \pstMiddleAB[PointName=none,PointSymbol=none]{\pst@triangle@node@B}{\pst@triangle@node@C}{BC_M} + \pstMiddleAB[PointName=none,PointSymbol=none]{\pst@triangle@node@C}{\pst@triangle@node@A}{CA_M} + \pstBisectorAOB[PointName=none,PointSymbol=none]{\pst@triangle@node@B}{\pst@triangle@node@A}{\pst@triangle@node@C}{A_T}{A_S} + \pstBisectorAOB[PointName=none,PointSymbol=none]{\pst@triangle@node@C}{\pst@triangle@node@B}{\pst@triangle@node@A}{B_T}{B_S} + \pstOrtSym[PointName=none,PointSymbol=none]{\pst@triangle@node@A}{A_T}{BC_M}[BC_LL] + \pstOrtSym[PointName=none,PointSymbol=none]{\pst@triangle@node@B}{B_T}{CA_M}[CA_LL] + \pstInterLL{\pst@triangle@node@A}{BC_LL}{\pst@triangle@node@B}{CA_LL}{\pst@triangle@node@L} + \endgroup +}% +% %% Distance between two points \def\pstDist#1#2{% tx@EcldDict begin /N@#1 GetNode /N@#2 GetNode ABDist end |