####################################################################################################################################### # # # D I S P O S I T I O N " H A R M O N I E U S E " D E P O I N T S S U R U N E S P H E R E # # A V E C V I S U A L I S A T I O N D E L A S P H E R E : # # # # # # Author of '$xiirs/.PSPH.61.1.$U' : # # # # John F. Colonna (LACTAMME, Fin_listG_xtc__PtsSphere_01_c # # # ####################################################################################################################################### $Z setParam _____Debut_listG "Debut_listG_xtc__PtsSphere_01_c__N26_1000000000" $Z setParam _____Fin_listG "Fin_listG_xtc__PtsSphere_01_c__N26_1000000000" $Z SETParam _____Rayon 1.0 $Z setParam _____NPoints 8 $Z SETParam _____Inversion $NEXIST $Z # Parametre introduit le 20080328145004... # $Z setParam _____InversionX 0 $Z # Parametre introduit le 20080328145004... # $Z setParam _____InversionY 0 $Z # Parametre introduit le 20080328145004... # $Z setParam _____InversionZ 1 $Z # Parametre introduit le 20080328145004... # $Z SETParam _____CSpheriques $NEXIST $Z # Parametre introduit le 20080313095345... # $Z setParam _____IRotationX 0 $Z # Parametre introduit le 20080401145103... # $Z setParam _____IRotationY 0 $Z # Parametre introduit le 20080401145103... # $Z setParam _____IRotationZ 0 $Z # Parametre introduit le 20080401145103... # $Z setParam _____NVoisins 3 $Z setParam _____Zoom 0.9 $Z setParam _____RotationOX 0 $Z setParam _____RotationOY 0 $Z setParam _____RotationOZ 0 $Z setParam _____Grossissement `GetParam $xrv/particule.10$X grossissement` $Z setParam _____DepthCueing 1.0 $Z setParam _____RayonP 0.02 $Z setParam _____CouleurPR $GRIS_8 $Z setParam _____CouleurPV $GRIS_8 $Z setParam _____CouleurPB $GRIS_8 $Z setParam _____RayonS 0.01 $Z setParam _____CouleurSR $GRIS_8 $Z setParam _____CouleurSV $GRIS_5 $Z setParam _____CouleurSB $GRIS_0 $Z $DELETE $xTV/COORDONNEES $Z (listMN $xtc/PtsSphere.01$c $_____Debut_listG $_____Fin_listG) \ $Z | $GRE -v '^ */\* *\*/$' \ $Z | $SE -e "s+^ */\* *\([^ ]\)+\1+" \ $Z -e 's+\([^ ]\) *\*/+\1+' \ $Z > $xTV/COORDONNEES $Z $DELETE $xTV/COORDONNEES_01$COORD_X $Z $DELETE $xTV/COORDONNEES_01$COORD_Y $Z $DELETE $xTV/COORDONNEES_01$COORD_Z $Z $CA $xTV/COORDONNEES \ $Z | $AW ' { print $1 } ' \ $Z > $xTV/COORDONNEES_01$COORD_X $Z $CA $xTV/COORDONNEES \ $Z | $AW ' { print $2 } ' \ $Z > $xTV/COORDONNEES_01$COORD_Y $Z $CA $xTV/COORDONNEES \ $Z | $AW ' { print $3 } ' \ $Z > $xTV/COORDONNEES_01$COORD_Z $Z $DELETE $xTV/COORDONNEES $Z $DELETE $xTV/DISTANCES $Z $xrv/distance.02$X \ $Z CAL1=FAUX \ $Z ne=$_____NPoints \ $Z LISTE_X=$xTV/COORDONNEES_01$COORD_X \ $Z LISTE_Y=$xTV/COORDONNEES_01$COORD_Y \ $Z LISTE_Z=$xTV/COORDONNEES_01$COORD_Z \ $Z premiers_voisins=VRAI \ $Z N=$_____NVoisins \ $Z > $xTV/DISTANCES $Z set ListeCouples=`$CA $xTV/DISTANCES | $SE -e "s/^.*couple=//" -e 's/ .*$//' -e "s/[^,$Alphabet_0_9]//g" | $SOR -u` $Z # Le '$SOR -u' a ete introduit le 20011014100521, depuis que l'option implicite "tri=VRAI" # $Z # a ete introduite le 20011014091311 dans 'v $xrv/distance.02$K 20011014091311'. # $Z $DELETE $xTV/DISTANCES $Z if ($_____Inversion == $EXIST) then $Z # Possibilite introduite le 20080328145004 permettant de faire une inversion de la sphere... # $Z # # $Z # ATTENTION : on notera que l'on ne teste pas si le centre d'inversion n'est pas, par # $Z # malheur, l'un des points de la liste... # $Z $DELETE $xTV/COORDONNEES_02$COORD_X $Z $DELETE $xTV/COORDONNEES_02$COORD_Y $Z $DELETE $xTV/COORDONNEES_02$COORD_Z $Z $xrv/ROTATION.01$X \ $Z CAL1=FAUX \ $Z ne=$_____NPoints \ $Z LISTE_X=$xTV/COORDONNEES_01$COORD_X \ $Z LISTE_Y=$xTV/COORDONNEES_01$COORD_Y \ $Z LISTE_Z=$xTV/COORDONNEES_01$COORD_Z \ $Z rotation=VRAI \ $Z ROTATION_OX=$_____IRotationX \ $Z ROTATION_OY=$_____IRotationY \ $Z ROTATION_OZ=$_____IRotationZ \ $Z pX=1 pY=0 pZ=0 \ $Z > $xTV/COORDONNEES_02$COORD_X $Z $xrv/ROTATION.01$X \ $Z CAL1=FAUX \ $Z ne=$_____NPoints \ $Z LISTE_X=$xTV/COORDONNEES_01$COORD_X \ $Z LISTE_Y=$xTV/COORDONNEES_01$COORD_Y \ $Z LISTE_Z=$xTV/COORDONNEES_01$COORD_Z \ $Z rotation=VRAI \ $Z ROTATION_OX=$_____IRotationX \ $Z ROTATION_OY=$_____IRotationY \ $Z ROTATION_OZ=$_____IRotationZ \ $Z pX=0 pY=1 pZ=0 \ $Z > $xTV/COORDONNEES_02$COORD_Y $Z $xrv/ROTATION.01$X \ $Z CAL1=FAUX \ $Z ne=$_____NPoints \ $Z LISTE_X=$xTV/COORDONNEES_01$COORD_X \ $Z LISTE_Y=$xTV/COORDONNEES_01$COORD_Y \ $Z LISTE_Z=$xTV/COORDONNEES_01$COORD_Z \ $Z rotation=VRAI \ $Z ROTATION_OX=$_____IRotationX \ $Z ROTATION_OY=$_____IRotationY \ $Z ROTATION_OZ=$_____IRotationZ \ $Z pX=0 pY=0 pZ=1 \ $Z > $xTV/COORDONNEES_02$COORD_Z $Z $DELETE $xTV/COORDONNEES_03$COORD_X $Z $DELETE $xTV/COORDONNEES_03$COORD_Y $Z $DELETE $xTV/COORDONNEES_03$COORD_Z $Z $xrv/inversion.01$X \ $Z CAL1=FAUX \ $Z ne=$_____NPoints \ $Z LISTE_X=$xTV/COORDONNEES_02$COORD_X \ $Z LISTE_Y=$xTV/COORDONNEES_02$COORD_Y \ $Z LISTE_Z=$xTV/COORDONNEES_02$COORD_Z \ $Z LISTE_RAYON=$_____Rayon \ $Z Xpole=$_____InversionX \ $Z Ypole=$_____InversionY \ $Z Zpole=$_____InversionZ \ $Z pX=1 pY=0 pZ=0 pRAYON=0 \ $Z > $xTV/COORDONNEES_03$COORD_X $Z $xrv/inversion.01$X \ $Z CAL1=FAUX \ $Z ne=$_____NPoints \ $Z LISTE_X=$xTV/COORDONNEES_02$COORD_X \ $Z LISTE_Y=$xTV/COORDONNEES_02$COORD_Y \ $Z LISTE_Z=$xTV/COORDONNEES_02$COORD_Z \ $Z LISTE_RAYON=$_____Rayon \ $Z Xpole=$_____InversionX \ $Z Ypole=$_____InversionY \ $Z Zpole=$_____InversionZ \ $Z pX=0 pY=1 pZ=0 pRAYON=0 \ $Z > $xTV/COORDONNEES_03$COORD_Y $Z $xrv/inversion.01$X \ $Z CAL1=FAUX \ $Z ne=$_____NPoints \ $Z LISTE_X=$xTV/COORDONNEES_02$COORD_X \ $Z LISTE_Y=$xTV/COORDONNEES_02$COORD_Y \ $Z LISTE_Z=$xTV/COORDONNEES_02$COORD_Z \ $Z LISTE_RAYON=$_____Rayon \ $Z Xpole=$_____InversionX \ $Z Ypole=$_____InversionY \ $Z Zpole=$_____InversionZ \ $Z pX=0 pY=0 pZ=1 pRAYON=0 \ $Z > $xTV/COORDONNEES_03$COORD_Z $Z $DELETE $xTV/COORDONNEES_01$COORD_X $Z $DELETE $xTV/COORDONNEES_01$COORD_Y $Z $DELETE $xTV/COORDONNEES_01$COORD_Z $Z $MV $xTV/COORDONNEES_03$COORD_X $xTV/COORDONNEES_01$COORD_X $Z $MV $xTV/COORDONNEES_03$COORD_Y $xTV/COORDONNEES_01$COORD_Y $Z $MV $xTV/COORDONNEES_03$COORD_Z $xTV/COORDONNEES_01$COORD_Z $Z else $Z endif $Z if ($_____CSpheriques == $EXIST) then $Z # Possibilite introduite le 20080313095345 : par defaut, l'objet genere est en coordonnees # $Z # cartesiennes dans l'espace {X,Y,Z}, mais il est desormais possible de se placer dans # $Z # l'espace {PHI,THETA,0}... # $Z $DELETE $xTV/COORDONNEES_01.PHI $Z $DELETE $xTV/COORDONNEES_01.THETA $Z $xrv/XYZ_RPT.01$X \ $Z CAL1=FAUX \ $Z ne=$_____NPoints \ $Z LISTE_X=$xTV/COORDONNEES_01$COORD_X \ $Z LISTE_Y=$xTV/COORDONNEES_01$COORD_Y \ $Z LISTE_Z=$xTV/COORDONNEES_01$COORD_Z \ $Z pRHO=0 pPHI=1 pTHETA=0 | \ $Z $xrv/normalise.01$X \ $Z ne=$_____NPoints \ $Z fichier== \ $Z mA=0 MA=$dpi forcer_extrema=VRAI \ $Z mR=-1 MR=+1 \ $Z > $xTV/COORDONNEES_01.PHI $Z $xrv/XYZ_RPT.01$X \ $Z CAL1=FAUX \ $Z ne=$_____NPoints \ $Z LISTE_X=$xTV/COORDONNEES_01$COORD_X \ $Z LISTE_Y=$xTV/COORDONNEES_01$COORD_Y \ $Z LISTE_Z=$xTV/COORDONNEES_01$COORD_Z \ $Z pRHO=0 pPHI=0 pTHETA=1 | \ $Z $xrv/normalise.01$X \ $Z ne=$_____NPoints \ $Z fichier== \ $Z mA=0 MA=$pi forcer_extrema=VRAI \ $Z mR=-1 MR=+1 \ $Z > $xTV/COORDONNEES_01.THETA $Z $DELETE $xTV/COORDONNEES_01$COORD_X $Z $DELETE $xTV/COORDONNEES_01$COORD_Y $Z $DELETE $xTV/COORDONNEES_01$COORD_Z $Z $MV $xTV/COORDONNEES_01.PHI $xTV/COORDONNEES_01$COORD_X $Z $MV $xTV/COORDONNEES_01.THETA $xTV/COORDONNEES_01$COORD_Y $Z $xrv/neutre$X \ $Z ne=$_____NPoints \ $Z fichier=0 \ $Z > $xTV/COORDONNEES_01$COORD_Z $Z # Ainsi, on se place dans l'espace {X=PHI,Y=THETA,Z=0}... # $Z else $Z endif