#######################################################################################################################################
# #
# T H E N O D E D E " T H E G A R D E N O F R A M A " D ' A R T H U R C . C L A R K E : #
# #
# #
# Author of '$xiirv/.NODE.11.1.$U' : #
# #
# Jean-Francois COLONNA (LACTAMME, 20221011113638). #
# #
#######################################################################################################################################
$Z setParam _____RayonLiens 0.02
$Z setParam _____RayonSpheres 0.05
$Z # Parametres introduits le 20221022095933... #
$Z setParam _____Palette "$K_VIDE"
$Z setParam _____Zoom 1
$Z setParam _____RotationOX 0
$Z setParam _____RotationOY 0
$Z setParam _____RotationOZ 0
$Z setParam _____Zobservateur `GetParam $xrv/particule.10$X eloignement_Z_observateur`
$Z # Parametre introduit le 20221022095933 suite a l'anomalie et l'bservation faite le #
$Z # 'v $xrv/champs_5.1A$I 20221022102442'... #
#20221011161044____:$Z setParam _____DistanceMini 0.010 #
$Z setParam _____DistanceMini 0.015
$Z setParam _____ParticulePara "$K_VIDE"
$Z FilSTmpB LiStEPoInTs
$Z set RayonGlobal=1
$Z set cOX=0
$Z set cOY=0
$Z set cOZ=0
$Z # Definition de l'origine O. #
$Z set RougeLiens=$GRIS_4
$Z set VerteLiens=$GRIS_4
$Z set BleueLiens=$GRIS_4
$Z set RayonLiens=$_____RayonLiens
$Z set RougeSpheres=$GRIS_8
$Z set VerteSpheres=$GRIS_6
$Z set BleueSpheres=$GRIS_0
$Z set RayonSpheres=$_____RayonSpheres
$Z # Le "Node" est un tetraedre dont la base ABC est dans le plan {OX,OY} et le sommet D sur #
$Z # l'axe 'OZ'. Les quatre faces sont des triangles equilateraux. #
$Z set cAX=`calcul $RayonGlobal*cos((0*$dpi)/3)`
$Z set cAY=`calcul $RayonGlobal*sin((0*$dpi)/3)`
$Z set cAZ=$cOZ
$Z set cBX=`calcul $RayonGlobal*cos((2*$dpi)/3)`
$Z set cBY=`calcul $RayonGlobal*sin((2*$dpi)/3)`
$Z set cBZ=$cOZ
$Z set cCX=`calcul $RayonGlobal*cos((4*$dpi)/3)`
$Z set cCY=`calcul $RayonGlobal*sin((4*$dpi)/3)`
$Z set cCZ=$cOZ
$Z # On fait ainsi trois rotations de 2.pi/3 dans le plan complexe... #
$Z set cDX=$cOX
$Z set cDY=$cOY
$Z set lAB=`calcul sqrt(pow($cBX-$cAX,2)+pow($cBY-$cAY,2))`
$Z set lAD=$lAB
$Z set cDZ=`calcul sqrt(pow($lAD,2)-pow($cAX,2))`
$Z alias Genere 'set CoOrX=\!:1 ; set CoOrY=\!:2 ; set CoOrZ=\!:3 ; \\
$Z set RoUgE=\!:4 ; set VeRtE=\!:5 ; set BlEuE=\!:6 ; set RaYoN=\!:7 ; \\
$Z echo "$CoOrX" >>! $LiStEPoInTs$COORD_X ; \\
$Z echo "$CoOrY" >>! $LiStEPoInTs$COORD_Y ; \\
$Z echo "$CoOrZ" >>! $LiStEPoInTs$COORD_Z ; \\
$Z if ("$_____Palette" == "$K_VIDE") echo "$RoUgE" >>! $LiStEPoInTs$ROUGE ; \\
$Z if ("$_____Palette" == "$K_VIDE") echo "$VeRtE" >>! $LiStEPoInTs$VERTE ; \\
$Z if ("$_____Palette" == "$K_VIDE") echo "$BlEuE" >>! $LiStEPoInTs$BLEUE ; \\
$Z echo "$RaYoN" >>! $LiStEPoInTs$RAYON ; \\
$Z unset CoOrX CoOrY CoOrZ RoUgE VeRtE BlEuE RaYoN'
$Z # Generateur des differents sommets... #
$Z Genere "$cAX\n$cBX" "$cAY\n$cBY" "$cAZ\n$cBZ" \
$Z "$RougeLiens\n$RougeLiens" "$VerteLiens\n$VerteLiens" "$BleueLiens\n$BleueLiens" \
$Z "$RayonLiens\n$RayonLiens"
$Z # Definition du segment AB. #
$Z Genere "$cBX\n$cCX" "$cBY\n$cCY" "$cBZ\n$cCZ" \
$Z "$RougeLiens\n$RougeLiens" "$VerteLiens\n$VerteLiens" "$BleueLiens\n$BleueLiens" \
$Z "$RayonLiens\n$RayonLiens"
$Z # Definition du segment BC. #
$Z Genere "$cCX\n$cAX" "$cCY\n$cAY" "$cCZ\n$cAZ" \
$Z "$RougeLiens\n$RougeLiens" "$VerteLiens\n$VerteLiens" "$BleueLiens\n$BleueLiens" \
$Z "$RayonLiens\n$RayonLiens"
$Z # Definition du segment CA. #
$Z Genere "$cAX\n$cDX" "$cAY\n$cDY" "$cAZ\n$cDZ" \
$Z "$RougeLiens\n$RougeLiens" "$VerteLiens\n$VerteLiens" "$BleueLiens\n$BleueLiens" \
$Z "$RayonLiens\n$RayonLiens"
$Z # Definition du segment AD. #
$Z Genere "$cBX\n$cDX" "$cBY\n$cDY" "$cBZ\n$cDZ" \
$Z "$RougeLiens\n$RougeLiens" "$VerteLiens\n$VerteLiens" "$BleueLiens\n$BleueLiens" \
$Z "$RayonLiens\n$RayonLiens"
$Z # Definition du segment BD. #
$Z Genere "$cCX\n$cDX" "$cCY\n$cDY" "$cCZ\n$cDZ" \
$Z "$RougeLiens\n$RougeLiens" "$VerteLiens\n$VerteLiens" "$BleueLiens\n$BleueLiens" \
$Z "$RayonLiens\n$RayonLiens"
$Z # Definition du segment CD. #
$Z Genere "$cAX\n$cAX" "$cAY\n$cAY" "$cAZ\n$cAZ" \
$Z "$RougeSpheres\n$RougeSpheres" "$VerteSpheres\n$VerteSpheres" "$BleueSpheres\n$BleueSpheres" \
$Z "$RayonSpheres\n$RayonSpheres"
$Z # Definition du sommet A. #
$Z Genere "$cBX\n$cBX" "$cBY\n$cBY" "$cBZ\n$cBZ" \
$Z "$RougeSpheres\n$RougeSpheres" "$VerteSpheres\n$VerteSpheres" "$BleueSpheres\n$BleueSpheres" \
$Z "$RayonSpheres\n$RayonSpheres"
$Z # Definition du sommet B. #
$Z Genere "$cCX\n$cCX" "$cCY\n$cCY" "$cCZ\n$cCZ" \
$Z "$RougeSpheres\n$RougeSpheres" "$VerteSpheres\n$VerteSpheres" "$BleueSpheres\n$BleueSpheres" \
$Z "$RayonSpheres\n$RayonSpheres"
$Z # Definition du sommet C. #
$Z Genere "$cDX\n$cDX" "$cDY\n$cDY" "$cDZ\n$cDZ" \
$Z "$RougeSpheres\n$RougeSpheres" "$VerteSpheres\n$VerteSpheres" "$BleueSpheres\n$BleueSpheres" \
$Z "$RayonSpheres\n$RayonSpheres"
$Z # Definition du sommet D. #
$Z set NPoInTsX=`$CA $LiStEPoInTs$COORD_X | $WCl`
$Z set NPoInTsY=`$CA $LiStEPoInTs$COORD_Y | $WCl`
$Z set NPoInTsZ=`$CA $LiStEPoInTs$COORD_Z | $WCl`
$Z set NPoInTs=`$xcg/MIN3.01$X x=$NPoInTsX y=$NPoInTsY z=$NPoInTsZ`
$Z set CoLoRiAgE="$K_VIDE"
$Z if ("$_____Palette" == "$K_VIDE") then
$Z set CoLoRiAgE="$CoLoRiAgE"" LISTE_ROUGE=$LiStEPoInTs$ROUGE"
$Z set CoLoRiAgE="$CoLoRiAgE"" LISTE_VERTE=$LiStEPoInTs$VERTE"
$Z set CoLoRiAgE="$CoLoRiAgE"" LISTE_BLEUE=$LiStEPoInTs$BLEUE"
$Z else
$Z $xci/valeurs_inte$X \
$Z premiere=1 derniere=$NPoInTs \
$Z lineaire=VRAI \
$Z vD=$NOIR_PLANCHER vA=$BLANC \
$Z entiers=VRAI \
$Z > $LiStEPoInTs$NIVEAU
$Z set CoLoRiAgE="$CoLoRiAgE"" LISTE_NIVEAU=$LiStEPoInTs$NIVEAU"
$Z set CoLoRiAgE="$CoLoRiAgE"" p=$_____Palette"
$Z endif
$Z $xrv/particule.10$X \
$Z np=1 \
$Z iterations=$NPoInTs \
$Z AXYZ=1 BXYZ=0 \
$Z LISTE_X=$LiStEPoInTs$COORD_X \
$Z LISTE_Y=$LiStEPoInTs$COORD_Y \
$Z LISTE_Z=$LiStEPoInTs$COORD_Z \
$Z LISTE_RAYON=$LiStEPoInTs$RAYON \
$Z $CoLoRiAgE \
$Z ZOOM=$_____Zoom \
$Z ROTATION_OX=$_____RotationOX \
$Z ROTATION_OY=$_____RotationOY \
$Z ROTATION_OZ=$_____RotationOZ \
$Z eloignement_Z_observateur=$_____Zobservateur \
$Z isoles=FAUX chainer=FAUX ajuster_points=VRAI equidistance=VRAI \
$Z distance_minimale=$_____DistanceMini \
$Z Lz=100 \
$Z editer_extrema_hors=FAUX \
$Z $_____ParticulePara \
$Z chiffres=0 \
$Z R=$_____ImagesR \
$Z $formatI
$Z FilSTmpE LiStEPoInTs