summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-05-10 23:46:46 +0000
committerKarl Berry <karl@freefriends.org>2011-05-10 23:46:46 +0000
commit043e18a7242664faaaeb2c0e57e8ce4e35381e43 (patch)
tree03c93f83fea91c32ce53759529799b2cb0fd3c22
parentfc1748c481707d247fa88c3b641453518ee4a2f7 (diff)
pst-eucl 1.37 (10may11)
git-svn-id: svn://tug.org/texlive/trunk@22405 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/Changes37
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/Exemples/astro.tex3
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/Exemples/parabole.tex4
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/README8
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/abscur.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/abscur.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/abscur_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/abscur_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/angle.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/angle.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/angle_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/angle_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/arc.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/arc.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/arc_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/arc_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/astro.tex3
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/astro_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/astro_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/bissec.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/bissec.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/bissec_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/bissec_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ccirc.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/ccirc.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ccirc_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/ccirc_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cercle.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/cercle.tex)2
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cercle_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/cercle_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cinscex.pdfbin0 -> 6349 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cinscex.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/cinscex.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cinscex_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/cinscex_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/curvetype.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/curvetype.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/curvetype_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/curvetype_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cyclo.pdfbin0 -> 5113 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cyclo.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/cyclo.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cycloO.tex7
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cyclo_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/cyclo_in.tex)26
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/delto.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/delto.tex)2
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/droite.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/droite.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/droite_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/droite_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envcardi.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/envcardi.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envcardi_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/envcardi_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envellipse.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/envellipse.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envellipse_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/envellipse_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/euler.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/euler.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/euler_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/euler_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/fracthom.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/fracthom.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/fracthom_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/fracthom_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gal_biss.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/gal_biss.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gal_biss_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/gal_biss_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gauss.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/gauss.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gauss_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/gauss_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gencur.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/gencur.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gencur_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/gencur_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geohyper.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/geohyper.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geohyper_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/geohyper_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geonode.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/geonode.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geonode_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/geonode_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/german_ra.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/german_ra.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/german_ra_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/german_ra_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/grav.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/grav.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/grav_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/grav_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/homothetie.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/homothetie.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/homothetie_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/homothetie_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/hyperbole.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/hyperbole.tex)2
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/hyperbole_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/hyperbole_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/hypocyclo.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/hypocyclo.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interCC.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interCC.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interCC_bis_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interCC_bis_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interCC_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interCC_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDC.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDC.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDC_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDC_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDD.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDD.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDD_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDD_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFC.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFC.tex)2
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFC_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFC_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFF.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFF.tex)2
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFF_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFF_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFL.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFL.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFL_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFL_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/mediator.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/mediator.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/mediator_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/mediator_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/milieu.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/milieu.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/milieu_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/milieu_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/oij.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/oij.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/oij_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/oij_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthocentre.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthocentre.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthocentre_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthocentre_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthoethyper.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthoethyper.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthoethyper_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthoethyper_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/parabole.tex4
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/parabole_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/parabole_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/projection.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/projection.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/projection_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/projection_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ptfermat.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/ptfermat.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ptfermat_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/ptfermat_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/remarq.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/remarq.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/remarq_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/remarq_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/rotation.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/rotation.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/rotation_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/rotation_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/segmentmark.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/segmentmark.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/segmentmark_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/segmentmark_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symcentrale.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/symcentrale.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symcentrale_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/symcentrale_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symorthogonale.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/symorthogonale.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symorthogonale_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/symorthogonale_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/texput.log20
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg1c.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg1c.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg1c_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg1c_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg2c.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg2c.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg2c_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg2c_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/translation.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/translation.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/translation_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/translation_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.aux1
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.dvibin0 -> 8692 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.log136
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.pdfbin0 -> 4171 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.ps1423
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/triangle.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle_in.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/Exemples/triangle_in.tex)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/euclide-english.tex (renamed from Master/texmf-dist/doc/generic/pst-eucl/euclide_english.tex)13
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/euclide.sty (renamed from Master/texmf-dist/tex/latex/pst-eucl/euclide.sty)23
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/euclide_english.ist10
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/doc/euclide_macros.ist (renamed from Master/texmf-dist/doc/generic/pst-eucl/euclide_macros.ist)0
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/euclide.pdfbin424955 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/euclide.tex1326
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/euclide_english.pdfbin396898 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.pdfbin0 -> 357202 bytes
-rw-r--r--Master/texmf-dist/tex/generic/pst-eucl/pst-eucl.tex113
119 files changed, 1716 insertions, 1451 deletions
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Changes b/Master/texmf-dist/doc/generic/pst-eucl/Changes
new file mode 100644
index 00000000000..dc226f39d2b
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/Changes
@@ -0,0 +1,37 @@
+pst-eucl.tex --------
+1.37 2011/05/05 - rewrite of \pstMarkAngle (hv)
+1.36 2010/08/23 - fix for \pstMarkAngle (hv)
+1.35 2009/01/19 - new option labelColor (hv)
+1.34 2006/01/28 - use \psscalebox instead of \scalebox
+ - small tweaks
+%% 2000-10-16 : creation of the file from a first LaTeX protype sty file
+%% 2001-05-7 : distribution of the first beta version
+%% 2002-03-21 : distribution of the second beta version
+%% 2002-12-01 : distribution of the pre-release 1.0
+%% 2003-03-23 : direct computation of coordinates for the center of gravity and
+%% the center of the circum circle, avoiding creation of intermediates
+%% nodes.
+%% 2003-12-16 : Integration of modifications given by Alain DELPLANQUE
+%% automatic computation of PosAngle for several commands,
+%% and ability to give a list of point for pstGeonode, pstOIJGeonode
+%% 2004-09-05 : Improvement of the management of the Point name end of the param lists
+%% 2004-11-04 : Improvement of the management of the display of the Point name
+%% 2004-12-10 : New parameters for coding the circum circle : SegmentSymbolA B & C
+%% 2004-12-14 : New parametre RightAngleType for regional difference
+%% 2005-01-17 : transition towards pst-xkey (thanks to "Hendri Adriaens" <Hendri@uvt.nl>)
+%% 2005-02-21 : correction for spurious blank (thanks to Herbert Voss <Herbert.Voss@alumni.TU-Berlin.DE>)
+%% in pstTriangleABC (search for "-- hv")
+%% 2005-03-25 : Modification of the transformations macros: management of a points list
+%% coding for rotation & translation
+%% draw a curve for a points list (geonode & oijgeonode & transform macros)
+%% 2005-04-10 : Modification of the transformations macros: management of a points list
+%% management directly within the first point argument
+%% Plotting of a curve linking a list of points
+%% 2005-10-09 : problem solved with CodeFigAB
+%% 2005-12-31 : use \psscalbox instead of \scalebox (hv)
+%% 2006-01-29 : minor changes for file version (hv)
+%% 2006-01-30 : correction of pstArcOAB for pscustom (dr)
+
+
+pst-eucl.sty --------
+2006/01/28 - write some infos into the file list (hv)
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/astro.tex b/Master/texmf-dist/doc/generic/pst-eucl/Exemples/astro.tex
deleted file mode 100644
index ee37d88b917..00000000000
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/astro.tex
+++ /dev/null
@@ -1,3 +0,0 @@
-\begin{pspicture}[.5](-4.5,-4)(4.5,4.5)%\psgrid
- \input{Exemples/astro_in}
-\end{pspicture} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/parabole.tex b/Master/texmf-dist/doc/generic/pst-eucl/Exemples/parabole.tex
deleted file mode 100644
index fa05863fd50..00000000000
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/parabole.tex
+++ /dev/null
@@ -1,4 +0,0 @@
-\begin{pspicture}[.5](0,.5)(11,10.5)%\psgrid
- \psframe(0,.5)(11,10.5)
- \input{Exemples/parabole_in.tex}
-\end{pspicture} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/README b/Master/texmf-dist/doc/generic/pst-eucl/README
index c03643e99ac..ab0f1d8616a 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/README
+++ b/Master/texmf-dist/doc/generic/pst-eucl/README
@@ -2,8 +2,8 @@
the pst-eucl package
-VERSION 1.3
-DATE September 2004
+VERSION pre-1.0
+DATE december 2002
LICENCE
-------
@@ -21,10 +21,10 @@ Then you should consider making a donation:
a. $1 or 1 euro (or more),
b. some beautiful stamps (cancelled or not) of your country
(for my children),
- c. a beautiful postcard with a beautiful stamp on it.
+ c. a beautiful postcard with a beautiful stamp on it .
my address:
- Les Galinières
+ La Grand'Terre
07460 Saint André de Cruzières
FRANCE
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/abscur.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/abscur.tex
index 9e41c7b183a..9e41c7b183a 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/abscur.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/abscur.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/abscur_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/abscur_in.tex
index ddb433970a7..ddb433970a7 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/abscur_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/abscur_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/angle.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/angle.tex
index 22856df59d4..22856df59d4 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/angle.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/angle.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/angle_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/angle_in.tex
index c3ec42b5481..c3ec42b5481 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/angle_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/angle_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/arc.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/arc.tex
index 2679d767050..2679d767050 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/arc.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/arc.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/arc_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/arc_in.tex
index 48d4ec1112a..48d4ec1112a 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/arc_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/arc_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/astro.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/astro.tex
new file mode 100644
index 00000000000..745b2cae546
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/astro.tex
@@ -0,0 +1,3 @@
+\begin{pspicture}[shift=*](-4.5,-4)(4.5,4.5)%\psgrid
+ \input{Exemples/astro_in}
+\end{pspicture} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/astro_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/astro_in.tex
index 00e490b4aaa..00e490b4aaa 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/astro_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/astro_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/bissec.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/bissec.tex
index b9107309c36..b9107309c36 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/bissec.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/bissec.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/bissec_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/bissec_in.tex
index 31b8a33b525..31b8a33b525 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/bissec_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/bissec_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/ccirc.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ccirc.tex
index fe62b0dd64b..fe62b0dd64b 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/ccirc.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ccirc.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/ccirc_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ccirc_in.tex
index c1017a79b25..c1017a79b25 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/ccirc_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ccirc_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cercle.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cercle.tex
index ac5836313f5..57db2620e46 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cercle.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cercle.tex
@@ -1,4 +1,4 @@
%%%% -*-mode: latex; TeX-master: "euclide.tex" -*-
-\begin{pspicture}[.5](-4,-4)(5,3)\psgrid%
+\begin{pspicture}[shift=*](-4,-4)(5,3)\psgrid%
\input{Exemples/cercle_in.tex}
\end{pspicture}
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cercle_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cercle_in.tex
index ca1a3f1b369..ca1a3f1b369 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cercle_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cercle_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cinscex.pdf b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cinscex.pdf
new file mode 100644
index 00000000000..d31dec7c843
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cinscex.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cinscex.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cinscex.tex
index 011b1332038..011b1332038 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cinscex.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cinscex.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cinscex_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cinscex_in.tex
index f437305fbfa..f437305fbfa 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cinscex_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cinscex_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/curvetype.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/curvetype.tex
index a86b641f8d1..a86b641f8d1 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/curvetype.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/curvetype.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/curvetype_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/curvetype_in.tex
index 90d34f4e345..90d34f4e345 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/curvetype_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/curvetype_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cyclo.pdf b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cyclo.pdf
new file mode 100644
index 00000000000..3a5e9f3cdd8
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cyclo.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cyclo.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cyclo.tex
index 80694c50326..80694c50326 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cyclo.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cyclo.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cycloO.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cycloO.tex
new file mode 100644
index 00000000000..bb8ef2b8baa
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cycloO.tex
@@ -0,0 +1,7 @@
+\documentclass{minimal}
+\usepackage{pst-eucl}
+\begin{document}
+\begin{pspicture}(-2,0)(13,3)%\psgrid%
+ \input{Exemples/cyclo_in}
+\end{pspicture}
+\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cyclo_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cyclo_in.tex
index 1cea4dba5cb..101c88a1b0b 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/cyclo_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/cyclo_in.tex
@@ -1,23 +1,25 @@
-\renewcommand{\NbPt}{11}\psset{linewidth=1.2\pslinewidth}
+\providecommand\NbPt{11}
+\psset{linewidth=1.2\pslinewidth}
\pstGeonode[PointSymbol={*,none}, PointName={default,none}, PosAngle=180]{M}(0,1){O}
%% 4*pi=12.5663706144
\pstGeonode(12.5663706144,0){A}
\pstTranslation[PointSymbol=none, PointName=none]{M}{A}{O}[B]
-\multido{\n=1+1}{\NbPt}{%
- \pstHomO[HomCoef=\n\space \NbPt\space 1 add div,
- PointSymbol=none, PointName=none]{O}{B}[O\n]
- \pstProjection[PointSymbol=none, PointName=none]{M}{A}{O\n}[P\n]
+\multido{\nA=1+1}{\NbPt}{%
+ \pstHomO[HomCoef=\nA\space \NbPt\space 1 add div,
+ PointSymbol=none, PointName=none]{O}{B}[O\nA]
+ \pstProjection[PointSymbol=none, PointName=none]{M}{A}{O\nA}[P\nA]
%\pstCircleOA[linestyle=dashed, linecolor=red]{O\n}{P\n}
- \pstCurvAbsNode[PointSymbol=square, PointName=none,CurvAbsNeg=true]
- {O\n}{P\n}{M\n}{\pstDistAB{O}{O\n}}
- \ifnum\n=2%affichage du second cercle
+ \pstCurvAbsNode[PointSymbol=square, PointName=none,CurvAbsNeg=true]%
+ {O\nA}{P\nA}{M\nA}{\pstDistAB{O}{O\nA}}
+ \ifnum\nA=2 %affichage du second cercle
\bgroup
- \pstCircleOA{O\n}{M\n}
+ \pstCircleOA{O\nA}{M\nA}
\psset{linecolor=magenta, linewidth=1.5\pslinewidth}
- \pstArcnOAB{{O\n}}{P\n}{M\n}
- \ncline{O\n}{M\n}\ncline{P\n}{M}
+ \pstArcnOAB{O\nA}{P\nA}{M\nA}
+ \ncline{O\nA}{M\nA}\ncline{P\nA}{M}
\egroup
- \fi}% fin du multido
+ \fi
+ }% fin du multido
\psset{linecolor=blue, linewidth=1.5\pslinewidth}
\pstGenericCurve[GenCurvFirst=M]{M}{1}{6}
\pstGenericCurve[GenCurvLast=A]{M}{6}{\NbPt}
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/delto.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/delto.tex
index 791363e0d80..7cd379570eb 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/delto.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/delto.tex
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%
-\begin{pspicture}[.5](-3.5,-4)(3.5,4)%\psgrid
+\begin{pspicture}[shift=*](-3.5,-4)(3.5,4)%\psgrid
\HypoCyclo[3]{3}{1}{17}
\psset{linecolor=blue, linewidth=1.5\pslinewidth}
%% il est préférable de mettre les trois branches séparément à cause
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/droite.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/droite.tex
index 19595b78b30..19595b78b30 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/droite.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/droite.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/droite_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/droite_in.tex
index 0fe249534ca..0fe249534ca 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/droite_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/droite_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/envcardi.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envcardi.tex
index 146be669a2e..146be669a2e 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/envcardi.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envcardi.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/envcardi_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envcardi_in.tex
index 80f9058ea5e..80f9058ea5e 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/envcardi_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envcardi_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/envellipse.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envellipse.tex
index 3576839e86e..3576839e86e 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/envellipse.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envellipse.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/envellipse_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envellipse_in.tex
index 84fa7313884..84fa7313884 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/envellipse_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/envellipse_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/euler.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/euler.tex
index 971aa290bf8..971aa290bf8 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/euler.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/euler.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/euler_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/euler_in.tex
index c96bf0c0675..c96bf0c0675 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/euler_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/euler_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/fracthom.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/fracthom.tex
index f8119481bc3..f8119481bc3 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/fracthom.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/fracthom.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/fracthom_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/fracthom_in.tex
index 70507b1e97a..70507b1e97a 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/fracthom_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/fracthom_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gal_biss.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gal_biss.tex
index a53481d9b34..a53481d9b34 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gal_biss.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gal_biss.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gal_biss_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gal_biss_in.tex
index 34637a4e337..34637a4e337 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gal_biss_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gal_biss_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gauss.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gauss.tex
index c86a0577cf8..c86a0577cf8 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gauss.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gauss.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gauss_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gauss_in.tex
index 683cae02da0..683cae02da0 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gauss_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gauss_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gencur.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gencur.tex
index 8e87479865f..8e87479865f 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gencur.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gencur.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gencur_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gencur_in.tex
index 8adebdf17dc..8adebdf17dc 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/gencur_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/gencur_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/geohyper.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geohyper.tex
index 7f54846c252..7f54846c252 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/geohyper.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geohyper.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/geohyper_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geohyper_in.tex
index cbd8887dfa7..cbd8887dfa7 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/geohyper_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geohyper_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/geonode.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geonode.tex
index 8250e34620a..8250e34620a 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/geonode.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geonode.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/geonode_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geonode_in.tex
index 18442d60d66..18442d60d66 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/geonode_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/geonode_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/german_ra.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/german_ra.tex
index 7932e69964a..7932e69964a 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/german_ra.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/german_ra.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/german_ra_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/german_ra_in.tex
index 44c7f732198..44c7f732198 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/german_ra_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/german_ra_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/grav.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/grav.tex
index 943eaaee0cd..943eaaee0cd 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/grav.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/grav.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/grav_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/grav_in.tex
index af1f1612b88..af1f1612b88 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/grav_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/grav_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/homothetie.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/homothetie.tex
index f6c46d21708..f6c46d21708 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/homothetie.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/homothetie.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/homothetie_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/homothetie_in.tex
index 9d35f3d848a..9d35f3d848a 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/homothetie_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/homothetie_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/hyperbole.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/hyperbole.tex
index fb5046651c2..d872d9c9475 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/hyperbole.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/hyperbole.tex
@@ -1,4 +1,4 @@
-\begin{pspicture}[0](-4,-4)(4,4)%\psgrid
+\begin{pspicture}(-4,-4)(4,4)%\psgrid
\psframe(-4,-4)(4,4)
\input{Exemples/hyperbole_in}
\end{pspicture}
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/hyperbole_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/hyperbole_in.tex
index 2f8dfa13a27..2f8dfa13a27 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/hyperbole_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/hyperbole_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/hypocyclo.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/hypocyclo.tex
index f221a5f5153..f221a5f5153 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/hypocyclo.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/hypocyclo.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interCC.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interCC.tex
index ccd47eccfe2..ccd47eccfe2 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interCC.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interCC.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interCC_bis_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interCC_bis_in.tex
index 2d289f26564..2d289f26564 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interCC_bis_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interCC_bis_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interCC_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interCC_in.tex
index 6e4f376a05d..6e4f376a05d 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interCC_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interCC_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDC.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDC.tex
index 8049edefa99..8049edefa99 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDC.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDC.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDC_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDC_in.tex
index f9fc5cfd7ac..f9fc5cfd7ac 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDC_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDC_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDD.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDD.tex
index 8c8b90667aa..8c8b90667aa 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDD.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDD.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDD_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDD_in.tex
index 321bbaa82f3..321bbaa82f3 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interDD_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interDD_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFC.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFC.tex
index 4dd809b1255..b61b6c5c03b 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFC.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFC.tex
@@ -1,5 +1,5 @@
\psset{unit=.8}
-\begin{pspicture}[.5](-3,-4)(3,4)%\psgrid
+\begin{pspicture}[shift=*](-3,-4)(3,4)%\psgrid
\input{Exemples/interFC_in}
\end{pspicture}
%%% Local Variables:
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFC_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFC_in.tex
index 3c473da4ee7..3c473da4ee7 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFC_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFC_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFF.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFF.tex
index 354b0ff9381..cff4ced517b 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFF.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFF.tex
@@ -1,4 +1,4 @@
-\begin{pspicture}[.5](-3,-1)(2,4)
+\begin{pspicture}[shift=*](-3,-1)(2,4)
\input{Exemples/interFF_in}
\end{pspicture}
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFF_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFF_in.tex
index c05b27959ea..c05b27959ea 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFF_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFF_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFL.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFL.tex
index a900ddd0ceb..a900ddd0ceb 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFL.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFL.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFL_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFL_in.tex
index 85a05562651..85a05562651 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/interFL_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/interFL_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/mediator.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/mediator.tex
index 9a3e17deda0..9a3e17deda0 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/mediator.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/mediator.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/mediator_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/mediator_in.tex
index efc7c53eaa6..efc7c53eaa6 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/mediator_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/mediator_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/milieu.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/milieu.tex
index 02687041b3c..02687041b3c 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/milieu.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/milieu.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/milieu_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/milieu_in.tex
index f4d9ae815db..f4d9ae815db 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/milieu_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/milieu_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/oij.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/oij.tex
index 82379389f36..82379389f36 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/oij.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/oij.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/oij_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/oij_in.tex
index 9fb0c9c59a6..9fb0c9c59a6 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/oij_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/oij_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthocentre.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthocentre.tex
index 8263598c070..8263598c070 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthocentre.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthocentre.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthocentre_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthocentre_in.tex
index 9dddcf7ac65..9dddcf7ac65 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthocentre_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthocentre_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthoethyper.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthoethyper.tex
index 7ebbbf6e642..7ebbbf6e642 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthoethyper.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthoethyper.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthoethyper_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthoethyper_in.tex
index fcb7a737be0..fcb7a737be0 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/orthoethyper_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/orthoethyper_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/parabole.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/parabole.tex
new file mode 100644
index 00000000000..094b6ca2efd
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/parabole.tex
@@ -0,0 +1,4 @@
+\begin{pspicture}[shift=*](0,.5)(11,10.5)%\psgrid
+ \psframe(0,.5)(11,10.5)
+ \input{Exemples/parabole_in.tex}
+\end{pspicture} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/parabole_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/parabole_in.tex
index 172fb51e113..172fb51e113 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/parabole_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/parabole_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/projection.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/projection.tex
index c5b56aaf7e7..c5b56aaf7e7 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/projection.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/projection.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/projection_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/projection_in.tex
index 1db01dec23a..1db01dec23a 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/projection_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/projection_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/ptfermat.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ptfermat.tex
index dea19de574a..dea19de574a 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/ptfermat.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ptfermat.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/ptfermat_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ptfermat_in.tex
index bc4754b3f70..bc4754b3f70 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/ptfermat_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/ptfermat_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/remarq.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/remarq.tex
index 5f25c33e1a3..5f25c33e1a3 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/remarq.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/remarq.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/remarq_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/remarq_in.tex
index 333a7a23e1a..333a7a23e1a 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/remarq_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/remarq_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/rotation.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/rotation.tex
index 8c6e75d59c4..8c6e75d59c4 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/rotation.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/rotation.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/rotation_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/rotation_in.tex
index aa94079d041..aa94079d041 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/rotation_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/rotation_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/segmentmark.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/segmentmark.tex
index 13820387da8..13820387da8 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/segmentmark.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/segmentmark.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/segmentmark_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/segmentmark_in.tex
index ef41b925093..ef41b925093 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/segmentmark_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/segmentmark_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/symcentrale.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symcentrale.tex
index 25b895898a4..25b895898a4 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/symcentrale.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symcentrale.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/symcentrale_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symcentrale_in.tex
index 3b593412700..3b593412700 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/symcentrale_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symcentrale_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/symorthogonale.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symorthogonale.tex
index 66d51da160e..66d51da160e 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/symorthogonale.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symorthogonale.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/symorthogonale_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symorthogonale_in.tex
index ce41b552ffa..ce41b552ffa 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/symorthogonale_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/symorthogonale_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/texput.log b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/texput.log
new file mode 100644
index 00000000000..51876d18ff7
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/texput.log
@@ -0,0 +1,20 @@
+This is pdfeTeXk, Version 3.141592-1.30.3-2.2 (Web2C 7.5.5) (format=latex 2005.10.2) 9 OCT 2005 15:14
+entering extended mode
+ %&-line parsing enabled.
+**PSTricks.tex
+
+! Emergency stop.
+<*> PSTricks.tex
+
+End of file on the terminal!
+
+
+Here is how much of TeX's memory you used:
+ 3 strings out of 94308
+ 99 string characters out of 1170118
+ 48678 words of memory out of 2500000
+ 3332 multiletter control sequences out of 10000+50000
+ 3640 words of font info for 14 fonts, out of 1000000 for 2000
+ 647 hyphenation exceptions out of 8191
+ 0i,0n,0p,1b,6s stack positions out of 5000i,500n,6000p,200000b,5000s
+No pages of output.
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg1c.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg1c.tex
index 80c5c562820..80c5c562820 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg1c.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg1c.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg1c_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg1c_in.tex
index 9b934d0e80b..9b934d0e80b 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg1c_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg1c_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg2c.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg2c.tex
index 9b02a99bd37..9b02a99bd37 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg2c.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg2c.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg2c_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg2c_in.tex
index 53015c9f722..53015c9f722 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/tg2c_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/tg2c_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/translation.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/translation.tex
index 1e71eece32a..1e71eece32a 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/translation.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/translation.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/translation_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/translation_in.tex
index a35bd545b00..a35bd545b00 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/translation_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/translation_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.aux b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.aux
new file mode 100644
index 00000000000..f23e54680b7
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.aux
@@ -0,0 +1 @@
+\relax
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.dvi b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.dvi
new file mode 100644
index 00000000000..edebc757365
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.dvi
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.log b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.log
new file mode 100644
index 00000000000..606e897cac0
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.log
@@ -0,0 +1,136 @@
+This is pdfeTeXk, Version 3.141592-1.30.3-2.2 (Web2C 7.5.5) (format=latex 2005.10.2) 5 OCT 2005 22:57
+entering extended mode
+ %&-line parsing enabled.
+**triangle
+(./triangle.tex
+LaTeX2e <2003/12/01>
+Babel <v3.8g> and hyphenation patterns for english, usenglishmax, dumylang, noh
+yphenation, basque, bulgarian, coptic, welsh, czech, slovak, german, ngerman, d
+anish, spanish, catalan, estonian, finnish, french, greek, monogreek, ancientgr
+eek, croatian, hungarian, interlingua, ibycus, indonesian, icelandic, italian,
+latin, mongolian, dutch, norsk, polish, portuguese, pinyin, romanian, russian,
+slovene, uppersorbian, serbian, swedish, turkish, ukenglish, ukrainian, loaded.
+
+(/usr/local/texlive/2005/texmf-dist/tex/latex/base/article.cls
+Document Class: article 2004/02/16 v1.4f Standard LaTeX document class
+(/usr/local/texlive/2005/texmf-dist/tex/latex/base/size10.clo
+File: size10.clo 2004/02/16 v1.4f Standard LaTeX file (size option)
+)
+\c@part=\count79
+\c@section=\count80
+\c@subsection=\count81
+\c@subsubsection=\count82
+\c@paragraph=\count83
+\c@subparagraph=\count84
+\c@figure=\count85
+\c@table=\count86
+\abovecaptionskip=\skip41
+\belowcaptionskip=\skip42
+\bibindent=\dimen102
+)
+(/usr/local/texlive/2005/../texmf-local/tex/latex/pst-eucl/pst-eucl.sty
+Package: pst-eucl 2005/05/14 package wrapper for PSTricks pst-eucl.tex
+
+(/usr/local/texlive/2005/../texmf-local/tex/latex/pst-eucl/pst-eucl.tex
+`PST-Euclide v1.3.2, 2005/05/14 (Dominique RODRIGUEZ)
+ This version uses the pst-xkey package for managing parameters
+ Please read the doc, some macros have a new syntax
+ use option old for upward compatibility
+(/usr/local/texlive/2005/texmf-dist/tex/generic/pstricks/pstricks.tex
+`PSTricks' v1.11 <2005/09/08> (tvz)
+\pst@dima=\dimen103
+\pst@dimb=\dimen104
+\pst@dimc=\dimen105
+\pst@dimd=\dimen106
+\pst@dimg=\dimen107
+\pst@dimh=\dimen108
+\pst@hbox=\box26
+\pst@boxg=\box27
+\pst@cnta=\count87
+\pst@cntb=\count88
+\pst@cntc=\count89
+\pst@cntd=\count90
+\pst@cntg=\count91
+\pst@cnth=\count92
+\pst@toks=\toks14
+(/usr/local/texlive/2005/texmf-dist/tex/generic/pstricks/pstricks.con)
+\psunit=\dimen109
+\psxunit=\dimen110
+\psyunit=\dimen111
+\pslinewidth=\dimen112
+\pst@customdefs=\toks15
+\pslinearc=\dimen113
+\everypsbox=\toks16
+\psframesep=\dimen114
+\pslabelsep=\dimen115
+\theoverlaybox=\box28
+)
+(/usr/local/texlive/2005/texmf-dist/tex/generic/pstricks/pst-node.tex
+ v97 patch 11, 2000/11/09
+\psrow=\count93
+\pscol=\count94
+\psmatrixcnt=\count95
+\psrowsep=\skip43
+\pscolsep=\skip44
+)
+(/usr/local/texlive/2005/../texmf-local/tex/latex/multido/multido.tex
+ v1.41, 2004/05/18 <tvz>
+\multido@count=\count96
+\multidocount=\count97
+\multido@stuff=\toks17
+)
+(/usr/local/texlive/2005/../texmf-local/tex/latex/xkeyval/run/pst-xkey.tex
+File: pst-xkey.tex 2005/02/22 v1.5 PSTricks specialization of xkeyval (HA)
+
+(/usr/local/texlive/2005/../texmf-local/tex/latex/xkeyval/run/xkeyval.sty
+Package: xkeyval 2005/08/12 v2.5d package option processing (HA)
+
+(/usr/local/texlive/2005/../texmf-local/tex/latex/xkeyval/run/xkeyval.tex
+\XKV@toks=\toks18
+\XKV@depth=\count98
+File: xkeyval.tex 2005/08/12 v2.5d key=value parser (HA)
+
+(/usr/local/texlive/2005/../texmf-local/tex/latex/xkeyval/run/keyval.tex))))))
+(./triangle.aux)
+\openout1 = `triangle.aux'.
+
+LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 4.
+LaTeX Font Info: ... okay on input line 4.
+LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 4.
+LaTeX Font Info: ... okay on input line 4.
+LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 4.
+LaTeX Font Info: ... okay on input line 4.
+LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 4.
+LaTeX Font Info: ... okay on input line 4.
+LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 4.
+LaTeX Font Info: ... okay on input line 4.
+LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 4.
+LaTeX Font Info: ... okay on input line 4.
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <7> on input line 17.
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <5> on input line 17.
+ [1
+
+] (./triangle.aux)
+
+ *File List*
+ article.cls 2004/02/16 v1.4f Standard LaTeX document class
+ size10.clo 2004/02/16 v1.4f Standard LaTeX file (size option)
+pst-eucl.sty 2005/05/14 package wrapper for PSTricks pst-eucl.tex
+pst-xkey.tex 2005/02/22 v1.5 PSTricks specialization of xkeyval (HA)
+ xkeyval.sty 2005/08/12 v2.5d package option processing (HA)
+ xkeyval.tex 2005/08/12 v2.5d key=value parser (HA)
+ ***********
+
+ )
+Here is how much of TeX's memory you used:
+ 1974 strings out of 94308
+ 23893 string characters out of 1170118
+ 93563 words of memory out of 2543885
+ 5256 multiletter control sequences out of 10000+50000
+ 3640 words of font info for 14 fonts, out of 1000000 for 2000
+ 647 hyphenation exceptions out of 8191
+ 31i,5n,42p,207b,343s stack positions out of 5000i,500n,6000p,200000b,5000s
+
+Output written on triangle.dvi (1 page, 8692 bytes).
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.pdf b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.pdf
new file mode 100644
index 00000000000..8c56cb57195
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.ps b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.ps
new file mode 100644
index 00000000000..8e69bb05ea6
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.ps
@@ -0,0 +1,1423 @@
+%!PS-Adobe-2.0
+%%Creator: dvips(k) 5.95b Copyright 2005 Radical Eye Software
+%%Title: triangle.dvi
+%%Pages: 1
+%%PageOrder: Ascend
+%%BoundingBox: 0 0 595 842
+%%DocumentFonts: CMMI10 CMR10
+%%DocumentPaperSizes: a4
+%%EndComments
+%DVIPSWebPage: (www.radicaleye.com)
+%DVIPSCommandLine: dvips triangle.dvi
+%DVIPSParameters: dpi=600
+%DVIPSSource: TeX output 2005.10.05:2257
+%%BeginProcSet: tex.pro 0 0
+%!
+/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
+N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
+mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
+0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
+landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
+mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
+matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
+exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
+statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
+N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
+/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
+/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
+array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
+df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
+definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
+}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
+B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
+1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S
+/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy
+setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask
+restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
+/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
+}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
+bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
+mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
+SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
+userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
+1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
+index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
+/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
+/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
+(LaserWriter 16/600)]{A length product length le{A length product exch 0
+exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
+end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
+grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
+imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
+exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
+fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
+delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
+B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
+p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
+rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+
+%%EndProcSet
+%%BeginProcSet: pstricks.pro 0 0
+%!
+% PostScript prologue for pstricks.tex.
+% Version 1.00, 2005/09/18
+% For distribution, see pstricks.tex.
+%
+/tx@Dict 200 dict def tx@Dict begin
+/ADict 25 dict def
+/CM { matrix currentmatrix } bind def
+/SLW /setlinewidth load def
+/CLW /currentlinewidth load def
+/CP /currentpoint load def
+/ED { exch def } bind def
+/L /lineto load def
+/T /translate load def
+/TMatrix { } def
+/RAngle { 0 } def
+/Atan { /atan load stopped { pop pop 0 } if } def
+/ATAN1 {neg -1 atan 180 sub } def % atan(x) (only one parameter)
+/Div { dup 0 eq { pop } { div } ifelse } def % control the division
+/NET { neg exch neg exch T } def % change coordinate system to the negative one
+/Pyth { dup mul exch dup mul add sqrt } def % Pythagoras, epects 2 parameter
+/PtoC { 2 copy cos mul 3 1 roll sin mul } def % Polar to Cartesian
+%----------------- hv added 20050516 ---------------
+/Pi 3.14159265359 def
+/TwoPi 6.28318530718 def
+/Euler 2.71828182846 def
+/RadtoDeg { 180 mul Pi div } def % convert from radian to degrees
+/DegtoRad { Pi mul 180 div } def % viceversa
+%----------------- hv end---------------------------
+/PathLength@ { /z z y y1 sub x x1 sub Pyth add def /y1 y def /x1 x def } def
+/PathLength { flattenpath /z 0 def
+ { /y1 ED /x1 ED /y2 y1 def /x2 x1 def
+ }{ /y ED /x ED PathLength@ } {} { /y y2 def /x x2 def PathLength@ }
+ /pathforall load stopped { pop pop pop pop } if z } def
+/STP { .996264 dup scale } def
+/STV { SDict begin normalscale end STP } def
+%
+%%-------------- DG begin patch 15 ---------------%%
+%/DashLine { dup 0 gt { /a .5 def PathLength exch div } { pop /a 1 def
+%PathLength } ifelse /b ED /x ED /y ED /z y x add def b a .5 sub 2 mul y
+%mul sub z Div round z mul a .5 sub 2 mul y mul add b exch Div dup y mul
+%/y ED x mul /x ED x 0 gt y 0 gt and { [ y x ] 1 a sub y mul } { [ 1 0 ]
+%0 } ifelse setdash stroke } def
+/DashLine {
+ dup 0 gt { /a .5 def PathLength exch div } { pop /a 1 def PathLength } ifelse
+ /b ED /x1 ED /y1 ED /x ED /y ED
+ /z y x add y1 add x1 add def
+ /Coef b a .5 sub 2 mul y mul sub z Div round
+ z mul a .5 sub 2 mul y mul add b exch Div def
+ /y y Coef mul def
+ /x x Coef mul def
+ /y1 y1 Coef mul def
+ /x1 x1 Coef mul def
+ x1 0 gt y1 0 gt or x 0 gt or y 0 gt and
+ { [ y x y1 x1 ] 1 a sub y mul }
+ { [ 1 0 ] 0 } ifelse
+ setdash stroke
+} def
+%%-------------- DG end patch 15 ---------------%%
+/DotLine {
+ /b PathLength def
+ /a ED /z ED /y CLW def
+ /z y z add def
+ a 0 gt {
+ /b b a div def
+ }{
+ a 0 eq {
+ /b b y sub def
+ }{ a -3 eq {
+ /b b y add def } if
+ } ifelse
+ } ifelse
+ [ 0 b b z Div round Div dup 0 le { pop 1 } if ]
+ a 0 gt { 0 }{ y 2 div a -2 gt { neg }if } ifelse
+ setdash 1 setlinecap stroke
+} def
+%
+/LineFill { % hv ------------ patch 7 -------------
+ gsave
+ abs /hatchWidthInc ED
+ abs /hatchSepInc ED
+ abs CLW add /a ED
+ a 0 dtransform round exch round exch
+ 2 copy idtransform
+ exch Atan rotate
+ idtransform pop /a ED
+ .25 .25 itransform pathbbox
+ /y2 ED
+ a Div ceiling cvi /x2 ED /y1 ED
+ a Div cvi /x1 ED /y2 y2 y1 sub def
+ clip
+ newpath
+ 2 setlinecap
+ systemdict
+ /setstrokeadjust known { true setstrokeadjust } if
+ x2 x1 sub 1 add {
+ x1 a mul y1 moveto 0 y2 rlineto stroke
+ /x1 x1 1 add
+ hatchWidthInc 0 gt { CLW add } if
+ def
+ hatchSepInc 0 gt hatchWidthInc 0 gt or {
+ /a a hatchSepInc add def
+ CLW hatchWidthInc add SLW
+ } if
+ } repeat
+ grestore
+ pop pop } def
+%
+%gsave abs CLW add /a ED a 0 dtransform round exch round exch
+%2 copy idtransform exch Atan rotate idtransform pop /a ED .25 .25
+%% DG/SR modification begin - Dec. 12, 1997 - Patch 2
+%%itransform translate pathbbox /y2 ED a Div ceiling cvi /x2 ED /y1 ED a
+%itransform pathbbox /y2 ED a Div ceiling cvi /x2 ED /y1 ED a
+%% DG/SR modification end
+%Div cvi /x1 ED /y2 y2 y1 sub def clip newpath 2 setlinecap systemdict
+%/setstrokeadjust known { true setstrokeadjust } if x2 x1 sub 1 add { x1
+%% DG/SR modification begin - Jun. 1, 1998 - Patch 3 (from Michael Vulis)
+%% a mul y1 moveto 0 y2 rlineto stroke /x1 x1 1 add def } repeat grestore }
+%% def
+%a mul y1 moveto 0 y2 rlineto stroke /x1 x1 1 add def } repeat grestore
+%pop pop } def
+%% DG/SR modification end
+%
+/BeginArrow { ADict begin /@mtrx CM def gsave 2 copy T 2 index sub neg
+exch 3 index sub exch Atan rotate newpath } def
+/EndArrow { @mtrx setmatrix CP grestore end } def
+/Arrow { CLW mul add dup 2 div /w ED mul dup /h ED mul /a ED { 0 h T 1 -1
+scale } if w neg h moveto 0 0 L w h L w neg a neg rlineto gsave fill
+grestore } def
+/Tbar { CLW mul add /z ED z -2 div CLW 2 div moveto z 0 rlineto stroke 0
+CLW moveto } def
+/Bracket { CLW mul add dup CLW sub 2 div /x ED mul CLW add /y ED /z CLW 2
+div def x neg y moveto x neg CLW 2 div L x CLW 2 div L x y L stroke 0
+CLW moveto } def
+/RoundBracket { CLW mul add dup 2 div /x ED mul /y ED /mtrx CM def 0 CLW
+2 div T x y mul 0 ne { x y scale } if 1 1 moveto .85 .5 .35 0 0 0
+curveto -.35 0 -.85 .5 -1 1 curveto mtrx setmatrix stroke 0 CLW moveto }
+def
+/SD { 0 360 arc fill } def
+/EndDot { { /z DS def } { /z 0 def } ifelse /b ED 0 z DS SD b { 0 z DS
+CLW sub SD } if 0 DS z add CLW 4 div sub moveto } def
+/Shadow { [ { /moveto load } { /lineto load } { /curveto load } {
+/closepath load } /pathforall load stopped { pop pop pop pop CP /moveto
+load } if ] cvx newpath 3 1 roll T exec } def
+/NArray { aload length 2 div dup dup cvi eq not { exch pop } if /n exch
+cvi def } def
+/NArray { % holds the coordinates and on top of stack the showpoints boolean
+ /f ED
+ counttomark 2 div dup cvi /n ED
+ n eq not { exch pop } if
+ f { ] aload /Points ED } { n 2 mul 1 add -1 roll pop } ifelse
+} def
+/Line {
+ NArray n 0 eq not
+ { n 1 eq { 0 0 /n 2 def } if ArrowA /n n 2 sub def
+ n { Lineto } repeat
+ CP 4 2 roll ArrowB L pop pop
+ } if
+} def
+/Arcto { /a [ 6 -2 roll ] cvx def a r /arcto load stopped { 5 } { 4 }
+ ifelse { pop } repeat a } def
+/CheckClosed { dup n 2 mul 1 sub index eq 2 index n 2 mul 1 add index eq
+ and { pop pop /n n 1 sub def } if } def
+/Polygon { NArray n 2 eq { 0 0 /n 3 def } if n 3 lt { n { pop pop }
+ repeat } { n 3 gt { CheckClosed } if n 2 mul -2 roll /y0 ED /x0 ED /y1
+ ED /x1 ED x1 y1 /x1 x0 x1 add 2 div def /y1 y0 y1 add 2 div def x1 y1
+ moveto /n n 2 sub def n { Lineto } repeat x1 y1 x0 y0 6 4 roll Lineto
+ Lineto pop pop closepath } ifelse } def
+/Diamond {
+ /mtrx CM def
+ T rotate
+ /h ED
+ /w ED
+ dup 0 eq { pop } { CLW mul neg
+ /d ED
+ /a w h Atan def
+ /h d a sin Div h add def
+ /w d a cos Div w add def } ifelse
+ mark w 2 div h 2 div w 0 0 h neg w neg 0 0 h w 2 div h 2 div
+ /ArrowA { moveto } def
+ /ArrowB { } def
+ false Line
+ closepath mtrx setmatrix } def
+% DG modification begin - Jan. 15, 1997
+%/Triangle { /mtrx CM def translate rotate /h ED 2 div /w ED dup 0 eq {
+%pop } { CLW mul /d ED /h h d w h Atan sin Div sub def /w w d h w Atan 2
+%div dup cos exch sin Div mul sub def } ifelse mark 0 d w neg d 0 h w d 0
+%d /ArrowA { moveto } def /ArrowB { } def false Line closepath mtrx
+%setmatrix } def
+/Triangle { /mtrx CM def translate rotate /h ED 2 div /w ED dup
+CLW mul /d ED /h h d w h Atan sin Div sub def /w w d h w Atan 2
+div dup cos exch sin Div mul sub def mark 0 d w neg d 0 h w d 0
+d /ArrowA { moveto } def /ArrowB { } def false Line closepath mtrx
+% DG/SR modification begin - Jun. 1, 1998 - Patch 3 (from Michael Vulis)
+% setmatrix } def
+setmatrix pop } def
+% DG/SR modification end
+/CCA { /y ED /x ED 2 copy y sub /dy1 ED x sub /dx1 ED /l1 dx1 dy1 Pyth
+def } def
+/CCA { /y ED /x ED 2 copy y sub /dy1 ED x sub /dx1 ED /l1 dx1 dy1 Pyth
+def } def
+/CC { /l0 l1 def /x1 x dx sub def /y1 y dy sub def /dx0 dx1 def /dy0 dy1
+def CCA /dx dx0 l1 c exp mul dx1 l0 c exp mul add def /dy dy0 l1 c exp
+mul dy1 l0 c exp mul add def /m dx0 dy0 Atan dx1 dy1 Atan sub 2 div cos
+abs b exp a mul dx dy Pyth Div 2 div def /x2 x l0 dx mul m mul sub def
+/y2 y l0 dy mul m mul sub def /dx l1 dx mul m mul neg def /dy l1 dy mul
+m mul neg def } def
+/IC { /c c 1 add def c 0 lt { /c 0 def } { c 3 gt { /c 3 def } if }
+ifelse /a a 2 mul 3 div 45 cos b exp div def CCA /dx 0 def /dy 0 def }
+def
+/BOC { IC CC x2 y2 x1 y1 ArrowA CP 4 2 roll x y curveto } def
+/NC { CC x1 y1 x2 y2 x y curveto } def
+/EOC { x dx sub y dy sub 4 2 roll ArrowB 2 copy curveto } def
+/BAC { IC CC x y moveto CC x1 y1 CP ArrowA } def
+/NAC { x2 y2 x y curveto CC x1 y1 } def
+/EAC { x2 y2 x y ArrowB curveto pop pop } def
+/OpenCurve {
+ NArray n 3 lt
+ { n { pop pop } repeat }
+ { BOC /n n 3 sub def n { NC } repeat EOC } ifelse
+} def
+/AltCurve { { false NArray n 2 mul 2 roll [ n 2 mul 3 sub 1 roll ] aload
+/Points ED n 2 mul -2 roll } { false NArray } ifelse n 4 lt { n { pop
+pop } repeat } { BAC /n n 4 sub def n { NAC } repeat EAC } ifelse } def
+/ClosedCurve { NArray n 3 lt { n { pop pop } repeat } { n 3 gt {
+CheckClosed } if 6 copy n 2 mul 6 add 6 roll IC CC x y moveto n { NC }
+repeat closepath pop pop } ifelse } def
+/SQ { /r ED r r moveto r r neg L r neg r neg L r neg r L fill } def
+/ST { /y ED /x ED x y moveto x neg y L 0 x L fill } def
+/SP { /r ED gsave 0 r moveto 4 { 72 rotate 0 r L } repeat fill grestore }
+def
+/FontDot { DS 2 mul dup matrix scale matrix concatmatrix exch matrix
+rotate matrix concatmatrix exch findfont exch makefont setfont } def
+/Rect { x1 y1 y2 add 2 div moveto x1 y2 lineto x2 y2 lineto x2 y1 lineto
+x1 y1 lineto closepath } def
+/OvalFrame { x1 x2 eq y1 y2 eq or { pop pop x1 y1 moveto x2 y2 L } { y1
+y2 sub abs x1 x2 sub abs 2 copy gt { exch pop } { pop } ifelse 2 div
+exch { dup 3 1 roll mul exch } if 2 copy lt { pop } { exch pop } ifelse
+/b ED x1 y1 y2 add 2 div moveto x1 y2 x2 y2 b arcto x2 y2 x2 y1 b arcto
+x2 y1 x1 y1 b arcto x1 y1 x1 y2 b arcto 16 { pop } repeat closepath }
+ifelse } def
+/Frame { CLW mul /a ED 3 -1 roll 2 copy gt { exch } if a sub /y2 ED a add
+/y1 ED 2 copy gt { exch } if a sub /x2 ED a add /x1 ED 1 index 0 eq {
+pop pop Rect } { OvalFrame } ifelse } def
+/BezierNArray { /f ED counttomark 2 div dup cvi /n ED n eq not { exch pop
+} if n 1 sub neg 3 mod 3 add 3 mod { 0 0 /n n 1 add def } repeat f { ]
+aload /Points ED } { n 2 mul 1 add -1 roll pop } ifelse } def
+/OpenBezier { BezierNArray n 1 eq { pop pop } { ArrowA n 4 sub 3 idiv { 6
+2 roll 4 2 roll curveto } repeat 6 2 roll 4 2 roll ArrowB curveto }
+ifelse } def
+/ClosedBezier { BezierNArray n 1 eq { pop pop } { moveto n 1 sub 3 idiv {
+6 2 roll 4 2 roll curveto } repeat closepath } ifelse } def
+/BezierShowPoints { gsave Points aload length 2 div cvi /n ED moveto n 1
+sub { lineto } repeat CLW 2 div SLW [ 4 4 ] 0 setdash stroke grestore }
+def
+/Parab { /y0 exch def /x0 exch def /y1 exch def /x1 exch def /dx x0 x1
+sub 3 div def /dy y0 y1 sub 3 div def x0 dx sub y0 dy add x1 y1 ArrowA
+x0 dx add y0 dy add x0 2 mul x1 sub y1 ArrowB curveto /Points [ x1 y1 x0
+y0 x0 2 mul x1 sub y1 ] def } def
+/Grid { newpath /a 4 string def /b ED /c ED /n ED cvi dup 1 lt { pop 1 }
+if /s ED s div dup 0 eq { pop 1 } if /dy ED s div dup 0 eq { pop 1 } if
+/dx ED dy div round dy mul /y0 ED dx div round dx mul /x0 ED dy div
+round cvi /y2 ED dx div round cvi /x2 ED dy div round cvi /y1 ED dx div
+round cvi /x1 ED /h y2 y1 sub 0 gt { 1 } { -1 } ifelse def /w x2 x1 sub
+0 gt { 1 } { -1 } ifelse def b 0 gt { /z1 b 4 div CLW 2 div add def
+/Helvetica findfont b scalefont setfont /b b .95 mul CLW 2 div add def }
+if systemdict /setstrokeadjust known { true setstrokeadjust /t { } def }
+{ /t { transform 0.25 sub round 0.25 add exch 0.25 sub round 0.25 add
+exch itransform } bind def } ifelse gsave n 0 gt { 1 setlinecap [ 0 dy n
+div ] dy n div 2 div setdash } { 2 setlinecap } ifelse /i x1 def /f y1
+dy mul n 0 gt { dy n div 2 div h mul sub } if def /g y2 dy mul n 0 gt {
+dy n div 2 div h mul add } if def x2 x1 sub w mul 1 add dup 1000 gt {
+pop 1000 } if { i dx mul dup y0 moveto b 0 gt { gsave c i a cvs dup
+stringwidth pop /z2 ED w 0 gt {z1} {z1 z2 add neg} ifelse h 0 gt {b neg}
+{z1} ifelse rmoveto show grestore } if dup t f moveto g t L stroke /i i
+w add def } repeat grestore gsave n 0 gt
+% DG/SR modification begin - Nov. 7, 1997 - Patch 1
+%{ 1 setlinecap [ 0 dx n div ] dy n div 2 div setdash }
+{ 1 setlinecap [ 0 dx n div ] dx n div 2 div setdash }
+% DG/SR modification end
+{ 2 setlinecap } ifelse /i y1 def /f x1 dx mul
+n 0 gt { dx n div 2 div w mul sub } if def /g x2 dx mul n 0 gt { dx n
+div 2 div w mul add } if def y2 y1 sub h mul 1 add dup 1000 gt { pop
+1000 } if { newpath i dy mul dup x0 exch moveto b 0 gt { gsave c i a cvs
+dup stringwidth pop /z2 ED w 0 gt {z1 z2 add neg} {z1} ifelse h 0 gt
+{z1} {b neg} ifelse rmoveto show grestore } if dup f exch t moveto g
+exch t L stroke /i i h add def } repeat grestore } def
+/ArcArrow { /d ED /b ED /a ED gsave newpath 0 -1000 moveto clip newpath 0
+1 0 0 b grestore c mul /e ED pop pop pop r a e d PtoC y add exch x add
+exch r a PtoC y add exch x add exch b pop pop pop pop a e d CLW 8 div c
+mul neg d } def
+/Ellipse { /mtrx CM def T scale 0 0 1 5 3 roll arc mtrx setmatrix } def
+%
+/ArcAdjust {
+% given a target length (targetLength) and an initial angle (angle0) [in the stack],
+% let M(angle0)=(rx*cos(angle0),ry*sin(angle0))=(x0,y0).
+% This computes an angle t such that (x0,y0) is at distance targetLength from the point M(t)=(rx*cos(t),ry*sin(t)).
+% NOTE: this an absolute angle, it does not have to be added or substracted to angle0
+% contrary to TvZ's code.
+% To achieve, this, one iterates the following process: start with some angle t,
+% compute the point M' at distance targetLength of (x0,y0) on the semi-line [(x0,y0) M(t)].
+% Now take t' (= new angle) so that (0,0) M(t') and M' are aligned.
+%
+% Another difference with TvZ's code is that we need d (=add/sub) to be defined.
+% the value of d = add/sub is used to know on which side we have to move.
+% It is only used in the initialisation of the angle before the iteration.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Input stack: 1: target length 2: initial angle
+% variables used : rx, ry, d (=add/sub)
+%
+ /targetLength ED /angle0 ED
+ /x0 rx angle0 cos mul def
+ /y0 ry angle0 sin mul def
+% we are looking for an angle t such that (x0,y0) is at distance targetLength from the point M(t)=(rx*cos(t),ry*sin(t)))
+%initialisation of angle (using 1st order approx = TvZ's code)
+ targetLength 57.2958 mul
+ angle0 sin rx mul dup mul
+ angle0 cos ry mul dup mul
+ add sqrt div
+% if initialisation angle is two large (more than 90 degrees) set it to 90 degrees
+% (if the ellipse is very curved at the point where we draw the arrow, the value can be much more than 360 degrees !)
+% this should avoid going on the wrong side (more than 180 degrees) or go near
+% a bad attractive point (at 180 degrees)
+ dup 90 ge { pop 90 } if
+ angle0 exch d
+% maximum number of times to iterate the iterative procedure:
+ 30
+% iterative procedure: takes an angle t on top of stack, computes a better angle (an put it on top of stack)
+ { dup
+% compute distance D between (x0,y0) and M(t)
+ dup cos rx mul x0 sub dup mul exch sin ry mul y0 sub dup mul add sqrt
+% if D almost equals targetLength, we stop
+ dup targetLength sub abs 1e-5 le { pop exit } if
+% stack now contains D t
+% compute the point M(t') at distance targetLength of (x0,y0) on the semi-line [(x0,y0) M(t)]:
+% M(t')= ( (x(t)-x0)*targetLength/d+x0 , (y(t)-y0)*targetLength/d+y0 )
+ exch dup cos rx mul x0 sub exch sin ry mul y0 sub
+% stack contains: y(t)-y0, x(t)-x0, d
+ 2 index Div targetLength mul y0 add ry Div exch
+ 2 index Div targetLength mul x0 add rx Div
+% stack contains x(t')/rx , y(t')/ry , d
+% now compute t', and remove D from stack
+ atan exch pop
+ } repeat
+% we don't look at what happened... in particular, if targetLength is greater than the diameter of the ellipse...
+% the final angle will be around /angle0 + 180. maybe we should treat this pathological case...
+%after iteration, stack contains an angle t such that M(t) is the tail of the arrow
+% to give back the result as a an angle relative to angle0 we could add the following line:
+% angle0 sub 0 exch d
+%
+} def
+%
+/EllipticArcArrow {
+ /d ED % add/sub
+ /b ED % arrow procedure
+ /a1 ED % angle
+ gsave
+ newpath
+ 0 -1000 moveto
+ clip % Set clippath far from arrow.
+ newpath
+ 0 1 0 0 b % Draw arrow to determine length.
+ grestore
+% Length of arrow is on top of stack. Next 3 numbers are junk.
+%
+ a1 exch ArcAdjust % Angular position of base of arrow.
+ /a2 ED
+ pop pop pop
+ a2 cos rx mul x add
+ a2 sin ry mul y add
+ a1 cos rx mul x add
+ a1 sin ry mul y add
+% Now arrow tip coor and base coor are on stack.
+ b pop pop pop pop % Draw arrow, and discard coordinates.
+ a2 CLW 8 div
+% change value of d (test it by looking if `` 1 1 d '' gives 2 or not )
+ 1 1 d 2 eq { /d { sub } def } { /d { add } def } ifelse
+ ArcAdjust
+% resets original value of d
+ 1 1 d 2 eq { /d { sub } def } { /d { add } def } ifelse % Adjust angle to give overlap.
+} def
+%%------------------ tvz/DG/hv (2004-05-10) end -------------------%%
+%
+/Rot { CP CP translate 3 -1 roll neg rotate NET } def
+/RotBegin { tx@Dict /TMatrix known not { /TMatrix { } def /RAngle { 0 }
+def } if /TMatrix [ TMatrix CM ] cvx def /a ED a Rot /RAngle [ RAngle
+dup a add ] cvx def } def
+/RotEnd { /TMatrix [ TMatrix setmatrix ] cvx def /RAngle [ RAngle pop ]
+cvx def } def
+/PutCoor { gsave CP T CM STV exch exec moveto setmatrix CP grestore } def
+/PutBegin { /TMatrix [ TMatrix CM ] cvx def CP 4 2 roll T moveto } def
+/PutEnd { CP /TMatrix [ TMatrix setmatrix ] cvx def moveto } def
+/Uput { /a ED add 2 div /h ED 2 div /w ED /s a sin def /c a cos def /b s
+abs c abs 2 copy gt dup /q ED { pop } { exch pop } ifelse def /w1 c b
+div w mul def /h1 s b div h mul def q { w1 abs w sub dup c mul abs } {
+h1 abs h sub dup s mul abs } ifelse } def
+/UUput { /z ED abs /y ED /x ED q { x s div c mul abs y gt } { x c div s
+mul abs y gt } ifelse { x x mul y y mul sub z z mul add sqrt z add } { q
+{ x s div } { x c div } ifelse abs } ifelse a PtoC h1 add exch w1 add
+exch } def
+/BeginOL { dup (all) eq exch TheOL eq or { IfVisible not { Visible
+/IfVisible true def } if } { IfVisible { Invisible /IfVisible false def
+} if } ifelse } def
+/InitOL { /OLUnit [ 3000 3000 matrix defaultmatrix dtransform ] cvx def
+/Visible { CP OLUnit idtransform T moveto } def /Invisible { CP OLUnit
+neg exch neg exch idtransform T moveto } def /BOL { BeginOL } def
+/IfVisible true def } def
+end
+% END pstricks.pro
+
+%%EndProcSet
+%%BeginProcSet: pst-dots.pro 0 0
+%!PS-Adobe-2.0
+%%Title: Dot Font for PSTricks
+%%Creator: Timothy Van Zandt <tvz@Princeton.EDU>
+%%Creation Date: May 7, 1993
+%% Version 97 patch 1, 99/12/16
+%% Modified by Etienne Riga <etienne.riga@skynet.be> - Dec. 16, 1999
+%% to add /Diamond, /SolidDiamond and /BoldDiamond
+10 dict dup begin
+ /FontType 3 def
+ /FontMatrix [ .001 0 0 .001 0 0 ] def
+ /FontBBox [ 0 0 0 0 ] def
+ /Encoding 256 array def
+ 0 1 255 { Encoding exch /.notdef put } for
+ Encoding
+ dup (b) 0 get /Bullet put
+ dup (c) 0 get /Circle put
+ dup (C) 0 get /BoldCircle put
+ dup (u) 0 get /SolidTriangle put
+ dup (t) 0 get /Triangle put
+ dup (T) 0 get /BoldTriangle put
+ dup (r) 0 get /SolidSquare put
+ dup (s) 0 get /Square put
+ dup (S) 0 get /BoldSquare put
+ dup (q) 0 get /SolidPentagon put
+ dup (p) 0 get /Pentagon put
+ dup (P) 0 get /BoldPentagon put
+% DG/SR modification begin - Dec. 16, 1999 - From Etienne Riga
+ dup (l) 0 get /SolidDiamond put
+ dup (d) 0 get /Diamond put
+ (D) 0 get /BoldDiamond put
+% DG/SR modification end
+ /Metrics 13 dict def
+ Metrics begin
+ /Bullet 1000 def
+ /Circle 1000 def
+ /BoldCircle 1000 def
+ /SolidTriangle 1344 def
+ /Triangle 1344 def
+ /BoldTriangle 1344 def
+ /SolidSquare 886 def
+ /Square 886 def
+ /BoldSquare 886 def
+ /SolidPentagon 1093.2 def
+ /Pentagon 1093.2 def
+ /BoldPentagon 1093.2 def
+% DG/SR modification begin - Dec. 16, 1999 - From Etienne Riga
+ /SolidDiamond 1008 def
+ /Diamond 1008 def
+ /BoldDiamond 1008 def
+% DG/SR modification end
+ /.notdef 0 def
+ end
+ /BBoxes 13 dict def
+ BBoxes begin
+ /Circle { -550 -550 550 550 } def
+ /BoldCircle /Circle load def
+ /Bullet /Circle load def
+ /Triangle { -571.5 -330 571.5 660 } def
+ /BoldTriangle /Triangle load def
+ /SolidTriangle /Triangle load def
+ /Square { -450 -450 450 450 } def
+ /BoldSquare /Square load def
+ /SolidSquare /Square load def
+ /Pentagon { -546.6 -465 546.6 574.7 } def
+ /BoldPentagon /Pentagon load def
+ /SolidPentagon /Pentagon load def
+% DG/SR modification begin - Dec. 16, 1999 - From Etienne Riga
+ /Diamond { -428.5 -742.5 428.5 742.5 } def
+ /BoldDiamond /Diamond load def
+ /SolidDiamond /Diamond load def
+% DG/SR modification end
+ /.notdef { 0 0 0 0 } def
+ end
+ /CharProcs 20 dict def
+ CharProcs begin
+ /Adjust {
+ 2 copy dtransform floor .5 add exch floor .5 add exch idtransform
+ 3 -1 roll div 3 1 roll exch div exch scale
+ } def
+ /CirclePath { 0 0 500 0 360 arc closepath } def
+ /Bullet { 500 500 Adjust CirclePath fill } def
+ /Circle { 500 500 Adjust CirclePath .9 .9 scale CirclePath
+ eofill } def
+ /BoldCircle { 500 500 Adjust CirclePath .8 .8 scale CirclePath
+ eofill } def
+ /BoldCircle { CirclePath .8 .8 scale CirclePath eofill } def
+ /TrianglePath { 0 660 moveto -571.5 -330 lineto 571.5 -330 lineto
+ closepath } def
+ /SolidTriangle { TrianglePath fill } def
+ /Triangle { TrianglePath .85 .85 scale TrianglePath eofill } def
+ /BoldTriangle { TrianglePath .7 .7 scale TrianglePath eofill } def
+ /SquarePath { -450 450 moveto 450 450 lineto 450 -450 lineto
+ -450 -450 lineto closepath } def
+ /SolidSquare { SquarePath fill } def
+ /Square { SquarePath .89 .89 scale SquarePath eofill } def
+ /BoldSquare { SquarePath .78 .78 scale SquarePath eofill } def
+ /PentagonPath {
+ -337.8 -465 moveto
+ 337.8 -465 lineto
+ 546.6 177.6 lineto
+ 0 574.7 lineto
+ -546.6 177.6 lineto
+ closepath
+ } def
+ /SolidPentagon { PentagonPath fill } def
+ /Pentagon { PentagonPath .89 .89 scale PentagonPath eofill } def
+ /BoldPentagon { PentagonPath .78 .78 scale PentagonPath eofill } def
+% DG/SR modification begin - Dec. 16, 1999 - From Etienne Riga
+ /DiamondPath { 0 742.5 moveto -428.5 0 lineto 0 -742.5 lineto
+ 428.5 0 lineto closepath } def
+ /SolidDiamond { DiamondPath fill } def
+ /Diamond { DiamondPath .85 .85 scale DiamondPath eofill } def
+ /BoldDiamond { DiamondPath .7 .7 scale DiamondPath eofill } def
+% DG/SR modification end
+ /.notdef { } def
+ end
+ /BuildGlyph {
+ exch
+ begin
+ Metrics 1 index get exec 0
+ BBoxes 3 index get exec
+ setcachedevice
+ CharProcs begin load exec end
+ end
+ } def
+ /BuildChar {
+ 1 index /Encoding get exch get
+ 1 index /BuildGlyph get exec
+ } bind def
+end
+/PSTricksDotFont exch definefont pop
+%END pst-dots.pro
+
+%%EndProcSet
+%%BeginProcSet: pst-node.pro 0 0
+%!
+% PostScript prologue for pst-node.tex.
+% Version 97 patch 1, 97/05/09.
+% For distribution, see pstricks.tex.
+%
+/tx@NodeDict 400 dict def tx@NodeDict begin
+tx@Dict begin /T /translate load def end
+/NewNode { gsave /next ED dict dup 3 1 roll def exch { dup 3 1 roll def }
+if begin tx@Dict begin STV CP T exec end /NodeMtrx CM def next end
+grestore } def
+/InitPnode { /Y ED /X ED /NodePos { NodeSep Cos mul NodeSep Sin mul } def
+} def
+/InitCnode { /r ED /Y ED /X ED /NodePos { NodeSep r add dup Cos mul exch
+Sin mul } def } def
+/GetRnodePos { Cos 0 gt { /dx r NodeSep add def } { /dx l NodeSep sub def
+} ifelse Sin 0 gt { /dy u NodeSep add def } { /dy d NodeSep sub def }
+ifelse dx Sin mul abs dy Cos mul abs gt { dy Cos mul Sin div dy } { dx
+dup Sin mul Cos Div } ifelse } def
+/InitRnode { /Y ED /X ED X sub /r ED /l X neg def Y add neg /d ED Y sub
+/u ED /NodePos { GetRnodePos } def } def
+/DiaNodePos { w h mul w Sin mul abs h Cos mul abs add Div NodeSep add dup
+Cos mul exch Sin mul } def
+/TriNodePos { Sin s lt { d NodeSep sub dup Cos mul Sin Div exch } { w h
+mul w Sin mul h Cos abs mul add Div NodeSep add dup Cos mul exch Sin mul
+} ifelse } def
+/InitTriNode { sub 2 div exch 2 div exch 2 copy T 2 copy 4 index index /d
+ED pop pop pop pop -90 mul rotate /NodeMtrx CM def /X 0 def /Y 0 def d
+sub abs neg /d ED d add /h ED 2 div h mul h d sub Div /w ED /s d w Atan
+sin def /NodePos { TriNodePos } def } def
+/OvalNodePos { /ww w NodeSep add def /hh h NodeSep add def Sin ww mul Cos
+hh mul Atan dup cos ww mul exch sin hh mul } def
+/GetCenter { begin X Y NodeMtrx transform CM itransform end } def
+/XYPos { dup sin exch cos Do /Cos ED /Sin ED /Dist ED Cos 0 gt { Dist
+Dist Sin mul Cos div } { Cos 0 lt { Dist neg Dist Sin mul Cos div neg }
+{ 0 Dist Sin mul } ifelse } ifelse Do } def
+/GetEdge { dup 0 eq { pop begin 1 0 NodeMtrx dtransform CM idtransform
+exch atan sub dup sin /Sin ED cos /Cos ED /NodeSep ED NodePos NodeMtrx
+dtransform CM idtransform end } { 1 eq {{exch}} {{}} ifelse /Do ED pop
+XYPos } ifelse } def
+/AddOffset { 1 index 0 eq { pop pop } { 2 copy 5 2 roll cos mul add 4 1
+roll sin mul sub exch } ifelse } def
+/GetEdgeA { NodeSepA AngleA NodeA NodeSepTypeA GetEdge OffsetA AngleA
+AddOffset yA add /yA1 ED xA add /xA1 ED } def
+/GetEdgeB { NodeSepB AngleB NodeB NodeSepTypeB GetEdge OffsetB AngleB
+AddOffset yB add /yB1 ED xB add /xB1 ED } def
+/GetArmA { ArmTypeA 0 eq { /xA2 ArmA AngleA cos mul xA1 add def /yA2 ArmA
+AngleA sin mul yA1 add def } { ArmTypeA 1 eq {{exch}} {{}} ifelse /Do ED
+ArmA AngleA XYPos OffsetA AngleA AddOffset yA add /yA2 ED xA add /xA2 ED
+} ifelse } def
+/GetArmB { ArmTypeB 0 eq { /xB2 ArmB AngleB cos mul xB1 add def /yB2 ArmB
+AngleB sin mul yB1 add def } { ArmTypeB 1 eq {{exch}} {{}} ifelse /Do ED
+ArmB AngleB XYPos OffsetB AngleB AddOffset yB add /yB2 ED xB add /xB2 ED
+} ifelse } def
+/InitNC { /b ED /a ED /NodeSepTypeB ED /NodeSepTypeA ED /NodeSepB ED
+/NodeSepA ED /OffsetB ED /OffsetA ED tx@NodeDict a known tx@NodeDict b
+known and dup { /NodeA a load def /NodeB b load def NodeA GetCenter /yA
+ED /xA ED NodeB GetCenter /yB ED /xB ED } if } def
+/LPutLine { 4 copy 3 -1 roll sub neg 3 1 roll sub Atan /NAngle ED 1 t sub
+mul 3 1 roll 1 t sub mul 4 1 roll t mul add /Y ED t mul add /X ED } def
+/LPutLines { mark LPutVar counttomark 2 div 1 sub /n ED t floor dup n gt
+{ pop n 1 sub /t 1 def } { dup t sub neg /t ED } ifelse cvi 2 mul { pop
+} repeat LPutLine cleartomark } def
+/BezierMidpoint { /y3 ED /x3 ED /y2 ED /x2 ED /y1 ED /x1 ED /y0 ED /x0 ED
+/t ED /cx x1 x0 sub 3 mul def /cy y1 y0 sub 3 mul def /bx x2 x1 sub 3
+mul cx sub def /by y2 y1 sub 3 mul cy sub def /ax x3 x0 sub cx sub bx
+sub def /ay y3 y0 sub cy sub by sub def ax t 3 exp mul bx t t mul mul
+add cx t mul add x0 add ay t 3 exp mul by t t mul mul add cy t mul add
+y0 add 3 ay t t mul mul mul 2 by t mul mul add cy add 3 ax t t mul mul
+mul 2 bx t mul mul add cx add atan /NAngle ED /Y ED /X ED } def
+/HPosBegin { yB yA ge { /t 1 t sub def } if /Y yB yA sub t mul yA add def
+} def
+/HPosEnd { /X Y yyA sub yyB yyA sub Div xxB xxA sub mul xxA add def
+/NAngle yyB yyA sub xxB xxA sub Atan def } def
+/HPutLine { HPosBegin /yyA ED /xxA ED /yyB ED /xxB ED HPosEnd } def
+/HPutLines { HPosBegin yB yA ge { /check { le } def } { /check { ge } def
+} ifelse /xxA xA def /yyA yA def mark xB yB LPutVar { dup Y check { exit
+} { /yyA ED /xxA ED } ifelse } loop /yyB ED /xxB ED cleartomark HPosEnd
+} def
+/VPosBegin { xB xA lt { /t 1 t sub def } if /X xB xA sub t mul xA add def
+} def
+/VPosEnd { /Y X xxA sub xxB xxA sub Div yyB yyA sub mul yyA add def
+/NAngle yyB yyA sub xxB xxA sub Atan def } def
+/VPutLine { VPosBegin /yyA ED /xxA ED /yyB ED /xxB ED VPosEnd } def
+/VPutLines { VPosBegin xB xA ge { /check { le } def } { /check { ge } def
+} ifelse /xxA xA def /yyA yA def mark xB yB LPutVar { 1 index X check {
+exit } { /yyA ED /xxA ED } ifelse } loop /yyB ED /xxB ED cleartomark
+VPosEnd } def
+/HPutCurve { gsave newpath /SaveLPutVar /LPutVar load def LPutVar 8 -2
+roll moveto curveto flattenpath /LPutVar [ {} {} {} {} pathforall ] cvx
+def grestore exec /LPutVar /SaveLPutVar load def } def
+/NCCoor { /AngleA yB yA sub xB xA sub Atan def /AngleB AngleA 180 add def
+GetEdgeA GetEdgeB /LPutVar [ xB1 yB1 xA1 yA1 ] cvx def /LPutPos {
+LPutVar LPutLine } def /HPutPos { LPutVar HPutLine } def /VPutPos {
+LPutVar VPutLine } def LPutVar } def
+/NCLine { NCCoor tx@Dict begin ArrowA CP 4 2 roll ArrowB lineto pop pop
+end } def
+/NCLines { false NArray n 0 eq { NCLine } { 2 copy yA sub exch xA sub
+Atan /AngleA ED n 2 mul dup index exch index yB sub exch xB sub Atan
+/AngleB ED GetEdgeA GetEdgeB /LPutVar [ xB1 yB1 n 2 mul 4 add 4 roll xA1
+yA1 ] cvx def mark LPutVar tx@Dict begin false Line end /LPutPos {
+LPutLines } def /HPutPos { HPutLines } def /VPutPos { VPutLines } def }
+ifelse } def
+/NCCurve { GetEdgeA GetEdgeB xA1 xB1 sub yA1 yB1 sub Pyth 2 div dup 3 -1
+roll mul /ArmA ED mul /ArmB ED /ArmTypeA 0 def /ArmTypeB 0 def GetArmA
+GetArmB xA2 yA2 xA1 yA1 tx@Dict begin ArrowA end xB2 yB2 xB1 yB1 tx@Dict
+begin ArrowB end curveto /LPutVar [ xA1 yA1 xA2 yA2 xB2 yB2 xB1 yB1 ]
+cvx def /LPutPos { t LPutVar BezierMidpoint } def /HPutPos { { HPutLines
+} HPutCurve } def /VPutPos { { VPutLines } HPutCurve } def } def
+/NCAngles { GetEdgeA GetEdgeB GetArmA GetArmB /mtrx AngleA matrix rotate
+def xA2 yA2 mtrx transform pop xB2 yB2 mtrx transform exch pop mtrx
+itransform /y0 ED /x0 ED mark ArmB 0 ne { xB1 yB1 } if xB2 yB2 x0 y0 xA2
+yA2 ArmA 0 ne { xA1 yA1 } if tx@Dict begin false Line end /LPutVar [ xB1
+yB1 xB2 yB2 x0 y0 xA2 yA2 xA1 yA1 ] cvx def /LPutPos { LPutLines } def
+/HPutPos { HPutLines } def /VPutPos { VPutLines } def } def
+/NCAngle { GetEdgeA GetEdgeB GetArmB /mtrx AngleA matrix rotate def xB2
+yB2 mtrx itransform pop xA1 yA1 mtrx itransform exch pop mtrx transform
+/y0 ED /x0 ED mark ArmB 0 ne { xB1 yB1 } if xB2 yB2 x0 y0 xA1 yA1
+tx@Dict begin false Line end /LPutVar [ xB1 yB1 xB2 yB2 x0 y0 xA1 yA1 ]
+cvx def /LPutPos { LPutLines } def /HPutPos { HPutLines } def /VPutPos {
+VPutLines } def } def
+/NCBar { GetEdgeA GetEdgeB GetArmA GetArmB /mtrx AngleA matrix rotate def
+xA2 yA2 mtrx itransform pop xB2 yB2 mtrx itransform pop sub dup 0 mtrx
+transform 3 -1 roll 0 gt { /yB2 exch yB2 add def /xB2 exch xB2 add def }
+{ /yA2 exch neg yA2 add def /xA2 exch neg xA2 add def } ifelse mark ArmB
+0 ne { xB1 yB1 } if xB2 yB2 xA2 yA2 ArmA 0 ne { xA1 yA1 } if tx@Dict
+begin false Line end /LPutVar [ xB1 yB1 xB2 yB2 xA2 yA2 xA1 yA1 ] cvx
+def /LPutPos { LPutLines } def /HPutPos { HPutLines } def /VPutPos {
+VPutLines } def } def
+/NCDiag { GetEdgeA GetEdgeB GetArmA GetArmB mark ArmB 0 ne { xB1 yB1 } if
+xB2 yB2 xA2 yA2 ArmA 0 ne { xA1 yA1 } if tx@Dict begin false Line end
+/LPutVar [ xB1 yB1 xB2 yB2 xA2 yA2 xA1 yA1 ] cvx def /LPutPos {
+LPutLines } def /HPutPos { HPutLines } def /VPutPos { VPutLines } def }
+def
+/NCDiagg { GetEdgeA GetArmA yB yA2 sub xB xA2 sub Atan 180 add /AngleB ED
+GetEdgeB mark xB1 yB1 xA2 yA2 ArmA 0 ne { xA1 yA1 } if tx@Dict begin
+false Line end /LPutVar [ xB1 yB1 xA2 yA2 xA1 yA1 ] cvx def /LPutPos {
+LPutLines } def /HPutPos { HPutLines } def /VPutPos { VPutLines } def }
+def
+/NCLoop { GetEdgeA GetEdgeB GetArmA GetArmB /mtrx AngleA matrix rotate
+def xA2 yA2 mtrx transform loopsize add /yA3 ED /xA3 ED /xB3 xB2 yB2
+mtrx transform pop def xB3 yA3 mtrx itransform /yB3 ED /xB3 ED xA3 yA3
+mtrx itransform /yA3 ED /xA3 ED mark ArmB 0 ne { xB1 yB1 } if xB2 yB2
+xB3 yB3 xA3 yA3 xA2 yA2 ArmA 0 ne { xA1 yA1 } if tx@Dict begin false
+Line end /LPutVar [ xB1 yB1 xB2 yB2 xB3 yB3 xA3 yA3 xA2 yA2 xA1 yA1 ]
+cvx def /LPutPos { LPutLines } def /HPutPos { HPutLines } def /VPutPos {
+VPutLines } def } def
+% DG/SR modification begin - May 9, 1997 - Patch 1
+%/NCCircle { 0 0 NodesepA nodeA \tx@GetEdge pop xA sub 2 div dup 2 exp r
+%r mul sub abs sqrt atan 2 mul /a ED r AngleA 90 add PtoC yA add exch xA add
+%exch 2 copy /LPutVar [ 4 2 roll r AngleA ] cvx def /LPutPos { LPutVar t 360
+%mul add dup 5 1 roll 90 sub \tx@PtoC 3 -1 roll add /Y ED add /X ED /NAngle ED
+/NCCircle { NodeSepA 0 NodeA 0 GetEdge pop 2 div dup 2 exp r
+r mul sub abs sqrt atan 2 mul /a ED r AngleA 90 add PtoC yA add exch xA add
+exch 2 copy /LPutVar [ 4 2 roll r AngleA ] cvx def /LPutPos { LPutVar t 360
+mul add dup 5 1 roll 90 sub PtoC 3 -1 roll add /Y ED add /X ED /NAngle ED
+% DG/SR modification end
+} def /HPutPos { LPutPos } def /VPutPos { LPutPos } def r AngleA 90 sub a add
+AngleA 270 add a sub tx@Dict begin /angleB ED /angleA ED /r ED /c 57.2957 r
+Div def /y ED /x ED } def
+/NCBox { /d ED /h ED /AngleB yB yA sub xB xA sub Atan def /AngleA AngleB
+180 add def GetEdgeA GetEdgeB /dx d AngleB sin mul def /dy d AngleB cos
+mul neg def /hx h AngleB sin mul neg def /hy h AngleB cos mul def
+/LPutVar [ xA1 hx add yA1 hy add xB1 hx add yB1 hy add xB1 dx add yB1 dy
+add xA1 dx add yA1 dy add ] cvx def /LPutPos { LPutLines } def /HPutPos
+{ xB yB xA yA LPutLine } def /VPutPos { HPutPos } def mark LPutVar
+tx@Dict begin false Polygon end } def
+/NCArcBox { /l ED neg /d ED /h ED /a ED /AngleA yB yA sub xB xA sub Atan
+def /AngleB AngleA 180 add def /tA AngleA a sub 90 add def /tB tA a 2
+mul add def /r xB xA sub tA cos tB cos sub Div dup 0 eq { pop 1 } if def
+/x0 xA r tA cos mul add def /y0 yA r tA sin mul add def /c 57.2958 r div
+def /AngleA AngleA a sub 180 add def /AngleB AngleB a add 180 add def
+GetEdgeA GetEdgeB /AngleA tA 180 add yA yA1 sub xA xA1 sub Pyth c mul
+sub def /AngleB tB 180 add yB yB1 sub xB xB1 sub Pyth c mul add def l 0
+eq { x0 y0 r h add AngleA AngleB arc x0 y0 r d add AngleB AngleA arcn }
+{ x0 y0 translate /tA AngleA l c mul add def /tB AngleB l c mul sub def
+0 0 r h add tA tB arc r h add AngleB PtoC r d add AngleB PtoC 2 copy 6 2
+roll l arcto 4 { pop } repeat r d add tB PtoC l arcto 4 { pop } repeat 0
+0 r d add tB tA arcn r d add AngleA PtoC r h add AngleA PtoC 2 copy 6 2
+roll l arcto 4 { pop } repeat r h add tA PtoC l arcto 4 { pop } repeat }
+ifelse closepath /LPutVar [ x0 y0 r AngleA AngleB h d ] cvx def /LPutPos
+{ LPutVar /d ED /h ED /AngleB ED /AngleA ED /r ED /y0 ED /x0 ED t 1 le {
+r h add AngleA 1 t sub mul AngleB t mul add dup 90 add /NAngle ED PtoC }
+{ t 2 lt { /NAngle AngleB 180 add def r 2 t sub h mul t 1 sub d mul add
+add AngleB PtoC } { t 3 lt { r d add AngleB 3 t sub mul AngleA 2 t sub
+mul add dup 90 sub /NAngle ED PtoC } { /NAngle AngleA 180 add def r 4 t
+sub d mul t 3 sub h mul add add AngleA PtoC } ifelse } ifelse } ifelse
+y0 add /Y ED x0 add /X ED } def /HPutPos { LPutPos } def /VPutPos {
+LPutPos } def } def
+/Tfan { /AngleA yB yA sub xB xA sub Atan def GetEdgeA w xA1 xB sub yA1 yB
+sub Pyth Pyth w Div CLW 2 div mul 2 div dup AngleA sin mul yA1 add /yA1
+ED AngleA cos mul xA1 add /xA1 ED /LPutVar [ xA1 yA1 m { xB w add yB xB
+w sub yB } { xB yB w sub xB yB w add } ifelse xA1 yA1 ] cvx def /LPutPos
+{ LPutLines } def /VPutPos@ { LPutVar flag { 8 4 roll pop pop pop pop }
+{ pop pop pop pop 4 2 roll } ifelse } def /VPutPos { VPutPos@ VPutLine }
+def /HPutPos { VPutPos@ HPutLine } def mark LPutVar tx@Dict begin
+/ArrowA { moveto } def /ArrowB { } def false Line closepath end } def
+/LPutCoor { NAngle tx@Dict begin /NAngle ED end gsave CM STV CP Y sub neg
+exch X sub neg exch moveto setmatrix CP grestore } def
+/LPut { tx@NodeDict /LPutPos known { LPutPos } { CP /Y ED /X ED /NAngle 0
+def } ifelse LPutCoor } def
+/HPutAdjust { Sin Cos mul 0 eq { 0 } { d Cos mul Sin div flag not { neg }
+if h Cos mul Sin div flag { neg } if 2 copy gt { pop } { exch pop }
+ifelse } ifelse s add flag { r add neg } { l add } ifelse X add /X ED }
+def
+/VPutAdjust { Sin Cos mul 0 eq { 0 } { l Sin mul Cos div flag { neg } if
+r Sin mul Cos div flag not { neg } if 2 copy gt { pop } { exch pop }
+ifelse } ifelse s add flag { d add } { h add neg } ifelse Y add /Y ED }
+def
+end
+% END pst-node.pro
+
+%%EndProcSet
+%%BeginProcSet: pst-eucl.pro 0 0
+%!
+% PostScript prologue for pst-eucl.tex.
+% Version 2001, 2001/12/09
+% For distribution, see pstricks.tex.
+%
+/tx@EcldDict 400 dict def tx@EcldDict begin
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Pi
+/Pi 3.14159265359 def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% e
+/E 2.718281828459045 def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% x -> true (if |x| < 1E-10)
+/ZeroEq { abs 1E-10 lt } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% x1 y1 x2 y2 -> a b c (ax+by+c=0)
+/EqDr {
+ 4 copy 3 -1 roll sub 7 1 roll exch sub 5 1 roll 4 -1 roll
+ mul 3 1 roll mul exch sub } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% orthogonal projection of M1 onto (OM2)
+%% x1 y1 x2 y2 -> x3 y3
+/Project {
+ 2 copy dup mul exch dup mul add 5 1 roll 2 copy 5 -1 roll mul exch
+ 5 -1 roll mul add 4 -1 roll div dup 4 -1 roll mul exch 3 -1 roll mul
+} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% a b c (ax2+bx+c=0) -> x1 y1
+/SolvTrin {
+ /c exch def /b exch def /a exch def
+ b dup mul a c mul 4 mul sub dup 0 lt
+ { pop 0 0 } %% no solutions
+ {sqrt dup b neg add a 2 mul div exch b add neg 2 a mul div }
+ ifelse } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% x1 y1 x2 y2 -> Dist
+/ABDist { 3 -1 roll sub dup mul 3 1 roll sub dup mul add sqrt } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% x1 y1 x2 y2 -> x1-x2 y1-y2
+/ABVect { 3 -1 roll exch sub 3 1 roll sub exch } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% x1 y1 x2 y2 x3 y3 x4 y4 -> x y
+/InterLines {
+ EqDr /D1c exch def /D1b exch def /D1a exch def
+ EqDr /D2c exch def /D2b exch def /D2a exch def
+ D1a D2b mul D1b D2a mul sub dup ZeroEq
+ { pop pop pop 0 0 }
+ {
+ /Det exch def
+ D1b D2c mul D1c D2b mul sub Det div
+ D1a D2c mul D2a D1c mul sub Det div
+ }
+ ifelse } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% a b c R -> x1 y1 x2 y2
+/InterLineCircle {
+ /CR exch def /Dc exch def /Db exch def /Da exch def
+ Db Da dup ZeroEq { pop Dc dup ZeroEq { pop 1 } if } if div abs
+ 0.0005 lt { InterLineCirclebnull } { InterLineCircleGal }
+ ifelse
+ %%dup 3 index lt { 4 2 roll } if
+ } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% case where the line is parallel to (oy)
+/InterLineCirclebnull {
+ Dc Da div neg dup dup mul CR dup mul exch sub dup
+ 0 lt
+ { pop pop 0 0 0 0 } { sqrt dup 3 1 roll exch dup 4 1 roll exch neg }
+ ifelse } def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% general case
+/InterLineCircleGal {
+ Da dup mul Db dup mul add -2 Dc mul Da mul Dc dup mul CR dup mul Db dup
+ mul mul sub SolvTrin dup neg exch Da Db div mul Dc Db
+ div exch sub 3 -1 roll
+ dup neg exch Da Db div mul Dc Db div exch sub
+} bind def
+/Glbx 0 def /Glby 0 def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% R R' OO' -> x1 y1 x2 y2
+/InterCircles {
+ /OOP exch def /CRP exch def /CR exch def
+ OOP dup mul CRP dup mul sub CR dup mul add OOP div 2 div
+ dup dup mul CR dup mul exch sub dup
+ 0 lt { pop pop 0 0 0 0 } { sqrt 2 copy neg } ifelse
+} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% x y theta -> x' y' (rotation of theta)
+/Rotate {
+ dup sin /sintheta exch def cos /costheta exch def /y exch def /x exch def
+ x costheta mul y sintheta mul sub
+ y costheta mul x sintheta mul add
+} def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% N -> x y
+/GetNode {
+ tx@NodeDict begin
+ tx@NodeDict 1 index known { load GetCenter } { pop 0 0 } ifelse
+ end
+} bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% x -> ch(x)
+/ch { dup Ex exch neg Ex add 2 div } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% x -> sh(x)
+/sh { dup Ex exch neg Ex sub 2 div } bind def
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% x -> e^(x)
+/Ex { E exch exp } bind def
+end
+% END ps-euclide.pro
+
+%%EndProcSet
+%%BeginProcSet: texps.pro 0 0
+%!
+TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2
+index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll
+exec 0 exch 5 -1 roll VResolution Resolution div mul neg 0 0]FontType 0
+ne{/Metrics exch def dict begin Encoding{exch dup type/integertype ne{
+pop pop 1 sub dup 0 le{pop}{[}ifelse}{FontMatrix 0 get div Metrics 0 get
+div def}ifelse}forall Metrics/Metrics currentdict end def}{{1 index type
+/nametype eq{exit}if exch pop}loop}ifelse[2 index currentdict end
+definefont 3 -1 roll makefont/setfont cvx]cvx def}def/ObliqueSlant{dup
+sin S cos div neg}B/SlantFont{4 index mul add}def/ExtendFont{3 -1 roll
+mul exch}def/ReEncodeFont{CharStrings rcheck{/Encoding false def dup[
+exch{dup CharStrings exch known not{pop/.notdef/Encoding true def}if}
+forall Encoding{]exch pop}{cleartomark}ifelse}if/Encoding exch def}def
+end
+
+%%EndProcSet
+%%BeginProcSet: special.pro 0 0
+%!
+TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N
+/vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N
+/rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N
+/@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{
+/hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho
+X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B
+/@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{
+/urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known
+{userdict/md get type/dicttype eq{userdict begin md length 10 add md
+maxlength ge{/md md dup length 20 add dict copy def}if end md begin
+/letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S
+atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{
+itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll
+transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll
+curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf
+pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}
+if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1
+-1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3
+get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip
+yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub
+neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{
+noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop
+90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get
+neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr
+1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr
+2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4
+-1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S
+TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{
+Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale
+}if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState
+save N userdict maxlength dict begin/magscale true def normalscale
+currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts
+/psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x
+psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx
+psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub
+TR/showpage{}N/erasepage{}N/setpagedevice{pop}N/copypage{}N/p 3 def
+@MacSetUp}N/doclip{psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll
+newpath 4 copy 4 2 roll moveto 6 -1 roll S lineto S lineto S lineto
+closepath clip newpath moveto}N/endTexFig{end psf$SavedState restore}N
+/@beginspecial{SDict begin/SpecialSave save N gsave normalscale
+currentpoint TR @SpecialDefaults count/ocount X/dcount countdictstack N}
+N/@setspecial{CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs
+neg 0 rlineto closepath clip}if ho vo TR hsc vsc scale ang rotate
+rwiSeen{rwi urx llx sub div rhiSeen{rhi ury lly sub div}{dup}ifelse
+scale llx neg lly neg TR}{rhiSeen{rhi ury lly sub div dup scale llx neg
+lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly moveto urx lly lineto urx
+ury lineto llx ury lineto closepath clip}if/showpage{}N/erasepage{}N
+/setpagedevice{pop}N/copypage{}N newpath}N/@endspecial{count ocount sub{
+pop}repeat countdictstack dcount sub{end}repeat grestore SpecialSave
+restore end}N/@defspecial{SDict begin}N/@fedspecial{end}B/li{lineto}B
+/rl{rlineto}B/rc{rcurveto}B/np{/SaveX currentpoint/SaveY X N 1
+setlinecap newpath}N/st{stroke SaveX SaveY moveto}N/fil{fill SaveX SaveY
+moveto}N/ellipse{/endangle X/startangle X/yrad X/xrad X/savematrix
+matrix currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc
+savematrix setmatrix}N end
+
+%%EndProcSet
+%%BeginFont: CMR10
+%!PS-AdobeFont-1.1: CMR10 1.00B
+%%CreationDate: 1992 Feb 19 19:54:52
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.00B) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMR10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle 0 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMR10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 49 /one put
+readonly def
+/FontBBox{-251 -250 1009 969}readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5CF7158F1163BC1F3352E22A1452E73FECA8A4
+87100FB1FFC4C8AF409B2067537220E605DA0852CA49839E1386AF9D7A1A455F
+D1F017CE45884D76EF2CB9BC5821FD25365DDEA6E45F332B5F68A44AD8A530F0
+92A36FAC8D27F9087AFEEA2096F839A2BC4B937F24E080EF7C0F9374A18D565C
+295A05210DB96A23175AC59A9BD0147A310EF49C551A417E0A22703F94FF7B75
+409A5D417DA6730A69E310FA6A4229FC7E4F620B0FC4C63C50E99E179EB51E4C
+4BC45217722F1E8E40F1E1428E792EAFE05C5A50D38C52114DFCD24D54027CBF
+2512DD116F0463DE4052A7AD53B641A27E81E481947884CE35661B49153FA19E
+0A2A860C7B61558671303DE6AE06A80E4E450E17067676E6BBB42A9A24ACBC3E
+B0CA7B7A3BFEA84FED39CCFB6D545BB2BCC49E5E16976407AB9D94556CD4F008
+24EF579B6800B6DC3AAF840B3FC6822872368E3B4274DD06CA36AF8F6346C11B
+43C772CC242F3B212C4BD7018D71A1A74C9A94ED0093A5FB6557F4E0751047AF
+D72098ECA301B8AE68110F983796E581F106144951DF5B750432A230FDA3B575
+5A38B5E7972AABC12306A01A99FCF8189D71B8DBF49550BAEA9CF1B97CBFC7CC
+96498ECC938B1A1710B670657DE923A659DB8757147B140A48067328E7E3F9C3
+7D1888B284904301450CE0BC15EEEA00E48CCD6388F3FC3C8578EF9A20A0E06E
+4F7ADDAF0E7D1E182D115BF1AD931977325AD391E72E2B13CC108E3726C11099
+E2000623188AAAC9F3E233EB253BDD8B0A4759A66A113E066238B0086AC1B634
+5ABFF90E4B5ED3FA69C22541981B2BFC9710AEF6B50A8BB53431C7B4D380D721
+639E005D6B4688EE16BFF48443E7C9E5FB5BC5883E271CB0342893C0BBC0A879
+B7220832FB50103F72F8B5D98CF223DB1D0EE09EE454D9496C392F12478835E1
+762DF62F2BCF601F3355828AB3963623C4B9BDBBC761B9DE9EDE67C74277FECB
+B3AAEE9240011A2BC34C4879B3673E7EEB374A3FB8ED01FB5FB85AFBC1F7299A
+8371255D51560E1946A50092C8E48F3BF180229FF21A1A79020E4BEB512EABF1
+02AA111461557961E3B891E4FC323C61D497CCCE9D2586EB93DE4D6FB682B960
+B36D5C4AB832F0F8D8CFBA86753A9A919B814D506A80B2A8399C9396D9C94C4B
+74FD9890373C583561A49FBED4F520EFC18DBA2E1BFE377A7B11B3684EFA80F5
+E9122A94423BC3A5B27D8A4FC17EE6DD29
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+%%BeginFont: CMMI10
+%!PS-AdobeFont-1.1: CMMI10 1.100
+%%CreationDate: 1996 Jul 23 07:53:57
+% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
+11 dict begin
+/FontInfo 7 dict dup begin
+/version (1.100) readonly def
+/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) readonly def
+/FullName (CMMI10) readonly def
+/FamilyName (Computer Modern) readonly def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
+/isFixedPitch false def
+end readonly def
+/FontName /CMMI10 def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 65 /A put
+dup 66 /B put
+dup 67 /C put
+dup 68 /D put
+readonly def
+/FontBBox{-32 -250 1048 750}readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
+9E394A533A081C36D456A09920001A3D2199583EB9B84B4DEE08E3D12939E321
+990CD249827D9648574955F61BAAA11263A91B6C3D47A5190165B0C25ABF6D3E
+6EC187E4B05182126BB0D0323D943170B795255260F9FD25F2248D04F45DFBFB
+DEF7FF8B19BFEF637B210018AE02572B389B3F76282BEB29CC301905D388C721
+59616893E774413F48DE0B408BC66DCE3FE17CB9F84D205839D58014D6A88823
+D9320AE93AF96D97A02C4D5A2BB2B8C7925C4578003959C46E3CE1A2F0EAC4BF
+8B9B325E46435BDE60BC54D72BC8ACB5C0A34413AC87045DC7B84646A324B808
+6FD8E34217213E131C3B1510415CE45420688ED9C1D27890EC68BD7C1235FAF9
+1DAB3A369DD2FC3BE5CF9655C7B7EDA7361D7E05E5831B6B8E2EEC542A7B38EE
+03BE4BAC6079D038ACB3C7C916279764547C2D51976BABA94BA9866D79F13909
+95AA39B0F03103A07CBDF441B8C5669F729020AF284B7FF52A29C6255FCAACF1
+74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
+3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
+47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
+AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8
+42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8
+40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837
+B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53
+9560176671A33FC55340CD04C2DE46FD812FC2711A85D778F691ED261C6E4CC8
+83D1C2D972559E1FF9342B428DD3C5C2FB88B68D19E3784E9E517C0F8FCCD25C
+CB0ADAD7857DDF51CAEE898B5DBC00B9A7FD8A4BEDB26AAACCDA563B112F3E26
+50C1F6B1900BD478E0CBBEFFF13CC3D9B16F254D9EB2733B2B49D439DE6A54A8
+68DB85E0A7F7F007E39A39F929F747B013920F848917433987A6B0F823923AC2
+B22D97AA5D4378DCECF5601F6CE78B5E6867D17DCD42AB76DD58883F03C5D8B0
+B6DC4CD14BE55FB8CE16F6A3583FCE7A6B5705406EDD911C656C73E0116FA869
+6DD716DF9EB842D2C1870BBEC58AE344B8034C6F7DB10B2C1C9B20B842085408
+B0F14CEB23E547AEAA968F0104C96B9D96C922A0EE3635C998B75C64C45A6402
+3BAD86772B7DDDBB4A0D09037815FF3B905500DE32EFB97F7DEBF660DAF37A33
+4DB103A1124DA59B0267EFFDC6C9973747F95038DB72CE0AF4FFCCECEB20C71F
+2E03B82AC8034BB4DEC02FF448024362736B322A57D0626036FC820288AD9D54
+17E1B493512EDD3BAD2283D06F36365E02DFACA42B38C9BC783BB60777B1E4FC
+DE4E5AAB49E0370CCAF61C1378FE6D544F83BE6B054FE95E8BFA83FF9729C5E8
+CA3164CBF45BD6C2B9B28FA366336E5A1E284DE3EA7E18DF14C30F5E4C993AA6
+510174F9FC7943AF5B14997493AA46A7E32E85B05F50AACB93577255EC2D7D98
+644E90F6871A48DFFE92F79056DE4C257A4E0B33B61026F083AA239E1C0E7376
+8C53AC6EECCB11A752AA8451D714983A0810A64626440EFF140C7560809B063B
+8EDE3AB67214110CFD47EBE42950518F56D5B36F69CEFC2C37043D6D9822DCE1
+029423A1C873D5E04A9267A294AB230C0834076C5F9DEA602FF900CDE323F633
+5B8BD1D7F76D8D2CF9586CD073B9E11C04777860A7963629FAED4134B79593E0
+A0F71A5FD98BEDA1B539D496ECED78EE53FD80C713103C569CE94B76768D2A58
+C440C4843D8CDBFBD342C9976118E8EC642A0C9CFF52B558049FB5964580E6B0
+D9D8C34DD4429D5F40BC39F348F4AC56D8DBCBFBDCDD5345D5D747EAB8CE7D62
+001753FBAAA1EBFDA7B44DD4F37C564FB9D17A26EE442DAA42A5C2261CBDD33F
+0AC8064908E25A6D1E554DD1BD99D8243FE4E866EDBF81A782ABF55CBCBF3632
+2167CC4831F8AF19DDBF65F836C4DCC19779F145C14A1E55BAEBA0801F407595
+711AC192605805925F59ABC27FF0644EF979269096A62A01F35ECC1EF977FE68
+7701549F
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
+TeXDict begin 39139632 55387786 1000 600 600 (triangle.dvi)
+@start /Fa 206[42 49[{}1 83.022 /CMR10 rf /Fb 187[69
+59 63 62 65[{}4 83.022 /CMMI10 rf end
+%%EndProlog
+%%BeginSetup
+%%Feature: *Resolution 600dpi
+TeXDict begin
+%%PaperSize: A4
+ end
+%%EndSetup
+%%Page: 1 1
+TeXDict begin 1 0 bop 994 794 a
+ tx@Dict begin tx@NodeDict begin {-35.56592 -35.56592 } false /N@A
+10 {InitPnode } NewNode end end
+ 994 794 a @beginspecial
+@setspecial
+ tx@Dict begin STP newpath 0.8 SLW 0. setgray /DS 2.0 2. CLW mul add
+2 div def /PSTricksDotFont 0. [1.0 0.0 0.0 1.0 0.0 0.0] FontDot /Dot
+{ moveto gsave 1. 1. scale (b) show grestore } bind def tx@NodeDict
+begin tx@NodeDict /N@A known { /N@A load GetCenter } { 0 0 } ifelse
+end Dot end
+
+@endspecial 994 794 a
+ tx@Dict begin { tx@NodeDict begin tx@NodeDict /N@A known { 10.00002
+45. /N@A load 0 GetEdge 0.0 45. AddOffset /N@A load GetCenter 3 -1
+roll add 3 1 roll add exch } { CP } ifelse end } PutCoor PutBegin
+end
+ 994 794 a 994 794
+a
+ tx@Dict begin mark RAngle /a ED cleartomark a neg RotBegin end
+ 994 794 a 963 823 a Fb(A)994 794 y
+ tx@Dict begin RotEnd end
+ 994 794 a 994 794
+a
+ tx@Dict begin PutEnd end
+ 994 794 a 994 794 a
+ tx@Dict begin tx@NodeDict begin {-35.56592 35.56592 } false /N@B 10
+{InitPnode } NewNode end end
+ 994 794 a @beginspecial @setspecial
+ tx@Dict begin STP newpath 0.8 SLW 0. setgray /DS 2.0 2. CLW mul add
+2 div def /PSTricksDotFont 0. [1.0 0.0 0.0 1.0 0.0 0.0] FontDot /Dot
+{ moveto gsave 1. 1. scale (b) show grestore } bind def tx@NodeDict
+begin tx@NodeDict /N@B known { /N@B load GetCenter } { 0 0 } ifelse
+end Dot end
+
+
+@endspecial 994 794 a
+ tx@Dict begin { tx@NodeDict begin tx@NodeDict /N@B known { 10.00002
+45. /N@B load 0 GetEdge 0.0 45. AddOffset /N@B load GetCenter 3 -1
+roll add 3 1 roll add exch } { CP } ifelse end } PutCoor PutBegin
+end
+ 994 794 a 994 794 a
+ tx@Dict begin mark RAngle /a ED cleartomark a neg RotBegin end
+ 994 794 a
+960 823 a Fb(B)994 794 y
+ tx@Dict begin RotEnd end
+ 994 794 a 994 794 a
+ tx@Dict begin PutEnd end
+ 994 794
+a 994 794 a
+ tx@Dict begin tx@NodeDict begin {35.56592 35.56592 } false /N@C 10
+{InitPnode } NewNode end end
+ 994 794 a @beginspecial @setspecial
+ tx@Dict begin STP newpath 0.8 SLW 0. setgray /DS 2.0 2. CLW mul add
+2 div def /PSTricksDotFont 0. [1.0 0.0 0.0 1.0 0.0 0.0] FontDot /Dot
+{ moveto gsave 1. 1. scale (b) show grestore } bind def tx@NodeDict
+begin tx@NodeDict /N@C known { /N@C load GetCenter } { 0 0 } ifelse
+end Dot end
+
+@endspecial
+994 794 a
+ tx@Dict begin { tx@NodeDict begin tx@NodeDict /N@C known { 10.00002
+45. /N@C load 0 GetEdge 0.0 45. AddOffset /N@C load GetCenter 3 -1
+roll add 3 1 roll add exch } { CP } ifelse end } PutCoor PutBegin
+end
+ 994 794 a 994 794 a
+ tx@Dict begin mark RAngle /a ED cleartomark a neg RotBegin end
+ 994 794 a 961 823 a Fb(C)994
+794 y
+ tx@Dict begin RotEnd end
+ 994 794 a 994 794 a
+ tx@Dict begin PutEnd end
+ 994 794 a 994 794 a
+ tx@Dict begin tx@NodeDict begin {35.56592 -35.56592 } false /N@D 10
+{InitPnode } NewNode end end
+ 994 794
+a @beginspecial @setspecial
+ tx@Dict begin STP newpath 0.8 SLW 0. setgray /DS 2.0 2. CLW mul add
+2 div def /PSTricksDotFont 0. [1.0 0.0 0.0 1.0 0.0 0.0] FontDot /Dot
+{ moveto gsave 1. 1. scale (b) show grestore } bind def tx@NodeDict
+begin tx@NodeDict /N@D known { /N@D load GetCenter } { 0 0 } ifelse
+end Dot end
+
+@endspecial 994 794 a
+ tx@Dict begin { tx@NodeDict begin tx@NodeDict /N@D known { 10.00002
+45. /N@D load 0 GetEdge 0.0 45. AddOffset /N@D load GetCenter 3 -1
+roll add 3 1 roll add exch } { CP } ifelse end } PutCoor PutBegin
+end
+ 994
+794 a 994 794 a
+ tx@Dict begin mark RAngle /a ED cleartomark a neg RotBegin end
+ 994 794 a 958 823 a Fb(D)994 794 y
+ tx@Dict begin RotEnd end
+ 994
+794 a 994 794 a
+ tx@Dict begin PutEnd end
+ 994 794 a 994 794 a
+ tx@Dict begin gsave STV newpath 0.8 SLW 0. setgray /ArrowA { moveto
+} def /ArrowB { } def /NCLW CLW def tx@NodeDict begin 0.0 0.0 neg 0.0
+0.0 0 0 /N@A /N@B InitNC { NCLine } if end gsave 0.8 SLW 0. setgray
+0 setlinecap stroke grestore grestore end
+ 994 794 a 994 794
+a
+ tx@Dict begin gsave STV newpath 0.8 SLW 0. setgray /ArrowA { moveto
+} def /ArrowB { } def /NCLW CLW def tx@NodeDict begin 0.0 0.0 neg 0.0
+0.0 0 0 /N@B /N@C InitNC { NCLine } if end gsave 0.8 SLW 0. setgray
+0 setlinecap stroke grestore grestore end
+ 994 794 a 994 794 a
+ tx@Dict begin gsave STV newpath 0.8 SLW 0. setgray /ArrowA { moveto
+} def /ArrowB { } def /NCLW CLW def tx@NodeDict begin 0.0 0.0 neg 0.0
+0.0 0 0 /N@C /N@D InitNC { NCLine } if end gsave 0.8 SLW 0. setgray
+0 setlinecap stroke grestore grestore end
+ 994 794 a 994 794 a
+ tx@Dict begin gsave STV newpath 0.8 SLW 0. setgray /ArrowA { moveto
+} def /ArrowB { } def /NCLW CLW def tx@NodeDict begin 0.0 0.0 neg 0.0
+0.0 0 0 /N@D /N@A InitNC { NCLine } if end gsave 0.8 SLW 0. setgray
+0 setlinecap stroke grestore grestore end
+ 994 794 a 994
+794 a
+ tx@Dict begin { tx@NodeDict begin tx@NodeDict /N@B known { /N@B load
+GetCenter } { 0 0 } ifelse end } PutCoor PutBegin end
+ 994 794 a @beginspecial @setspecial
+ tx@Dict begin STP newpath 0.8 SLW 0. setgray [ tx@EcldDict begin
+/N@A GetNode exch Atan end .4 exch PtoC 28.45274 mul exch 28.45274
+mul exch tx@EcldDict begin /N@C GetNode exch Atan /N@A GetNode exch
+Atan end 2 copy sub abs 91 gt { 2 copy lt { exch 360 add exch } { 360
+add } ifelse } if add 2 div 2 sqrt .4 mul exch PtoC 28.45274 mul exch
+28.45274 mul exch tx@EcldDict begin /N@C GetNode exch Atan end .4 exch
+PtoC 28.45274 mul exch 28.45274 mul exch 0.0 0.0 /Lineto /lineto load
+def false Polygon gsave 0.8 SLW 0. setgray 0 setlinecap stroke grestore
+end
+
+@endspecial
+994 794 a
+ tx@Dict begin PutEnd end
+ 994 794 a 994 794 a
+ tx@Dict begin { tx@NodeDict begin tx@NodeDict /N@C known { /N@C load
+GetCenter } { 0 0 } ifelse end } PutCoor PutBegin end
+ 994 794 a @beginspecial
+@setspecial
+ tx@Dict begin STP newpath 0.8 SLW 0. setgray [ tx@EcldDict begin
+/N@B GetNode exch Atan end 1 exch PtoC 28.45274 mul exch 28.45274 mul
+exch tx@EcldDict begin /N@D GetNode exch Atan /N@B GetNode exch Atan
+end 2 copy sub abs 91 gt { 2 copy lt { exch 360 add exch } { 360 add
+} ifelse } if add 2 div 2 sqrt 1 mul exch PtoC 28.45274 mul exch 28.45274
+mul exch tx@EcldDict begin /N@D GetNode exch Atan end 1 exch PtoC 28.45274
+mul exch 28.45274 mul exch 0.0 0.0 /Lineto /lineto load def false
+Polygon gsave 0.8 SLW 0. setgray 0 setlinecap stroke grestore end
+
+@endspecial 994 794 a
+ tx@Dict begin PutEnd end
+ 994 794 a 994 794
+a
+ tx@Dict begin { tx@NodeDict begin tx@NodeDict /N@D known { /N@D load
+GetCenter } { 0 0 } ifelse end } PutCoor PutBegin end
+ 994 794 a 980 794 a
+ tx@Dict begin { tx@NodeDict begin tx@NodeDict /N@D known { /N@D load
+GetCenter } { 0 0 } ifelse end } PutCoor PutBegin end
+ 980 794 a @beginspecial @setspecial
+ tx@Dict begin STP newpath 0.8 SLW 0. setgray /ArrowA { moveto } def
+/ArrowB { } def 0.0 0.0 /y ED /x ED /r 11.38092 def /c 57.2957 r Div
+def /angleA tx@NodeDict begin tx@NodeDict /N@C known { /N@C load GetCenter
+} { 0 0 } ifelse end exch Atan 0.0 c mul 2 div add def /angleB tx@NodeDict
+begin tx@NodeDict /N@A known { /N@A load GetCenter } { 0 0 } ifelse
+end exch Atan 0.0 c mul 2 div sub def x y r angleA angleB arc gsave
+0.8 SLW 0. setgray 0 setlinecap stroke grestore end
+
+
+@endspecial 980 794 a
+ tx@Dict begin { tx@EcldDict begin /N@A GetNode exch Atan /N@C GetNode
+exch Atan end 2 copy lt { exch 360 sub exch } if add 2 div 0 add .4
+.5 mul exch PtoC 28.45274 mul exch 28.45274 mul exch } PutCoor PutBegin
+ end
+ 980 794 a 980 794 a
+ tx@Dict begin mark RAngle /a ED cleartomark a neg RotBegin end
+ 980 794 a
+980 794 a
+ tx@Dict begin CP CP translate 0.4 0.4 scale NET end
+ 980 794 a @beginspecial @setspecial
+ tx@Dict begin STP newpath 0.8 SLW 0. setgray 0.0 0.0 2.27626 SD
+end
+
+@endspecial
+980 794 a
+ tx@Dict begin CP CP translate 1 0.4 div 1 0.4 div scale NET end
+ 980 794 a 980 794 a
+ tx@Dict begin RotEnd end
+ 980 794 a 980 794 a
+ tx@Dict begin PutEnd end
+ 980
+794 a 980 794 a
+ tx@Dict begin PutEnd end
+ 980 794 a 994 794 a
+ tx@Dict begin PutEnd end
+ 994 794 a 994 794
+a
+ tx@Dict begin { tx@NodeDict begin tx@NodeDict /N@A known { /N@A load
+GetCenter } { 0 0 } ifelse end } PutCoor PutBegin end
+ 994 794 a 980 794 a
+ tx@Dict begin { tx@NodeDict begin tx@NodeDict /N@A known { /N@A load
+GetCenter } { 0 0 } ifelse end } PutCoor PutBegin end
+ 980 794 a @beginspecial @setspecial
+ tx@Dict begin STP newpath 0.8 SLW 0. setgray /ArrowA { moveto } def
+/ArrowB { } def 0.0 0.0 /y ED /x ED /r 11.38092 def /c 57.2957 r Div
+def /angleA tx@NodeDict begin tx@NodeDict /N@D known { /N@D load GetCenter
+} { 0 0 } ifelse end exch Atan 0.0 c mul 2 div add def /angleB tx@NodeDict
+begin tx@NodeDict /N@B known { /N@B load GetCenter } { 0 0 } ifelse
+end exch Atan 0.0 c mul 2 div sub def x y r angleA angleB arc gsave
+0.8 SLW 0. setgray 0 setlinecap stroke grestore end
+
+
+@endspecial 980 794 a
+ tx@Dict begin { tx@EcldDict begin /N@B GetNode exch Atan /N@D GetNode
+exch Atan end 2 copy lt { exch 360 sub exch } if add 2 div 0 add .4
+.5 mul exch PtoC 28.45274 mul exch 28.45274 mul exch } PutCoor PutBegin
+ end
+ 980 794 a 980 794 a
+ tx@Dict begin mark RAngle /a ED cleartomark a neg RotBegin end
+ 980 794 a
+980 794 a
+ tx@Dict begin CP CP translate 0.4 0.4 scale NET end
+ 980 794 a @beginspecial @setspecial
+ tx@Dict begin STP newpath 0.8 SLW 0. setgray 0.0 0.0 2.27626 SD
+end
+
+@endspecial
+980 794 a
+ tx@Dict begin CP CP translate 1 0.4 div 1 0.4 div scale NET end
+ 980 794 a 980 794 a
+ tx@Dict begin RotEnd end
+ 980 794 a 980 794 a
+ tx@Dict begin PutEnd end
+ 980
+794 a 980 794 a
+ tx@Dict begin PutEnd end
+ 980 794 a 994 794 a
+ tx@Dict begin PutEnd end
+ 994 794 a 1926 5255
+a Fa(1)p eop end
+%%Trailer
+
+userdict /end-hook known{end-hook}if
+%%EOF
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/triangle.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.tex
index 9c1f3b96111..9c1f3b96111 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/triangle.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/triangle_in.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle_in.tex
index 8ee76189615..8ee76189615 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/Exemples/triangle_in.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/Exemples/triangle_in.tex
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/euclide_english.tex b/Master/texmf-dist/doc/generic/pst-eucl/doc/euclide-english.tex
index 69c0f0fda8a..6280f9134f3 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/euclide_english.tex
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/euclide-english.tex
@@ -1,4 +1,4 @@
-\documentclass[12pt, draft]{report}
+\documentclass[12pt]{report}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{euclide}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -230,7 +230,7 @@ Several commands are predefined for marking the segment:
\begin{multicols}{3}
\psset{PointSymbol=none, PointName=none, unit=.8}
\newcommand{\Seg}[1]{%
- \com{#1} : \begin{pspicture}[.3](2,1)
+ \com{#1} : \begin{pspicture}[shift=.3](2,1)
\pstGeonode(0.3,.5){A}(1.7,.5){B}\pstSegmentMark[SegmentSymbol=#1]{A}{B}
\end{pspicture}}%
\begin{itemize}
@@ -259,7 +259,7 @@ next example.
The more classical figure, it has its own macro for a quick definition:
\defcom[Draws a triangle. \protect\ParamList{\param{PointName},
- \param{PointNameSep}, \param{PointSymbol}, \param{PointNameA},
+ \param{PointNameSep}, \param{PosAngle}, \param{PointSymbol}, \param{PointNameA},
\param{PosAngleA}, \param{PointSymbolA}, \param{PointNameB},
\param{PosAngleB}, \param{PointSymbolB}, \param{PointNameC},
\param{PosAngleC}, \param{PointSymbolC}}]
@@ -270,8 +270,9 @@ The more classical figure, it has its own macro for a quick definition:
In order to accurately put the name of the points, there are three parameters
\param{PosAngleA}, \param{PosAngleB} and \param{PosAngleC}, which are associated
respectively to the nodes \Argsans{$A$}, \Argsans{$B$} et \Argsans{$C$}. Obviously
-they have the same meaning as the parameter \param{PosAngle}. If no angle
-is specified for a given point, its name is put on the bissector line.
+they have the same meaning as the parameter \param{PosAngle}. If one or more of such
+parameters is omitted, the value of \param{PosAngle} is taken. If no angle
+is specified, points name are placed on the bissector line.
In the same way there are parameters for controlling the symbol used
for each points: \param{PointSymbolA}, \param{PointSymbolB} and
@@ -1082,7 +1083,7 @@ short description and its parameters which control it. It is obvious that some o
\PStricks parameters can be used, especially the ones which control the drawing of
the line (width, style, color).
-\input{euclide_english_macros.ind}
+\input{euclide_english.ind}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter{The parameters of \texttt{pst-eucl}}
diff --git a/Master/texmf-dist/tex/latex/pst-eucl/euclide.sty b/Master/texmf-dist/doc/generic/pst-eucl/doc/euclide.sty
index 818a1d9ba1b..0207bf2bdd0 100644
--- a/Master/texmf-dist/tex/latex/pst-eucl/euclide.sty
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/euclide.sty
@@ -1,7 +1,7 @@
%% Package style for the pst-eucl documentation package
\DeclareOption{french}{\gdef\euclide@language{frenchb}}%
-\def\fileversion{1.0}
-\def\filedate{2005/01/19}%
+\def\fileversion{1.37}
+\def\filedate{2011/05/05}%
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN
%% archives in directory macros/latex/base/lppl.txt.
@@ -17,16 +17,12 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%\PassOptionsToPackage{greek}{babel}%%\PassOptionsToPackage{LGR}{fontenc}
+\PassOptionsToPackage{greek}{babel}%%\PassOptionsToPackage{LGR}{fontenc}
\usepackage[T1]{fontenc}
-%\expandafter\ifx\csname PDF\endcsname\relax\else
-\usepackage{ae,aecompl,aeguill}
-%\usepackage{pslatex}%for generating a pdf-file with ps2pdf
-%\fi
\usepackage[\euclide@language]{babel}
\usepackage[latin1]{inputenc}
\usepackage[a4paper]{geometry}
-\usepackage[usenames]{pstcol}
+\usepackage[dvipsnames]{pstricks}
\usepackage{pst-eucl}
\usepackage{pst-plot}
\usepackage{ifthen}
@@ -42,6 +38,9 @@
\usepackage{textcomp}
%\usepackage{yhmath}
\usepackage{longtable}
+\expandafter\ifx\csname PDF\endcsname\relax\else
+\usepackage{pslatex}%for generating a pdf-file with ps2pdf
+\fi
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -105,11 +104,11 @@
{(\ifx\euclide@language\@english by default \fi\texttt{#1}\ifx\euclide@language\@frenchb\ par défaut\fi)\xspace}
\def\PStricks{\texttt{PSTricks}\xspace}
\def\PostScript{\textsf{PostScript}\xspace}
-\def\Version{Version 1{.}3{.}2\xspace}
-\def\Date{\ifx\euclide@language\@english march 28th \else 28 mars \fi 2005}
-\newcommand{\MonEuro}{\texteuro\xspace}
+\def\Version{Version 1.37\xspace}
+\def\Date{\ifx\euclide@language\@english may 5th \else 5 mai \fi 2011}
+\newcommand{\MonEuro}{\textgreek{\euro}\xspace}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\geometry{bottom=2.5cm, left=1cm, headheight=15.8pt, verbose}%, verbose}
+\geometry{bottom=2.5cm, left=1cm, headheight=15.5pt, verbose}%, verbose}
\psset{subgriddiv=0,griddots=5}
\setlength{\changebarsep}{10pt}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/doc/euclide_english.ist b/Master/texmf-dist/doc/generic/pst-eucl/doc/euclide_english.ist
new file mode 100644
index 00000000000..090c4fdfb28
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/euclide_english.ist
@@ -0,0 +1,10 @@
+% makeindex style file created by LaTeX for document "euclide_english" on 2005-10-9
+keyword "\\glossaryentry"
+preamble "\\begin{theglossary}"
+postamble "\n\\end{theglossary}\n"
+group_skip "\\gloskip "
+item_0 "\n\\gloitem "
+delim_0 "\n\\glodelim "
+page_compositor "-"
+delim_n "\\delimN "
+delim_r "\\delimR "
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/euclide_macros.ist b/Master/texmf-dist/doc/generic/pst-eucl/doc/euclide_macros.ist
index d5fb92a41c7..d5fb92a41c7 100644
--- a/Master/texmf-dist/doc/generic/pst-eucl/euclide_macros.ist
+++ b/Master/texmf-dist/doc/generic/pst-eucl/doc/euclide_macros.ist
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/euclide.pdf b/Master/texmf-dist/doc/generic/pst-eucl/euclide.pdf
deleted file mode 100644
index 51ee979796f..00000000000
--- a/Master/texmf-dist/doc/generic/pst-eucl/euclide.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/euclide.tex b/Master/texmf-dist/doc/generic/pst-eucl/euclide.tex
deleted file mode 100644
index 2fc2f5b38ec..00000000000
--- a/Master/texmf-dist/doc/generic/pst-eucl/euclide.tex
+++ /dev/null
@@ -1,1326 +0,0 @@
-%% This doc can be redistributed and/or modified under the terms
-%% of the LaTeX Project Public License Distributed from CTAN
-%% archives in directory macros/latex/base/lppl.txt.
-\documentclass[12pt, draft, dvips]{report}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\usepackage[french]{euclide}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\title{Extension \texttt{pst-eucl}\\
- Géométrie euclidienne avec \PStricks}
-\author{\Version\\Dominique \textsc{Rodriguez}\thanks{domino.rodriguez@laposte.net}}
-\date{\Date}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\begin{document}
-%%%%%%%%%%%%%%%%%%%%
-\maketitle
-%%%%%%%%%%%%%%%%%%%%
-\begin{abstract}
- L'extension \texttt{pst-eucl} permet de dessiner des figures
- géométriques en spécifiant des contraintes mathématiques. Il est
- ainsi possible de définir des points au moyen de transformations ou
- d'intersection. L'emploi des coordonnées est donc limité aux points
- de départ qui paramètrent en quelque sorte le dessin.
-
- \vfill
-
- \begin{center}\bfseries
- Remerciements
- \end{center}
-
- Je tiens à remercier tout particulièrement les personnes suivantes
- pour leur aide dans l'élaboration de ce paquetage :
-
- \begin{itemize}
- \item Denis \textsc{Girou} pour ses critiques pertinentes et ses
- encouragement lors de la découverte de l'embryon initial et pour
- sa relecture du présent manuel ;
- \item Michael \textsc{Vulis} pour sa rapidité à tester la doc
- avec V\TeX\ et il a ainsi permis de corriger un bug du code
- PostScript ;
- \item Manuel \textsc{Luque} et Olivier \textsc{Reboux} pour leurs
- remarques et leurs exemples.
- \item Alain \textsc{Delplanque} pour ses propositions de modifications
- sur le placement automatique des noms des points dans diverses fonctions et la
- possibilité de donner une suite de points dans \com{pstGeonode}.
- \end{itemize}
-\end{abstract}
-%%%%%%%%%%%%%%%%%%%%
-\renewcommand{\abstractname}{Avertissement}
-\begin{abstract}
- Ceci est la première version officiellement déposée sur le site d'archives
- \texttt{CTAN}.
-
- \vfill
-
- \begin{center}\bfseries
- LICENCE
- \end{center}
-
- Ce programme et sa documentation peuvent être distribués et/ou modifiés selon les
- termes de la «~\LaTeX{} Project Public License~» disponible sur le site d'archives
- \texttt{CTAN} au répertoire \texttt{macros/latex/base/lppl.txt}. Toutefois, vous
- pouvez m'envoyer un Email avec un petit commentaire. Ensuite vous devriez réfléchir
- à une donation\footnote{surtout si vous utilisez un système d'exploitation payant
- (\texttt{des fenêtres} ou \texttt{MacOS}) ! D'autre part, n'oubliez pas que \LaTeX{} est utilisable
- gratuitement et que de nombreux utilisateurs achètent plusieurs centaines d'euros
- des logiciels de bien moins bonne qualité.} :
-
-\begin{enumerate}
-\item directement à l'équipe \LaTeX3 ;
-\item et/ou à moi pour le support de l'extension\footnote{je me satisfais amplement
- de 1~\MonEuro, £1 ou \$1, mais j'accepte plus.}.
-\end{enumerate}
-
- Une donation en temps selon compétence est possible : correction de la documentation,
- test des fonctionnalités, proposition d'améliorations...
-\end{abstract}
-\twocoltoc{}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\chapter{Manuel de l'utilisateur}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section{Spécifications particulières}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Options de \PStricks}
-
-L'extension active le mode \com{SpecialCoor}. Ce mode permet d'étendre
-la manière dont les coordonnées sont spécifiées en plus des classiques
-coordonnées cartésiennes. D'autre part le mode de tracé est mis à
-\texttt{dimen=middle}, c'est-à-dire que le positionnement des tracés
-est fait par rapport à leur milieu. Pour ces deux modes, je vous
-renvoie au manuel de l'utilisateur.
-
-Enfin, il est supposé que le repère de travail est (ortho)normé.
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Conventions}
-
-Pour la rédaction de ce manuel, j'ai utilisé les conventions
-classiques de dénomination des points en France :
-
-\begin{itemize}
-\item $O$ est un centre (cercle, repère, symétrie, homothétie, rotation) ;
-\item $I$ est l'unité de l'axe des abscisses, ou un milieu ;
-\item $J$ est l'unité de l'axe des ordonnées ;
-\item $A$, $B$, $C$, $D$ sont des points ;
-\item $M$ est un point \emph{paramètre} ;
-\item $M'$ l'image de $M$ par une transformation ;
-\end{itemize}
-
-Enfin, bien que s'agissant de n\oe uds au sens de \PStricks,
-je les ai résolument confondus avec des points dans le texte.
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section{Objets de base}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Les points}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsubsection{Repère par défaut}
-
-\defcom[Création d'une liste de points dans le repère d'origine. \protect\ParamList{\param{PointName},
- \param{PointNameSep}, \param{PosAngle}, \param{PointSymbol}, \param{PtNameMath}}]
- {pstGeonode}{\OptArg{par}$(x_1,y_1)$\Arg{$A_1$}$(x_2,y_2)$\Arg{$A_2$}\ldots$(x_n,y_n)$\Arg{$A_n$}}
-
-Cette commande définit un ou plusieurs points géométriques associés avec un n\oe ud.
-Chaque point possède un nom de n\oe ud \Argsans{$A_i$}, qui définit par défaut
-l'étiquette placée sur le dessin. D'autre part, celle-ci est traitée par défaut en
-mode mathématique, le paramètre booléen \param{PtNameMath} \DefaultVal{true} permet
-de modifier ce traitement et de traiter l'étiquette en mode normal. Elle est
-positionnée à une distance de \cbstart\param{PointNameSep} \DefaultVal{1em}\cbend{}
-du n\oe ud, avec un angle de \param{PosAngle} \DefaultVal{0}. Il est également
-possible de proposer une étiquette différente du nom de n\oe ud avec le paramètre
-\param{PointName} \DefaultVal{default}, et une étiquette vide se spécifie en
-positionnant ce paramètre à \texttt{none} ; dans ce cas le point n'aura pas de nom
-sur le dessin.
-
-Le symbole du point est donné par le paramètre \param{PointSymbol} \DefaultVal{*}.
-Le symbole est celui utilisé pour la commande \com{psdot}. Il peut être également
-positionné à \texttt{none}, auquel cas le point \cbdelete n'est pas affichés sur la
-figure. Voici en rappel les valeurs utilisable pour le symbole :
-
-\begin{multicols}{3}
- \begin{itemize}\psset{dotscale=2}
- \item \param{*} : \psdots(.5ex,.5ex)
- \item \param{o} : \psdots[dotstyle=o](.5ex,.5ex)
- \item \param{+} : \psdots[dotstyle=+](.5ex,.5ex)
- \item \param{x} : \psdots[dotstyle=x](.5ex,.5ex)
- \item \param{asterisk} : \psdots[dotstyle=asterisk](.5ex,.5ex)
- \item \param{oplus} : \psdots[dotstyle=oplus](.5ex,.5ex)
- \item \param{otimes} : \psdots[dotstyle=otimes](.5ex,.5ex)
- \item \param{triangle} : \psdots[dotstyle=triangle](.5ex,.5ex)
- \item \param{triangle*} : \psdots[dotstyle=triangle*](.5ex,.5ex)
- \item \param{square} : \psdots[dotstyle=square](.5ex,.5ex)
- \item \param{square*} : \psdots[dotstyle=square*](.5ex,.5ex)
- \item \param{diamond} : \psdots[dotstyle=diamond](.5ex,.5ex)
- \item \param{diamond*} : \psdots[dotstyle=diamond*](.5ex,.5ex)
- \item \param{pentagon} : \psdots[dotstyle=pentagon](.5ex,.5ex)
- \item \param{pentagon*} : \psdots[dotstyle=pentagon*](.5ex,.5ex)
- \item \param{|} : \psdots[dotstyle=|](.5ex,.5ex)
- \end{itemize}
-\end{multicols}
-
-\cbstart D'autre part, ces symboles sont paramétrables avec des paramètres de
-\PStricks dont entre autre :
-
-\begin{itemize}
-\item son échelle avec le paramètre \param{dotscale}, la valeur de celui-ci est soit
- deux nombres différenciant ainsi le facteur d'échelle horizontale et verticale, ou
- soit un seul qui est la valeur identique pour les deux ;
-\item son angle de rotation avec le paramètre \param{dotangle}.
-\end{itemize}
-
-N'hésitez pas à consulter la documentation de \PStricks pour de plus amples détails.\cbend
-
-Les paramètres se spécifient explicitement dans la partie \Argsans{par}. Les
-paramètres \param{PosAngle}, \param{PointSymbol}, \param{PointName} et
-\param{PointNameSep} peuvent recevoir :
-
-\begin{itemize}
-\item soit une valeur unique, commune à tous les points ;
-\item soit une liste de valeurs délimitée par des accolades \texttt{\{ ... \}} et
- séparées par des virgules \textit{sans blancs}, permettant alors de différencier la
- valeur pour chaque point.
-\end{itemize}
-
-Dans le cas ou une liste est spécifiée, elle peut comporter moins de valeurs que de
-points, dans ce cas la dernière valeur de la liste sera utilisée pour les points
-suivants.
-
-\cbstart Enfin, le paramètre \param{CurveType} \DefaultVal{none} permet de relier les
-points au moyen d'une ligne :
-
-\begin{itemize}
-\item brisée ouverte \verb$polyline$ ;
-\item brisée fermée \verb$polygon$ ;
-\item courbe ouverte \verb$curve$.
-\end{itemize}\cbend
-
-% EXEMPLE GEONODE
-\tabex{geonode}
-
-Il est évident que les n\oe uds ainsi définis sont utilisables par
-toutes les commandes utilisant les n\oe uds de \PStricks. Ainsi, il est
-possible de les référencer \rnode{ici}{d'ici} :
-{\small\verb$\nccurve{->}{ici}{B_1}$}.
-\nccurve[arrowscale=2, linestyle=dotted]{->}{ici}{B_1}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsubsection{Repère personnalisé}
-
-\defcom[Création d'une liste de points dans le repère $(O;I;J)$.
- \protect\ParamList{\param{PointName}, \param{PointNameSep}, \param{PosAngle},
- \param{PointSymbol}, \param{PtNameMath}}]
- {pstOIJGeonode}
- {\OptArg{par}$(x_1,y_1)$\Arg{$A_1$}\Arg{$O$}\Arg{$I$}\Arg{$J$}$(x_2,y_2)$\Arg{$A_2$}\ldots$(x_n,y_n)$\Arg{$A_n$}}
-
-Cette commande permet de placer des points dans un repère quelconque non forcément
-normé ni orthogonal, défini par le triplet $(O;I;J)$. On retrouve des traitements
-identiques à la commande précédente pour l'utilisation des paramètres.
-
-%% EXEMPLE
-\tabex{oij}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Marquage des segments}
-
-Il est possible de tracer des segments en utilisant la commande
-\texttt{\bs ncline}. Pour en plus marquer les segments afin d'associer
-ceux ayant la même longueur, il existe la commande :
-
-\defcom[Permet de marquer le segment \Segment{AB} en son milieu avec la marque définie par
- \protect\param{SegmentSymbol}. \protect\ParamList{\param{SegmentSymbol}}]
- {pstSegmentMark}{\OptArg{par}\Arg{$A$}\Arg{$B$}}
-
-Le symbole placé sur le segment est donné par le paramètre
-\param{SegmentSymbol}. Il prend comme valeur une commande utilisable en
-mode mathématique. Par défaut, sa valeur est \texttt{pstslashh},
-et produit deux barres sur le segment. Le segment est également tracé.
-
-Il existe plusieurs commandes prédéfinies dans ce paquetage pour marquer les
-segments :
-
-\begin{multicols}{3}
- \psset{PointSymbol=none, PointName=none, unit=.8}
- \newcommand{\Seg}[1]{%
- \com{#1} : \begin{pspicture}[.3](2,1)
- \pstGeonode(0.3,.5){A}(1.7,.5){B}\pstSegmentMark[SegmentSymbol=#1]{A}{B}
- \end{pspicture}}%
- \begin{itemize}
- \item \Seg{pstslash} ;
- \item \Seg{pstslashh} ;
- \item \Seg{pstslashhh} ;
- \item \Seg{MarkHash} ;
- \item \Seg{MarkHashh} ;
- \item \Seg{MarkHashhh} ;
- \item \Seg{MarkCros} ;
- \item \Seg{MarkCross} ;
- \end{itemize}
-\end{multicols}
-
-Les trois commandes de la famille \texttt{MarkHash} produise une barre dont
-l'inclinaison est contrôlée par le paramètre \param{MarkAngle}
-\DefaultVal{45}. D'autre part, leur taille et leur couleur dépendent de l'épaisseur
-et de la couleur du trait au moment du tracé, comme le montre l'exemple suivant.
-
-%% EXEMPLE
-\tabex{segmentmark}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Triangles}
-
-Figures étudiées par excellence, elles possèdent leur macro pour les tracer
-rapidement :
-
-\defcom[Définit et trace un triangle. \protect\ParamList{\param{PointName},
- \param{PointNameSep}, \param{PointSymbol}, \param{PointNameA},
- \param{PosAngleA}, \param{PointSymbolA}, \param{PointNameB},
- \param{PosAngleB}, \param{PointSymbolB}, \param{PointNameC},
- \param{PosAngleC}, \param{PointSymbolC}}]
- {pstTriangle}{\OptArg{par}$(x_A,y_A)$\Arg{$A$}$(x_B,y_B)$\Arg{$B$}$(x_C,y_C)$\Arg{$C$}}
-
-Afin de pouvoir placer avec précision les noms des points, il existe trois paramètres
-\param{PosAngleA}, \param{PosAngleB} et \param{PosAngleC}, qui s'associent
-respectivement aux n\oe uds \Argsans{$A$}, \Argsans{$B$} et \Argsans{$C$}. Ils ont le
-même rôle que le paramètre \param{PosAngle} vu précédemment.
-%Si un ou plusieurs de ces paramètres ne sont pas spécifiés la valeur de \param{PosAngle} est prise.
-Toutefois, si pour un point donné, aucun angle n'est spécifié, son nom va se
-positionner sur la bissectrice du sommet.
-
-Il existe également des paramètres pour contrôler le symbole utilisé
-pour représenter les points : \param{PointSymbolA},
-\param{PointSymbolB} et \param{PointSymbolC}, et des paramètres pour
-le nom de chacun des points : \param{PointNameA}, \param{PointNameB}
-et \param{PointNameC}. Ces deux ensembles de paramètres sont liés à
-\param{PointSymbol} et \param{PointName}. La gestion de la valeur par
-défaut suit les mêmes règles que celles vues précédemment.
-
-\tabex{triangle}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Angles}
-
-Chaque angle est déterminé par trois points. Le sommet de l'angle est
-le second. L'ordre a de l'importance en sachant que le sens direct ou
-trigonométrique est le sens inverse des aiguilles d'une
-montre. Tout d'abord, il est possible de marquer un angle droit \cbdelete :
-
-\defcom[Marque l'angle droit \protect\Angle{ABC} spécifié dans le sens
- trigonométrique. \protect\ParamList{\param{RightAngleType}, \param{RightAngleSize},
- \param{RightAngleSize}}]{pstRightAngle}%
- {\OptArg{par}\Arg{$A$}\Arg{$B$}\Arg{$C$}}
-
-\cbstart Le symbole utilisé est contrôlé par le paramètre \param{RightAngleType}
-\DefaultVal{default}. Ses valeurs possibles sont :
-
-\begin{itemize}
-\item \verb$default$ : symbole standard ;
-\item \verb$german$ : symbole allemand (proposé par U. \textsc{Dirr}) ;
-\item \verb$suisseromand$ : symbole suisse romand (proposé par P. \textsc{Schnewlin}).
-\end{itemize}\cbend
-
-L'autre paramètre auquel est sensible cette commande, hormis bien
-entendu ceux de contrôle du trait, est \param{RightAngleSize} qui
-permet de contrôler la longueur du carré utilisé \DefaultVal{0.28~unit}.
-Le symbole est placé sur l'angle de sommet \Argsans{$B$}.
-
-Pour les autres angles, il y a la commande :
-
-\defcom[Marque l'angle \protect\Angle{ABC} spécifié dans le sens trigonométrique
- \protect\ParamList{\param{MarkAngleRadius}, \param{LabelAngleOffset},
- \param{Mark}}]
- {pstMarkAngle}%
- {\OptArg{par}\Arg{$A$}\Arg{$B$}\Arg{$C$}\Arg{label}}
-
-L'étiquette définie par le paramètre \param{label} peut être tout texte \TeX. Elle
-est placée à \param{LabelSep} \DefaultVal{1~unit} du point dans la direction
-angulaire de la bissectrice intérieure modifiée par \param{LabelAngleOffset}
-\DefaultVal{0} et positionnée par rapport à \param{LabelRefPt} \DefaultVal{c}.
-D'autre part l'arc de cercle utilisé pour le marquage a pour rayon
-\param{MarkAngleRadius} \DefaultVal{.4~unit} et il est possible d'y adjoindre une
-flèche en début ou fin d'arc en utilisant le paramètre \param{arrows}.
-Enfin, on peut marquer l'angle avec un marqueur produit par une commande \TeX{}
-donnée en argument du paramètre \param{Mark}.
-
-\tabex%
- [@{}m{.25\linewidth}@{\hspace{.013\linewidth}}>{\small}m{.727\linewidth}@{}]%
- {angle}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Droites, demi-droites et segments}
-
-Rien de plus utile qu'une droite !
-
-\defcom[Trace la droite $(AB)$.]
- {pstLineAB}{\OptArg{par}\Arg{$A$}\Arg{$B$}}
-
-Afin de contrôler sa longueur\footnote{Ce qui est le comble pour une
- droite !}, les deux paramètres \param{nodesepA} et
-\param{nodesepB} indiquent l'abscisse des extrémités de la droite. Une
-abscisse négative spécifie un dépassement au-delà des points, tandis
-qu'une abscisse positive indique le contraire. Si les deux valeurs
-sont identiques, on peut utiliser alors le paramètre
-\param{nodesep}. La valeur par défaut de ces paramètres est nulle.
-
-\tabex{droite}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Cercles}
-
-Un cercle peut être défini soit par son centre et un point de sa
-circonférence, soit par deux points diamétralement opposés. Il existe
-donc deux fonctions :
-
-\renewcommand{\ComUnDescr}{Construit le cercle de centre $O$ passant par $A$. \protect\ParamList{\param{Radius},
- \param{Diameter}}.}
-\renewcommand{\ComDeuxDescr}{Construit le cercle de diamètre $AB$. \protect\ParamList{\param{Radius},
- \param{Diameter}}.}
-\defcomdeux{pstCircleOA}{\OptArg{par}\Arg{$O$}\Arg{$A$}}%
- {pstCircleAB}{\OptArg{par}\Arg{$A$}\Arg{$B$}}
-
-Pour la première fonction, il est également possible d'omettre le
-second point, et de spécifier un rayon ou un diamètre avec les
-paramètres \param{Radius} et \param{Diameter} au moyen des deux fonctions
-suivantes :
-
-\renewcommand{\ComUnDescr}{Permet de spécifier la distance $AB$ pour les
- paramètres \protect\param{Radius} et \protect\param{Diameter}. \protect\ParamList{\param{DistCoef}}.}
-\renewcommand{\ComDeuxDescr}{Permet d'utiliser une valeur numérique pour les
- paramètres \protect\param{Radius} et \protect\param{Diameter}. \protect\ParamList{\param{DistCoef}}.}
-\defcomdeux{pstDistAB}{\Arg{$A$}\Arg{$B$}}%
- {pstDistVal}{\Arg{x}}
-
-La première fonction permet de spécifier une distance entre deux points et la seconde
-directement une valeur numérique qui peut être un calcul en code \PostScript. Cette
-dernière distance est spécifiée en multiple de l'unité \com{unit} et elle n'est pas
-une distance. Ces distances peuvent être modifiées par un coefficient multiplicatif
-spécifié préalablement par le paramètre \param{DistCoef}. Ce paramètre peut être un
-calcul en code \PostScript.
-
-\vspace{1.1\baselineskip}
-\begin{minipage}[m]{.4\linewidth}
- Avec cette extension, il devient possible de tracer :
-
- \begin{itemize}
- \item {\color{red} le cercle de centre $A$ passant par $B$ ;}
- \item {\color{green} le cercle de centre $A$ de rayon les deux tiers de $AC$ ;}
- \item {\color{blue} le cercle de centre $A$ de rayon $BC$ ;}
- \item {\color{Sepia} le cercle de centre $B$ de rayon $AC$ ;}
- \item {\color{Aquamarine} le cercle de centre $B$ de diamètre $AC$ ;}
- \item {\color{RoyalBlue} le cercle de diamètre $BC$ ;}
- \end{itemize}
-\end{minipage}
-\hfill%
-\input{Exemples/cercle}
-
-\smallverbatiminput{Exemples/cercle_in}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Arcs de cercles}
-
-\renewcommand{\ComUnDescr}{Trace l'arc de cercle de centre $O$, de rayon $OA$,
- délimité par l'angle $\protect\Angle{AOB}$ dans le sens trigonométrique.}
-\renewcommand{\ComDeuxDescr}{Trace l'arc de cercle de centre $O$, de rayon $OA$,
- délimité par l'angle $\protect\Angle{AOB}$ dans le sens trigonométrique inverse.}
-\defcomdeux{pstArcOAB}{\OptArg{par}\Arg{$O$}\Arg{$A$}\Arg{$B$}}%
- {pstArcnOAB}{\OptArg{par}\Arg{$O$}\Arg{$A$}\Arg{$B$}}
-
-Ces deux fonctions tracent des arcs de cercle, le centre étant donné par $O$, le
-rayon par $OA$, l'angle de départ par $A$ et celui d'arrivée par $B$. Enfin la
-première trace l'arc dans le sens direct et la seconde dans le sens indirect. Il
-n'est pas nécessaire que les deux points soient à égales distances de $O$.
-
-\tabex{arc}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Abscisse curviligne}
-
-Un point peut être positionné sur un cercle au moyen d'une abscisse curviligne.
-
-\defcom[Place un point sur un cercle au moyen de son abscisse curviligne.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath}, \param{CurvAbsNeg}}]
- {pstCurvAbsNode}{\OptArg{par}\Arg{$O$}\Arg{$A$}\Arg{$B$}\Arg{Abs}}
-
-Le point \Argsans{$B$} est placé sur le cercle de centre \Argsans{$O$} passant par
-\Argsans{$A$}, avec l'abscisse curviligne \Argsans{Abs}. L'origine est en
-\Argsans{$A$}, et le sens est par défaut le sens trigonométrique (inverse des
-aiguilles d'une montre). Le paramètre \param{CurvAbsNeg} \DefaultVal{false} permet de
-modifier le sens de parcours du cercle.
-
- Si le paramètre \param{PosAngle} n'est pas spécifié, l'étiquette associée au
-point va se placer automatiquement de manière à être aligné avec le centre du cercle
-et le point.
-
-\tabex{abscur}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Courbe générique}
-
-Il est tout à fait possible de générer des points au moyen d'une boucle et de leur
-donner à chacun un nom générique composé d'un radical et d'un nombre. La commande
-suivante permet de relier ces points au moyen d'une courbe interpolée.
-
-\defcom[Trace une courbe interpolée au moyen d'une famille de points ayant une
- convention de dénomination utilisant un radical et un numéro.
- \protect\ParamList{\param{GenCurvFirst}, \param{GenCurvInc},
- \param{GenCurvLast}}]
- {pstGenericCurve}{\OptArg{par}\Arg{Radical}\Arg{$n_1$}\Arg{$n_2$}}
-
-La courbe est tracée sur les points dont le nom comporte le radical
-\Argsans{Radical}, et comme suffixe un nombre allant de \Argsans{$n_1$} à
-\Argsans{$n_2$}. Pour gérer les effets de bords, les paramètres \param{GenCurvFirst}
-et \param{GenCurvLast} permettent de désigner explicitement le premier et le dernier
-point. Le paramètre \param{GenCurvInc} permet de spécifier l'incrément de boucle pour
-passer d'un point à un autre \DefaultVal{1}.
-
-\tabex{gencur}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section{Transformations}
-
-Les transformations du plan permettent de coder facilement des propriétés
-géométriques. Il est donc possible de construire les images de points par toutes les
-transformations classiques du plan. \cbstart Toutes ces commandes partagent le même
-schéma syntaxique et deux paramètres.
-
-La syntaxe commune place en fin de description deux listes de points, dont la seconde
-est optionnelle et de cardinal plus faible ou égal. Ces deux listes contiennent les
-points antécédents et les points images. Dans le cas ou les images sont absentes dans
-leur totalité ou pour une partie (liste moins longue), le nom de l'image sera
-automatiquement calqué sur l'antécédent auquel sera adjoint un \verb$'$.
-
-Le premier paramètre commun est \param{CodeFig}. Il permet de faire apparaître les propriétés
-caractéristiques liées à la transformation et à la construction de l'image. Par
-défaut, ce paramètre a pour valeur \param{false}, il doit être mis à \param{true}
-pour activer ce tracé optionnel. Ce tracé se fait en utilisant le style
-\param{CodeFigStyle} \DefaultVal{dashed} et suivant la couleur \param{CodeFigColor}
-\DefaultVal{cyan}.
-
-Le second paramètre est \param{CurveType} qui permet de faire apparaître une courbe
-passant par les images, et donc de pouvoir rapidement tracer le transformé d'une
-figure.\cbend
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Symétrie centrale}
-
-\defcom[Construit le symétrique $M'_i$ de chacun des $M_i$ par rapport à $O$.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath},
- \param{CodeFig}, \param{CodeFigColor}, \param{CodeFigStyle}}]{pstSymO}%
- {\OptArg{par}\Arg{$O$}\Arg{$M_1, M_2, \cdots, M_n$}\OptArg{$M'_1, M'_2, \cdots, M'_p$}}
-
-Construit le point symétrique par rapport au point $O$. Les
-paramètres classiques de la création de point sont utilisables comme
-dans toutes les fonctions suivantes.
-
-Elle peut servir à la construction d'un parallélogramme de centre
-connu.
-
-\tabex{symcentrale}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Symétrie orthogonale}
-
-\defcom[Construit le symétrique $M'_i$ de chacun des $M_i$ par rapport à la droite $(AB)$.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath},
- \param{CodeFig}, \param{CodeFigColor}, \param{CodeFigStyle}}]{pstOrtSym}%
- {\OptArg{par}\Arg{$A$}\Arg{$B$}\Arg{$M_1, M_2, \cdots, M_n$}\OptArg{$M'_1, M'_2, \cdots, M'_p$}}
-
-Construit le point symétrique $M'_i$ de chacun des $M_i$ par rapport à la droite $(AB)$.
-
-\tabex{symorthogonale}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Rotation}
-
-\defcom[Construit l'image $M'_i$ de chacun des $M_i$ par rotation d'angle \protect\param{RotAngle}
- autour de $O$ dans le sens trigonométrique.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath}, \param{RotAngle}}]{pstRotation}%
- {\OptArg{par}\Arg{$O$}\Arg{$M_1, M_2, \cdots, M_n$}\OptArg{$M'_1, M'_2, \cdots, M'_p$}}
-
-Construit l'image d'un point par rotation. L'angle de rotation est
-donné par le paramètre \param{RotAng|e} \DefaultVal{60}. Celui-ci
-peut-être un angle orienté défini par trois points. Il faut alors
-utiliser la fonction :
-
-\defcom[Permet d'utiliser la mesure te \protect\Angle{AOB} (orienté) pour
- le paramètre \protect\param{RotAngle}. \protect\ParamList{\param{AngleCoef}}]
- {pstAngleAOB}{\Arg{$A$}\Arg{$O$}\Arg{$B$}}
-
-Pensez à l'utiliser pour construire un carré ou un triangle équilatéral.\cbstart Le
-paramètre booléen \param{CodeFig} permet de placer un arc avec une flèche (en bout)
-entre le point et son image, et si le paramètre \param{TransformLabel} \DefaultVal{none}
-contient un texte il est placé sur l'angle correspondant en mode mathématique.
-
-\tabex{rotation}\cbend
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Translation}
-
-\defcom[Construit l'image $M'_i$ de chacun des $M_i$ par la translation de vecteur \protect\Vecteur{AB}.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath}, \param{DistCoef}}]
- {pstTranslation}%
- {\OptArg{par}\Arg{$A$}\Arg{$B$}\Arg{$M_1, M_2, \cdots, M_n$}\OptArg{$M'_1, M'_2, \cdots, M'_p$}}
-
-Construit le translaté de vecteur \Vecteur{AB} du point
-\Argsans{$M$}. À utiliser pour construire la parallèle passant
-par un point.
-
-\tabex{translation}
-
-Il est également possible d'utiliser le paramètre \param{DistCoef} pour modifier le
-vecteur de translation avec un coefficient multiplicatif. \cbstart Le paramètre
-booléen \param{CodeFig} permet de placer le vecteur de translation entre le point et
-son image avec au milieu un texte qui par défaut est les deux points ou le contenu du
-paramètre \param{TransformLabel} \DefaultVal{none}.\cbend
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Homothétie}
-
-\defcom[Construit l'image $M'_i$ de chacun des $M_i$ par l'homothétie de centre $O$ et de rapport
- \protect\param{HomCoef}.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath}, \param{HomCoef}}]
- {pstHomO}%
- {\OptArg{par}\Arg{$O$}\Arg{$M_1, M_2, \cdots, M_n$}\OptArg{$M'_1, M'_2, \cdots, M'_p$}}
-
-Construit l'image d'un point par homothétie. Le coefficient se spécifie avec le
-paramètre \param{HomCoef}. Incontournable pour les situations de \textsc{Thalès}.
-
-\tabex{homothetie}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Projection orthogonale}
-
-\defcom[Construit l'image $M'_i$ de chacun des $M_i$ par projection orthogonale sur $(AB)$.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath},
- \param{CodeFig}, \param{CodeFigColor}, \param{CodeFigStyle}}]{pstProjection}%
- {\OptArg{par}\Arg{$A$}\Arg{$B$}\Arg{$M_1, M_2, \cdots, M_n$}\OptArg{$M'_1, M'_2, \cdots, M'_p$}}
-
-Projette orthogonalement les point $M_i$ sur la droite $(AB)$. Très important pour
-tracer les hauteurs d'un triangle. Le nom est aligné avec le
-point et son projeté comme le montre l'exemple.
-
-\tabex{projection}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section{Objets particuliers}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Milieu}
-
-\defcom[Construit le milieu $I$ du segment \Segment{AB}.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath}, \param{SegmentSymbol},
- \param{CodeFig}, \param{CodeFigColor}, \param{CodeFigStyle}}]{pstMiddleAB}%
- {\OptArg{par}\Arg{$A$}\Arg{$B$}\Arg{$I$}}
-
-Construit le milieu $I$ du segment $[AB]$. Par défaut, le nom du point est
-positionné automatiquement sous (ou sur) le segment.
-
-\tabex{milieu}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-  \subsection{Centre de gravité d'un triangle}
-\defcom[Construit le centre de gravité $G$ du triangle $ABC$.
- \protect\ParamList{\param{PointName}, \param{PointNameSep}, \param{PosAngle},
- \param{PointSymbol}, \param{PtNameMath}}]{pstCGravABC}%
- {\OptArg{par}\Arg{$A$}\Arg{$B$}\Arg{$C$}\Arg{$G$}}
-
-Construit le centre de gravité d'un triangle.
-
-\tabex{grav}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Cercle circonscrit d'un triangle et son centre}
-
-\defcom[Construit le centre $O$ äu cercle ciconscrit du triangle $ABC$.
- \protect\ParamList{\param{PointName}, \param{PointNameSep}, \param{PosAngle},
- \param{PointSymbol}, \param{PtNameMath}, \param{DrawCirABC}, \param{CodeFig},
- \param{CodeFigColor}, \param{CodeFigStyle}, \param{SegmentSymbolA},
- \param{SegmentSymbolB}, \param{SegmentSymbolC}}]
- {pstCircleABC}{\OptArg{par}\Arg{$A$}\Arg{$B$}\Arg{$C$}\Arg{$O$}}
-
-Cette commande permet de tracer le cercle passant par trois points et de positionner
-le centre. Le tracé du cercle est contrôlé par le paramètre booléen
-\param{DrawCirABC} \DefaultVal{true}.\cbstart D'autre part, les traits de
-constructions peuvent être apparent (médiatrices) avec le paramètre \param{CodeFig}.
-Les milieux sont aussi marqué sur chacun des segments avec trois marques différentes
-donnés par les paramètres \param{SegmentSymbolA}, \param{SegmentSymbolB} et
-\param{SegmentSymbolC}.\cbend La création du point est sensible à tous les paramètres
-classiques déjà vus.
-
-\tabex%
- [@{}m{.35\linewidth}@{\hspace{.013\linewidth}}>{\small}m{.627\linewidth}@{}]%
- {ccirc}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Médiatrice d'un segment}
-
-\defcom[Construit la médiatrice du segment \Segment{AB}, son milieu $I$ et un point $M$
- de la médiatrice qui est l'image par quart de tour de $B$.
- \protect\ParamList{\param{PointName}, \param{PointNameSep}, \param{PosAngle},
- \param{PointSymbol}, \param{PtNameMath}, \param{CodeFig},
- \param{CodeFigColor}, \param{CodeFigStyle}, \param{SegmentSymbol}}]
- {pstMediatorAB}{\OptArg{par}\Arg{$A$}\Arg{$B$}\Arg{$I$}\Arg{$M$}}
-
-La médiatrice d'un segment est la droite perpendiculaire au milieu de
-ce segment. Le segment est $[AB]$, le milieu est $I$, et $M$ est un
-point de la médiatrice, construit par une rotation de $90$\degres\ du
-point point $B$ par rapport à $I$. L'ordre des deux points est
-important, il permet de contrôler la position de la médiatrice. La
-commande crée les points $M$ et $I$. La construction est sensible aux
-paramètres suivant :
-
-\begin{itemize}
-\item \param{CodeFig}, \param{CodeFigColor} et \param{SegmentSymbol}
- pour marquer l'angle droit et le milieu ;
-\item \param{PointSymbol} et \param{PointName} pour contrôler
- l'apparence des deux nouveaux points, chacun pouvant être spécifiés
- séparément au moyen des paramètres \param{...A} et \param{...B} ;
-\item les paramètres de tracés des droites.
-\end{itemize}
-
-\tabex%
- [@{}m{.35\linewidth}@{\hspace{.013\linewidth}}>{\small}m{.627\linewidth}@{}]%
- {mediator}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Bissectrices d'un angle}
-
-\defcom[Construit la bissectrice intérieure de l'angle \protect\Angle{BAC} ainsi qu'un
- point $M$ de la bissectrice image de $B$ par rotation autour de $A$.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath}}]
- {pstBissectBAC}{\OptArg{par}\Arg{$B$}\Arg{$A$}\Arg{$C$}\Arg{$M$}}
-
-\defcom[Construit la bissectrice extérieure d'un angle ainsi qu' un
- point $M$ de la bissectrice image de $B$ par rotation autour de point $A$.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath}}]
- {pstOutBissectBAC}{\OptArg{par}\Arg{$B$}\Arg{$A$}\Arg{$C$}\Arg{$M$}}
-
-Il existe deux bissectrices pour un angle géométrique donné :
-l'intérieure et l'extérieure ; donc il y a deux commandes. L'angle est
-spécifié dans le sens trigonométrique. Les résultats de ces deux
-commandes sont la bissectrice et un point de celle-ci qui est
-positionné par une rotation du point $B$.
-
-\tabex%
- [@{}m{.35\linewidth}@{\hspace{.013\linewidth}}>{\small}m{.627\linewidth}@{}]%
- {bissec}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\section{Intersections}
-
-Un autre moyen de définir un point est de spécifier une intersection.
-Six types d'intersections sont gérées :
-
-\begin{itemize}
-\item droite-droite ;
-\item droite-cercle ;
-\item cercle-cercle ;
-\item fonction-fonction ;
-\item fonction-droite ;
-\item fonction-cercle.
-\end{itemize}
-
-Une intersection peut ne pas exister : cas des droites parallèles par
-exemple. Dans ce cas, le ou les points concernés se retrouvent placés
-à l'origine. En fait, il est supposé que l'utilisation de ces
-commandes implique l'existence de l'intersection.
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Droite-droite}
-\defcom[Place le point d'intersection entre les droites $(AB)$ et $(CD)$.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath}}]
- {pstInterLL}%
- {\OptArg{par}\Arg{$A$}\Arg{$B$}\Arg{$C$}\Arg{$D$}\Arg{$M$}}
-
-Construit le point d'intersection de la droite $(AB)$ avec la droite
-$(CD)$. Option essentielle de la construction de figures du triangle,
-elle permet de positionner les points remarquables. Les paragraphes
-suivants proposent différents exemples :
-
-\begin{description}
-\item[basique]
-
- \tabex{interDD}
-
-\item[orthocentre]
-
- \tabex%
- [@{}m{.35\linewidth}@{\hspace{.013\linewidth}}>{\small}m{.627\linewidth}@{}]
- {orthocentre}
-
-\end{description}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Cercle--droite}
-
-\defcom[Place le(s) point(s) d'intersection entre la droite $(AB)$ et le cercle de
- centre $O$ passant par $C$.
- \protect\ParamList{\param{PointSymbol}, \param{PosAngle},
- \param{PointName}, \param{PointNameSep}, \param{PtNameMath},
- \param{PointSymbolA}, \param{PosAngleA}, \param{PointNameA},
- \param{PointSymbolB}, \param{PosAngleB}, \param{PointNameB},
- \param{Radius}, \param{Diameter}}]
- {pstInterLC}%
- {\OptArg{par}\Arg{$A$}\Arg{$B$}\Arg{$O$}\Arg{$C$}%
- \Arg{$M_1$}\Arg{$M_2$}}
-
-Construit le ou les points d'intersection de la droite $(AB)$ avec
-le cercle de centre $O$ passant par $OC$. L'intersection entre un
-cercle et une droite donne en cas d'existence un ou deux points. En
-fait le cas tangent représente un point double au sens des racines
-d'un polynôme.
-
-Le cercle est spécifié avec son centre et soit un point de sa
-circonférence, soit son rayon ou diamètre spécifié au moyen des
-paramètres \param{Radius} et \param{Diameter} et modulé par le
-paramètre coefficient multiplicatif \param{DistCoef}.
-
-La place des deux points est telle que les vecteurs \Vecteur{AB} et
-\Vecteur{M_1M_2} soient colinéaires. Ainsi si on échange les points
-qui définissent la droite, les deux points d'intersection seront aussi
-échangés. Si l'intersection n'existe pas, les deux points sont placés
-au centre du cercle.
-
-\tabex
- [@{}m{.4\linewidth}@{\hspace{.013\linewidth}}>{\small}m{.5777\linewidth}@{}]
- {interDC}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Cercle--cercle}
-
-\defcom[Place le(s) point(s) d'intersection entre le cercle de centre $O_1$ passant
- par $B$ et le cercle de centre $O_2$ passant par $C$ .]
- {pstInterCC}%
- {\OptArg{par}\Arg{$O_1$}\Arg{$B$}\Arg{$O_2$}\Arg{$C$}%
- \Arg{$M_1$}\Arg{$M_2$}}
-
-Fonction au comportement identique à la précédente. Les paramètres
-booléens \param{CodeFigA} et \param{CodeFigB} permettent de faire
-apparaître les arcs au niveau des intersections. Par cohérence
-\param{CodeFig} permet de faire apparaître les deux arcs. Afin de
-contrôler dans quel sens vont-être ces arcs, les paramètres booléens
-\param{CodeFigAarc} et \param{CodeFigBarc} permettent de choisir dans
-le sens direct ou indirect.
-
-\tabex{interCC}
-
-Voici un deuxième exemple plus complet, intégrant les spécifications de cercle avec
-des rayons et des diamètres. Il existe dans ce cas des paramètres \param{RadiusA},
-\param{RadiusB}, \param{DiameterA} et \param{DiameterB}. Toutefois, même dans le cas
-où le diamètre est spécifié, il faut donner un centre. On ne peut pas spécifier un
-cercle avec deux points diamétralement opposés.
-
-\begin{center}
- \rule[-.5cm]{0pt}{8cm}
- \begin{pspicture}(-3,-4)(7,3)\psgrid
- \input{Exemples/interCC_bis_in}
- \end{pspicture}
-\end{center}
-
-\smallverbatiminput{Exemples/interCC_bis_in}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Fonction--fonction}
-
-\defcom[Place \textit{un} point d'intersection entre les deux courbes représentatives des
-fonctions $f$ et $g$. À priori l'abscisse du point
-sera proche de $x_0$ (valeur initiale de l'algorithme de \textsc{Newton}).]%
- {pstInterFF}{\OptArg{par}\Arg{$f$}\Arg{$g$}\Arg{$x_0$}\Arg{$M$}}
-
-Cette fonction permet de positionner un point à une intersection entre les deux
-fonctions $f$ et $g$. La valeur $x_0$ est une valeur approchée de l'abscisse de cette
-intersection. Il est donc tout à fait possible de l'utiliser plusieurs fois si plusieurs
-intersections existent. Chacune des fonctions est décrite en \PostScript de manière
-identique à la fonction \com{psplot} de \PStricks. Il est évidemment possible de
-spécifier une fonction constante, et par exemple de chercher des racines.
-
-La recherche de l'intersection se fait en utilisant l'algorithme de \textsc{Newton},
-et évidemment il peut arriver que cela n'aboutisse pas. Dans ce cas, le point est
-placé à l'origine. D'autre part, la recherche peut tomber dans un \textit{piège}
-(minimum local proche de zéro), ou encore se mettre à osciller et donc ne jamais
-finir, il faudra alors modifier $x_0$.
-
-\tabex{interFF}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Fonction--droite}
-
-\defcom[Place \textit{un} point d'intersection entre la droite $(AB)$ et la courbe
-représentative de la fonction $f$. À priori l'abscisse du point
-sera proche de $x_0$ (valeur initiale de l'algorithme de \textsc{Newton}).]%
-{pstInterFL}{\OptArg{par}\Arg{$f$}\Arg{$A$}\Arg{$B$}\Arg{$x_0$}\Arg{$M$}}
-
-Positionne un point à une intersection de la fonction $f$ et de la droite $(AB)$.
-
-\tabex{interFL}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Fonction--cercle}
-
-\defcom[Place \textit{un} point d'intersection entre le cercle de centre $O$ passant
-par $A$ et la courbe représentative de la fonction $f$. À priori l'abscisse du point
-sera proche de $x_0$ (valeur initiale de l'algorithme de \textsc{Newton}).]%
- {pstInterFC}{\OptArg{par}\Arg{$f$}\Arg{$O$}\Arg{$A$}\Arg{$x_0$}\Arg{$M$}}
-
-Positionne un point à une intersection de la fonction $f$ et du cercle
-de centre $O$ passant par $A$. L'intersection est trouvée en utilisant l'algorithme
-itératif de \textsc{Newton} avec comme valeur initale $x_0$. Le poit aura donc une
-abscisse \textit{proche} de $x_0$.
-
-\tabex{interFC}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\chapter{Galerie d'exemples}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \section{Géométrie élémentaire}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Tracé de la bissectrice}
-
-\tabex{gal_biss}
-
-\cbdelete%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% \subsection{Angle droit allemand}
-%%
-%% En Allemagne, on utilise une autre convention pour les angles
-%% droits (remarque de U. \textsc{Dirr}).
-%% \nopagebreak[4]
-%%
-%% \tabex{german_ra}
-%%
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \cbstart\subsection{Transformation de polygones et courbes}
-
-Voici comment utiliser le paramètre \param{CurveType} avec des tranformations.
-\nopagebreak[4]
-
-\begin{center}
-\input{Exemples/curvetype}
-\end{center}\nopagebreak[4]
-
-\smallverbatiminput{Exemples/curvetype_in}\cbend
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Droites remarquables du triangle}\nopagebreak[4]
-
-\begin{center}
-\psset{unit=2cm}
-\input{Exemples/remarq}
-\end{center}\nopagebreak[4]
-
-\smallverbatiminput{Exemples/remarq_in}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Cercle d'\textsc{Euler}}
-
-\begin{center}
-\psset{unit=2cm}
-\input{Exemples/euler}
-\end{center}\nopagebreak[4]
-
-\smallverbatiminput{Exemples/euler_in}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Orthocentre et hyperbole}
-
-L'orthocentre d'un triangle dont les points sont situés sur les
-branches de l'hyperbole ${\mathscr H} : y=a/x$ appartient à cette hyperbole.
-
-\begin{center}
-\psset{unit=.5cm}
-\input{Exemples/orthoethyper}
-\end{center}
-
-\smallverbatiminput{Exemples/orthoethyper_in}
-
-\pagebreak[4]
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Polygone régulier à 17 côtés}
-
-Remarquable construction due à K. F. \textsc{Gauss} qui a démontré par
-ailleurs qu'il était possible de construire les polygones à
-$2^{2^p}+1$ côtés avec en prime la méthode général de construction. Le
-polygone régulier suivant de cette famille possède donc 257 côtés !
-\nopagebreak[4]
-
-\begin{center}
-\psset{unit=1.5cm, CodeFig=true, RightAngleSize=.14, CodeFigColor=red,
- CodeFigB=true, linestyle=dashed, dash=2mm 2mm}
-\input{Exemples/gauss}
-\end{center}
-
-
-\pagebreak[4]
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Tangentes de cercles}
-
-Construction des tangentes à un cercle passant par un point donné.
-\nopagebreak[4]
-
-\begin{center}
-\input{Exemples/tg1c}
-\end{center}
-
-Construction des tangentes à deux cercles.
-\nopagebreak[4]
-
-\begin{center}
-\input{Exemples/tg2c}
-\end{center}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Point de \textsc{Fermat} d'un triangle}
-
-Figure de Manuel \textsc{Luque}.\nopagebreak[4]
-
-\begin{center}
-\input{Exemples/ptfermat}
-\end{center}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Cercles ex-insrits et inscrit d'un triangle}
-
-Les centres de ces cercles sont les intersections des bissectrices
-intérieures et extérieures.
-
-%% cercles inscrit et exinscrits d'un triangle
-\begin{center}
-\psset{unit=1cm, dash=5mm 4mm}%, PointSymbolA=none, PointSymbolB=none}
-\input{Exemples/cinscex}
-\end{center}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \section{Quelques lieux de points}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Parabole}
-
-\begin{minipage}[m]{.33\linewidth}
-La parabole est l'ensemble des points situés à égale distance d'un
-point : le foyer, et d'une droite : la directrice.
-\end{minipage}
-\newcommand{\NbPt}{11}
-\input{Exemples/parabole}\nopagebreak[4]
-
-\smallverbatiminput{Exemples/parabole_in}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Hyperbole}
-
-\noindent
-\begin{minipage}[b]{.55\linewidth}
-L'hyperbole est composée des points dont la différence des distances
-avec les foyers est constant. Pour se rafraîchir la mémoire, on peut
-aller voir le «~Cours de mathématiques spéciales~», vol.~2,
-\textsc{Ramis, Deschamps, Odoux}, pp{.} 226--227.
-\begin{verbatim}
-%% QQ RAPPELS : a=\Sommet, c=\PosFoyer,
-%% b^2=c^2-a^2, e=c/a
-%% pour une hyperbole -> e>1, donc c>a,
-%% ici on choisi a=\sqrt{2}, c=2, e=\sqrt{2}
-%% M est sur H <=> |MF-MF'|=2a
-\end{verbatim}
-\end{minipage}
-\hfill
-\input{Exemples/hyperbole}\nopagebreak[4]
-
-\smallverbatiminput{Exemples/hyperbole_in}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Cycloïde}
-
-La roue roule de $M$ à $A$. Les points du cercle parcourent
-des cycloïdes. L'intérêt de cet exemple est de faire coïncider les
-points de rebroussement avec des points calculés.
-\nopagebreak[4]
-
-\begin{center}
-\input{Exemples/cyclo}
-\end{center}\nopagebreak[4]
-
-\smallverbatiminput{Exemples/cyclo_in}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Hypocycloïdes (astroïde et deltoïde)}
-
-Une roue roule à l'intérieure d'un cercle et selon le rapport
-des rayons, on obtient une astroïde, une deltoïde et dans le cas
-générale des hypocycloïdes.\nopagebreak[4]
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% ASTROÏDE
-\input{Exemples/hypocyclo}
-%%%%%%%%%%%%%%%%%%%%
-\begin{center}
-\input{Exemples/astro}\input{Exemples/delto}
-\end{center}
-
-\smallverbatiminput{Exemples/hypocyclo}
-\smallverbatiminput{Exemples/astro_in}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \section{Enveloppes de droites et de cercles}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Coniques}
-
-On considère un cercle et un point $A$ extérieur à ce cercle.
-L'ensemble des médiatrices des segments formés par $A$ et les points
-du cercle forme les deux coniques selon la place de $A$ : s'il est à
-l'intérieur du cercle l'ellipse, à l'extérieur l'hyperbole. $A$ et le
-centre du cercle en sont les foyers (figure d'O. \textsc{Reboux}).
-
-\begin{center}\input{Exemples/envellipse}\end{center}
-
-\smallverbatiminput{Exemples/envellipse_in}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \subsection{Cardioïde}
-
-La cardioïde est l'enveloppe des cercles centrés sur un cercle et
-passant par un point fixé de ce cercle.
-
-\tabex%
- [@{}m{.5\linewidth}@{\hspace{.013\linewidth}}>{\small}m{.627\linewidth}@{}]%
- {envcardi}
-
-\pagebreak[4]
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \section{Homothéties et fractales}\nopagebreak[4]
-
-\tabex{fracthom}
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \section{Géométrie hyperbolique : triangle et ses hauteurs}
-
-Le comble pour de la géométrie euclidienne !
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% Tracé de géodésique en géométrie hyperbolique
-%% Attention ne fonctionne que si les points ne sont pas alignés avec O
-%% Ceci est un cas particulier, je ne crois pas que les hauteurs
-%% soient concourantes pour tous les triangles hyperboliques.
-\input{Exemples/geohyper}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\appendix
-\chapter{Glossaire des commandes}%%\markboth{GLOSSAIRE DES COMMANDES}{\thepage}%
-%%\addcontentsline{toc}{chapter}{\protect\numberline{}Glossaire des commandes}%
-
-Voici la liste des commandes définies par \texttt{pst-eucl}. Chacune est proposée
-avec une courte description ainsi que la liste des paramètres \texttt{pst-eucl} qui
-permettent de la contrôler. Il est tout à fait possible que d'autres
-paramètres \PStricks puissent être utilisé, en particulier ceux contrôlant le trait
-(épaisseur, couleur, style).
-
-\input{euclide_macros.ind}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\chapter{Les paramètres de \texttt{pst-eucl}}
-
-\begin{longtable}{|l|l|p{10cm}|}
- \hline
- \multicolumn{1}{|c|}{\textbf{Paramètre}}&
- \multicolumn{1}{c|}{\textbf{Défaut}}&
- \multicolumn{1}{c|}{\textbf{Signification}} \\\hline\hline
- \endfirsthead
- \hline
- \multicolumn{1}{|c|}{\textbf{Paramètre}}&
- \multicolumn{1}{c|}{\textbf{Défaut}}&
- \multicolumn{1}{c|}{\textbf{Signification}} \\\hline\hline
- \endhead
- \hline
- \multicolumn{3}{|c|}{$\ldots$ à suivre $\ldots$}\\
- \hline
- \endfoot
- \hline
- \endlastfoot
- \param{PointSymbol}&\verb$default$&Symbole utilisé pour marquer un point.\\\hline
- \param{PointSymbolA}&\verb$default$&idem pour le premier point d'une commande en créant plusieurs.\\\hline
- \param{PointSymbolB}&\verb$default$&pour le second...\\\hline
- \param{PointSymbolC}&\verb$default$&pour le troisième...\\\hline
- \param{PointName}&\verb$default$&Étiquette placé auprès du point.\\\hline
- \param{PointNameA}&\verb$default$&idem pour le premier point d'une commande en créant plusieurs.\\\hline
- \param{PointNameB}&\verb$default$&pour le second...\\\hline
- \param{PointNameC}&\verb$default$&pour le troisième...\\\hline
- \param{PtNameMath}&\verb$true$&paramètre booléen spécifiant si le style
- mathématique doit être utilisé pour l'étiquette d'un point.\\\hline
- \param{SegmentSymbol}&\verb$default$&Symbole utilisé pour marquer un segment\\\hline
- \param{SegmentSymbolA}&\verb$default$&idem pour le premier segment d'une commande
- en marquant plusieurs.\\\hline
- \param{SegmentSymbolB}&\verb$default$&pour le second...\\\hline
- \param{SegmentSymbolC}&\verb$default$&pour le troisième...\\\hline
- \param{Mark}&\verb$default$&Symbole utilisé pour marquer un angle...\\\hline
- \param{MarkAngle}&\verb$default$&Angle à utiliser pour le symbole précédent...\\\hline
- \param{PointNameSep}&\verb$1em$&Distance séparant le symbole du point de son étiquette.\\\hline
- \param{PosAngle}&\verb$undef$&Position de l'étiquette autour du point.\\\hline
- \param{PosAngleA}&\verb$undef$&idem pour le premier point d'une commande en créant plusieurs.\\\hline
- \param{PosAngleB}&\verb$undef$&pour le second...\\\hline
- \param{PosAngleC}&\verb$undef$&pour le troisième...\\\hline
- \param{RightAngleSize}&\verb$.4$&Taille du symbole de l'angle droit\\\hline
- \param{RightAngleType}&\verb$default$&Type de la marque de l'angle droit, valeur
- possible : \verb$german$ et \verb$suisseromand$\\\hline
- \param{MarkAngleRadius}&\verb$.4$&Rayon de l'arc de cercle marquant un angle.\\\hline
- \param{LabelAngleOffset}&\verb$0$&Offset angulaire permettant de décaler
- l'étiquette d'un angle.\\\hline
- \param{LabelSep}&\verb$1$&Distance entre le sommet de l'angle et l'étiquette.\\\hline
- \param{LabelRefPt}&\verb$c$&Point de référence \TeX\ utilisé pour placer
- l'étiquette d'un angle.\\\hline
- \param{HomCoef}&\verb$.5$&Coefficient de l'homothétie.\\\hline
- \param{RotAngle}&\verb$60$&Angle utilisé pour la rotation.\\\hline
- \param{DrawCirABC}&\verb$true$&Paramètre booléen indiquant si le cercle circonscrit
- doit être tracé.\\\hline
- \param{CodeFig}&\verb$false$&Paramètre booléen indiquant si la construction doit
- être codée.\\\hline
- \param{CodeFigA}&\verb$false$&idem pour la première construction d'une commande en
- générant plusieurs.\\\hline
- \param{CodeFigB}&\verb$false$&La seconde.\\\hline
- \param{CodeFigColor}&\verb$cyan$&Couleur du trait pour coder la construction.\\\hline
- \param{CodeFigStyle}&\verb$dashed$&Style du trait pour coder la construction.\\\hline
- \param{CodeFigAarc}&\verb$true$&paramètre booléen spécifiant le sens de l'arcau
- niveau de la première intersection entre deux cercles.\\\hline
- \param{CodeFigBarc}&\verb$true$&idem pour la seconde.\\\hline
- \param{Radius}&\verb$none$&Spécification du rayon du cercle.\\\hline
- \param{RadiusA}&\verb$undef$&Spécification du rayon du premier cercle.\\\hline
- \param{RadiusB}&\verb$undef$&Spécification du rayon du second cercle.\\\hline
- \param{Diameter}&\verb$none$&Spécification du diamètre du cercle.\\\hline
- \param{DiameterA}&\verb$undef$&Spécification du rayon du premier cercle.\\\hline
- \param{DiameterB}&\verb$undef$&Spécification du rayon du second cercle.\\\hline
- \param{DistCoef}&\verb$none$&Coefficient multiplicatif permettant de modifier une distance/vecteur.\\\hline
- \param{AngleCoef}&\verb$none$&Coefficient multiplicatif permettant de modifier la
- mesure d'un angle.\\\hline
- \param{CurvAbsNeg}&\verb$false$&Paramètre booléen indiquant que les abscisses
- curvilignes sont dans le sens anti-trigonométrique\\\hline
- \param{GenCurvFirst}&\verb$none$&Nom du premier point d'une courbe générique (effet
- de bord).\\\hline
- \param{GenCurvLast}&\verb$none$&Nom du dernier point d'une courbe générique (effet
- de bord).\\\hline
- \param{GenCurvInc}&\verb$none$&valeur à utiliser comme incrément dans une courbe générique.\\\hline
- \cbstart%
- \param{CurveType}&\verb$none$&Mode de tracé de courbe pour relier une liste de points.\\\hline
- \param{TransformLabel}&\verb$none$&étiquette utilisée pour marquer la rotation ou la
- translation.\\\hline
-\end{longtable}
-
-\cbend
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\cbstart\chapter{Compatibilité ascendantes de \texttt{pst-eucl}}
-
-Nouveauté pour cette version, des commandes ont changé de syntaxe sans changer de
-nom, la compatibilité ascendante n'est donc pas maintenue. Toutefois, pour éviter àà
-certains utilisateurs pressés de mettre à jour leur fichier dans l'urgence, il est
-possible de retrouver l'ancienne syntaxe en activant l'option \texttt{old} à l'inclusion de
-l'extension \verb$\usepackage[old]{pst-eucl}$. Pour cette version cela concerne
-toutes les commandes des transformations. Il faut donc se reporter à l'ancien manuel
-pour avoir la syntaxe.
-
-\cbend
-\end{document}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \section{Une figure fractale : le flocon de \textsc{von Koch}}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% TENTATIVE DE FLOCON DE VON KOCH
-\newcounter{nbvk}%
-%%%%%%%%%%%%%
-%% PILE LIFO%
-\newcounter{lifon}\setcounter{lifon}{1}%%
-\newcommand{\Push}[1]{%%
- \expandafter\edef\csname lifocmd\roman{lifon}\endcsname{#1}%%
- \addtocounter{lifon}{1}%%
- }%
-\newcommand{\Pop}{\csname lifocmd\roman{lifon}\endcsname}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcounter{nombre}\setcounter{nombre}{0}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\newcommand{\vonkoch}[3]{%%
- \setcounter{nbvk}{#1}%%
- \edef\Pointi{#2}\edef\Pointii{#3}%%
- \ifnum\value{nbvk}=1%
- \ncline{\Pointi}{\Pointii}%
- \else % ELSE%
- \addtocounter{nombre}{1}%
- %% position des nouveauX points%
- \pstHomO[HomCoef=1 3 div]{\Pointi}{\Pointii}{P\arabic{nombre}1}%
- \pstHomO[HomCoef=2 3 div]{\Pointi}{\Pointii}{P\arabic{nombre}2}%
- \pstRotation[RotAngle=60]{P\arabic{nombre}1}{P\arabic{nombre}2}{P\arabic{nombre}3}%
- \addtocounter{nbvk}{-1}%%
- \Push{\Pointi}\Push{\Pointii}\Push{\arabic{nombre}}\Push{\arabic{nbvk}}%
- \vonkoch{\value{nbvk}}{\Pointi}{P\arabic{nombre}1}%
- \addtocounter{lifon}{-1}\edef\nbvklocal{\Pop}%
- \addtocounter{lifon}{-1}\edef\nombrelocal{\Pop}%
- \addtocounter{lifon}{-1}\edef\Pointii{\Pop}%
- \addtocounter{lifon}{-1}\edef\Pointi{\Pop}%
- \addtocounter{lifon}{4}%
- \vonkoch{\nbvklocal}{P\nombrelocal1}{P\nombrelocal3}%
- \addtocounter{lifon}{-1}\edef\nbvklocal{\Pop}%
- \addtocounter{lifon}{-1}\edef\nombrelocal{\Pop}%
- \addtocounter{lifon}{-1}\edef\Pointii{\Pop}%
- \addtocounter{lifon}{-1}\edef\Pointi{\Pop}%
- \addtocounter{lifon}{4}%
- \vonkoch{\nbvklocal}{P\nombrelocal3}{P\nombrelocal2}%
- \addtocounter{lifon}{-1}\edef\nbvklocal{\Pop}%
- \addtocounter{lifon}{-1}\edef\nombrelocal{\Pop}%
- \addtocounter{lifon}{-1}\edef\Pointii{\Pop}%
- \addtocounter{lifon}{-1}\edef\Pointi{\Pop}%
- \addtocounter{lifon}{4}%
- \vonkoch{\nbvklocal}{P\nombrelocal2}{\Pointii}%
- \addtocounter{lifon}{-4}%
- \fi%
-}%
-\psset{unit=2.5cm}%
-\begin{pspicture}(-2,-2)(2,2)%
- \psset{PointSymbol=none}
- \pstGeonode(-2,-2){A}\pstGeonode(2,2){B}%
- \pstRotation[RotAngle=60]{B}{A}{C}%
- \vonkoch{5}{A}{B}\setcounter{nombre}{0}%%%
- \vonkoch{4}{B}{C}\setcounter{nombre}{0}%%%
- \vonkoch{4}{C}{A}%%
-\end{pspicture}%
-%
-\end{document}%
-
-\begin{pspicture*}(-4,-5)(4,5)%\psgrid
- %% \pstGeonode[PosAngle=-135](0,0){O}
- %% \pstGeonode[PosAngle=-90](1,0.5){I}
- %% \pstGeonode[PosAngle=-180](0.5,2){J}
- \pstGeonode[PosAngle={-135,-90,-180}]{O}(1,0.5){I}(0.5,2){J}
- \pstLineAB[nodesep=100]{O}{I}
- \pstLineAB[nodesep=100]{O}{J}
- \multips(-5,-2.5)(1,0.5){11}{\psline(0,-.15)(0,.15)}%
- \multips(-5,-2.5)(1,0.5){11}{\psline[linestyle=dotted](-10,-40)(10,40)}%
- \multips(-2,-8)(0.5,2){9}{\psline(-.15,0)(.15,0)}%
- \multips(-2,-8)(0.5,2){9}{\psline[linestyle=dotted](-10,-5)(10,5)}%
- %% huit points
- \psset{PointSymbol=x}
- \pstOIJGeonode(1,2){A}{O}{I}{J}
- \pstOIJGeonode(-2,1){B}{O}{I}{J}
- \pstOIJGeonode(-1,-1.5){C}{O}{I}{J}
- \pstOIJGeonode(2,-1){D}{O}{I}{J}
-\end{pspicture*}
-%
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/euclide_english.pdf b/Master/texmf-dist/doc/generic/pst-eucl/euclide_english.pdf
deleted file mode 100644
index b0577632f94..00000000000
--- a/Master/texmf-dist/doc/generic/pst-eucl/euclide_english.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.pdf b/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.pdf
new file mode 100644
index 00000000000..02543eb1708
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-eucl/pst-eucl-doc.pdf
Binary files differ
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 f737a4fc660..df1b8481418 100644
--- a/Master/texmf-dist/tex/generic/pst-eucl/pst-eucl.tex
+++ b/Master/texmf-dist/tex/generic/pst-eucl/pst-eucl.tex
@@ -1,77 +1,35 @@
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -*- Mode: Latex -*- %%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% pst-eucl.tex --- Generation of geometric figures in euclidean geometry
-%% Copyright 2000-2005 Dominique RODRIGUEZ
+%% $Id: pst-eucl.tex 467 2011-03-01 21:04:36Z herbert $
%%
-%% Author : Dominique RODRIGUEZ (EN) <dominique.rodriguez@waika9.com>
-%% Created the : Mon Oct 16 21:15:11 CEST 2000
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% HISTORY
+%% This is file `pst-eucl.tex',
%%
-%% 2000-10-16 : creation of the file from a first LaTeX protype sty file
+%% IMPORTANT NOTICE:
%%
-%% 2001-05-7 : distribution of the first beta version
+%% Package `pst-eucl.tex'
%%
-%% 2002-03-21 : distribution of the second beta version
+%% Dominique RODRIGUEZ <dominique.rodriguez _at_waika9.com>
+%% with contributions of Herbert Voss <hvoss _at_ tug.org>
+%% Copyright 2000-2011 Dominique RODRIGUEZ
%%
-%% 2002-12-01 : distribution of the pre-release 1.0
-%%
-%% 2003-03-23 : direct computation of coordinates for the center of gravity and
-%% the center of the circum circle, avoiding creation of intermediates
-%% nodes.
-%%
-%% 2003-12-16 : Integration of modifications given by Alain DELPLANQUE
-%% automatic computation of PosAngle for several commands,
-%% and ability to give a list of point for pstGeonode, pstOIJGeonode
-%%
-%% 2004-09-05 : Improvement of the management of the Point name end of the param lists
-%%
-%% 2004-11-04 : Improvement of the management of the display of the Point name
-%%
-%% 2004-12-10 : New parameters for coding the circum circle : SegmentSymbolA B & C
-%%
-%% 2004-12-14 : New parametre RightAngleType for regional difference
-%%
-%% 2005-01-17 : transition towards pst-xkey (thanks to "Hendri Adriaens" <Hendri@uvt.nl>)
-%%
-%% 2005-02-21 : correction for spurious blank (thanks to Herbert Voss <Herbert.Voss@alumni.TU-Berlin.DE>)
-%% in pstTriangleABC (search for "-- hv")
-%%
-%% 2005-03-25 : Modification of the transformations macros: management of a points list
-%% coding for rotation & translation
-%% draw a curve for a points list (geonode & oijgeonode & transform macros)
-%%
-%% 2005-04-10 : Modification of the transformations macros: management of a points list
-%% management directly within the first point argument
-%% Plotting of a curve linking a list of points
-%%
-%% 2005-10-09 : problem solved with CodeFigAB
-%%
-%% 2005-12-31 : use \psscalbox instead of \scalebox (hv)
-%%
-%% 2006-01-29 : minor changes for file version (hv)
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN archives
+%% in directory macros/latex/base/lppl.txt.
%%
-%% 2006-01-30 : correction of pstArcOAB for pscustom (dr)
+%% DESCRIPTION:
+%% `pst-eucl' is a PSTricks package to draw geometric figures in euclidean geometry,
%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Require PSTricks and pst-node packages
-\ifx\PSTricksLoaded\endinput\else\input pstricks.tex\fi
-\ifx\PSTnodesLoaded\endinput\else\input pst-node.tex\fi
-\ifx\MultidoLoaded\endinput\else\input multido.tex\fi
-\def\fileversion{1.3.5}
-\def\filedate{2006/01/30}%
-%% This program can be redistributed and/or modified under the terms
-%% of the LaTeX Project Public License Distributed from CTAN
-%% archives in directory macros/latex/base/lppl.txt.
-\message{`PST-Euclide v\fileversion, \filedate\space (Dominique RODRIGUEZ)}%
-\message{ This version uses the pst-xkey package for managing parameters}%
-\message{ Please read the doc, some macros have a new syntax}%
-\message{ use option old for upward compatibility}%
\csname PSTEuclideLoaded\endcsname
\let\PSTEuclideLoaded\endinput
+\ifx\PSTricksLoaded\endinput\else \input pstricks.tex\fi
+\ifx\PSTnodeLoaded\endinput\else \input pst-node.tex\fi
+\ifx\PSTMultidoLoaded\endinput\else \input multido.tex\fi
+\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey \fi
+%
+\def\fileversion{1.37}
+\def\filedate{2011/05/05}%
+\message{`PST-Euclide v\fileversion, \filedate\space (DR)}%
%% prologue for postcript
\pstheader{pst-eucl.pro}%
% interface to the `xkeyval' package
-\input pst-xkey.tex
\pst@addfams{pst-eucl}
\edef\PstAtCode{\the\catcode`\@}%
\catcode`\@=11\relax
@@ -397,16 +355,9 @@ end}%
%% #2 #3 #4 -> 3 nodes for defining the angle
%% #5 -> label
\def\pstMarkAngle{\@ifnextchar[\Pst@MarkAngle{\Pst@MarkAngle[]}}%
-%\def\pstMarkAngle{\@ifnextchar[\Pst@MarkAngle@i{\Pst@MarkAngle@i[]}}%
-%\def\Pst@MarkAngle@i[#1]{\@ifnextchar+{\Pst@MarkAngle@ii[#1]}{\Pst@MarkAngle@iii[#1]}}%
-%\def\Pst@MarkAngle@ii[#1]+#2#3#4#5{%
-%
%% here we should check the angle size for right angles
-%
-%}
-%\def\Pst@MarkAngle@iii[#1]#2#3#4#5{%
\def\Pst@MarkAngle[#1]#2#3#4#5{%
- \bgroup\psset{#1}% % Affectation of local parameters
+ \begingroup\ifx\relax#1\relax\else\psset{#1}\fi% % Affectation of local parameters
%\rput(#3){\psarc(0,0){\psk@MarkAngleRadius}{(#2)}{(#4)}}%
%\rput[\psk@LabelRefPt]%
% {*0}([nodesep=\psk@LabelSep, angle= \psk@LabelAngle]#3){#5}%
@@ -416,17 +367,21 @@ end}%
(!tx@EcldDict begin /N@#4 GetNode exch Atan /N@#2 GetNode exch Atan end
2 copy lt { exch 360 sub exch } if
add 2 div \psk@LabelAngleOffset\space add \psk@LabelSep\space exch PtoC){#5}
- %%begin modif alaindelplanque 11/2003
- \ifx\psk@MarkAngle\@undef\psset{MarkAngle=90}\fi
\ifx\psk@Mark\@undef\else
- \rput{!tx@EcldDict begin
- /N@#3 GetNode /N@#4 GetNode ABVect Atan
- /N@#3 GetNode /N@#2 GetNode ABVect Atan
- end 2 copy lt \pslbrace exch 360 sub exch \psrbrace if add 2 div 90 add}
- (0,0){\rput{-90}(\psk@MarkAngleRadius,0){\csname\psk@Mark\endcsname}}
+ \rput{! tx@EcldDict begin
+ /N@#4 GetNode /N@#3 GetNode ABVect exch atan %dup ==
+ /N@#2 GetNode /N@#3 GetNode ABVect exch atan %dup ==
+ end
+ 2 copy lt \pslbrace exch 360 sub \psrbrace if
+ add 2 div cvi 90 mod 45 sub
+ }(!\psk@MarkAngleRadius\space tx@EcldDict begin
+ /N@#4 GetNode /N@#3 GetNode ABVect exch atan %dup ==
+ /N@#2 GetNode /N@#3 GetNode ABVect exch atan %dup ==
+ end
+ 2 copy lt { exch 360 sub } if
+ add 2 div PtoC ){\csname\psk@Mark\endcsname}
\fi}
- %%end modif alaindelplanque 11/2003
- \egroup%
+ \endgroup%
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% #2 #4 #6 -> coordinates for nodes