#######################################################################################################################################
#                                                                                                                                     #
#         G E N E R A T I O N   D ' U N   E N T R E L A C S   A L E A T O I R E  :                                                    #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xiirv/.ENTR.11.1.$U' :                                                                                          #
#                                                                                                                                     #
#                     Jean-Francois Colonna (LACTAMME, 20051108112923).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____NParticule               40

$Z                  setParam            _____NDuplication             3

$Z                  SETParam            _____Aleatoire                $EXIST
$Z                                      # Parametre introduit le 20051117112853 pour permettre a '$xTV/SELECTEUR' d'etre ou pas       #
$Z                                      # aleatoire...                                                                                #

$Z                  setParam            _____Periode                  3
$Z                                      # Parametre introduit le 20051117112853 pour fixer la periode de '$xTV/SELECTEUR' lorsqu'il   #
$Z                                      # n'est pas aleatoire...                                                                      #

$Z                  SETParam            _____Edition                  $NEXIST
$Z                                      # Parametre introduit le 20051110094556 pour permettre l'edition du vecteur '$xTV/SELECTEUR'. #

$Z                  set       NDuplication=$_____NDuplication
$Z                  set       NSegment=2
$Z                  @         NGroupe = $NSegment * $NSegment
$Z                                      # Un segment est fait de deux elements...                                                     #

$Z                  setParam            _____MinX                     0.0
$Z                                      # Parametre introduit le 20051110093640 par "symetrie" avec la coordonnee 'Z'...              #

$Z                  setParam            _____MaxX                     1.0
$Z                                      # Parametre introduit le 20051110093640 par "symetrie" avec la coordonnee 'Z'...              #

$Z                  setParam            _____MinY                     0.0
$Z                                      # Parametre introduit le 20051110093640 par "symetrie" avec la coordonnee 'Z'...              #

$Z                  setParam            _____MaxY                     1.0
$Z                                      # Parametre introduit le 20051110093640 par "symetrie" avec la coordonnee 'Z'...              #

$Z                  setParam            _____MinZ                     0.0
$Z                                      # Parametre introduit le 20051110093640, en particulier pour creer des entrelacs plans.       #

$Z                  setParam            _____MaxZ                     1.0
$Z                                      # Parametre introduit le 20051110093640, en particulier pour creer des entrelacs plans.       #

$Z                                      # A priori les parties communes (1) sont en ROUGE :                                           #

$Z                  setParam            _____Niveau1R_D               $BLANC

$Z                  setParam            _____Niveau1V_D               $NOIR

$Z                  setParam            _____Niveau1B_D               $NOIR

$Z                  setParam            _____Niveau1R_A               $_____Niveau1R_D
$Z                                      # Afin d'assurer la compatibilite anterieure au 20051109095315...                             #

$Z                  setParam            _____Niveau1V_A               $_____Niveau1V_D
$Z                                      # Afin d'assurer la compatibilite anterieure au 20051109095315...                             #

$Z                  setParam            _____Niveau1B_A               $_____Niveau1B_D
$Z                                      # Afin d'assurer la compatibilite anterieure au 20051109095315...                             #

$Z                                      # A priori les parties non communes (2 et 3) sont en VERTE et BLEUE :                         #

$Z                  setParam            _____Niveau2R_D               $NOIR

$Z                  setParam            _____Niveau2V_D               $BLANC

$Z                  setParam            _____Niveau2B_D               $NOIR

$Z                  setParam            _____Niveau2R_A               $_____Niveau2R_D
$Z                                      # Afin d'assurer la compatibilite anterieure au 20051109095315...                             #

$Z                  setParam            _____Niveau2V_A               $_____Niveau2V_D
$Z                                      # Afin d'assurer la compatibilite anterieure au 20051109095315...                             #

$Z                  setParam            _____Niveau2B_A               $_____Niveau2B_D
$Z                                      # Afin d'assurer la compatibilite anterieure au 20051109095315...                             #

$Z                                      # A priori les parties non communes (2 et 3) sont en VERTE et BLEUE :                         #

$Z                  setParam            _____Niveau3R_D               $NOIR

$Z                  setParam            _____Niveau3V_D               $NOIR

$Z                  setParam            _____Niveau3B_D               $BLANC

$Z                  setParam            _____Niveau3R_A               $_____Niveau3R_D
$Z                                      # Afin d'assurer la compatibilite anterieure au 20051109095315...                             #

$Z                  setParam            _____Niveau3V_A               $_____Niveau3V_D
$Z                                      # Afin d'assurer la compatibilite anterieure au 20051109095315...                             #

$Z                  setParam            _____Niveau3B_A               $_____Niveau3B_D
$Z                                      # Afin d'assurer la compatibilite anterieure au 20051109095315...                             #

$Z                  setParam            _____RayonInf                 0.01

$Z                  setParam            _____RayonSup                 $_____RayonInf
$Z                                      # Afin d'assurer la compatibilite anterieure au 20051109094337...                             #

$Z                  setParam            _____Zoom                     0.8

$Z                  setParam            _____RotationOX               0.0

$Z                  setParam            _____RotationOY               0.0

$Z                  setParam            _____RotationOZ               0.0

$Z                  setParam            _____Points                   32

$Z                  setParam            _____NombreR                  8

$Z                  setParam            _____Derivee                  1.0

$Z                  @         NDuplication = $NDuplication * $NSegment
$Z                                      # Afin de parametrer la longueur de recouvrement des zones communes. On notera que            #
$Z                                      # '$NDuplication' doit etre pair afin de ne pas trouver des branches coupees...               #
$Z                  @         DiViSeUr = $NGroupe * $NDuplication
$Z                  @         _____NParticule = $_____NParticule / $DiViSeUr
$Z                  @         _____NParticule = $_____NParticule * $DiViSeUr
$Z                  @         _____NParticuleSG = $_____NParticule / $NGroupe
$Z                  @         _____NParticuleSD = $_____NParticule / $NDuplication
$Z                  @         _____NParticuleSS = $_____NParticule / $NSegment
$Z                                      # Nombre de particules a generer...                                                           #

$Z                  if        (($?_____Graine == $NEXIST) || ($?_____Increment == $NEXIST)) then
$Z                                      # Test introduit le 20051110134856...                                                         #
$Z                            if        (    (    ($?_____Graine == $NEXIST)                                                            \
$Z                                           &&   ($?_____Increment == $EXIST)                                                          \
$Z                                            )                                                                                         \
$Z                                      ||   (    ($?_____Graine == $EXIST)                                                             \
$Z                                           &&   ($?_____Increment == $NEXIST)                                                         \
$Z                                            )                                                                                         \
$Z                                       ) then
$Z                                      # Test introduit le 20051111114933...                                                         #
$Z                                      EROR      "Les parametres '_____Graine' et '_____Increment' ne peuvent qu'exister ensemble."
$Z                            else
$Z                            endif
$Z
$Z                            set       Graine_3355=3355
$Z                            set       Graine_2333=2333
$Z                            set       Graine_2555=2555
$Z                            set       Graine_2777=2777
$Z                            set       Graine_3333=3333
$Z                            set       Graine_3555=3555
$Z                            set       Graine_3777=3777
$Z                            set       Graine_4333=4333
$Z                            set       Graine_4555=4555
$Z                            set       Graine_4777=4777
$Z                            set       Graine_5333=5333
$Z                            set       Graine_5555=5555
$Z                            set       Graine_5777=5777
$Z                            set       Graine_6333=6333
$Z                            set       Graine_6555=6555
$Z                            set       Graine_6777=6777
$Z                            set       Graine_7333=7333
$Z                            set       Graine_7555=7555
$Z                            set       Graine_7777=7777
$Z                            set       Graine_8333=8333
$Z                            set       Graine_8555=8555
$Z                            set       Graine_8777=8777
$Z                                      # Le parametrage des graines de generation aleatoire a ete introduit le 20051110134136...     #
$Z                  else
$Z                            alias     Graines   'set       VaRiAbLe="\!*"                                                       ;    \\
$Z                                                 GenRdn                                                                         ;    \\
$Z                                                 eval      "set $VaRiAbLe=$GenRdnValeur"                                        ;    \\
$Z                                                 unset     VaRiAbLe FiLeT'
$Z                                      # Generateur des differentes graines ...                                                      #
$Z
$Z                            set       GenRdnGraine=$_____Graine
$Z                            set       GenRdnIncrement=$_____Increment
$Z                                      # Parametrage du generateur aleatoire...                                                      #
$Z
$Z                            Graines   Graine_3355
$Z                            Graines   Graine_2333
$Z                            Graines   Graine_2555
$Z                            Graines   Graine_2777
$Z                            Graines   Graine_3333
$Z                            Graines   Graine_3555
$Z                            Graines   Graine_3777
$Z                            Graines   Graine_4333
$Z                            Graines   Graine_4555
$Z                            Graines   Graine_4777
$Z                            Graines   Graine_5333
$Z                            Graines   Graine_5555
$Z                            Graines   Graine_5777
$Z                            Graines   Graine_6333
$Z                            Graines   Graine_6555
$Z                            Graines   Graine_6777
$Z                            Graines   Graine_7333
$Z                            Graines   Graine_7555
$Z                            Graines   Graine_7777
$Z                            Graines   Graine_8333
$Z                            Graines   Graine_8555
$Z                            Graines   Graine_8777
$Z                                      # Ce parametrage des graines de generation aleatoire a ete introduit le 20051110134856...     #
$Z                  endif

$Z                  $DELETE   $xTV/SELECTEUR

$Z                  if        ($_____Aleatoire == $EXIST) then
$Z                            $xrv/val_alea.01$X  ne=$_____NParticuleSD                                                                 \
$Z                                                graine=$Graine_3355                                                                   \
$Z                                                                                                                                |     \
$Z                            $xrv/booleens.01$X  ne=0                                                                                  \
$Z                                                fichier==                                                                             \
$Z                                                exemplaires=$NDuplication                                                             \
$Z                                                                                                            > $xTV/SELECTEUR
$Z                  else
$Z                            $xrv/accumule.01$X  ne=$_____NParticuleSD                                                                 \
$Z                                                fichier=$_____Periode                                                                 \
$Z                                                                                                                                |     \
$Z                            $xrv/SINX.01$X      ne=0                                                                                  \
$Z                                                fichier==                                                                             \
$Z                                                                                                                                |     \
$Z                            $xrv/booleens.01$X  ne=0                                                                                  \
$Z                                                seuil=0                                                                               \
$Z                                                fichier==                                                                             \
$Z                                                exemplaires=$NDuplication                                                             \
$Z                                                                                                            > $xTV/SELECTEUR
$Z                  endif
$Z                                      # Le principe est de generer trois listes de points (representes par les chiffres {1,2,3}) :  #
$Z                                      #                                                                                             #
$Z                                      #                   111111111111111111111111111111111111111111111111111111111111              #
$Z                                      #                   222222222222222222222222222222222222222222222222222222222222              #
$Z                                      #                   333333333333333333333333333333333333333333333333333333333333              #
$Z                                      #                                                                                             #
$Z                                      # Ensuite un vecteur de selection aleatoire booleen est genere ('$xTV/SELECTEUR') :           #
$Z                                      #                                                                                             #
$Z                                      #                   VVVVVVVFFFFFFFVVVFFFFFFVVVVVVVVVVFFFFFFFFFFVVVVVVVFFFFFFFVVV              #
$Z                                      #                                                                                             #
$Z                                      # (ou 'V' et 'F' signifient 'VRAI' et 'FAUX' respectivement). Ensuite les suites de           #
$Z                                      # points precedents sont "trouees" grace a ce vecteur de selection suivant l'association      #
$Z                                      #                                                                                             #
$Z                                      #                   VRAI --> {1}                                                              #
$Z                                      #                   FAUX --> {2,3}                                                            #
$Z                                      #                                                                                             #
$Z                                      # ce qui donne :                                                                              #
$Z                                      #                                                                                             #
$Z                                      #                   1111111       111      1111111111          1111111       111              #
$Z                                      #                          2222222   222222          2222222222       2222222                 #
$Z                                      #                          3333333   333333          3333333333       3333333                 #
$Z                                      #                                                                                             #
$Z                                      # Cela permet ensuite de creer deux nouvelles listes de points en faisant les reunions        #
$Z                                      # {1,2} et {1,3} :                                                                            #
$Z                                      #                                                                                             #
$Z                                      #                   1111111       111      1111111111          1111111       111              #
$Z                                      #                          2222222   222222          2222222222       2222222                 #
$Z                                      #                                                                                             #
$Z                                      #                   1111111       111      1111111111          1111111       111              #
$Z                                      #                          3333333   333333          3333333333       3333333                 #
$Z                                      #                                                                                             #
$Z                                      # soit :                                                                                      #
$Z                                      #                                                                                             #
$Z                                      #                   111111122222221112222221111111111222222222211111112222222                 #
$Z                                      #                   111111133333331113333331111111111333333333311111113333333                 #
$Z                                      #                                                                                             #
$Z                                      # qui sont ensuite concatenees ce qui donne la liste finale des points a visualiser. Ainsi    #
$Z                                      # les points '1' designent les "troncs" commun, alors que les '2' et les '3' designent les    #
$Z                                      # branches paralleles...                                                                      #
$Z                                      #                                                                                             #
$Z                                      # Le 20051117093618, l'option "booleens=VRAI" de 'v $xrv/val_alea.01$K booleens=" a ete       #
$Z                                      # remplace par l'appel a 'v $xrv/booleens.01$K' ; cette facon de faire est plus generale      #
$Z                                      # et permettra, en particulier, de generer un fichier '$xTV/SELECTEUR' non aleatoire...       #

$Z                  if        ($_____Edition == $EXIST) then
$Z                            saut
$Z                            echo      "Vecteur de Selection :"
$Z                            saut
$Z
$Z                            $CA       $xTV/SELECTEUR                                                                            |     \
$Z                            $R        "$K_NL" "$K_BLANC"                                                                        |     \
$Z                            $SE       -e "s/$NEXIST/F/g"                                                                              \
$Z                                      -e "s/$EXIST/V/g"                                                                               \
$Z                                      -e "s/  *//g"                                                                                   \
$Z                                      -e "s/\(V\)\(F\)/\1 \2/g"                                                                       \
$Z                                      -e "s/\(F\)\(V\)/\1 \2/g"                                                                       \
$Z                                      -e "s/^/$Prompt$Prompt/"
$Z
$Z                            saut
$Z                            saut
$Z                            saut
$Z                                      # Edition introduite le 20051110094556...                                                     #
$Z                  else
$Z                  endif

$Z                  alias     GenAlea   'set       No=\!:1 ; set Gr=\!:2 ; set In=\!:3 ; set Su=\!:4 ; set Ex=\!:5 ; set FiR=\!:6 ;    \\
$Z                                       $DELETE   $FiR                                                                           ;    \\
$Z                                       $xrv/val_alea.01$X  ne=$No graine=$Gr                                                         \\
$Z                                                           LISTE_BORNES_INFERIEURES=$In LISTE_BORNES_SUPERIEURES=$Su                 \\
$Z                                                           exemplaires=$Ex                                            > $FiR    ;    \\
$Z                                       unset     No Gr In Su Ex FiR'
$Z                  alias     GenAleaC  'set       No=\!:1 ; set Gr=\!:2 ; set In=\!:3 ; set Su=\!:4 ; set Ex=\!:5 ; set FiR=\!:6 ;    \\
$Z                                       $DELETE   $FiR                                                                           ;    \\
$Z                             set       InD=`calcul -($Su-$In)/$_____FBrownien` ; set SuD=`calcul +($Su-$In)/$_____FBrownien`    ;    \\
$Z                                       $xrv/val_alea.01$X  ne=$No graine=$Gr brownien=VRAI iterer=VRAI                               \\
$Z                                                 LISTE_BORNES_INFERIEURES_CUMULEES=$In LISTE_BORNES_SUPERIEURES_CUMULEES=$Su         \\
$Z                                                 LISTE_BORNES_INFERIEURES=$InD LISTE_BORNES_SUPERIEURES=$SuD                         \\
$Z                                                           exemplaires=$Ex                                            > $FiR    ;    \\
$Z                                       unset     No Gr In Su InD SuD Ex FiR'
$Z                                      # Alias introduit le 20051116130349...                                                        #

$Z                  alias     GenCOND   'set       No=\!:1 ; set FiV=\!:2 ; set FiF=\!:3 ; set FiR=\!:4                           ;    \\
$Z                                       $DELETE   $FiR                                                                           ;    \\
$Z                                       $xrv/COND.11$X      ne=$No                                                                    \\
$Z                                                           selection=$xTV/SELECTEUR                                                  \\
$Z                                                           fichierV=$FiV                                                             \\
$Z                                                           fichierF=$FiF                                              > $FiR    ;    \\
$Z                                       unset     No FiV FiF FiR'

$Z                  alias     GenCA     'set       FiA1=\!:1 ; set FiA2=\!:2 ; set FiR=\!:3                                       ;    \\
$Z                                       $DELETE   $FiR                                                                           ;    \\
$Z                                       $CA                                                                                           \\
$Z                                                           $FiA1                                                                     \\
$Z                                                           $FiA2                                                      > $FiR    ;    \\
$Z                                       decaleC   $FiR      1                                                                    ;    \\
$Z                                       unset     FiA1 FiA2 FiR'

$Z                  alias     GenNeut   'set       No=\!:1 ; set Val=\!:2 ; set Ex=\!:3 ; set FiR=\!:4                            ;    \\
$Z                                       $DELETE   $FiR                                                                           ;    \\
$Z                                       $xrv/neutre$X       ne=$No                                                                    \\
$Z                                                           fichier=$Val                                                              \\
$Z                                                           exemplaires=$Ex                                            > $FiR    ;    \\
$Z                                       unset     No Val Ex FiR'
$Z                                      # On notera qu'a la date du 20051109112206, 'GenNeut' ne sert plus puisque c'est dorenavant   #
$Z                                      # 'GenAlea' qui est uitilise pour generer les fichiers de type '$xTV/COULEURS'. Malgre tout,  #
$Z                                      # 'GenNeut' est conserve car cela peut servir un jour...                                      #

$Z                  if        ($?_____FBrownien == $EXIST) then
$Z                                      # Parametre introduit le 20051116130349 pour permettre la generation des coordonnees          #
$Z                                      # {X,Y,Z} via un mouvement brownien...                                                        #
$Z                            GenAleaC  $_____NParticuleSG $Graine_2333 $_____MinX $_____MaxX $NSegment $xTV/COORD.1$COORD_X
$Z                            GenAleaC  $_____NParticuleSG $Graine_2555 $_____MinX $_____MaxX $NSegment $xTV/COORD.2$COORD_X
$Z                            GenAleaC  $_____NParticuleSG $Graine_2777 $_____MinX $_____MaxX $NSegment $xTV/COORD.3$COORD_X

$Z                            GenAleaC  $_____NParticuleSG $Graine_3333 $_____MinY $_____MaxY $NSegment $xTV/COORD.1$COORD_Y
$Z                            GenAleaC  $_____NParticuleSG $Graine_3555 $_____MinY $_____MaxY $NSegment $xTV/COORD.2$COORD_Y
$Z                            GenAleaC  $_____NParticuleSG $Graine_3777 $_____MinY $_____MaxY $NSegment $xTV/COORD.3$COORD_Y

$Z                            GenAleaC  $_____NParticuleSG $Graine_4333 $_____MinZ $_____MaxZ $NSegment $xTV/COORD.1$COORD_Z
$Z                            GenAleaC  $_____NParticuleSG $Graine_4555 $_____MinZ $_____MaxZ $NSegment $xTV/COORD.2$COORD_Z
$Z                            GenAleaC  $_____NParticuleSG $Graine_4777 $_____MinZ $_____MaxZ $NSegment $xTV/COORD.3$COORD_Z
$Z                  else
$Z                            GenAlea   $_____NParticuleSG $Graine_2333 $_____MinX $_____MaxX $NSegment $xTV/COORD.1$COORD_X
$Z                            GenAlea   $_____NParticuleSG $Graine_2555 $_____MinX $_____MaxX $NSegment $xTV/COORD.2$COORD_X
$Z                            GenAlea   $_____NParticuleSG $Graine_2777 $_____MinX $_____MaxX $NSegment $xTV/COORD.3$COORD_X

$Z                            GenAlea   $_____NParticuleSG $Graine_3333 $_____MinY $_____MaxY $NSegment $xTV/COORD.1$COORD_Y
$Z                            GenAlea   $_____NParticuleSG $Graine_3555 $_____MinY $_____MaxY $NSegment $xTV/COORD.2$COORD_Y
$Z                            GenAlea   $_____NParticuleSG $Graine_3777 $_____MinY $_____MaxY $NSegment $xTV/COORD.3$COORD_Y

$Z                            GenAlea   $_____NParticuleSG $Graine_4333 $_____MinZ $_____MaxZ $NSegment $xTV/COORD.1$COORD_Z
$Z                            GenAlea   $_____NParticuleSG $Graine_4555 $_____MinZ $_____MaxZ $NSegment $xTV/COORD.2$COORD_Z
$Z                            GenAlea   $_____NParticuleSG $Graine_4777 $_____MinZ $_____MaxZ $NSegment $xTV/COORD.3$COORD_Z
$Z                  endif

$Z                  GenCOND   $_____NParticuleSS $xTV/COORD.1$COORD_X $xTV/COORD.2$COORD_X $xTV/COORD.12$COORD_X
$Z                  GenCOND   $_____NParticuleSS $xTV/COORD.1$COORD_X $xTV/COORD.3$COORD_X $xTV/COORD.13$COORD_X

$Z                  GenCOND   $_____NParticuleSS $xTV/COORD.1$COORD_Y $xTV/COORD.2$COORD_Y $xTV/COORD.12$COORD_Y
$Z                  GenCOND   $_____NParticuleSS $xTV/COORD.1$COORD_Y $xTV/COORD.3$COORD_Y $xTV/COORD.13$COORD_Y

$Z                  GenCOND   $_____NParticuleSS $xTV/COORD.1$COORD_Z $xTV/COORD.2$COORD_Z $xTV/COORD.12$COORD_Z
$Z                  GenCOND   $_____NParticuleSS $xTV/COORD.1$COORD_Z $xTV/COORD.3$COORD_Z $xTV/COORD.13$COORD_Z

$Z                  GenCA     $xTV/COORD.12$COORD_X $xTV/COORD.13$COORD_X $xTV/COORDONNEES$COORD_X

$Z                  GenCA     $xTV/COORD.12$COORD_Y $xTV/COORD.13$COORD_Y $xTV/COORDONNEES$COORD_Y

$Z                  GenCA     $xTV/COORD.12$COORD_Z $xTV/COORD.13$COORD_Z $xTV/COORDONNEES$COORD_Z
$Z                                      # Generation des coordonnees des points...                                                    #

$Z                  GenAlea   $_____NParticuleSG $Graine_5333 $_____Niveau1R_D $_____Niveau1R_A $NSegment $xTV/COUL.1$ROUGE
$Z                  GenAlea   $_____NParticuleSG $Graine_5555 $_____Niveau2R_D $_____Niveau2R_A $NSegment $xTV/COUL.2$ROUGE
$Z                  GenAlea   $_____NParticuleSG $Graine_5777 $_____Niveau3R_D $_____Niveau3R_A $NSegment $xTV/COUL.3$ROUGE

$Z                  GenAlea   $_____NParticuleSG $Graine_6333 $_____Niveau1V_D $_____Niveau1V_A $NSegment $xTV/COUL.1$VERTE
$Z                  GenAlea   $_____NParticuleSG $Graine_6555 $_____Niveau2V_D $_____Niveau2V_A $NSegment $xTV/COUL.2$VERTE
$Z                  GenAlea   $_____NParticuleSG $Graine_6777 $_____Niveau3V_D $_____Niveau3V_A $NSegment $xTV/COUL.3$VERTE

$Z                  GenAlea   $_____NParticuleSG $Graine_7333 $_____Niveau1B_D $_____Niveau1B_A $NSegment $xTV/COUL.1$BLEUE
$Z                  GenAlea   $_____NParticuleSG $Graine_7555 $_____Niveau2B_D $_____Niveau2B_A $NSegment $xTV/COUL.2$BLEUE
$Z                  GenAlea   $_____NParticuleSG $Graine_7777 $_____Niveau3B_D $_____Niveau3B_A $NSegment $xTV/COUL.3$BLEUE

$Z                  GenCOND   $_____NParticuleSS $xTV/COUL.1$ROUGE $xTV/COUL.2$ROUGE $xTV/COUL.12$ROUGE
$Z                  GenCOND   $_____NParticuleSS $xTV/COUL.1$ROUGE $xTV/COUL.3$ROUGE $xTV/COUL.13$ROUGE

$Z                  GenCOND   $_____NParticuleSS $xTV/COUL.1$VERTE $xTV/COUL.2$VERTE $xTV/COUL.12$VERTE
$Z                  GenCOND   $_____NParticuleSS $xTV/COUL.1$VERTE $xTV/COUL.3$VERTE $xTV/COUL.13$VERTE

$Z                  GenCOND   $_____NParticuleSS $xTV/COUL.1$BLEUE $xTV/COUL.2$BLEUE $xTV/COUL.12$BLEUE
$Z                  GenCOND   $_____NParticuleSS $xTV/COUL.1$BLEUE $xTV/COUL.3$BLEUE $xTV/COUL.13$BLEUE

$Z                  GenCA     $xTV/COUL.12$ROUGE $xTV/COUL.13$ROUGE $xTV/COULEURS$ROUGE

$Z                  GenCA     $xTV/COUL.12$VERTE $xTV/COUL.13$VERTE $xTV/COULEURS$VERTE

$Z                  GenCA     $xTV/COUL.12$BLEUE $xTV/COUL.13$BLEUE $xTV/COULEURS$BLEUE
$Z                                      # Generation des couleurs des points...                                                       #

$Z                  GenAlea   $_____NParticuleSG $Graine_8333 $_____RayonInf $_____RayonSup $NSegment $xTV/RAYON.1
$Z                  GenAlea   $_____NParticuleSG $Graine_8555 $_____RayonInf $_____RayonSup $NSegment $xTV/RAYON.2
$Z                  GenAlea   $_____NParticuleSG $Graine_8777 $_____RayonInf $_____RayonSup $NSegment $xTV/RAYON.3

$Z                  GenCOND   $_____NParticuleSS $xTV/RAYON.1 $xTV/RAYON.2 $xTV/RAYON.12
$Z                  GenCOND   $_____NParticuleSS $xTV/RAYON.1 $xTV/RAYON.3 $xTV/RAYON.13

$Z                  GenCA     $xTV/RAYON.12 $xTV/RAYON.13 $xTV/RAYONS
$Z                                      # Generation des rayons des points...                                                         #

$Z                  $xrv/particule.10$X np=1 iterations=$_____NParticule                                                                \
$Z                                      LISTE_X=$xTV/COORDONNEES$COORD_X                                                                \
$Z                                      LISTE_Y=$xTV/COORDONNEES$COORD_Y                                                                \
$Z                                      LISTE_Z=$xTV/COORDONNEES$COORD_Z                                                                \
$Z                                      LISTE_RAYON=$xTV/RAYONS                                                                         \
$Z                                      LISTE_ROUGE=$xTV/COULEURS$ROUGE                                                                 \
$Z                                      LISTE_VERTE=$xTV/COULEURS$VERTE                                                                 \
$Z                                      LISTE_BLEUE=$xTV/COULEURS$BLEUE                                                                 \
$Z                                      Lz=1000 ZOOM=$_____Zoom                                                                         \
$Z                                      ROTATION_OX=$_____RotationOX                                                                    \
$Z                                      ROTATION_OY=$_____RotationOY                                                                    \
$Z                                      ROTATION_OZ=$_____RotationOZ                                                                    \
$Z                                      isoles=FAUX chainer=FAUX                                                                        \
$Z                                      ajuster_points=VRAI points=$_____Points nombreR=$_____NombreR                                   \
$Z                                      cubique=VRAI LISTE_dX=$_____Derivee LISTE_dY=$_____Derivee LISTE_dZ=$_____Derivee               \
$Z                                      RVB=VRAI                                                                                        \
$Z                                      R=$_____ImageR                                                                                  \
$Z                                      chiffres=0                                                                                      \
$Z                                                                                                                      $formatI
$Z                                      # Visualisation de l'entrelacs...                                                             #

$Z                  $DELETE   $xTV/SELECTEUR
$Z                  $DELETE   $xTV/COORD.1$COORD_X
$Z                  $DELETE   $xTV/COORD.2$COORD_X
$Z                  $DELETE   $xTV/COORD.3$COORD_X
$Z                  $DELETE   $xTV/COORD.1$COORD_Y
$Z                  $DELETE   $xTV/COORD.2$COORD_Y
$Z                  $DELETE   $xTV/COORD.3$COORD_Y
$Z                  $DELETE   $xTV/COORD.1$COORD_Z
$Z                  $DELETE   $xTV/COORD.2$COORD_Z
$Z                  $DELETE   $xTV/COORD.3$COORD_Z
$Z                  $DELETE   $xTV/COORD.12$COORD_X
$Z                  $DELETE   $xTV/COORD.13$COORD_X
$Z                  $DELETE   $xTV/COORD.12$COORD_Y
$Z                  $DELETE   $xTV/COORD.13$COORD_Y
$Z                  $DELETE   $xTV/COORD.12$COORD_Z
$Z                  $DELETE   $xTV/COORD.13$COORD_Z
$Z                  $DELETE   $xTV/COORDONNEES$COORD_X
$Z                  $DELETE   $xTV/COORDONNEES$COORD_Y
$Z                  $DELETE   $xTV/COORDONNEES$COORD_Z
$Z                  $DELETE   $xTV/COUL.1$ROUGE
$Z                  $DELETE   $xTV/COUL.2$ROUGE
$Z                  $DELETE   $xTV/COUL.3$ROUGE
$Z                  $DELETE   $xTV/COUL.1$VERTE
$Z                  $DELETE   $xTV/COUL.2$VERTE
$Z                  $DELETE   $xTV/COUL.3$VERTE
$Z                  $DELETE   $xTV/COUL.1$BLEUE
$Z                  $DELETE   $xTV/COUL.2$BLEUE
$Z                  $DELETE   $xTV/COUL.3$BLEUE
$Z                  $DELETE   $xTV/COUL.12$ROUGE
$Z                  $DELETE   $xTV/COUL.13$ROUGE
$Z                  $DELETE   $xTV/COUL.12$VERTE
$Z                  $DELETE   $xTV/COUL.13$VERTE
$Z                  $DELETE   $xTV/COUL.12$BLEUE
$Z                  $DELETE   $xTV/COUL.13$BLEUE
$Z                  $DELETE   $xTV/COULEURS$ROUGE
$Z                  $DELETE   $xTV/COULEURS$VERTE
$Z                  $DELETE   $xTV/COULEURS$BLEUE
$Z                  $DELETE   $xTV/RAYON.1
1Z                  $DELETE   $xTV/RAYON.2
$Z                  $DELETE   $xTV/RAYON.3
$Z                  $DELETE   $xTV/RAYONS



Copyright © Jean-François Colonna, 2019-2021.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / Ecole Polytechnique, 2019-2021.