/*************************************************************************************************************************************/
/* */
/* D E F O R M A T I O N D E S C O O R D O N N E E S : */
/* */
/* */
/* Author of '$xrv/deforme.11$K' : */
/* */
/* Jean-Francois COLONNA (LACTAMME, 20150523075229). */
/* */
/*************************************************************************************************************************************/
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* I N T E R F A C E ' listG ' : */
/* */
/* */
/* :Debut_listG: */
/* :Fin_listG: */
/* */
/*************************************************************************************************************************************/
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* D I R E C T I V E S S P E C I F I Q U E S D E C O M P I L A T I O N : */
/* */
/*************************************************************************************************************************************/
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* F I C H I E R S D ' I N C L U D E S : */
/* */
/*************************************************************************************************************************************/
#include INCLUDES_BASE
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* V A L E U R S I M P L I C I T E S D E S P A R A M E T R E S : */
/* */
/*************************************************************************************************************************************/
#include xci/sequence.01.I"
/* ATTENTION, on definit ainsi le symbole 'DERNIERE_IMAGE' qui ne sert a rien ici, puisque */
/* c'est en effet 'Zmax' qui joue ce role... */
#define ALBUM_DX_PERIODISER_X \
FAUX
#define ALBUM_DX_SYMETRISER_X \
FAUX
#define ALBUM_DX_PROLONGER__X \
FAUX
#define ALBUM_DX_PERIODISER_Y \
FAUX
#define ALBUM_DX_SYMETRISER_Y \
FAUX
#define ALBUM_DX_PROLONGER__Y \
FAUX
#define ALBUM_DX_PERIODISER_Z \
FAUX
#define ALBUM_DX_SYMETRISER_Z \
FAUX
#define ALBUM_DX_PROLONGER__Z \
FAUX
#define ALBUM_DX_NIVEAU_HORS_ALBUM \
FZERO
#define ALBUM_DY_PERIODISER_X \
FAUX
#define ALBUM_DY_SYMETRISER_X \
FAUX
#define ALBUM_DY_PROLONGER__X \
FAUX
#define ALBUM_DY_PERIODISER_Y \
FAUX
#define ALBUM_DY_SYMETRISER_Y \
FAUX
#define ALBUM_DY_PROLONGER__Y \
FAUX
#define ALBUM_DY_PERIODISER_Z \
FAUX
#define ALBUM_DY_SYMETRISER_Z \
FAUX
#define ALBUM_DY_PROLONGER__Z \
FAUX
#define ALBUM_DY_NIVEAU_HORS_ALBUM \
FZERO
#define ALBUM_DZ_PERIODISER_X \
FAUX
#define ALBUM_DZ_SYMETRISER_X \
FAUX
#define ALBUM_DZ_PROLONGER__X \
FAUX
#define ALBUM_DZ_PERIODISER_Y \
FAUX
#define ALBUM_DZ_SYMETRISER_Y \
FAUX
#define ALBUM_DZ_PROLONGER__Y \
FAUX
#define ALBUM_DZ_PERIODISER_Z \
FAUX
#define ALBUM_DZ_SYMETRISER_Z \
FAUX
#define ALBUM_DZ_PROLONGER__Z \
FAUX
#define ALBUM_DZ_NIVEAU_HORS_ALBUM \
FZERO
#define ALPHA_X \
FU
#define ALPHA_Y \
FU
#define ALPHA_Z \
FU
/* Multiplicateurs des coordonnees (introduits le 20150525213903). */
#define BETA__X \
FZERO
#define BETA__Y \
FZERO
#define BETA__Z \
FZERO
/* Translateurs des coordonnees (introduits le 20150525213903). */
#define ALPHA_DX \
FU
#define ALPHA_DY \
FU
#define ALPHA_DZ \
FU
/* Multiplicateurs des deformations (introduits le 20150604110755). */
#define BETA__DX \
FZERO
#define BETA__DY \
FZERO
#define BETA__DZ \
FZERO
/* Translateurs des deformations (introduits le 20150604110755). */
#define PONDERATION_OX_IMPLICITE \
FZERO
#define PONDERATION_OY_IMPLICITE \
FZERO
#define PONDERATION_OZ_IMPLICITE \
FZERO
/* Ponderation de selection des coordonnees apres deformation. */
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* D E F I N I T I O N D E S F I C H I E R S : */
/* */
/*************************************************************************************************************************************/
#include xrv/ARITHMET.1d.I"
#include xrv/ARITHMET.21.I"
#include xrv/champs_5.41.I"
#define X_IMPLICITE \
FZERO
#define Y_IMPLICITE \
FZERO
#define Z_IMPLICITE \
FZERO
gGENERATION_D_UN_FICHIER(fichier_LISTE_X,liste_initiale_des_X);
gGENERATION_D_UN_FICHIER(fichier_LISTE_Y,liste_initiale_des_Y);
gGENERATION_D_UN_FICHIER(fichier_LISTE_Z,liste_initiale_des_Z);
/* Definition en memoire des fichiers de coordonnees cartesiennes. */
#define ELEMENT_DU_FICHIER_LISTE_X(index) \
gELEMENT_DU_FICHIER(liste_initiale_des_X,index)
#define ELEMENT_DU_FICHIER_LISTE_Y(index) \
gELEMENT_DU_FICHIER(liste_initiale_des_Y,index)
#define ELEMENT_DU_FICHIER_LISTE_Z(index) \
gELEMENT_DU_FICHIER(liste_initiale_des_Z,index)
/* Acces a un element courant des fichiers de coordonnees cartesiennes. */
/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/* */
/* D E F O R M A T I O N D E S C O O R D O N N E E S : */
/* */
/*************************************************************************************************************************************/
BCommande(nombre_d_arguments,arguments)
/*-----------------------------------------------------------------------------------------------------------------------------------*/
Bblock
DEFV(CHAR,INIC(POINTERc(nom_albumDX),NOM_PIPE));
DEFV(CHAR,INIC(POINTERc(nom_postfixeDX),NOM_UNDEF_VIDE));
DEFV(Int,INIT(premiere_imageDX,PREMIERE_IMAGE));
DEFV(Int,INIT(pas_des_imagesDX,PAS_DES_IMAGES));
DEFV(Int,INIT(nombre_de_chiffresDX,NOMBRE_DE_CHIFFRES));
/* Definition de l'album des deformations selon l'axe 'OX'. */
DEFV(CHAR,INIC(POINTERc(nom_albumDY),NOM_PIPE));
DEFV(CHAR,INIC(POINTERc(nom_postfixeDY),NOM_UNDEF_VIDE));
DEFV(Int,INIT(premiere_imageDY,PREMIERE_IMAGE));
DEFV(Int,INIT(pas_des_imagesDY,PAS_DES_IMAGES));
DEFV(Int,INIT(nombre_de_chiffresDY,NOMBRE_DE_CHIFFRES));
/* Definition de l'album des deformations selon l'axe 'OY'. */
DEFV(CHAR,INIC(POINTERc(nom_albumDZ),NOM_PIPE));
DEFV(CHAR,INIC(POINTERc(nom_postfixeDZ),NOM_UNDEF_VIDE));
DEFV(Int,INIT(premiere_imageDZ,PREMIERE_IMAGE));
DEFV(Int,INIT(pas_des_imagesDZ,PAS_DES_IMAGES));
DEFV(Int,INIT(nombre_de_chiffresDZ,NOMBRE_DE_CHIFFRES));
/* Definition de l'album des deformations selon l'axe 'OZ'. */
#include xrv/ARITHMET.22.I"
#include xci/valeurs.03.I"
DEFV(Int,INIT(album_DX_periodiser_X,ALBUM_DX_PERIODISER_X));
DEFV(Int,INIT(album_DX_symetriser_X,ALBUM_DX_SYMETRISER_X));
DEFV(Int,INIT(album_DX_prolonger__X,ALBUM_DX_PROLONGER__X));
DEFV(Int,INIT(album_DX_periodiser_Y,ALBUM_DX_PERIODISER_Y));
DEFV(Int,INIT(album_DX_symetriser_Y,ALBUM_DX_SYMETRISER_Y));
DEFV(Int,INIT(album_DX_prolonger__Y,ALBUM_DX_PROLONGER__Y));
DEFV(Int,INIT(album_DX_periodiser_Z,ALBUM_DX_PERIODISER_Z));
DEFV(Int,INIT(album_DX_symetriser_Z,ALBUM_DX_SYMETRISER_Z));
DEFV(Int,INIT(album_DX_prolonger__Z,ALBUM_DX_PROLONGER__Z));
DEFV(genere_Float,INIT(album_DX_niveau_hors_album,ALBUM_DX_NIVEAU_HORS_ALBUM));
DEFV(Int,INIT(album_DY_periodiser_X,ALBUM_DY_PERIODISER_X));
DEFV(Int,INIT(album_DY_symetriser_X,ALBUM_DY_SYMETRISER_X));
DEFV(Int,INIT(album_DY_prolonger__X,ALBUM_DY_PROLONGER__X));
DEFV(Int,INIT(album_DY_periodiser_Y,ALBUM_DY_PERIODISER_Y));
DEFV(Int,INIT(album_DY_symetriser_Y,ALBUM_DY_SYMETRISER_Y));
DEFV(Int,INIT(album_DY_prolonger__Y,ALBUM_DY_PROLONGER__Y));
DEFV(Int,INIT(album_DY_periodiser_Z,ALBUM_DY_PERIODISER_Z));
DEFV(Int,INIT(album_DY_symetriser_Z,ALBUM_DY_SYMETRISER_Z));
DEFV(Int,INIT(album_DY_prolonger__Z,ALBUM_DY_PROLONGER__Z));
DEFV(genere_Float,INIT(album_DY_niveau_hors_album,ALBUM_DY_NIVEAU_HORS_ALBUM));
DEFV(Int,INIT(album_DZ_periodiser_X,ALBUM_DZ_PERIODISER_X));
DEFV(Int,INIT(album_DZ_symetriser_X,ALBUM_DZ_SYMETRISER_X));
DEFV(Int,INIT(album_DZ_prolonger__X,ALBUM_DZ_PROLONGER__X));
DEFV(Int,INIT(album_DZ_periodiser_Y,ALBUM_DZ_PERIODISER_Y));
DEFV(Int,INIT(album_DZ_symetriser_Y,ALBUM_DZ_SYMETRISER_Y));
DEFV(Int,INIT(album_DZ_prolonger__Y,ALBUM_DZ_PROLONGER__Y));
DEFV(Int,INIT(album_DZ_periodiser_Z,ALBUM_DZ_PERIODISER_Z));
DEFV(Int,INIT(album_DZ_symetriser_Z,ALBUM_DZ_SYMETRISER_Z));
DEFV(Int,INIT(album_DZ_prolonger__Z,ALBUM_DZ_PROLONGER__Z));
DEFV(genere_Float,INIT(album_DZ_niveau_hors_album,ALBUM_DZ_NIVEAU_HORS_ALBUM));
DEFV(Float,INIT(alpha_X,ALPHA_X));
DEFV(Float,INIT(alpha_Y,ALPHA_Y));
DEFV(Float,INIT(alpha_Z,ALPHA_Z));
/* Multiplicateurs des coordonnees (introduits le 20150525213903). */
DEFV(Float,INIT(beta__X,BETA__X));
DEFV(Float,INIT(beta__Y,BETA__Y));
DEFV(Float,INIT(beta__Z,BETA__Z));
/* Translateurs des coordonnees (introduits le 20150525213903). */
DEFV(Float,INIT(alpha_DX,ALPHA_DX));
DEFV(Float,INIT(alpha_DY,ALPHA_DY));
DEFV(Float,INIT(alpha_DZ,ALPHA_DZ));
/* Multiplicateurs des deformations (introduits le 20150604110755). */
DEFV(Float,INIT(beta__DX,BETA__DX));
DEFV(Float,INIT(beta__DY,BETA__DY));
DEFV(Float,INIT(beta__DZ,BETA__DZ));
/* Translateurs des deformations (introduits le 20150604110755). */
DEFV(Float,INIT(ponderation_OX,PONDERATION_OX_IMPLICITE));
DEFV(Float,INIT(ponderation_OY,PONDERATION_OY_IMPLICITE));
DEFV(Float,INIT(ponderation_OZ,PONDERATION_OZ_IMPLICITE));
/* Ponderation de selection des coordonnees apres deformation. */
/*..............................................................................................................................*/
#include xrv/champs_5.1A.I"
GET_ARGUMENTSi(nombre_d_arguments
,BLOC(PROCESS_ARGUMENT_I("nombre_elements=""ne=",nombre_d_elements
,BLOC(VIDE;)
,BLOC(Bblock
PRINT_AVERTISSEMENT("'ne=' doit etre defini avant toute entree de fichiers");
Eblock
)
);
PROCESS_ARGUMENTS_DE_DEFINITION_DES_FICHIERS_01;
PROKESF_ARGUMENT_FICHIER("LISTE_X="
,fichier_LISTE_X
,liste_initiale_des_X
,X_IMPLICITE
,lTRANSFORMAT_0d
,iGENERATION_D_UN_FICHIER
);
PROKESF_ARGUMENT_FICHIER("LISTE_Y="
,fichier_LISTE_Y
,liste_initiale_des_Y
,Y_IMPLICITE
,lTRANSFORMAT_0d
,iGENERATION_D_UN_FICHIER
);
PROKESF_ARGUMENT_FICHIER("LISTE_Z="
,fichier_LISTE_Z
,liste_initiale_des_Z
,Z_IMPLICITE
,lTRANSFORMAT_0d
,iGENERATION_D_UN_FICHIER
);
GET_ARGUMENT_C("albumDX=""DX=",nom_albumDX);
GET_ARGUMENT_C("postfixeDX=""poDX=",nom_postfixeDX);
GET_ARGUMENT_I("premiereDX=""prDX=",premiere_imageDX);
GET_ARGUMENT_I("pasDX=""pDX=",pas_des_imagesDX);
GET_ARGUMENT_I("chiffresDX=""cDX=",nombre_de_chiffresDX);
GET_ARGUMENT_C("albumDY=""DY=",nom_albumDY);
GET_ARGUMENT_C("postfixeDY=""poDY=",nom_postfixeDY);
GET_ARGUMENT_I("premiereDY=""prDY=",premiere_imageDY);
GET_ARGUMENT_I("pasDY=""pDY=",pas_des_imagesDY);
GET_ARGUMENT_I("chiffresDY=""cDY=",nombre_de_chiffresDY);
GET_ARGUMENT_C("albumDZ=""DZ=",nom_albumDZ);
GET_ARGUMENT_C("postfixeDZ=""poDZ=",nom_postfixeDZ);
GET_ARGUMENT_I("premiereDZ=""prDZ=",premiere_imageDZ);
GET_ARGUMENT_I("pasDZ=""pDZ=",pas_des_imagesDZ);
GET_ARGUMENT_I("chiffresDZ=""cDZ=",nombre_de_chiffresDZ);
GET_ARGUMENT_L("AccelerateurALoadPoint=""AccALP="
,S_ACCELERATEUR__ALOAD_POINT_COORDONNEES_01_____utiliser_l_accelerateur
);
GET_ARGUMENT_L("interpoler=""inter="
,FFAload_point_coordonnees_01_____interpoler_bilineairement_ou_bicubiquement
);
GET_ARGUMENT_F("interpolerX=""interX="
,FFAload_point_coordonnees_01_____ponderation_du_barycentre_d_interpolation_X
);
GET_ARGUMENT_F("interpolerY=""interY="
,FFAload_point_coordonnees_01_____ponderation_du_barycentre_d_interpolation_Y
);
GET_ARGUMENT_F("interpolerZ=""interZ="
,FFAload_point_coordonnees_01_____ponderation_du_barycentre_d_interpolation_Z
);
GET_ARGUMENT_L("lineaire=""bilineaire="
,FFAload_point_coordonnees_01_____utiliser_l_interpolation_bilineaire
);
GET_ARGUMENT_N("cubique=""bicubique="
,FFAload_point_coordonnees_01_____utiliser_l_interpolation_bilineaire
);
GET_ARGUMENT_L("appliquer_une_matrice_de_transformation=""matrice=""transformation="
,FFAload_point_coordonnees_01_____appliquer_une_matrice_de_transformation
);
GET_ARGUMENT_F("mxx=""mtxx=",ASD2(FFAload_point_coordonnees_01_____matrice_de_transformation,cx,cx));
GET_ARGUMENT_F("mxy=""mtxy=",ASD2(FFAload_point_coordonnees_01_____matrice_de_transformation,cx,cy));
GET_ARGUMENT_F("mxz=""mtxz=",ASD2(FFAload_point_coordonnees_01_____matrice_de_transformation,cx,cz));
GET_ARGUMENT_F("myx=""mtyx=",ASD2(FFAload_point_coordonnees_01_____matrice_de_transformation,cy,cx));
GET_ARGUMENT_F("myy=""mtyy=",ASD2(FFAload_point_coordonnees_01_____matrice_de_transformation,cy,cy));
GET_ARGUMENT_F("myz=""mtyz=",ASD2(FFAload_point_coordonnees_01_____matrice_de_transformation,cy,cz));
GET_ARGUMENT_F("mzx=""mtzx=",ASD2(FFAload_point_coordonnees_01_____matrice_de_transformation,cz,cx));
GET_ARGUMENT_F("mzy=""mtzy=",ASD2(FFAload_point_coordonnees_01_____matrice_de_transformation,cz,cy));
GET_ARGUMENT_F("mzz=""mtzz=",ASD2(FFAload_point_coordonnees_01_____matrice_de_transformation,cz,cz));
GET_ARGUMENT_F("pre_atrx=",FFAload_point_coordonnees_01_____PreAntiTranslation_Xf);
GET_ARGUMENT_F("post_trx=",FFAload_point_coordonnees_01_____Post___Translation_Xf);
GET_ARGUMENT_F("pre_atry=",FFAload_point_coordonnees_01_____PreAntiTranslation_Yf);
GET_ARGUMENT_F("post_try=",FFAload_point_coordonnees_01_____Post___Translation_Yf);
GET_ARGUMENT_F("pre_atrz=",FFAload_point_coordonnees_01_____PreAntiTranslation_Zf);
GET_ARGUMENT_F("post_trz=",FFAload_point_coordonnees_01_____Post___Translation_Zf);
GET_ARGUMENT_L("pasX_pasY_pasZ=",FFAload_point_coordonnees_01_____utiliser_pasX_et_pasY_et_pasZ);
GET_ARGUMENT_I("pasX=",FFAload_point_coordonnees_01_____pasX);
GET_ARGUMENT_I("pasY=",FFAload_point_coordonnees_01_____pasY);
GET_ARGUMENT_I("pasZ=",FFAload_point_coordonnees_01_____pasZ);
GET_ARGUMENT_L("DX_periodiser_X=""DXper_X="
,album_DX_periodiser_X
);
GET_ARGUMENT_L("DX_symetriser_X=""DXsym_X="
,album_DX_symetriser_X
);
GET_ARGUMENT_L("DX_prolonger_X=""DXpro_X="
,album_DX_prolonger__X
);
GET_ARGUMENT_L("DX_periodiser_Y=""DXper_Y="
,album_DX_periodiser_Y
);
GET_ARGUMENT_L("DX_symetriser_Y=""DXsym_Y="
,album_DX_symetriser_Y
);
GET_ARGUMENT_L("DX_prolonger_Y=""DXpro_Y="
,album_DX_prolonger__Y
);
GET_ARGUMENT_L("DX_periodiser_Z=""DXper_Z="
,album_DX_periodiser_Z
);
GET_ARGUMENT_L("DX_symetriser_Z=""DXsym_Z="
,album_DX_symetriser_Z
);
GET_ARGUMENT_L("DX_prolonger_Z=""DXpro_Z="
,album_DX_prolonger__Z
);
GET_ARGUMENT_F("DX_niveau_hors_image=""DXnhi="
,album_DX_niveau_hors_album
);
GET_ARGUMENT_L("DY_periodiser_X=""DYper_X="
,album_DY_periodiser_X
);
GET_ARGUMENT_L("DY_symetriser_X=""DYsym_X="
,album_DY_symetriser_X
);
GET_ARGUMENT_L("DY_prolonger_X=""DYpro_X="
,album_DY_prolonger__X
);
GET_ARGUMENT_L("DY_periodiser_Y=""DYper_Y="
,album_DY_periodiser_Y
);
GET_ARGUMENT_L("DY_symetriser_Y=""DYsym_Y="
,album_DY_symetriser_Y
);
GET_ARGUMENT_L("DY_prolonger_Y=""DYpro_Y="
,album_DY_prolonger__Y
);
GET_ARGUMENT_L("DY_periodiser_Z=""DYper_Z="
,album_DY_periodiser_Z
);
GET_ARGUMENT_L("DY_symetriser_Z=""DYsym_Z="
,album_DY_symetriser_Z
);
GET_ARGUMENT_L("DY_prolonger_Z=""DYpro_Z="
,album_DY_prolonger__Z
);
GET_ARGUMENT_F("DY_niveau_hors_image=""DYnhi="
,album_DY_niveau_hors_album
);
GET_ARGUMENT_L("DZ_periodiser_X=""DZper_X="
,album_DZ_periodiser_X
);
GET_ARGUMENT_L("DZ_symetriser_X=""DZsym_X="
,album_DZ_symetriser_X
);
GET_ARGUMENT_L("DZ_prolonger_X=""DZpro_X="
,album_DZ_prolonger__X
);
GET_ARGUMENT_L("DZ_periodiser_Y=""DZper_Y="
,album_DZ_periodiser_Y
);
GET_ARGUMENT_L("DZ_symetriser_Y=""DZsym_Y="
,album_DZ_symetriser_Y
);
GET_ARGUMENT_L("DZ_prolonger_Y=""DZpro_Y="
,album_DZ_prolonger__Y
);
GET_ARGUMENT_L("DZ_periodiser_Z=""DZper_Z="
,album_DZ_periodiser_Z
);
GET_ARGUMENT_L("DZ_symetriser_Z=""DZsym_Z="
,album_DZ_symetriser_Z
);
GET_ARGUMENT_L("DZ_prolonger_Z=""DZpro_Z="
,album_DZ_prolonger__Z
);
GET_ARGUMENT_F("DZ_niveau_hors_image=""DZnhi="
,album_DZ_niveau_hors_album
);
GET_ARGUMENT_F("alpha_X=""aX=",alpha_X);
GET_ARGUMENT_F("alpha_Y=""aY=",alpha_Y);
GET_ARGUMENT_F("alpha_Z=""aZ=",alpha_Z);
GET_ARGUMENT_F("beta_X=""bX=",beta__X);
GET_ARGUMENT_F("beta_Y=""bY=",beta__Y);
GET_ARGUMENT_F("beta_Z=""bZ=",beta__Z);
/* Arguments introduits le 20150525213903... */
GET_ARGUMENT_F("alpha_DX=""aDX=",alpha_DX);
GET_ARGUMENT_F("alpha_DY=""aDY=",alpha_DY);
GET_ARGUMENT_F("alpha_DZ=""aDZ=",alpha_DZ);
GET_ARGUMENT_F("beta_DX=""bDX=",beta__DX);
GET_ARGUMENT_F("beta_DY=""bDY=",beta__DY);
GET_ARGUMENT_F("beta_DZ=""bDZ=",beta__DZ);
/* Arguments introduits le 20150604110755... */
GET_ARGUMENT_F("PX=""pX=""Pond1=",ponderation_OX);
GET_ARGUMENT_F("PY=""pY=""Pond2=",ponderation_OY);
GET_ARGUMENT_F("PZ=""pZ=""Pond3=",ponderation_OZ);
/* Les arguments {"px=","py=","pz="} ne sont pas utilisables ici car, en effet, ils */
/* rentrent en conflit avec ce qui est defini par 'GET_ARGUMENTSi(...)'. Ils ne doivent */
/* donc pas etre confondus avec 'v $xig/fonct$vv$DEF ENTREE_ARGUMENT_pasX', */
/* 'v $xig/fonct$vv$DEF ENTREE_ARGUMENT_pasY' et 'v $xig/fonct$vv$DEF ENTREE_ARGUMENT_pasZ'. */
/* */
/* Les arguments {"Px=","Py=","Pz="} ont ete introduits le 20150526092311... */
PROCESS_ARGUMENTS_DE_PARAMETRAGE_DE_LA_GENERATION_DE_SUITE_DE_VALEURS_3;
PROCESS_ARGUMENTS_DE_PARAMETRAGE_DE_LA_GENERATION_DE_SUITE_DE_VALEURS_1;
PROCESS_ARGUMENTS_DE_PARAMETRAGE_DE_LA_GENERATION_DE_SUITE_DE_VALEURS_5;
/* Cette procedure fut introduite le 20211005105455... */
)
);
begin_nouveau_block
Bblock
BDEFV(albumF,albumDX);
/* Definition de l'album d'images des deformations selon 'OX'... */
CALi(dAloadF_album(albumDX
,nom_albumDX
,nom_postfixeDX
,premiere_imageDX
,pas_des_imagesDX
,nombre_de_chiffresDX
,FAUX
,UNDEF
,FAUX
)
);
/* Chargement de l'album des deformations selon 'OX'... */
Test(PAS_D_ERREUR(CODE_ERREUR))
Bblock
begin_nouveau_block
Bblock
BDEFV(albumF,albumDY);
/* Definition de l'album d'images des deformations selon 'OY'... */
CALi(dAloadF_album(albumDY
,nom_albumDY
,nom_postfixeDY
,premiere_imageDY
,pas_des_imagesDY
,nombre_de_chiffresDY
,FAUX
,UNDEF
,FAUX
)
);
/* Chargement de l'album des deformations selon 'OY'... */
Test(PAS_D_ERREUR(CODE_ERREUR))
Bblock
begin_nouveau_block
Bblock
BDEFV(albumF,albumDZ);
/* Definition de l'album d'images des deformations selon 'OZ'... */
CALi(dAloadF_album(albumDZ
,nom_albumDZ
,nom_postfixeDZ
,premiere_imageDZ
,pas_des_imagesDZ
,nombre_de_chiffresDZ
,FAUX
,UNDEF
,FAUX
)
);
/* Chargement de l'album des deformations selon 'OZ'... */
Test(PAS_D_ERREUR(CODE_ERREUR))
Bblock
#define nombre_d_exemplaires \
nombre_d_exemplaires_du_resultat_de_l_operation_sur_les_valeurs_courantes \
/* Afin de raccourcir une ligne qui va suivre... */
gOPERATION_SUR_LES_FICHIERS(BLOC(
DEFV(Float,INIT(coordonnee_X,ELEMENT_DU_FICHIER_LISTE_X(index)));
DEFV(Float,INIT(coordonnee_Y,ELEMENT_DU_FICHIER_LISTE_Y(index)));
DEFV(Float,INIT(coordonnee_Z,ELEMENT_DU_FICHIER_LISTE_Z(index)));
/* Recuperation des coordonnees {X,Y,Z} courantes dans les fichiers. */
DEFV(Float,INIT(coordonnee_X_transformee,FLOT__UNDEF));
DEFV(Float,INIT(coordonnee_Y_transformee,FLOT__UNDEF));
DEFV(Float,INIT(coordonnee_Z_transformee,FLOT__UNDEF));
/* Coordonnees transformees. */
DEFV(Float,INIT(deformation_de_la_coordonnee_X,FLOT__UNDEF));
DEFV(Float,INIT(deformation_de_la_coordonnee_Y,FLOT__UNDEF));
DEFV(Float,INIT(deformation_de_la_coordonnee_Z,FLOT__UNDEF));
/* Deformation des coordonnees {X,Y,Z}. */
DEFV(Float,INIT(coordonnee_X_deformee,FLOT__UNDEF));
DEFV(Float,INIT(coordonnee_Y_deformee,FLOT__UNDEF));
DEFV(Float,INIT(coordonnee_Z_deformee,FLOT__UNDEF));
/* Coordonnees deformees. */
EGAL(coordonnee_X_transformee,AXPB(alpha_X,coordonnee_X,beta__X));
EGAL(coordonnee_Y_transformee,AXPB(alpha_Y,coordonnee_Y,beta__Y));
EGAL(coordonnee_Z_transformee,AXPB(alpha_Z,coordonnee_Z,beta__Z));
/* Deformation des coordonnees {X,Y,Z}. */
EGAL(deformation_de_la_coordonnee_X
,AXPB(alpha_DX
,FFAload_point_coordonnees_01(albumDX
,coordonnee_X_transformee
,coordonnee_Y_transformee
,coordonnee_Z_transformee
,album_DX_periodiser_X
,album_DX_periodiser_Y
,album_DX_periodiser_Z
,album_DX_symetriser_X
,album_DX_symetriser_Y
,album_DX_symetriser_Z
,album_DX_prolonger__X
,album_DX_prolonger__Y
,album_DX_prolonger__Z
,album_DX_niveau_hors_album
)
,beta__DX
)
);
/* Deformation des coordonnees 'X'. */
EGAL(deformation_de_la_coordonnee_Y
,AXPB(alpha_DY
,FFAload_point_coordonnees_01(albumDY
,coordonnee_X_transformee
,coordonnee_Y_transformee
,coordonnee_Z_transformee
,album_DY_periodiser_X
,album_DY_periodiser_Y
,album_DY_periodiser_Z
,album_DY_symetriser_X
,album_DY_symetriser_Y
,album_DY_symetriser_Z
,album_DY_prolonger__X
,album_DY_prolonger__Y
,album_DY_prolonger__Z
,album_DY_niveau_hors_album
)
,beta__DY
)
);
/* Deformation des coordonnees 'Y'. */
EGAL(deformation_de_la_coordonnee_Z
,AXPB(alpha_DZ
,FFAload_point_coordonnees_01(albumDZ
,coordonnee_X_transformee
,coordonnee_Y_transformee
,coordonnee_Z_transformee
,album_DZ_periodiser_X
,album_DZ_periodiser_Y
,album_DZ_periodiser_Z
,album_DZ_symetriser_X
,album_DZ_symetriser_Y
,album_DZ_symetriser_Z
,album_DZ_prolonger__X
,album_DZ_prolonger__Y
,album_DZ_prolonger__Z
,album_DZ_niveau_hors_album
)
,beta__DZ
)
);
/* Deformation des coordonnees 'Z'. */
EGAL(coordonnee_X_deformee
,ADD2(coordonnee_X_transformee
,deformation_de_la_coordonnee_X
)
);
EGAL(coordonnee_Y_deformee
,ADD2(coordonnee_Y_transformee
,deformation_de_la_coordonnee_Y
)
);
EGAL(coordonnee_Z_deformee
,ADD2(coordonnee_Z_transformee
,deformation_de_la_coordonnee_Z
)
);
/* Deformation des coordonnees {X,Y,Z} transformees. */
)
,LIZ3(ponderation_OX,coordonnee_X_deformee
,ponderation_OY,coordonnee_Y_deformee
,ponderation_OZ,coordonnee_Z_deformee
)
,EDITER_LA_VALEUR_RESULTANTE_DANS_gOPERATION_SUR_LES_FICHIERS
,nombre_d_exemplaires
);
/* Deformation des coordonnees. */
#undef nombre_d_exemplaires
Eblock
ATes
Bblock
Eblock
ETes
EDEFV(albumF,albumDZ);
/* Definition de l'album d'images des deformations selon 'OZ'... */
Eblock
end_nouveau_block
Eblock
ATes
Bblock
Eblock
ETes
EDEFV(albumF,albumDY);
/* Definition de l'album d'images des deformations selon 'OY'... */
Eblock
end_nouveau_block
Eblock
ATes
Bblock
Eblock
ETes
EDEFV(albumF,albumDX);
/* Definition de l'album d'images des deformations selon 'OX'... */
Eblock
end_nouveau_block
lGENERATION_D_UN_FICHIER(liste_initiale_des_Z,Z_IMPLICITE);
lGENERATION_D_UN_FICHIER(liste_initiale_des_Y,Y_IMPLICITE);
lGENERATION_D_UN_FICHIER(liste_initiale_des_X,X_IMPLICITE);
RETU_Commande;
Eblock
ECommande