summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/pst-eucl
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-12-11 22:20:35 +0000
committerKarl Berry <karl@freefriends.org>2018-12-11 22:20:35 +0000
commit61964850e31f2ce6c97f6115fc73bec3ead475e2 (patch)
treed7a5559fb98e3188dfab2529e5f019b5b936ce3b /Master/texmf-dist/tex/generic/pst-eucl
parentfcb05e5badc5ccfca4b1539572f63e487ed4fce5 (diff)
pst-eucl (11dec18)
git-svn-id: svn://tug.org/texlive/trunk@49386 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/pst-eucl')
-rw-r--r--Master/texmf-dist/tex/generic/pst-eucl/pst-eucl.tex68
1 files changed, 57 insertions, 11 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 afb5ca1b25d..a2039c87dbb 100644
--- a/Master/texmf-dist/tex/generic/pst-eucl/pst-eucl.tex
+++ b/Master/texmf-dist/tex/generic/pst-eucl/pst-eucl.tex
@@ -19,8 +19,8 @@
\csname PSTEuclideLoaded\endcsname
\let\PSTEuclideLoaded\endinput
%
-\def\fileversion{1.60a}
-\def\filedate{2018/12/09}
+\def\fileversion{1.61}
+\def\filedate{2018/12/11}
%%
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN
@@ -71,9 +71,22 @@
\define@key[psset]{pst-eucl}{PointNameSep}{\edef\psk@PointNameSep{#1}}%
% position angle for positionning a point name
\define@key[psset]{pst-eucl}{PosAngle}{\edef\psk@PosAngle{#1}}%
-\define@key[psset]{pst-eucl}{PosAngleA}[undef]{\edef\psk@PosAngleA{#1}}%
-\define@key[psset]{pst-eucl}{PosAngleB}[undef]{\edef\psk@PosAngleB{#1}}%
-\define@key[psset]{pst-eucl}{PosAngleC}[undef]{\edef\psk@PosAngleC{#1}}%
+\iffalse
+\define@key[psset]{pst-eucl}{PosAngle}{\expandafter\psk@@Pos@Angle#1,,!}%
+\def\psk@@Pos@Angle#1,#2,#3#4#5!{%
+ \typeout{1: #1; 2: #2; 3: #3; 4: #4; 5: #5}%
+ \def\psk@PosAngle{#1}%
+ \def\@temp{#1}%
+ \ifx\@temp\@undef \typeout{Nichts machen}\else\typeout{Winkel setzen}%
+ \ifx\relax#1\relax \def\psk@PosAngle{undef}\else\def\psk@PosAngleA{#1}\fi
+ \ifx\relax#2\relax \else\def\psk@PosAngleB{#2}\fi
+ \ifx\relax#3\relax \else\def\psk@PosAngleC{#3}\fi
+ \fi
+}
+\fi
+\define@key[psset]{pst-eucl}{PosAngleA}[undef]{\def\psk@PosAngleA{#1}}%
+\define@key[psset]{pst-eucl}{PosAngleB}[undef]{\def\psk@PosAngleB{#1}}%
+\define@key[psset]{pst-eucl}{PosAngleC}[undef]{\def\psk@PosAngleC{#1}}%
% dimension of the right angle mark
\define@key[psset]{pst-eucl}{RightAngleSize}[4]{\edef\psk@RightAngleSize{#1}}%
\define@key[psset]{pst-eucl}{RightAngleType}[default]{\edef\psk@RightAngleType{#1}}%
@@ -139,7 +152,8 @@
PointSymbol=*, PointSymbolA=*, PointSymbolB=*, PointSymbolC=*,
PointName=default, PointNameA=undef, PointNameB=undef, PointNameC=undef,
PtNameMath=true, PointNameMathSize=\textstyle, PointNameSize=\normalsize,
- PointNameSep=default, PosAngle=undef, PosAngleA=undef,
+ PointNameSep=default, PosAngle=undef,
+ PosAngleA=undef,
PosAngleB=undef, PosAngleC=undef, Mark=undef, mark=undef,SegmentSymbol=MarkHashh,
SegmentSymbolA=MarkHashh, SegmentSymbolB=MarkHash, SegmentSymbolC=MarkHashhh,
RightAngleSize=.4, RightAngleType=default, LabelAngleOffset=0, LabelSep=1,
@@ -450,7 +464,8 @@
\@ifnextchar(\Pst@Trianglei{\Pst@Trianglei(0,0)}}%
\def\Pst@Trianglei(#1)#2(#3)#4(#5)#6{%
%\pst@killglue% <------------------------------------------------- hv - DR 050315
- \bgroup\pst@killglue% <------------------------------------------- DR 050315
+ \bgroup
+ \pst@killglue% <------------------------------------------- DR 050315
%%begin modif alaindelplanque 11/2003
\pst@@getcoor{#1}\xdef\@@coordi{\pst@coor}%% A<------------------ hv
\pst@@getcoor{#3}\xdef\@@coordiii{\pst@coor}%% B<------------------ hv
@@ -463,7 +478,8 @@
%\bgroup\use@par% % Affectation of local parameters<---- DR 050315
\use@par% % Affectation of local parameters<---- DR 050315
%%begin modif alaindelplanque 11/2003
- \bgroup\ifx\psk@PosAngleA\@undef
+ \bgroup
+ \ifx\psk@PosAngleA\@undef
\psset{PosAngleA={!
/AngleAB \@@coordi\space\@@coordiii\space tx@EcldDict begin ABVect end exch Atan def
/AngleAC \@@coordi\space\@@coordv\space tx@EcldDict begin ABVect end exch Atan def
@@ -471,21 +487,26 @@
1 exch \tx@PtoC exch \@@coordi\space 4 1 roll add 3 1 roll add XS YS Pyth2 % test if inside/outside
\@@coordi\space XS YS Pyth2 le { 180 add } if
}}%% <------ hv
- \else\psset{PosAngle=\psk@PosAngleA}\fi
+ \else
+ \psset{PosAngle=\psk@PosAngleA}
+ \fi
%%end modif alaindelplanque 11/2003
\ifx\psk@PosAngleA\@undef\else\psset{PosAngle=\psk@PosAngleA}\fi
\let\psk@PointSymbol=\psk@PointSymbolA
\ifx\psk@PointNameA\@undef\else\psset{PointName=\psk@PointNameA}\fi
\Pst@Geonode@i[](#1){#2}\egroup%%NEW DR 15112001
%%begin modif alaindelplanque 11/2003
- \bgroup\ifx\psk@PosAngleB\@undef
+ \bgroup
+ \ifx\psk@PosAngleB\@undef
\psset{PosAngleB={!
/AngleBC \@@coordiii\space\@@coordv\space tx@EcldDict begin ABVect end exch Atan def
/AngleBA \@@coordiii\space\@@coordi\space tx@EcldDict begin ABVect end exch Atan def
AngleBA AngleBC add 2 div dup 1 exch \tx@PtoC exch \@@coordiii\space 4 1 roll add 3 1 roll add XS YS Pyth2
\@@coordiii\space XS YS Pyth2 le { 180 add } if
}}%% <------ hv
- \else\psset{PosAngle=\psk@PosAngleB}\fi
+ \else
+ \psset{PosAngle=\psk@PosAngleB}
+ \fi
%%end modif alaindelplanque 11/2003
\ifx\psk@PosAngleB\@undef\else\psset{PosAngle=\psk@PosAngleB}\fi
\let\PointSymbol=\psk@PointSymbolB
@@ -1528,6 +1549,31 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Special macros for parameters
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+\def\pstTriangleIC{\pst@object{pstTriangleIC}}% inner circle of a triangle
+\def\pstTriangleIC@i#1#2#3{%
+ \begingroup
+ \psset{PointSymbol=none,PointName=none,linestyle=none,CodeFig=false}
+ \pstBissectBAC{#3}{#1}{#2}{IC_BC}
+ \pstBissectBAC{#2}{#3}{#1}{IC_AB}
+ \pstInterLL{#3}{IC_AB}{#1}{IC_BC}{IC_O}
+ \pstProjection{#1}{#2}{IC_O}[IC_OAB]
+ \endgroup
+ \begingroup
+ \use@par
+ \pstCircleOA{IC_O}{IC_OAB}
+ \endgroup
+}
+%
+\def\pstTriangleOC{\pst@object{pstTriangleOC}}% inner circle of a triangle
+\def\pstTriangleOC@i#1#2#3{%
+ \begingroup
+ \addbefore@par{PointSymbol=none,PointName=none}
+ \use@par
+ \pstCircleABC{#1}{#2}{#3}{OC_O}
+ \endgroup
+}
+%
%% Distance between two points
\def\pstDistAB#1#2{%
tx@EcldDict begin /N@#1 GetNode /N@#2 GetNode ABDist end