####################################################################################################################################### # # # 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