/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        T R A N S F O R M A T I O N   1   D E S   C O U L E U R S   E N   F O N C T I O N   D E S   C O O R D O N N E E S  :       */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        Author of '$xci/transformation_niveaux_coordonnees.01$K' :                                                                 */
/*                                                                                                                                   */
/*                    Jean-Francois COLONNA (LACTAMME, 20190724100105).                                                              */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        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
#include  image_image_IMAGESF_EXT
#include  image_image_PENT_IMAGE_EXT

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        P A R A M E T R E S  :                                                                                                     */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        M A C R O S   U T I L E S  :                                                                                               */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
#define   imageA_ROUGE                                                                                                                  \
                    ImageA1
#define   imageA_VERTE                                                                                                                  \
                    ImageA2
#define   imageA_BLEUE                                                                                                                  \
                    ImageA3

#define   imageN_ROUGE                                                                                                                  \
                    ImageA4
#define   imageN_VERTE                                                                                                                  \
                    ImageA5
#define   imageN_BLEUE                                                                                                                  \
                    ImageA6

#define   imageR_ROUGE                                                                                                                  \
                    Image_ROUGE
#define   imageR_VERTE                                                                                                                  \
                    Image_VERTE
#define   imageR_BLEUE                                                                                                                  \
                    Image_BLEUE
#define   FimageA_ROUGE                                                                                                                 \
                    IFmageA1
#define   FimageA_VERTE                                                                                                                 \
                    IFmageA2
#define   FimageA_BLEUE                                                                                                                 \
                    IFmageA3

#define   FimageN_ROUGE                                                                                                                 \
                    IFmageA4
#define   FimageN_VERTE                                                                                                                 \
                    IFmageA5
#define   FimageN_BLEUE                                                                                                                 \
                    IFmageA6

#define   FimageR_ROUGE                                                                                                                 \
                    IFmageR1
#define   FimageR_VERTE                                                                                                                 \
                    IFmageR2
#define   FimageR_BLEUE                                                                                                                 \
                    IFmageR3

#include  xci/luminance.01.I"

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        T R A N S F O R M A T I O N   1   D E S   C O U L E U R S   E N   F O N C 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_imageR),NOM_PIPE));
     DEFV(CHAR,INIC(POINTERc(nom_imageR_ROUGE),NOM_PIPE));
     DEFV(CHAR,INIC(POINTERc(nom_imageR_VERTE),NOM_PIPE));
     DEFV(CHAR,INIC(POINTERc(nom_imageR_BLEUE),NOM_PIPE));

     DEFV(CHAR,INIC(POINTERc(nom_imageA),NOM_PIPE));
     DEFV(CHAR,INIC(POINTERc(nom_imageA_ROUGE),NOM_PIPE));
     DEFV(CHAR,INIC(POINTERc(nom_imageA_VERTE),NOM_PIPE));
     DEFV(CHAR,INIC(POINTERc(nom_imageA_BLEUE),NOM_PIPE));

     DEFV(CHAR,INIC(POINTERc(nom_imageN),NOM_PIPE));
     DEFV(CHAR,INIC(POINTERc(nom_imageN_ROUGE),NOM_PIPE));
     DEFV(CHAR,INIC(POINTERc(nom_imageN_VERTE),NOM_PIPE));
     DEFV(CHAR,INIC(POINTERc(nom_imageN_BLEUE),NOM_PIPE));
     /*..............................................................................................................................*/
     GET_ARGUMENTSi(nombre_d_arguments
                   ,BLOC(GET_ARGUMENT_C("imageA=""A=",nom_imageA);
                         GET_ARGUMENT_C("imageA_ROUGE=""AR=",nom_imageA_ROUGE);
                         GET_ARGUMENT_C("imageA_VERTE=""AV=",nom_imageA_VERTE);
                         GET_ARGUMENT_C("imageA_BLEUE=""AB=",nom_imageA_BLEUE);

                         GET_ARGUMENT_C("imageN=""N=",nom_imageN);
                         GET_ARGUMENT_C("imageN_ROUGE=""NR=",nom_imageN_ROUGE);
                         GET_ARGUMENT_C("imageN_VERTE=""NV=",nom_imageN_VERTE);
                         GET_ARGUMENT_C("imageN_BLEUE=""NB=",nom_imageN_BLEUE);

                         GET_ARGUMENT_C("imageR=""R=",nom_imageR);
                         GET_ARGUMENT_C("imageR_ROUGE=""RR=",nom_imageR_ROUGE);
                         GET_ARGUMENT_C("imageR_VERTE=""RV=",nom_imageR_VERTE);
                         GET_ARGUMENT_C("imageR_BLEUE=""RB=",nom_imageR_BLEUE);

                         GET_ARGUMENT_L("standard=",les_images_sont_standards);
                                        /* Introduits le 20190730122824...                                                           */

                         GET_ARGUMENT_F("ponderation_ROUGE_X=""pRX="
                                       ,Itransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_ROUGE_X
                                        );
                         GET_ARGUMENT_F("ponderation_VERTE_X=""pVX="
                                       ,Itransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_VERTE_X
                                        );
                         GET_ARGUMENT_F("ponderation_BLEUE_X=""pBX="
                                       ,Itransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_BLEUE_X
                                        );

                         GET_ARGUMENT_F("ponderation_ROUGE_Y=""pRY="
                                       ,Itransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_ROUGE_Y
                                        );
                         GET_ARGUMENT_F("ponderation_VERTE_Y=""pVY="
                                       ,Itransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_VERTE_Y
                                        );
                         GET_ARGUMENT_F("ponderation_BLEUE_Y=""pBY="
                                       ,Itransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_BLEUE_Y
                                        );

                         GET_ARGUMENT_F("a222X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a222_X
                                        );
                         GET_ARGUMENT_F("a221X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a221_X
                                        );
                         GET_ARGUMENT_F("a220X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a220_X
                                        );
                         GET_ARGUMENT_F("a212X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a212_X
                                        );
                         GET_ARGUMENT_F("a211X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a211_X
                                        );
                         GET_ARGUMENT_F("a210X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a210_X
                                        );
                         GET_ARGUMENT_F("a202X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a202_X
                                        );
                         GET_ARGUMENT_F("a201X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a201_X
                                        );
                         GET_ARGUMENT_F("a200X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a200_X
                                        );
                         GET_ARGUMENT_F("a122X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a122_X
                                        );
                         GET_ARGUMENT_F("a121X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a121_X
                                        );
                         GET_ARGUMENT_F("a120X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a120_X
                                        );
                         GET_ARGUMENT_F("a112X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a112_X
                                        );
                         GET_ARGUMENT_F("a111X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a111_X
                                        );
                         GET_ARGUMENT_F("a110X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a110_X
                                        );
                         GET_ARGUMENT_F("a102X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a102_X
                                        );
                         GET_ARGUMENT_F("a101X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a101_X
                                        );
                         GET_ARGUMENT_F("a100X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a100_X
                                        );
                         GET_ARGUMENT_F("a022X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a022_X
                                        );
                         GET_ARGUMENT_F("a021X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a021_X
                                        );
                         GET_ARGUMENT_F("a020X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a020_X
                                        );
                         GET_ARGUMENT_F("a012X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a012_X
                                        );
                         GET_ARGUMENT_F("a011X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a011_X
                                        );
                         GET_ARGUMENT_F("a010X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a010_X
                                        );
                         GET_ARGUMENT_F("a002X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a002_X
                                        );
                         GET_ARGUMENT_F("a001X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a001_X
                                        );
                         GET_ARGUMENT_F("a000X="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a000_X
                                        );
                                        /* Introduits le 20190730120806...                                                           */

                         GET_ARGUMENT_F("a222Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a222_Y
                                        );
                         GET_ARGUMENT_F("a221Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a221_Y
                                        );
                         GET_ARGUMENT_F("a220Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a220_Y
                                        );
                         GET_ARGUMENT_F("a212Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a212_Y
                                        );
                         GET_ARGUMENT_F("a211Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a211_Y
                                        );
                         GET_ARGUMENT_F("a210Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a210_Y
                                        );
                         GET_ARGUMENT_F("a202Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a202_Y
                                        );
                         GET_ARGUMENT_F("a201Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a201_Y
                                        );
                         GET_ARGUMENT_F("a200Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a200_Y
                                        );
                         GET_ARGUMENT_F("a122Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a122_Y
                                        );
                         GET_ARGUMENT_F("a121Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a121_Y
                                        );
                         GET_ARGUMENT_F("a120Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a120_Y
                                        );
                         GET_ARGUMENT_F("a112Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a112_Y
                                        );
                         GET_ARGUMENT_F("a111Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a111_Y
                                        );
                         GET_ARGUMENT_F("a110Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a110_Y
                                        );
                         GET_ARGUMENT_F("a102Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a102_Y
                                        );
                         GET_ARGUMENT_F("a101Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a101_Y
                                        );
                         GET_ARGUMENT_F("a100Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a100_Y
                                        );
                         GET_ARGUMENT_F("a022Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a022_Y
                                        );
                         GET_ARGUMENT_F("a021Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a021_Y
                                        );
                         GET_ARGUMENT_F("a020Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a020_Y
                                        );
                         GET_ARGUMENT_F("a012Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a012_Y
                                        );
                         GET_ARGUMENT_F("a011Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a011_Y
                                        );
                         GET_ARGUMENT_F("a010Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a010_Y
                                        );
                         GET_ARGUMENT_F("a002Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a002_Y
                                        );
                         GET_ARGUMENT_F("a001Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a001_Y
                                        );
                         GET_ARGUMENT_F("a000Y="
                                       ,IFtransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY_____ponderation_a000_Y
                                        );
                                        /* Introduits le 20190730120806...                                                           */
                         )
                    );

#define   i_standards                                                                                                                   \
                    les_images_sont_standards
                                        /* Afin de raccourcir quelques une des lignes suivantes...                                   */

     CALi(gInettoyage(i_standards,imageR_ROUGE,FimageR_ROUGE));
     CALi(gInettoyage(i_standards,imageR_VERTE,FimageR_VERTE));
     CALi(gInettoyage(i_standards,imageR_BLEUE,FimageR_BLEUE));
                                        /* Initialisation des images Resultat.                                                       */

     GENERER_LE_NOM_DE_TROIS_COMPOSANTES_CHROMATIQUES_RVB(nom_imageR,nom_imageR_ROUGE,nom_imageR_VERTE,nom_imageR_BLEUE);
     GENERER_LE_NOM_DE_TROIS_COMPOSANTES_CHROMATIQUES_RVB(nom_imageA,nom_imageA_ROUGE,nom_imageA_VERTE,nom_imageA_BLEUE);
     GENERER_LE_NOM_DE_TROIS_COMPOSANTES_CHROMATIQUES_RVB(nom_imageN,nom_imageN_ROUGE,nom_imageN_VERTE,nom_imageN_BLEUE);
                                        /* Introduit le 20190724111947 afin de simplifier l'usage...                                 */

     Test(PAS_D_ERREUR(CODE_ERROR(gIload_image(i_standards,imageA_ROUGE,FimageA_ROUGE,nom_imageA_ROUGE))))
          Bblock
          Test(PAS_D_ERREUR(CODE_ERROR(gIload_image(i_standards,imageA_VERTE,FimageA_VERTE,nom_imageA_VERTE))))
               Bblock
               Test(PAS_D_ERREUR(CODE_ERROR(gIload_image(i_standards,imageA_BLEUE,FimageA_BLEUE,nom_imageA_BLEUE))))
                    Bblock
                    Test(PAS_D_ERREUR(CODE_ERROR(gIload_image(i_standards,imageN_ROUGE,FimageN_ROUGE,nom_imageN_ROUGE))))
                         Bblock
                         Test(PAS_D_ERREUR(CODE_ERROR(gIload_image(i_standards,imageN_VERTE,FimageN_VERTE,nom_imageN_VERTE))))
                              Bblock
                              Test(PAS_D_ERREUR(CODE_ERROR(gIload_image(i_standards,imageN_BLEUE,FimageN_BLEUE,nom_imageN_BLEUE))))
                                   Bblock
                                   CALS(gItransformation_1_des_niveaux_RVB_en_fonction_des_coordonnees_XY(i_standards
                                                                                                         ,imageR_ROUGE,FimageR_ROUGE
                                                                                                         ,imageR_VERTE,FimageR_VERTE
                                                                                                         ,imageR_BLEUE,FimageR_BLEUE

                                                                                                         ,imageA_ROUGE,FimageA_ROUGE
                                                                                                         ,imageA_VERTE,FimageA_VERTE
                                                                                                         ,imageA_BLEUE,FimageA_BLEUE

                                                                                                         ,imageN_ROUGE,FimageN_ROUGE
                                                                                                         ,imageN_VERTE,FimageN_VERTE
                                                                                                         ,imageN_BLEUE,FimageN_BLEUE
                                                                                                          )
                                        );

                                   CALi(gIupdate_image(i_standards,nom_imageR_ROUGE,imageR_ROUGE,FimageR_ROUGE));
                                   CALi(gIupdate_image(i_standards,nom_imageR_VERTE,imageR_VERTE,FimageR_VERTE));
                                   CALi(gIupdate_image(i_standards,nom_imageR_BLEUE,imageR_BLEUE,FimageR_BLEUE));
                                   Eblock
                              ATes
                                   Bblock
                                   Test__CODE_ERREUR__ERREUR07;
                                   Eblock
                              ETes
                              Eblock
                         ATes
                              Bblock
                              Test__CODE_ERREUR__ERREUR07;
                              Eblock
                         ETes
                         Eblock
                    ATes
                         Bblock
                         Test__CODE_ERREUR__ERREUR07;
                         Eblock
                    ETes
                    Eblock
               ATes
                    Bblock
                    Test__CODE_ERREUR__ERREUR07;
                    Eblock
               ETes
               Eblock
          ATes
               Bblock
               Test__CODE_ERREUR__ERREUR07;
               Eblock
          ETes
          Eblock
     ATes
          Bblock
          Test__CODE_ERREUR__ERREUR07;
          Eblock
     ETes

#undef    i_standards

     RETU_Commande;
     Eblock
ECommande



Copyright © Jean-François COLONNA, 2019-2024.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / École polytechnique, Institut Polytechnique de Paris, 2019-2024.