#######################################################################################################################################
# #
# 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.41.$U' : #
# #
# Jean-Francois COLONNA (LACTAMME, 20120605090757). #
# #
#######################################################################################################################################
$Z setParam _____NombreN `GetParam $xci/valeurs_DPoincare.01$X nombre_cotes`
$Z setParam _____NombreP `GetParam $xci/valeurs_DPoincare.01$X angle_sommet`
$Z setParam _____NombreN `GetParam $xci/valeurs_DPoincare.01$X nombre_cotes`
$Z setParam _____Profondeur 4
$Z set _____Segments_AB=VRAI
$Z set _____SupRedondants=VRAI
$Z # Parametre introduit le 20120609101223... #
$Z set _____InterpolerC=FAUX
$Z setParam _____PlanZ -0.5
$Z setParam _____SommetX 0
$Z setParam _____SommetY 0
$Z setParam _____SommetZ +0.5
$Z setParam _____Eval "$K_VIDE"
$Z setParam _____Rayon1 0.008
$Z setParam _____Rayon2 0.004
$Z setParam _____Grossissement 1
$Z setParam _____Zoom 1.2
$Z setParam _____RotationX 0
$Z setParam _____RotationY 0
$Z setParam _____RotationZ 0
$Z setParam _____TranlationX 0
$Z # Parametre introduit le 20120606211321... #
$Z setParam _____TranlationY 0
$Z # Parametre introduit le 20120606211321... #
$Z setParam _____TranlationZ 0
$Z # Parametre introduit le 20120606211321... #
$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 _____DepthCueing 1
$Z # On rappelle que : #
$Z # #
$Z # _____DepthCueing=1 : pas de depth-cueing, #
$Z # _____DepthCueing=0 : depth-cueing maximal. #
$Z # #
$Z setParam _____Fond "$K_VIDE"
$Z setParam _____ParticulePara1 "$K_VIDE"
$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 ChiffresFlot=8 ModeFlot="f" | \
$Z $SE -e "s/[AB]\(=\)/\1/g" | \
$Z $SOR -u | \
$Z $xcp/substitue.01$X c01=" \(x=\)" s01="\n\1" \
$Z > $FiLeTmP_POINCARE
$Z $CA $FiLeTmP_POINCARE | \
$Z $AW ' { print $1 } ' | \
$Z $SE -e "s/^.*=//" \
$Z > $FiLeTmP_POINCARE.1$COORD_X
$Z $CA $FiLeTmP_POINCARE | \
$Z $AW ' { print $2 } ' | \
$Z $SE -e "s/^.*=//" \
$Z > $FiLeTmP_POINCARE.1$COORD_Y
$Z set Npart1=`$CA $FiLeTmP_POINCARE | $WCl`
$Z $xrv/neutre$X ne=$Npart1 \
$Z fichier=$_____PlanZ \
$Z > $FiLeTmP_POINCARE.1$COORD_Z
$Z $CA $FiLeTmP_POINCARE | \
$Z $SOR -u \
$Z > $FiLeTmP_POINCARE.3
$Z set Npart3=`$CA $FiLeTmP_POINCARE.3 | $WCl`
$Z set Npart2=`calculNS 2*$Npart3`
$Z $CA $FiLeTmP_POINCARE.3 | \
$Z $AW ' { print $1 } ' | \
$Z $SE -e "s/^.*=//" \
$Z > $FiLeTmP_POINCARE.3$COORD_X
$Z $CA $FiLeTmP_POINCARE.3 | \
$Z $AW ' { print $2 } ' | \
$Z $SE -e "s/^.*=//" \
$Z > $FiLeTmP_POINCARE.3$COORD_Y
$Z $xrv/neutre$X ne=$Npart3 \
$Z fichier=$_____PlanZ \
$Z > $FiLeTmP_POINCARE.3$COORD_Z
$Z $xrv/neutre$X ne=$Npart3 \
$Z fichier=$_____SommetX \
$Z > $FiLeTmP_POINCARE.2.1$COORD_X
$Z $xrv/neutre$X ne=$Npart3 \
$Z fichier=$_____SommetY \
$Z > $FiLeTmP_POINCARE.2.1$COORD_Y
$Z $xrv/neutre$X ne=$Npart3 \
$Z fichier=$_____SommetZ \
$Z > $FiLeTmP_POINCARE.2.1$COORD_Z
$Z $PAST $FiLeTmP_POINCARE.3$COORD_X $FiLeTmP_POINCARE.2.1$COORD_X | \
$Z $AW ' { print $1 "\n" $2 } ' \
$Z > $FiLeTmP_POINCARE.2$COORD_X
$Z $PAST $FiLeTmP_POINCARE.3$COORD_Y $FiLeTmP_POINCARE.2.1$COORD_Y | \
$Z $AW ' { print $1 "\n" $2 } ' \
$Z > $FiLeTmP_POINCARE.2$COORD_Y
$Z $PAST $FiLeTmP_POINCARE.3$COORD_Z $FiLeTmP_POINCARE.2.1$COORD_Z | \
$Z $AW ' { print $1 "\n" $2 } ' \
$Z > $FiLeTmP_POINCARE.2$COORD_Z
$Z $CA $FiLeTmP_POINCARE.1$COORD_X $FiLeTmP_POINCARE.2$COORD_X \
$Z > $FiLeTmP_POINCARE$COORD_X
$Z $CA $FiLeTmP_POINCARE.1$COORD_Y $FiLeTmP_POINCARE.2$COORD_Y \
$Z > $FiLeTmP_POINCARE$COORD_Y
$Z $CA $FiLeTmP_POINCARE.1$COORD_Z $FiLeTmP_POINCARE.2$COORD_Z \
$Z > $FiLeTmP_POINCARE$COORD_Z
$Z $CA $FiLeTmP_POINCARE.1$COORD_X | \
$Z $SE -e 's/^.*$'"/$_____Rayon1/" \
$Z > $FiLeTmP_POINCARE.1.rayon
$Z $CA $FiLeTmP_POINCARE.2$COORD_X | \
$Z $SE -e 's/^.*$'"/$_____Rayon2/" \
$Z > $FiLeTmP_POINCARE.2.rayon
$Z $CA $FiLeTmP_POINCARE.1.rayon $FiLeTmP_POINCARE.2.rayon \
$Z > $FiLeTmP_POINCARE.rayon
$Z set NpartX=`$CA $FiLeTmP_POINCARE$COORD_X | $WCl`
$Z set NpartY=`$CA $FiLeTmP_POINCARE$COORD_Y | $WCl`
$Z set NpartZ=`$CA $FiLeTmP_POINCARE$COORD_Z | $WCl`
#20220615104036____:$Z set Npart4=`$xcg/MAX3.01$X x=$NpartX y=$NpartY z=$NpartZ` #
$Z set Npart4=`$xcg/MIN3.01$X x=$NpartX y=$NpartY z=$NpartZ`
$Z $xci/valeurs_inte$X \
$Z premiere=1 derniere=$Npart1 \
$Z vD=$GRIS_0 vA=$GRIS_4 \
$Z lineaire=VRAI \
$Z entiers=VRAI \
$Z >>! $FiLeTmP_POINCARE$LUMIN
$Z $xci/valeurs_inte$X \
$Z premiere=`calcul $Npart1+1` derniere=`calcul $Npart1+1+$Npart2` \
$Z vD=`calcul $GRIS_4+1` vA=$GRIS_8 \
$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=$Npart4 \
$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_Z=$FiLeTmP_POINCARE$COORD_Z \
$Z LISTE_RAYON=$FiLeTmP_POINCARE.rayon \
$Z LISTE_NIVEAU=$FiLeTmP_POINCARE$LUMIN \
$Z paletteA=$_____Palette \
$Z grossissement=$_____Grossissement \
$Z Lz=1000 \
$Z ZOOM=$_____Zoom \
$Z ROTATION_OX=$_____RotationX \
$Z ROTATION_OY=$_____RotationY \
$Z ROTATION_OZ=$_____RotationZ \
$Z TRANSLATION_OX=$_____TranlationX \
$Z TRANSLATION_OY=$_____TranlationY \
$Z TRANSLATION_OZ=$_____TranlationZ \
$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 Zminimum=$_____DepthCueing ZminimumT=$_____DepthCueing \
$Z Zmaximum=1 ZmaximumT=1 \
$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