#!/bin/csh

#######################################################################################################################################
#                                                                                                                                     #
#         G E N E R A T I O N   D ' U N   C H A M P   F R A C T A L   A   M A I L L A G E   D I S T O R D U  :                        #
#                                                                                                                                     #
#                                                                                                                                     #
#         Utilisation :                                                                                                               #
#                                                                                                                                     #
#                   $xci/fractal.11$vv$Z     <ImageR> [<Conv> [<FactX> [<FactY> [<Graine> [<ArgF> [<ArgX> [<ArgY> [<Methode>]]]]]]]]  #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xci/fractal.11$vv$Z' :                                                                                          #
#                                                                                                                                     #
#                     Jean-Francois Colonna (LACTAMME, 20210604094916).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

set       ImageR=$1
set       Convertir=$2
set       FacteurX=$3
set       FacteurY=$4
set       Graine=$5
set       ArgumentsF="$6"
set       ArgumentsX="$7"
set       ArgumentsY="$8"
set       Methode="$9"

setArgum  Convertir                     $EXIST

setArgum  FacteurX                      0.1

setArgum  FacteurY                      0.1

setArgum  Methode                       `GetParam $xci/distord.01$X methode`

set       FoRmAtIR="$formatIR"
set       FoRmAtA=`env | $GRE '^format_' | $GRE "$formatI"'$' | $SE -e "s/^format_//" -e 's/^\([^=][^=]*\).*$/\1/'`
                                        # Recuperation du format courant d'image...                                                   #

eval      "$FoRmAtA 2"
                                        # Doublement de la taille des images afin de ne pas voir ensuite les distorsions sur les      #
                                        # quatre cotes...                                                                             #

FilSTmpB  FImAgEs

set       ArGuMeNtS="standard=FAUX renormaliser=VRAI"
set       ItErAtIoNsXY=4
set       GrAiNe=$Graine

$xci/fract_2D.01$X  $ArGuMeNtS                                                                                                          \
                    graine=$GrAiNe                                                                                                      \
                    $ArgumentsF                                                                                                         \
                    R=$FImAgEs.F                                                                                                        \
                                                                                                                        $formatI
                                        # Generation du champ fractal.                                                                #

@         GrAiNe = $GrAiNe + 1

$xci/fract_2D.01$X  $ArGuMeNtS                                                                                                          \
                    graine=$GrAiNe                                                                                                      \
                    iterations=$ItErAtIoNsXY                                                                                            \
                    $ArgumentsX                                                                                                         \
                    R=$FImAgEs$COORD_X                                                                                                  \
                                                                                                                        $formatI
                                        # Generation du champ fractal de distorsion en 'X'.                                           #

@         GrAiNe = $GrAiNe + 1

$xci/fract_2D.01$X  $ArGuMeNtS                                                                                                          \
                    graine=$GrAiNe                                                                                                      \
                    iterations=$ItErAtIoNsXY                                                                                            \
                    $ArgumentsY                                                                                                         \
                    R=$FImAgEs$COORD_Y                                                                                                  \
                                                                                                                        $formatI
                                        # Generation du champ fractal de distorsion en 'Y'.                                           #

$xci/distord.01$X   standard=FAUX                                                                                                       \
                    A=$FImAgEs.F                                                                                                        \
                    FX=$FacteurX X=$FImAgEs$COORD_X                                                                                     \
                    FY=$FacteurY Y=$FImAgEs$COORD_Y                                                                                     \
                    methode=$Methode                                                                                                    \
                    R=$FImAgEs.FD                                                                                                       \
                                                                                                                        $formatI
                                        # Distorsion du champ fractal destinee a faire disparaitre les maillages rectilignes          #
                                        # inherents a la methode de generation...                                                     #

$xci/format.01$X    standard=FAUX                                                                                                       \
                    A=$FImAgEs.FD                                                                                                       \
                                                                                                                        $formatI        \
                    mode=7                                                                                                              \
                    R=$ImageR                                                                                                           \
                                                                                                                        $FoRmAtIR
                                        # Ainsi, on espere supprimer les effets de bord de la distorsion en ne conservant que le      #
                                        # centre de '$FImAgEs.FD'...                                                                  #

FilSTmpE  FImAgEs

eval      "$FoRmAtA 1"
                                        # Retour au format initial...                                                                 #

$xci/normalise.01$X                                                                                                                     \
                    A=$ImageR                                                                                                           \
                    R=$ImageR                                                                                                           \
                                                                                                                        $formatI

if        ($Convertir == $EXIST) then
          $xci/acces$X                                                                                                                  \
                              A=$ImageR                                                                                                 \
                              standard=FAUX zero=FAUX                                                                                   \
                              R=$ImageR                                                                                                 \
                                                                                                                        $formatI
else
endif



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