#######################################################################################################################################
# #
# D I S Q U E H Y P E R B O L I Q U E D E P O I N C A R E : #
# #
# #
# Author of '$xiirv/.POIN.21.$U' : #
# #
# Jean-Francois Colonna (LACTAMME, 20120525075458). #
# #
#######################################################################################################################################
$Z setParam _____NombreN `GetParam $xci/valeurs_DPoincare.01$X nombre_cotes`
$Z setParam _____NombreP `GetParam $xci/valeurs_DPoincare.01$X angle_sommet`
$Z setParam _____Profondeur 4
$Z SETParam _____Optimiser $NEXIST
$Z # Parametre introduit le 20120530175028... #
$Z setParam _____Segments_AB `GetParam $xci/valeurs_DPoincare.01$X segments_AB`
$Z setParam _____SupRedondants FAUX
$Z # Parametre introduit le 20120609101217... #
$Z setParam _____InterpolerC VRAI
$Z setParam _____FInterpolerC `GetParam $xci/valeurs_DPoincare.01$X facteur_nombre_pas`
$Z setParam _____Eval "$K_VIDE"
$Z setParam _____Rayon 0.005
$Z setParam _____Grossissement 1
$Z setParam _____Zoom 1.2
$Z setParam _____Cubique FAUX
$Z setParam _____DeriveeX 0
$Z setParam _____DeriveeY 0
$Z setParam _____DeriveeZ 0
$Z # Meme si le calcul est bidimensionnel, il peut tre interessant de faire sortir le pavage #
$Z # du plan par l'intermediaire de la derivee en 'Z'... #
$Z setParam _____Palette $xiP/blanc.21
$Z setParam _____Fond "$K_VIDE"
$Z setParam _____ParticulePara1 "$K_VIDE"
$Z if ($_____Optimiser == $EXIST) then
$Z set PaRaMeTrEs="ChiffresFlot=12 ModeFlot=f"
$Z # Afin d'eviter des problemes d'arrondis... #
$Z else
$Z set PaRaMeTrEs="$K_VIDE"
$Z endif
$Z FileTmpB FiLeTmP_POINCARE
$Z $xci/valeurs_DPoincare.01$X \
$Z nombre_cotes=$_____NombreN \
$Z angle_sommet=$_____NombreP \
$Z profondeur=$_____Profondeur \
$Z segments_AB=$_____Segments_AB \
$Z supprimer_segments_AB_redondants=$_____SupRedondants \
$Z interpoler_circulairement=$_____InterpolerC \
$Z facteur_nombre_pas=$_____FInterpolerC \
$Z $PaRaMeTrEs | \
$Z $xcp/substitue.01$X c01=" \(xB=\)" s01="\n\1" \
$Z > $FiLeTmP_POINCARE
$Z if ($_____Optimiser == $EXIST) then
$Z # Possibilite introduite le 20120530175028, mais qui a cette date semble strictement #
$Z # inutile, le nombre de points ('$Npart') ne diminuant pas. Cela peut venir soit du fait #
$Z # qu'il n'y a pas de segments dupliques ; soit qu'il y a des segments dupliques, mais qu'ils #
$Z # ne sont pas orientes de la meme facon ('AB' pour l'un et 'BA' en fait pour l'autre... #
$Z $CA $FiLeTmP_POINCARE | \
$Z $xcp/substitue.01$X c01="\n\(xB=\)" s01=" \1" | \
$Z $SOR -u | \
$Z $xcp/substitue.01$X c01=" \(xB=\)" s01="\n\1" \
$Z > $FiLeTmP_POINCARE.1
$Z $DELETE $FiLeTmP_POINCARE
$Z $MV $FiLeTmP_POINCARE.1 $FiLeTmP_POINCARE
$Z else
$Z endif
$Z $CA $FiLeTmP_POINCARE | \
$Z $AW ' { print $1 } ' | \
$Z $SE -e "s/^.*=//" \
$Z > $FiLeTmP_POINCARE$COORD_X
$Z $CA $FiLeTmP_POINCARE | \
$Z $AW ' { print $2 } ' | \
$Z $SE -e "s/^.*=//" \
$Z > $FiLeTmP_POINCARE$COORD_Y
$Z set Npart=`$CA $FiLeTmP_POINCARE | $WCl`
$Z $xci/valeurs_inte$X \
$Z premiere=1 derniere=$Npart \
$Z vD=$NOIR vA=$BLANC \
$Z lineaire=VRAI \
$Z entiers=VRAI \
$Z > $FiLeTmP_POINCARE$LUMIN
$Z # Generation de la liste des niveaux a utiliser pour acceder a la palette '$_____Palette'... #
$Z if ("$_____Eval" != "$K_VIDE") then
$Z eval "$_____Eval"
$Z else
$Z endif
$Z if ("$_____ParticulePara1" != "$K_VIDE") then
$Z set _____ParticulePara1=`eval echo "$_____ParticulePara1"`
$Z else
$Z endif
$Z $xrv/particule.10$X np=1 npoints=$Npart \
$Z dernier_premier=VRAI \
$Z AXYZ=1 BXYZ=0 \
$Z LISTE_X=$FiLeTmP_POINCARE$COORD_X \
$Z LISTE_Y=$FiLeTmP_POINCARE$COORD_Y \
$Z LISTE_RAYON=$_____Rayon \
$Z LISTE_NIVEAU=$FiLeTmP_POINCARE$LUMIN \
$Z paletteA=$_____Palette \
$Z grossissement=$_____Grossissement \
$Z Lz=1000 \
$Z ZOOM=$_____Zoom \
$Z ROTATION_OX=0 \
$Z ROTATION_OY=0 \
$Z ROTATION_OZ=0 \
$Z isoles=FAUX chainer=FAUX \
$Z equidistance=VRAI compatibilite_20051230=FAUX \
$Z cubique=$_____Cubique \
$Z derivees_automatiques=FAUX \
$Z LISTE_dX=$_____DeriveeX LISTE_dY=$_____DeriveeY LISTE_dZ=$_____DeriveeZ \
$Z RVB=VRAI \
$Z N_AU_CARRE=FAUX \
$Z editer_extrema_hors=FAUX \
$Z $_____Fond \
$Z $_____ParticulePara1 \
$Z R=$_____ImageR \
$Z chiffres=0 \
$Z $formatI
$Z FileTmpE FiLeTmP_POINCARE