/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        G E S T I O N   D E   L ' I N T E R A C T I O N   S T A N D A R D  :                                                       */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        Author of '$xrs/surfaces.13$I' :                                                                                           */
/*                                                                                                                                   */
/*                    Jean-Francois COLONNA (LACTAMME, 1993??????????).                                                              */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        A C C E S   A U X   F I C H I E R S   P A R A M E T R E S  :                                                               */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
#include  xrs/surfaces.33.I"
                                        /* Introduit le 20190228164354...                                                            */

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        G E S T I O N   D E S   P R I M I T I V E S   D E   V I S U A L I S A T I O N   S T A N D A R D S  :                       */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
#define   PROCESS_ARGUMENTS_DE_TRANSFORMATION_DE_u_v                                                                                    \
                                        /* Introduit le 20060117133441...                                                            */ \
                    Bblock                                                                                                              \
                                                                                                                                        \
                    DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("UV_transformer=""UV=",transformer_u_v);                                                             \
                                        /* Le 20150527143014 je note que lorsque les coordonnees {U,V} sont utilisees, il est        */ \
                                        /* fortement conseille de ne pas interpoler dans 'gFFload_point_coordonnees_01(...)' via :   */ \
                                        /*                                                                                           */ \
                                        /*                  tinterpoler=FAUX                                                         */ \
                                        /*                                                                                           */ \
                                        /* afin d'eviter des points isoles ou d'autres defauts...                                    */ \
                    GET_ARGUMENT_L("UV_trouer=",trouer_u_v);                                                                            \
                                        /* Le "trouage" a ete introduit le 20060530151452...                                         */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("tore_u=",gestion_torique_de_u);                                                                     \
                    GET_ARGUMENT_L("tore_v=",gestion_torique_de_v);                                                                     \
                                        /* La gestion "torique" de {u,v} a ete introduite le 20060601132725...                       */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("UV_periodiser_u=""UV_per_u=",transformer_u_v_periodiser_u);                                         \
                    GET_ARGUMENT_L("UV_periodiser_v=""UV_per_v=",transformer_u_v_periodiser_v);                                         \
                    GET_ARGUMENT_L("TUV_periodiser_u=""TUV_per_u=",trouer_u_v_periodiser_u);                                            \
                    GET_ARGUMENT_L("TUV_periodiser_v=""TUV_per_v=",trouer_u_v_periodiser_v);                                            \
                                                                                                                                        \
                    GET_ARGUMENT_L("UV_symetriser_u=""UV_sym_u=",transformer_u_v_symetriser_u);                                         \
                    GET_ARGUMENT_L("UV_symetriser_v=""UV_sym_v=",transformer_u_v_symetriser_v);                                         \
                    GET_ARGUMENT_L("TUV_symetriser_u=""TUV_sym_u=",trouer_u_v_symetriser_u);                                            \
                    GET_ARGUMENT_L("TUV_symetriser_v=""TUV_sym_v=",trouer_u_v_symetriser_v);                                            \
                                                                                                                                        \
                    GET_ARGUMENT_L("UV_prolonger_u=""UV_pro_u=",transformer_u_v_prolonger_u);                                           \
                    GET_ARGUMENT_L("UV_prolonger_v=""UV_pro_v=",transformer_u_v_prolonger_v);                                           \
                    GET_ARGUMENT_L("TUV_prolonger_u=""TUV_pro_u=",trouer_u_v_prolonger_u);                                              \
                    GET_ARGUMENT_L("TUV_prolonger_v=""TUV_pro_v=",trouer_u_v_prolonger_v);                                              \
                                                                                                                                        \
                    GET_ARGUMENT_F("UV_hors=",transformer_u_v_niveau_hors_image);                                                       \
                                                                                                                                        \
                    GET_ARGUMENT_L("image_Coordonnee_U_interpoler="                                                                     \
                                  ,image_Coordonnee_U__interpoler_bilineairement_ou_bicubiquement                                       \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Coordonnee_U_lineaire="                                                                       \
                                  ,image_Coordonnee_U__utiliser_l_interpolation_bilineaire                                              \
                                   );                                                                                                   \
                    GET_ARGUMENT_N("image_Coordonnee_U_cubique="                                                                        \
                                  ,image_Coordonnee_U__utiliser_l_interpolation_bilineaire                                              \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Coordonnee_U_eviter_discontinuites="                                                          \
                                  ,image_Coordonnee_U__eviter_les_fortes_discontinuites                                                 \
                                   );                                                                                                   \
                    GET_ARGUMENT_F("image_Coordonnee_U_epsilon_discontinuites="                                                         \
                                  ,image_Coordonnee_U__epsilon_detection_des_fortes_discontinuites                                      \
                                   );                                                                                                   \
                                                                                                                                        \
                    GET_ARGUMENT_L("image_Coordonnee_V_interpoler="                                                                     \
                                  ,image_Coordonnee_V__interpoler_bilineairement_ou_bicubiquement                                       \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Coordonnee_V_lineaire="                                                                       \
                                  ,image_Coordonnee_V__utiliser_l_interpolation_bilineaire                                              \
                                   );                                                                                                   \
                    GET_ARGUMENT_N("image_Coordonnee_V_cubique="                                                                        \
                                  ,image_Coordonnee_V__utiliser_l_interpolation_bilineaire                                              \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Coordonnee_V_eviter_discontinuites="                                                          \
                                  ,image_Coordonnee_V__eviter_les_fortes_discontinuites                                                 \
                                   );                                                                                                   \
                    GET_ARGUMENT_F("image_Coordonnee_V_epsilon_discontinuites="                                                         \
                                  ,image_Coordonnee_V__epsilon_detection_des_fortes_discontinuites                                      \
                                   );                                                                                                   \
                                                                                                                                        \
                    GET_ARGUMENT_C("imageU=""U=",nom_transformation_u);                                                                 \
                    GET_ARGUMENT_C("imageV=""V=",nom_transformation_v);                                                                 \
                                        /* Ces images ont ete introduites le 20060117135333...                                       */ \
                                        /*                                                                                           */ \
                                        /* Je rappelle le 20160330150619 que les coordonnees {X,Y} de la deformation correspondent   */ \
                                        /* aux coordonnees curvilignes {u,v}={latitude,longitude} de la surface...                   */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("image_Trous_interpoler="                                                                            \
                                  ,image_Trous__interpoler_bilineairement_ou_bicubiquement                                              \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Trous_lineaire="                                                                              \
                                  ,image_Trous__utiliser_l_interpolation_bilineaire                                                     \
                                   );                                                                                                   \
                    GET_ARGUMENT_N("image_Trous_cubique="                                                                               \
                                  ,image_Trous__utiliser_l_interpolation_bilineaire                                                     \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Trous_eviter_discontinuites="                                                                 \
                                  ,image_Trous__eviter_les_fortes_discontinuites                                                        \
                                   );                                                                                                   \
                    GET_ARGUMENT_F("image_Trous_epsilon_discontinuites="                                                                \
                                  ,image_Trous__epsilon_detection_des_fortes_discontinuites                                             \
                                   );                                                                                                   \
                                                                                                                                        \
                    GET_ARGUMENT_C("imageTUV=""TUV=",nom_trouage_u_v);                                                                  \
                                        /* Cette image a ete introduite le 20060529152106...                                         */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("u_v_arbitraires=""uva=",definir_arbitrairement_les_coordonnees_u_v);                                \
                                        /* Cette possibilite a ete introduite le 20221221114143...                                   */ \
                                                                                                                                        \
                    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                                                                                      \
                                            )                                                                                           \
                                       );                                                                                               \
                                        /* Cette possibilite a ete introduite le 20221221114143...                                   */ \
                                        /*                                                                                           */ \
                                        /* Je note le 20250123174629 qu'en mode :                                                    */ \
                                        /*                                                                                           */ \
                                        /*                  u_v_arbitraires=VRAI                                                     */ \
                                        /*                                                                                           */ \
                                        /* en faisant varier 'nombre_d_elements', on peut faire une animation montrant le            */ \
                                        /* construction de la courbe {u,v} sur la surface...                                         */ \
                                                                                                                                        \
                    GET_ARGUMENT_F("separateur_u_v=""suv=",separateur_de_definition_arbitraire_des_coordonnees_u_v);                    \
                                        /* Cette possibilite a ete introduite le 20230217095456...                                   */ \
                                                                                                                                        \
                    PROKESF_ARGUMENT_FICHIER("coordonnees_u="                                                                           \
                                            ,fichier_des_coordonnees_u                                                                  \
                                            ,liste_des_coordonnees_u                                                                    \
                                            ,COORDONNEE_u_IMPLICITE                                                                     \
                                            ,lTRANSFORMAT_0d                                                                            \
                                            ,iGENERATION_D_UN_FICHIER                                                                   \
                                             );                                                                                         \
                    PROKESF_ARGUMENT_FICHIER("coordonnees_v="                                                                           \
                                            ,fichier_des_coordonnees_v                                                                  \
                                            ,liste_des_coordonnees_v                                                                    \
                                            ,COORDONNEE_v_IMPLICITE                                                                     \
                                            ,lTRANSFORMAT_0d                                                                            \
                                            ,iGENERATION_D_UN_FICHIER                                                                   \
                                             );                                                                                         \
                                        /* Cette possibilite a ete introduite le 20221221114143...                                   */ \
                                                                                                                                        \
                    PROKESF_ARGUMENT_FICHIER("coordonnees_ROUGE="                                                                       \
                                            ,fichier_des_coordonnees_ROUGE                                                              \
                                            ,liste_des_coordonnees_ROUGE                                                                \
                                            ,COORDONNEE_ROUGE_IMPLICITE                                                                 \
                                            ,lTRANSFORMAT_0d                                                                            \
                                            ,iGENERATION_D_UN_FICHIER                                                                   \
                                             );                                                                                         \
                    PROKESF_ARGUMENT_FICHIER("coordonnees_VERTE="                                                                       \
                                            ,fichier_des_coordonnees_VERTE                                                              \
                                            ,liste_des_coordonnees_VERTE                                                                \
                                            ,COORDONNEE_VERTE_IMPLICITE                                                                 \
                                            ,lTRANSFORMAT_0d                                                                            \
                                            ,iGENERATION_D_UN_FICHIER                                                                   \
                                             );                                                                                         \
                    PROKESF_ARGUMENT_FICHIER("coordonnees_BLEUE="                                                                       \
                                            ,fichier_des_coordonnees_BLEUE                                                              \
                                            ,liste_des_coordonnees_BLEUE                                                                \
                                            ,COORDONNEE_BLEUE_IMPLICITE                                                                 \
                                            ,lTRANSFORMAT_0d                                                                            \
                                            ,iGENERATION_D_UN_FICHIER                                                                   \
                                             );                                                                                         \
                                        /* Cette possibilite a ete introduite le 20230125094540...                                   */ \
                                                                                                                                        \
                    PROKESF_ARGUMENT_FICHIER("coordonnees_RAYON="                                                                       \
                                            ,fichier_des_coordonnees_RAYON                                                              \
                                            ,liste_des_coordonnees_RAYON                                                                \
                                            ,COORDONNEE_RAYON_IMPLICITE                                                                 \
                                            ,lTRANSFORMAT_0d                                                                            \
                                            ,iGENERATION_D_UN_FICHIER                                                                   \
                                             );                                                                                         \
                                        /* Introduit le 20240517141440...                                                            */ \
                                                                                                                                        \
                    PROKESF_ARGUMENT_FICHIER("coordonnees_MASSE="                                                                       \
                                            ,fichier_des_coordonnees_MASSE                                                              \
                                            ,liste_des_coordonnees_MASSE                                                                \
                                            ,COORDONNEE_MASSE_IMPLICITE                                                                 \
                                            ,lTRANSFORMAT_0d                                                                            \
                                            ,iGENERATION_D_UN_FICHIER                                                                   \
                                             );                                                                                         \
                                        /* Introduit le 20240519091309...                                                            */ \
                                                                                                                                        \
                    FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    Eblock

#define   PROCESS_ARGUMENTS_COMMUNS_D_INTERPOLATION                                                                                     \
                                        /* Introduit le 20170301145128...                                                            */ \
                    Bblock                                                                                                              \
                                                                                                                                        \
                    DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                                                                                                                        \
                    FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                                                                                                                        \
                    Eblock

#ifndef   DEFINITION_DES_INTERPOLATIONS_Fx_Fy_Fz
#    define    PROCESS_ARGUMENTS_D_INTERPOLATION                                                                                        \
                         Bblock                                                                                                         \
                                                                                                                                        \
                         DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                \
                                                                                                                                        \
                         PROCESS_ARGUMENTS_COMMUNS_D_INTERPOLATION;                                                                     \
                                                                                                                                        \
                         GET_ARGUMENTS7_L("tinterpoler="                                                                                \
                                         ,FFload_point_coordonnees_01_____interpoler_bilineairement_ou_bicubiquement                    \
                                         ,image_Coordonnee_U__interpoler_bilineairement_ou_bicubiquement                                \
                                         ,image_Coordonnee_V__interpoler_bilineairement_ou_bicubiquement                                \
                                         ,image_Trous__interpoler_bilineairement_ou_bicubiquement                                       \
                                         ,image_Texture_R__interpoler_bilineairement_ou_bicubiquement                                   \
                                         ,image_Texture_V__interpoler_bilineairement_ou_bicubiquement                                   \
                                         ,image_Texture_B__interpoler_bilineairement_ou_bicubiquement                                   \
                                          );                                                                                            \
                                        /* Cet argument a ete introduit le 20150527160150...                                         */ \
                                        /*                                                                                           */ \
                                        /* L'utilisation de 'GET_ARGUMENTS7_L(...)' le 20150528113208 est destinee a garantir la     */ \
                                        /* compatibilite anterieure a cette date, lorsque "tinterpoler=" controlait toutes les       */ \
                                        /* interpolations de 'FFload_point_coordonnees_01(...)'.                                     */ \
                         GET_ARGUMENTS7_L("tlineaire=""tbilineaire="                                                                    \
                                         ,FFload_point_coordonnees_01_____utiliser_l_interpolation_bilineaire                           \
                                         ,image_Coordonnee_U__utiliser_l_interpolation_bilineaire                                       \
                                         ,image_Coordonnee_V__utiliser_l_interpolation_bilineaire                                       \
                                         ,image_Trous__utiliser_l_interpolation_bilineaire                                              \
                                         ,image_Texture_R__utiliser_l_interpolation_bilineaire                                          \
                                         ,image_Texture_V__utiliser_l_interpolation_bilineaire                                          \
                                         ,image_Texture_B__utiliser_l_interpolation_bilineaire                                          \
                                          );                                                                                            \
                                        /* L'utilisation de 'GET_ARGUMENTS7_L(...)' le 20150528113208 est destinee a garantir la     */ \
                                        /* compatibilite anterieure a cette date, lorsque "tinterpoler=" controlait toutes les       */ \
                                        /* interpolations de 'FFload_point_coordonnees_01(...)'.                                     */ \
                         GET_ARGUMENTS7_N("tcubique=""tbicubique="                                                                      \
                                         ,FFload_point_coordonnees_01_____utiliser_l_interpolation_bilineaire                           \
                                         ,image_Coordonnee_U__utiliser_l_interpolation_bilineaire                                       \
                                         ,image_Coordonnee_V__utiliser_l_interpolation_bilineaire                                       \
                                         ,image_Trous__utiliser_l_interpolation_bilineaire                                              \
                                         ,image_Texture_R__utiliser_l_interpolation_bilineaire                                          \
                                         ,image_Texture_V__utiliser_l_interpolation_bilineaire                                          \
                                         ,image_Texture_B__utiliser_l_interpolation_bilineaire                                          \
                                          );                                                                                            \
                                        /* ATTENTION : 'FFload_point_coordonnees_01_____utiliser_l_interpolation_bilineaire' est     */ \
                                        /* aussi reference dans 'v $xrs/project2D.11$K bilineaire=' (note le 20060602093342...).     */ \
                                        /*                                                                                           */ \
                                        /* L'utilisation de 'GET_ARGUMENTS7_N(...)' le 20150528113208 est destinee a garantir la     */ \
                                        /* compatibilite anterieure a cette date, lorsque "tinterpoler=" controlait toutes les       */ \
                                        /* interpolations de 'FFload_point_coordonnees_01(...)'.                                     */ \
                                                                                                                                        \
                         FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                \
                                                                                                                                        \
                         Eblock                                                                                                         \
                                        /* Arguments d'interpolation par defaut...                                                   */
#Aifndef  DEFINITION_DES_INTERPOLATIONS_Fx_Fy_Fz
#    define    PROCESS_ARGUMENTS_D_INTERPOLATION                                                                                        \
                         Bblock                                                                                                         \
                                                                                                                                        \
                         DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                \
                                                                                                                                        \
                         PROCESS_ARGUMENTS_COMMUNS_D_INTERPOLATION;                                                                     \
                                                                                                                                        \
                         GET_ARGUMENTSa_L("tinterpoler="                                                                                \
                                         ,FFload_point_coordonnees_01_____interpoler_bilineairement_ou_bicubiquement                    \
                                         ,Image_Fx__interpoler_bilineairement_ou_bicubiquement                                          \
                                         ,Image_Fy__interpoler_bilineairement_ou_bicubiquement                                          \
                                         ,Image_Fz__interpoler_bilineairement_ou_bicubiquement                                          \
                                         ,image_Coordonnee_U__interpoler_bilineairement_ou_bicubiquement                                \
                                         ,image_Coordonnee_V__interpoler_bilineairement_ou_bicubiquement                                \
                                         ,image_Trous__interpoler_bilineairement_ou_bicubiquement                                       \
                                         ,image_Texture_R__interpoler_bilineairement_ou_bicubiquement                                   \
                                         ,image_Texture_V__interpoler_bilineairement_ou_bicubiquement                                   \
                                         ,image_Texture_B__interpoler_bilineairement_ou_bicubiquement                                   \
                                          );                                                                                            \
                         GET_ARGUMENTSa_L("tlineaire=""tbilineaire="                                                                    \
                                         ,FFload_point_coordonnees_01_____utiliser_l_interpolation_bilineaire                           \
                                         ,Image_Fx__utiliser_l_interpolation_bilineaire                                                 \
                                         ,Image_Fy__utiliser_l_interpolation_bilineaire                                                 \
                                         ,Image_Fz__utiliser_l_interpolation_bilineaire                                                 \
                                         ,image_Coordonnee_U__utiliser_l_interpolation_bilineaire                                       \
                                         ,image_Coordonnee_V__utiliser_l_interpolation_bilineaire                                       \
                                         ,image_Trous__utiliser_l_interpolation_bilineaire                                              \
                                         ,image_Texture_R__utiliser_l_interpolation_bilineaire                                          \
                                         ,image_Texture_V__utiliser_l_interpolation_bilineaire                                          \
                                         ,image_Texture_B__utiliser_l_interpolation_bilineaire                                          \
                                          );                                                                                            \
                         GET_ARGUMENTSa_N("tcubique=""tbicubique="                                                                      \
                                         ,FFload_point_coordonnees_01_____utiliser_l_interpolation_bilineaire                           \
                                         ,Image_Fx__utiliser_l_interpolation_bilineaire                                                 \
                                         ,Image_Fy__utiliser_l_interpolation_bilineaire                                                 \
                                         ,Image_Fz__utiliser_l_interpolation_bilineaire                                                 \
                                         ,image_Coordonnee_U__utiliser_l_interpolation_bilineaire                                       \
                                         ,image_Coordonnee_V__utiliser_l_interpolation_bilineaire                                       \
                                         ,image_Trous__utiliser_l_interpolation_bilineaire                                              \
                                         ,image_Texture_R__utiliser_l_interpolation_bilineaire                                          \
                                         ,image_Texture_V__utiliser_l_interpolation_bilineaire                                          \
                                         ,image_Texture_B__utiliser_l_interpolation_bilineaire                                          \
                                          );                                                                                            \
                                                                                                                                        \
                         FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                \
                                                                                                                                        \
                         Eblock                                                                                                         \
                                        /* Arguments d'interpolation par defaut avec ceux relatifs a {Fx,Fy,Fz}...                   */
#Eifndef  DEFINITION_DES_INTERPOLATIONS_Fx_Fy_Fz

#define   PROCESS_ARGUMENTS_DE_PROJECTION_DE_LA_SURFACE                                                                                 \
                                        /* Introduit le 20041126093302...                                                            */ \
                    Bblock                                                                                                              \
                                                                                                                                        \
                    DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("projeter=""projections=""projection=",generer_les_trois_projections_de_la_surface);                 \
                    GET_ARGUMENT_L("isp=""initialisations_projection="                                                                  \
                                  ,faire_les_initialisations_specifiques_de_projection_de_la_surface                                    \
                                   );                                                                                                   \
                                        /* Introduit le 20060502143135 pour 'v $xrs/project2D.01$Z initialisations'...               */ \
                    GET_ARGUMENT_L("fuvp=""forcer_uv_projection=",forcer_les_extrema_de_u_v_lors_de_la_projection_de_la_surface);       \
                                        /* Introduit le 20060306160958 pour 'v $xrs/sphere.11$K' et l'image 'v $xiirs/PROJ.C1'...    */ \
                    GET_ARGUMENT_L("tp=""transformer_projections=",les_trois_projections_de_la_surface_doivent_etre_transformees);      \
                                        /* Introduit le 20090606104410...                                                            */ \
                    GET_ARGUMENT_L("pt=""projeter_textures=",les_trois_projections_de_la_surface_sont_en_fait_celles_de_la_texture);    \
                    GET_ARGUMENT_N("projeter_coordonnees=""pc="                                                                         \
                                  ,les_trois_projections_de_la_surface_sont_en_fait_celles_de_la_texture                                \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("pt_apres=""projeter_textures_apres_mapping="                                                        \
                                  ,les_trois_projections_de_la_texture_sont_mappees_sur_la_surface                                      \
                                   );                                                                                                   \
                    GET_ARGUMENT_N("pt_avant=""projeter_textures_avant_mapping="                                                        \
                                  ,les_trois_projections_de_la_texture_sont_mappees_sur_la_surface                                      \
                                   );                                                                                                   \
                                        /* Cet argument a ete introduit le 20050820082505...                                         */ \
                                                                                                                                        \
                    PROCESS_ARGUMENTS_D_INTERPOLATION;                                                                                  \
                                                                                                                                        \
                    GET_ARGUMENT_L("tpasX_et_pasY=""tpasXY=",FFload_point_coordonnees_01_____utiliser_pasX_et_pasY);                    \
                                        /* ATTENTION : 'FFload_point_coordonnees_01_____utiliser_pasX_et_pasY' est                   */ \
                                        /* aussi reference dans 'v $xrs/project2D.11$K pasX_et_pasY=' (note le 20070406093111...).   */ \
                    GET_ARGUMENT_I("tpasX=",FFload_point_coordonnees_01_____pasX);                                                      \
                                        /* ATTENTION : 'FFload_point_coordonnees_01_____pasX' est                                    */ \
                                        /* aussi reference dans 'v $xrs/project2D.11$K pasX=' (note le 20070406093111...).           */ \
                    GET_ARGUMENT_I("tpasY=",FFload_point_coordonnees_01_____pasY);                                                      \
                                        /* ATTENTION : 'FFload_point_coordonnees_01_____pasY' est                                    */ \
                                        /* aussi reference dans 'v $xrs/project2D.11$K pasY=' (note le 20070406093111...).           */ \
                                        /*                                                                                           */ \
                                        /* Les options de 'gFFload_point_coordonnees_01(...)' ont ete introduites le 20050715183925  */ \
                                        /* mais on notera bien qu'elles portent sur 'gFFload_point_coordonnees_01(...)' de facon     */ \
                                        /* generale et non pas uniquement pour la projection des textures. Cela pourra interferer    */ \
                                        /* avec l'usage qui en est fait dans 'v $xrs/project2D.11$K FFload_point_coordonnees_01'...  */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("standard=""projections_standard=",les_trois_projections_de_la_surface_sont_des_images_standards);   \
                                        /* L'option "projections_standard=", relatives a des images Resultats, a ete introduite      */ \
                                        /* le 20050725121009 "par symetrie" avec l'option "textures_standard=", qui elle est         */ \
                                        /* relative a des images Arguments. Cela facilitera donc l'utilisation de ces options...     */ \
                    GET_ARGUMENT_L("zero=",conserver_le_zero_des_trois_projections_de_la_surface);                                      \
                    GET_ARGUMENT_C("imagePTR=""imagePFx=""PTR=""PFx=",nom_imageProjectionFx);                                           \
                    GET_ARGUMENT_C("imagePTV=""imagePFy=""PTV=""PFy=",nom_imageProjectionFy);                                           \
                    GET_ARGUMENT_C("imagePTB=""imagePFz=""PTB=""PFz=",nom_imageProjectionFz);                                           \
                    GET_ARGUMENT_C("imageP=""P=",nom_imageProjection);                                                                  \
                                        /* Arguments introduits le 20120531144845...                                                 */ \
                                        /*                                                                                           */ \
                                        /* Je rappelle le 20160330150619 que les coordonnees {X,Y} de la texture correspondent       */ \
                                        /* aux coordonnees curvilignes {u,v}={latitude,longitude} de la surface...                   */ \
                                                                                                                                        \
                    GET_ARGUMENT_C("imageRDUV=",nom_imageR_Droite_uv);                                                                  \
                    GET_ARGUMENT_L("visualiser_droite_uv=""vduv=",visualiser_la_droite_tracee_dans_le_plan_uv);                         \
                                        /* Introduits le 20060817180436. Cela demandera en general de plus :                         */ \
                                        /*                                                                                           */ \
                                        /*                  maillage_uv=VRAI                                                         */ \
                                        /*                  projeter=VRAI                                                            */ \
                                        /*                  forcer_uv_projection=VRAI                                                */ \
                                        /*                                                                                           */ \
                                        /* Ces arguments sont venus de 'PROCESS_ARGUMENTS_DE_DEFINITION_DES_COORDONNEES_CURVILIGNES' */ \
                                        /* jusqu'ici le 20060831094638 puisque, logiquement, leur usage est conditionne par l'etat   */ \
                                        /* de 'IL_FAUT(generer_les_trois_projections_de_la_surface)'...                              */ \
                                        /*                                                                                           */ \
                                        /* Le 20170210130208, 'nom_imageDroite_uv' a ete remplace par 'nom_imageR_Droite_uv' suite   */ \
                                        /* a l'introduction de 'nom_imageA_Droite_uv' a cette date...                                */ \
                                                                                                                                        \
                    FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    Eblock

#define   PROCESS_ARGUMENTS_DE_VISUALISATION_DE_LA_TEXTURE                                                                              \
                    Bblock                                                                                                              \
                                                                                                                                        \
                    DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    GET_ARGUMENT_F("vu=""mp=""meridiens_paralleles=""lignes_de_coordonnees=""lc=""intersections=""grossissement="       \
                                  ,grossissement_du_rayon_de_visualisation_aux_intersections_des_lignes_de_coordonnees                  \
                                   );                                                                                                   \
                                        /* Introduit le 20041229183107. On notera que ce parametre est introduit ici alors qu'il     */ \
                                        /* serait plus logique dans 'PROCESS_ARGUMENTS_DE_VISUALISATION'. Mais en fait, cela         */ \
                                        /* simplifie les choses de le faire ici. D'autre part, l'application de ce grossissement     */ \
                                        /* est fait dans 'v $xrs/surfaces.12$I GENERATION_DU_TEXTURAGE_DE_LA_SURFACE'...             */ \
                                        /*                                                                                           */ \
                                        /* Le 20041230101304, j'ai ajoute quelques synonymes, dont "mp=" et "vu=" destines a         */ \
                                        /* rappeler a quoi correspondent {u,v} :                                                     */ \
                                        /*                                                                                           */ \
                                        /*                   --------------------                                                    */ \
                                        /*                  |                    |                                                   */ \
                                        /*                  |                   \|/                                                  */ \
                                        /*                                                                                           */ \
                                        /*                  u=constante       : "Paralleles",                                        */ \
                                        /*                  v=constante       : "Meridiens".                                         */ \
                                        /*                                                                                           */ \
                                        /*                  |                   /|\                                                  */ \
                                        /*                  |                    |                                                   */ \
                                        /*                   --------------------                                                    */ \
                                        /*                                                                                           */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("ignorer_points_lointains=""ipl=",ignorer_les_points_trop_lointains);                                \
                    GET_ARGUMENT_F("distance_points_lointains=""dpl=",distance_des_points_trop_lointains);                              \
                                        /* Introduits le 20120606144241...                                                           */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("AXES_COORDONNEES_FERMES_OUVERTS__texturage_____compatibilite_20130220=""compatibilite_20130220="    \
                                  ,AXES_COORDONNEES_FERMES_OUVERTS__texturage_surfaces_____compatibilite_20130220                       \
                                   );                                                                                                   \
                                        /* Introduit le 20130220132223...                                                            */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("texture_compatibilite_20170303=",texture_____compatibilite_20170303);                               \
                                        /* Introduit le 20170303103205...                                                            */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("T_periodiser_X=""T_per_X=",textures_periodiser_X);                                                  \
                    GET_ARGUMENT_L("T_periodiser_Y=""T_per_Y=",textures_periodiser_Y);                                                  \
                    GET_ARGUMENT_L("T_symetriser_X=""T_sym_X=",textures_symetriser_X);                                                  \
                    GET_ARGUMENT_L("T_symetriser_Y=""T_sym_Y=",textures_symetriser_Y);                                                  \
                    GET_ARGUMENT_L("T_prolonger_X=""T_pro_X=",textures_prolonger_X);                                                    \
                    GET_ARGUMENT_L("T_prolonger_Y=""T_pro_Y=",textures_prolonger_Y);                                                    \
                    GET_ARGUMENT_F("T_hors=",textures_niveau_hors_image);                                                               \
                                        /* Jusqu'au 20060117133441, il y avait 'GET_ARGUMENT_P(...)' ci-dessus par erreur, comme     */ \
                                        /* 'v $xrs/surfaces.14$I 20060117133441'...                                                  */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("ts=""textures_standard=""texture_standard=",les_textures_sont_des_images_standards);                \
                                        /* Introduit le 20050715181241...                                                            */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("cdts=""conserver_dynamique_textures_standards="                                                     \
                                  ,la_dynamique_des_textures_standards_doit_etre_conservee                                              \
                                   );                                                                                                   \
                                        /* Introduit le 20221005114248...                                                            */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("image_Texture_R_interpoler="                                                                        \
                                  ,image_Texture_R__interpoler_bilineairement_ou_bicubiquement                                          \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Texture_R_lineaire="                                                                          \
                                  ,image_Texture_R__utiliser_l_interpolation_bilineaire                                                 \
                                   );                                                                                                   \
                    GET_ARGUMENT_N("image_Texture_R_cubique="                                                                           \
                                  ,image_Texture_R__utiliser_l_interpolation_bilineaire                                                 \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Texture_R_eviter_discontinuites="                                                             \
                                  ,image_Texture_R__eviter_les_fortes_discontinuites                                                    \
                                   );                                                                                                   \
                    GET_ARGUMENT_F("image_Texture_R_epsilon_discontinuites="                                                            \
                                  ,image_Texture_R__epsilon_detection_des_fortes_discontinuites                                         \
                                   );                                                                                                   \
                                        /* Arguments introduits le 20150528132326...                                                 */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("image_Texture_V_interpoler="                                                                        \
                                  ,image_Texture_V__interpoler_bilineairement_ou_bicubiquement                                          \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Texture_V_lineaire="                                                                          \
                                  ,image_Texture_V__utiliser_l_interpolation_bilineaire                                                 \
                                   );                                                                                                   \
                    GET_ARGUMENT_N("image_Texture_V_cubique="                                                                           \
                                  ,image_Texture_V__utiliser_l_interpolation_bilineaire                                                 \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Texture_V_eviter_discontinuites="                                                             \
                                  ,image_Texture_V__eviter_les_fortes_discontinuites                                                    \
                                   );                                                                                                   \
                    GET_ARGUMENT_F("image_Texture_V_epsilon_discontinuites="                                                            \
                                  ,image_Texture_V__epsilon_detection_des_fortes_discontinuites                                         \
                                   );                                                                                                   \
                                        /* Arguments introduits le 20150528132326...                                                 */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("image_Texture_B_interpoler="                                                                        \
                                  ,image_Texture_B__interpoler_bilineairement_ou_bicubiquement                                          \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Texture_B_lineaire="                                                                          \
                                  ,image_Texture_B__utiliser_l_interpolation_bilineaire                                                 \
                                   );                                                                                                   \
                    GET_ARGUMENT_N("image_Texture_B_cubique="                                                                           \
                                  ,image_Texture_B__utiliser_l_interpolation_bilineaire                                                 \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Texture_B_eviter_discontinuites="                                                             \
                                  ,image_Texture_B__eviter_les_fortes_discontinuites                                                    \
                                   );                                                                                                   \
                    GET_ARGUMENT_F("image_Texture_B_epsilon_discontinuites="                                                            \
                                  ,image_Texture_B__epsilon_detection_des_fortes_discontinuites                                         \
                                   );                                                                                                   \
                                        /* Arguments introduits le 20150528132326...                                                 */ \
                                                                                                                                        \
                    GET_ARGUMENT_C("imageTR=""TR=",nom_textureR);                                                                       \
                    GET_ARGUMENT_C("imageTV=""TV=",nom_textureV);                                                                       \
                    GET_ARGUMENT_C("imageTB=""TB=",nom_textureB);                                                                       \
                    GET_ARGUMENT_F("ROUGE_T=",ponderation_ROUGE_pour_dcx);                                                              \
                    GET_ARGUMENT_F("VERTE_T=",ponderation_VERTE_pour_dcy);                                                              \
                    GET_ARGUMENT_F("BLEUE_T=",ponderation_BLEUE_pour_dcz);                                                              \
                                                                                                                                        \
                                        /* Le parametre 'prendre_la_valeur_absolue_des_differentielles' introduit le                 */ \
                                        /* 20060131120029 a ete transfere dans 'v $xrv/champs_5.1A$I 20060201094519' afin            */ \
                                        /* d'en augmenter la portee...                                                               */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("rayon_compatibilite_20170303=",rayon_de_visualisation_____compatibilite_20170303);                  \
                                        /* Introduit le 20170303103205...                                                            */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("R_periodiser_X=""R_per_X=",rayon_periodiser_X);                                                     \
                    GET_ARGUMENT_L("R_periodiser_Y=""R_per_Y=",rayon_periodiser_Y);                                                     \
                    GET_ARGUMENT_L("R_symetriser_X=""R_sym_X=",rayon_symetriser_X);                                                     \
                    GET_ARGUMENT_L("R_symetriser_Y=""R_sym_Y=",rayon_symetriser_Y);                                                     \
                    GET_ARGUMENT_L("R_prolonger_X=""R_pro_X=",rayon_prolonger_X);                                                       \
                    GET_ARGUMENT_L("R_prolonger_Y=""R_pro_Y=",rayon_prolonger_Y);                                                       \
                    GET_ARGUMENT_F("R_hors=",rayon_niveau_hors_image);                                                                  \
                                        /* Introduits le 20170303103414...                                                           */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("image_Rayon_interpoler="                                                                            \
                                  ,image_Rayon__interpoler_bilineairement_ou_bicubiquement                                              \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Rayon_lineaire="                                                                              \
                                  ,image_Rayon__utiliser_l_interpolation_bilineaire                                                     \
                                   );                                                                                                   \
                    GET_ARGUMENT_N("image_Rayon_cubique="                                                                               \
                                  ,image_Rayon__utiliser_l_interpolation_bilineaire                                                     \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("image_Rayon_eviter_discontinuites="                                                                 \
                                  ,image_Rayon__eviter_les_fortes_discontinuites                                                        \
                                   );                                                                                                   \
                    GET_ARGUMENT_F("image_Rayon_epsilon_discontinuites="                                                                \
                                  ,image_Rayon__epsilon_detection_des_fortes_discontinuites                                             \
                                   );                                                                                                   \
                                                                                                                                        \
                    GET_ARGUMENT_C("imageRAYON=""RAYON=",nom_rayon);                                                                    \
                                        /* Le champ rayon a ete introduit le 20041229173848...                                       */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("colorier_numero_points=""cnp=",colorier_avec_le_numero_des_points);                                 \
                                        /* Introduit le 20170213101455. Il est alors suggere de l'utiliser conjointement avec :      */ \
                                        /*                                                                                           */ \
                                        /*                  centre_des_spheres=VRAI                                                  */ \
                                        /*                  extrema_differentielles_arbitraires=FAUX                                 */ \
                                        /*                                                                                           */ \
                                                                                                                                        \
                    FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    Eblock

#define   PROCESS_ARGUMENTS_DE_VISUALISATION_DE_LA_NORMALE                                                                              \
                    Bblock                                                                                                              \
                                                                                                                                        \
                    DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("normale=",visualiser_la_normale);                                                                   \
                    GET_ARGUMENT_I("pointsN=",nombre_absolu_de_points_sur_une_normale);                                                 \
                    GET_ARGUMENT_F("facteurN=",facteur_de_la_normale);                                                                  \
                    GET_ARGUMENT_F("rayonN=",facteur_du_rayon_de_visualisation_pour_la_normale);                                        \
                                                                                                                                        \
                    GET_ARGUMENT_F("facteur_ROUGE_N=",facteur_du_ROUGE_pour_la_normale);                                                \
                    GET_ARGUMENT_F("facteur_VERTE_N=",facteur_du_VERTE_pour_la_normale);                                                \
                    GET_ARGUMENT_F("facteur_BLEUE_N=",facteur_du_BLEUE_pour_la_normale);                                                \
                                        /* Ces trois facteurs ont ete introduits le 20060207093944...                                */ \
                    GET_ARGUMENT_F("pROUGE_N1=",ponderation1_ROUGE_pour_la_normale);                                                    \
                    GET_ARGUMENT_F("pVERTE_N1=",ponderation1_VERTE_pour_la_normale);                                                    \
                    GET_ARGUMENT_F("pBLEUE_N1=",ponderation1_BLEUE_pour_la_normale);                                                    \
                                                                                                                                        \
                    GET_ARGUMENT_F("nROUGE_N=",niveau_ROUGE_pour_la_normale);                                                           \
                    GET_ARGUMENT_F("nVERTE_N=",niveau_VERTE_pour_la_normale);                                                           \
                    GET_ARGUMENT_F("nBLEUE_N=",niveau_BLEUE_pour_la_normale);                                                           \
                    GET_ARGUMENT_F("pROUGE_N2=",ponderation2_ROUGE_pour_la_normale);                                                    \
                    GET_ARGUMENT_F("pVERTE_N2=",ponderation2_VERTE_pour_la_normale);                                                    \
                    GET_ARGUMENT_F("pBLEUE_N2=",ponderation2_BLEUE_pour_la_normale);                                                    \
                                        /* Ces six parametres ont ete introduits le 20060207110735. On notera que par symetrie       */ \
                                        /* avec les trois nouveaux parametres {pROUGE_N2,pVERTE_N2,pBLEUE_N2}, les trois anciens     */ \
                                        /* parametres {ROUGE_N,VERTE_N,BLEUE_N} furent changes en {pROUGE_N1,pVERTE_N1,pBLEUE_N1}.   */ \
                                                                                                                                        \
                    FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    Eblock

#define   PROCESS_ARGUMENTS_DE_DEFINITION_DES_COORDONNEES_CURVILIGNES                                                                   \
                    Bblock                                                                                                              \
                                                                                                                                        \
                    DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("luv=""lister_u_v=",lister_les_coordonnees_u_v_des_points);                                          \
                                        /* Introduit le 20060410111431...                                                            */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("majoration_maximum_des_coordonnees_u_v_____compatibilite_20160414=""compatibilite_20160414="        \
                                  ,majoration_du_maximum_des_coordonnees_u_v_____compatibilite_20160414                                 \
                                   );                                                                                                   \
                    GET_ARGUMENT_F("epsilon_majoration_maximum_des_coordonnees_u_v=""epsilon_maximum_u_v=""eMuv="                       \
                                  ,epsilon_de_majoration_du_maximum_des_coordonnees_u_v                                                 \
                                   );                                                                                                   \
                                        /* Introduit le 20160414102214 et complete le 20160414145313 avec le 'epsilon'...            */ \
                                                                                                                                        \
                    GET_ARGUMENT_F("mu=",minimum_de_u);                                                                                 \
                    GET_ARGUMENT_F("Mu=",maximum_de_u);                                                                                 \
                    GET_ARGUMENT_F("pas_u=""pu=",pas_de_u);                                                                             \
                    GET_ARGUMENT_I("eu=",echantillonnage_de_u);                                                                         \
                    GET_ARGUMENT_I("teu=",translation_de_l_echantillonnage_de_u);                                                       \
                    GET_ARGUMENT_F("dpu=",diviseur_du_pas_de_u);                                                                        \
                                                                                                                                        \
                    GET_ARGUMENT_F("mv=",minimum_de_v);                                                                                 \
                    GET_ARGUMENT_F("Mv=",maximum_de_v);                                                                                 \
                    GET_ARGUMENT_F("pas_v=""pv=",pas_de_v);                                                                             \
                    GET_ARGUMENT_I("ev=",echantillonnage_de_v);                                                                         \
                    GET_ARGUMENT_I("tev=",translation_de_l_echantillonnage_de_v);                                                       \
                    GET_ARGUMENT_F("dpv=",diviseur_du_pas_de_v);                                                                        \
                                                                                                                                        \
                    GET_ARGUMENT_I("nombre_inter_paralleles=""nip=""niu=""nombre_paralleles=",nombre_d_inters_u);                       \
                    GET_ARGUMENT_I("nombre_points_entre_deux_paralleles=""npp=""npu=""nombre_intervalles_entre_deux_paralleles="        \
                                  ,nombre_de_points_dans_un_inter_u                                                                     \
                                   );                                                                                                   \
                    GET_ARGUMENT_I("nombre_inter_meridiens=""nim=""niv=""nombre_meridiens=",nombre_d_inters_v);                         \
                    GET_ARGUMENT_I("nombre_points_entre_deux_meridiens=""npm=""npv=""nombre_intervalles_entre_deux_meridiens="          \
                                  ,nombre_de_points_dans_un_inter_v                                                                     \
                                   );                                                                                                   \
                                        /* Pour ameliorer encore la comprehension, le 20161212120957 "nombre_paralleles=" et         */ \
                                        /* "nombre_meridiens=" ont ete introduits...                                                 */ \
                                        /*                                                                                           */ \
                                        /* On notera le 20200619094321 que les "nombres de points" sont en fait des                  */ \
                                        /* "nombres de points moins 1" ou "nombre d'intervalles", d'ou les nouveaux arguments        */ \
                                        /* introduits a cette date ('v $xiirs/$Fnota Debut_listG_SPHE_Q1' qui a permis de            */ \
                                        /* verifier cela...).                                                                        */ \
                    PROCESS_ARGUMENT_L("faciliter_parametrage_u_v=""fpuv="                                                              \
                                      ,faciliter_le_parametrage_de_u_v                                                                  \
                                      ,BLOC(VIDE;)                                                                                      \
                                      ,BLOC(Bblock                                                                                      \
                                            DEFV(Positive,INIT(nombre_de_points_a_visualiser                                            \
                                                              ,SUCC(MUL3(nombre_d_inters_v                                              \
                                                                        ,nombre_d_inters_u                                              \
                                                                        ,ADD2(SUCC(nombre_de_points_dans_un_inter_u)                    \
                                                                             ,SUCC(nombre_de_points_dans_un_inter_v)                    \
                                                                              )                                                         \
                                                                         )                                                              \
                                                                    )                                                                   \
                                                               )                                                                        \
                                                 );                                                                                     \
                                        /* On notera le 20200402123231, le nombre de points representatifs d'une surface. Soit       */ \
                                        /* donc :                                                                                    */ \
                                        /*                                                                                           */ \
                                        /*                  nombre_paralleles=NP                                                     */ \
                                        /*                  nombre_points_entre_deux_paralleles=Np2P                                 */ \
                                        /*                  nombre_meridiens=NM                                                      */ \
                                        /*                  nombre_points_entre_deux_meridiens=Np2M                                  */ \
                                        /*                                                                                           */ \
                                        /* Chaque meridien est donc represente par :                                                 */ \
                                        /*                                                                                           */ \
                                        /*                  NP.(Np2P+1) points                                                       */ \
                                        /*                                                                                           */ \
                                        /* Chaque parallele est donc represente par :                                                */ \
                                        /*                                                                                           */ \
                                        /*                  NM.(Np2M+1) points                                                       */ \
                                        /*                                                                                           */ \
                                        /* Il y a donc au total :                                                                    */ \
                                        /*                                                                                           */ \
                                        /*                  NM.[NP.(Np2P+1)] + NP.[NM.(Np2M+1)] = NM.NP.[(Np2P+1)+(Np2M+1)]          */ \
                                        /*                                                                                           */ \
                                        /* points a visualiser...                                                                    */ \
                                        /*                                                                                           */ \
                                        /* Cette variable a ete introduite le 20200403094849, ainsi que le 'SUCC(...)' qui fait      */ \
                                        /* suite a la remarque 'v $xiirs/$Fnota existence.de.65601.points'...                        */ \
                                                                                                                                        \
                                            Test(IFLE(nombre_de_points_a_visualiser                                                     \
                                                     ,nombre_maximal_de_points_visualisables                                            \
                                                      )                                                                                 \
                                                 )                                                                                      \
                                                 Bblock                                                                                 \
                                                 Test(IL_FAUT(faciliter_le_parametrage_de_u_v))                                         \
                                                      Bblock                                                                            \
                                                      Test(IFOU(IFOU(IFEQ(nombre_d_inters_u                                             \
                                                                         ,NOMBRE_D_INTERS_u                                             \
                                                                          )                                                             \
                                                                    ,IFEQ(nombre_de_points_dans_un_inter_u                              \
                                                                         ,NOMBRE_DE_POINTS_DANS_UN_INTER_u                              \
                                                                          )                                                             \
                                                                     )                                                                  \
                                                               ,IFOU(IFEQ(nombre_d_inters_v                                             \
                                                                         ,NOMBRE_D_INTERS_v                                             \
                                                                          )                                                             \
                                                                    ,IFEQ(nombre_de_points_dans_un_inter_v                              \
                                                                         ,NOMBRE_DE_POINTS_DANS_UN_INTER_v                              \
                                                                          )                                                             \
                                                                     )                                                                  \
                                                                )                                                                       \
                                                           )                                                                            \
                                        /* Test introduit le 20161205101245...                                                       */ \
                                                           Bblock                                                                       \
                                                           PRINT_ATTENTION("argument 'faciliter_parametrage_u_v=' mal place ?");        \
                                        /* Pour voir le bon ordre de definition des arguments, 'v $xrs/surfaces.14$I 20191015170625. */ \
                                                           Eblock                                                                       \
                                                      ATes                                                                              \
                                                           Bblock                                                                       \
                                                           Eblock                                                                       \
                                                      ETes                                                                              \
                                                                                                                                        \
                                                      EGAL(nombre_de_points_dans_un_inter_u                                             \
                                                          ,MAX2(nombre_de_points_dans_un_inter_u,NOMBRE_DE_POINTS_DANS_UN_INTER_u)      \
                                                           );                                                                           \
                                                      EGAL(pas_de_u,DIVI(SOUS(maximum_de_u,minimum_de_u),FLOT(nombre_d_inters_u)));     \
                                                      EGAL(echantillonnage_de_u,nombre_de_points_dans_un_inter_u);                      \
                                                      EGAL(diviseur_du_pas_de_u,FLOT(nombre_de_points_dans_un_inter_u));                \
                                                                                                                                        \
                                                      EGAL(nombre_de_points_dans_un_inter_v                                             \
                                                          ,MAX2(nombre_de_points_dans_un_inter_v,NOMBRE_DE_POINTS_DANS_UN_INTER_v)      \
                                                           );                                                                           \
                                                      EGAL(pas_de_v,DIVI(SOUS(maximum_de_v,minimum_de_v),FLOT(nombre_d_inters_v)));     \
                                                      EGAL(echantillonnage_de_v,nombre_de_points_dans_un_inter_v);                      \
                                                      EGAL(diviseur_du_pas_de_v,FLOT(nombre_de_points_dans_un_inter_v));                \
                                                      Eblock                                                                            \
                                                 ATes                                                                                   \
                                                      Bblock                                                                            \
                                                      Eblock                                                                            \
                                                 ETes                                                                                   \
                                                 Eblock                                                                                 \
                                            ATes                                                                                        \
                                                 Bblock                                                                                 \
                                                 PRINT_ERREUR("Trop de points seront a visualiser, la commande est donc abortee.");     \
                                                 CAL1(Prer2("(%d sont a visualiser, alors que seulement %d sont visualisables)\n"       \
                                                           ,nombre_de_points_a_visualiser                                               \
                                                           ,nombre_maximal_de_points_visualisables                                      \
                                                            )                                                                           \
                                                      );                                                                                \
                                        /* Message introduit le 20200403094849...                                                    */ \
                                                                                                                                        \
                                                 ABORT_Commande;                                                                        \
                                                 Eblock                                                                                 \
                                            ETes                                                                                        \
                                            Eblock                                                                                      \
                                            )                                                                                           \
                                       );                                                                                               \
                                        /* Introduits le 20160414104726 pour faciliter le parametrage de l'espace {u,v}...           */ \
                                        /*                                                                                           */ \
                                        /* ATTENTION : l'argument "fpuv=" doit absolument etre reference APRES tous ceux qui         */ \
                                        /* participent a la definition de l'espace {u,v} etant donnee la programmation de            */ \
                                        /* 'PROCESS_ARGUMENT_L(...)'.                                                                */ \
                                                                                                                                        \
                    FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    Eblock

#define   PROCESS_ARGUMENTS_DE_DEFINITION_D_UNE_DROITE_DU_PLAN_UV                                                                       \
                    Bblock                                                                                                              \
                                                                                                                                        \
                    DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("muv=""maillage_uv=",visualiser_les_points_du_maillage_uv);                                          \
                                        /* Introduits le 20060814185543...                                                           */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("duv=""droite_uv=",tracer_une_droite_du_plan_uv);                                                    \
                    GET_ARGUMENT_L("tracer_une_droite_du_plan_uv_____compatibilite_20170130=""compatibilite_20170130="                  \
                                  ,tracer_une_droite_du_plan_uv_____compatibilite_20170130                                              \
                                   );                                                                                                   \
                    GET_ARGUMENT_F("Aduv=",coefficient_A_d_une_droite_du_plan_uv);                                                      \
                    GET_ARGUMENT_F("Bduv=",coefficient_B_d_une_droite_du_plan_uv);                                                      \
                    GET_ARGUMENT_F("Cduv=",coefficient_C_d_une_droite_du_plan_uv);                                                      \
                    GET_ARGUMENT_F("Fduv=",coefficient_F_d_une_droite_du_plan_uv);                                                      \
                    GET_ARGUMENT_F("Gduv=",coefficient_G_d_une_droite_du_plan_uv);                                                      \
                    GET_ARGUMENT_F("Hduv=",coefficient_H_d_une_droite_du_plan_uv);                                                      \
                    GET_ARGUMENT_F("Eduv=",epsilon_de_definition_d_une_droite_du_plan_uv);                                              \
                                        /* Introduits le 20060813111518 et completes le 20170124105727 avec {F,G,H}...               */ \
                                        /*                                                                                           */ \
                                        /* On notera le 20170130111050 que si l'on souhaite, par exemple, une droite qui soit la     */ \
                                        /* diagonale principale du domaine [$MiNu,$MaXu]x[$MiNv,$MaXv], il faut prendre :            */ \
                                        /*                                                                                           */ \
                                        /*                  Aduv = `calcul (($MaXv)-($MiNv))/(($MaXu)-($MiNu))`                      */ \
                                        /*                  Bduv = -1                                                                */ \
                                        /*                  Cduv = $MiNv                                                             */ \
                                        /*                                                                                           */ \
                                        /* La "compatibilite_20170130" a ete introduite le 20170130143608...                         */ \
                    GET_ARGUMENT_F("muduv=",minimum_de_u_du_domaine_d_une_droite_du_plan_uv);                                           \
                    GET_ARGUMENT_F("Muduv=",maximum_de_u_du_domaine_d_une_droite_du_plan_uv);                                           \
                    GET_ARGUMENT_F("mvduv=",minimum_de_v_du_domaine_d_une_droite_du_plan_uv);                                           \
                    GET_ARGUMENT_F("Mvduv=",maximum_de_v_du_domaine_d_une_droite_du_plan_uv);                                           \
                                        /* Introduits le 20060818092338...                                                           */ \
                                                                                                                                        \
                    GET_ARGUMENT_C("imageADUV=",nom_imageA_Droite_uv);                                                                  \
                                        /* Introduits le 20170210130208...                                                           */ \
                    GET_ARGUMENT_L("imageA_Droite_uv_interpoler="                                                                       \
                                  ,imageA_Droite_uv__interpoler_bilineairement_ou_bicubiquement                                         \
                                   );                                                                                                   \
                    GET_ARGUMENT_N("imageA_Droite_uv_cubique="                                                                          \
                                  ,imageA_Droite_uv__utiliser_l_interpolation_bilineaire                                                \
                                   );                                                                                                   \
                    GET_ARGUMENT_L("imageA_Droite_uv_eviter_discontinuites="                                                            \
                                  ,imageA_Droite_uv__eviter_les_fortes_discontinuites                                                   \
                                   );                                                                                                   \
                    GET_ARGUMENT_F("imageA_Droite_uv_epsilon_discontinuites="                                                           \
                                  ,imageA_Droite_uv__epsilon_detection_des_fortes_discontinuites                                        \
                                   );                                                                                                   \
                                        /* Introduits le 20170228182517 et modifie le 20170301145128 en creant des variables         */ \
                                        /* "locales" suite a l'introduction de 'v $xrs/surfaces.12$I sgFFload_point_coordonnees_01'. */ \
                                                                                                                                        \
                    FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    Eblock                                                                                                              \
                                        /* Introduit le 20060831112009 afin d'isoler ces parametres de ceux qui sont definis dans    */ \
                                        /* 'PROCESS_ARGUMENTS_DE_DEFINITION_DES_COORDONNEES_CURVILIGNES' afin de les rendre non      */ \
                                        /* accessibles si necessaire (par exemple dans 'v $xrs/CalabiYau.12$K' ainsi que dans        */ \
                                        /* 'v $xrs/CalabiYau.12$K' pour lesquels la surface est en fait un assemblage de surfaces    */ \
                                        /* elementaires -ou "patches"-...).                                                          */

#define   PROCESS_ARGUMENTS_DE_DEFINITION_DE_LA_COORDONNEE_DE_PARAMETRAGE_DU_PLAN                                                       \
                    Bblock                                                                                                              \
                                                                                                                                        \
                    DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                                                                                                                        \
                    GET_ARGUMENT_F("mt=",minimum_de_t);                                                                                 \
                    GET_ARGUMENT_F("Mt=",maximum_de_t);                                                                                 \
                    GET_ARGUMENT_F("pas_t=",pas_de_t);                                                                                  \
                                        /* On notera que l'on ne peut utiliser ici :                                                 */ \
                                        /*                                                                                           */ \
                                        /*                  GET_ARGUMENT_F("pt=",pas_de_t);                                          */ \
                                        /*                                                                                           */ \
                                        /* a cause de :                                                                              */ \
                                        /*                                                                                           */ \
                                        /*                  GET_ARGUMENT_L("pt=""projeter_textures=",...);                           */ \
                                        /*                                                                                           */ \
                                        /* ci-dessus (dans 'PROCESS_ARGUMENTS_DE_PROJECTION_DE_LA_SURFACE')...                       */ \
                                                                                                                                        \
                    FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                                                                                                                        \
                    Eblock                                                                                                              \
                                        /* Introduit le 20220513175413 afin d'isoler ces parametres de ceux qui sont definis dans    */

#define   PROCESS_ARGUMENTS_DE_DIFFERENTIATION_PAR_DIFFERENCES                                                                          \
                    Bblock                                                                                                              \
                                                                                                                                        \
                    DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("hddu=",le_pas_de_u_de_differentiation_est_homothetique);                                            \
                    GET_ARGUMENT_L("hddv=",le_pas_de_v_de_differentiation_est_homothetique);                                            \
                                        /* Introduit le 20041119150651...                                                            */ \
                                                                                                                                        \
                    GET_ARGUMENT_F("ddu=",diviseur_de_differentiation_de_u);                                                            \
                    GET_ARGUMENT_F("ddv=",diviseur_de_differentiation_de_v);                                                            \
                                                                                                                                        \
                    GET_ARGUMENT_L("calcul_differentielles_____compatibilite_2009110217=""compatibilite_2009110217="                    \
                                  ,calcul_des_differentielles_avec_u_v_____compatibilite_2009110217                                     \
                                   );                                                                                                   \
                                        /* Introduit le 20091102172230...                                                            */ \
                                                                                                                                        \
                    GET_ARGUMENT_F("dxu=",ponderation_de__u_____dans_dx);                                                               \
                    GET_ARGUMENT_F("dxv=",ponderation_de__v_____dans_dx);                                                               \
                                        /* Introduit le 20090723214313...                                                            */ \
                    GET_ARGUMENT_F("dxFx=",ponderation_de_Fx_____dans_dx);                                                              \
                    GET_ARGUMENT_F("dxFxu=",ponderation_de_Fx_u___dans_dx);                                                             \
                    GET_ARGUMENT_F("dxFxv=",ponderation_de_Fx___v_dans_dx);                                                             \
                    GET_ARGUMENT_F("dxFxuv=",ponderation_de_Fx_u_v_dans_dx);                                                            \
                                                                                                                                        \
                    GET_ARGUMENT_F("dxFy=",ponderation_de_Fy_____dans_dx);                                                              \
                    GET_ARGUMENT_F("dxFyu=",ponderation_de_Fy_u___dans_dx);                                                             \
                    GET_ARGUMENT_F("dxFyv=",ponderation_de_Fy___v_dans_dx);                                                             \
                    GET_ARGUMENT_F("dxFyuv=",ponderation_de_Fy_u_v_dans_dx);                                                            \
                                                                                                                                        \
                    GET_ARGUMENT_F("dxFz=",ponderation_de_Fz_____dans_dx);                                                              \
                    GET_ARGUMENT_F("dxFzu=",ponderation_de_Fz_u___dans_dx);                                                             \
                    GET_ARGUMENT_F("dxFzv=",ponderation_de_Fz___v_dans_dx);                                                             \
                    GET_ARGUMENT_F("dxFzuv=",ponderation_de_Fz_u_v_dans_dx);                                                            \
                                                                                                                                        \
                    GET_ARGUMENT_F("dyu=",ponderation_de__u_____dans_dy);                                                               \
                    GET_ARGUMENT_F("dyv=",ponderation_de__v_____dans_dy);                                                               \
                                        /* Introduit le 20090723214313...                                                            */ \
                    GET_ARGUMENT_F("dyFx=",ponderation_de_Fx_____dans_dy);                                                              \
                    GET_ARGUMENT_F("dyFxu=",ponderation_de_Fx_u___dans_dy);                                                             \
                    GET_ARGUMENT_F("dyFxv=",ponderation_de_Fx___v_dans_dy);                                                             \
                    GET_ARGUMENT_F("dyFxuv=",ponderation_de_Fx_u_v_dans_dy);                                                            \
                                                                                                                                        \
                    GET_ARGUMENT_F("dyFy=",ponderation_de_Fy_____dans_dy);                                                              \
                    GET_ARGUMENT_F("dyFyu=",ponderation_de_Fy_u___dans_dy);                                                             \
                    GET_ARGUMENT_F("dyFyv=",ponderation_de_Fy___v_dans_dy);                                                             \
                    GET_ARGUMENT_F("dyFyuv=",ponderation_de_Fy_u_v_dans_dy);                                                            \
                                                                                                                                        \
                    GET_ARGUMENT_F("dyFz=",ponderation_de_Fz_____dans_dy);                                                              \
                    GET_ARGUMENT_F("dyFzu=",ponderation_de_Fz_u___dans_dy);                                                             \
                    GET_ARGUMENT_F("dyFzv=",ponderation_de_Fz___v_dans_dy);                                                             \
                    GET_ARGUMENT_F("dyFzuv=",ponderation_de_Fz_u_v_dans_dy);                                                            \
                                                                                                                                        \
                    GET_ARGUMENT_F("dzu=",ponderation_de__u_____dans_dz);                                                               \
                    GET_ARGUMENT_F("dzv=",ponderation_de__v_____dans_dz);                                                               \
                                        /* Introduit le 20090723214313...                                                            */ \
                    GET_ARGUMENT_F("dzFx=",ponderation_de_Fx_____dans_dz);                                                              \
                    GET_ARGUMENT_F("dzFxu=",ponderation_de_Fx_u___dans_dz);                                                             \
                    GET_ARGUMENT_F("dzFxv=",ponderation_de_Fx___v_dans_dz);                                                             \
                    GET_ARGUMENT_F("dzFxuv=",ponderation_de_Fx_u_v_dans_dz);                                                            \
                                                                                                                                        \
                    GET_ARGUMENT_F("dzFy=",ponderation_de_Fy_____dans_dz);                                                              \
                    GET_ARGUMENT_F("dzFyu=",ponderation_de_Fy_u___dans_dz);                                                             \
                    GET_ARGUMENT_F("dzFyv=",ponderation_de_Fy___v_dans_dz);                                                             \
                    GET_ARGUMENT_F("dzFyuv=",ponderation_de_Fy_u_v_dans_dz);                                                            \
                                                                                                                                        \
                    GET_ARGUMENT_F("dzFz=",ponderation_de_Fz_____dans_dz);                                                              \
                    GET_ARGUMENT_F("dzFzu=",ponderation_de_Fz_u___dans_dz);                                                             \
                    GET_ARGUMENT_F("dzFzv=",ponderation_de_Fz___v_dans_dz);                                                             \
                    GET_ARGUMENT_F("dzFzuv=",ponderation_de_Fz_u_v_dans_dz);                                                            \
                                                                                                                                        \
                    FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                        /*                                                                                           */ \
                                        /* Le 20090606172901 furent introduites les ponderations relatives a {cx,cy,cz} (baptisees   */ \
                                        /* 'ponderation_de_F?_____dans_d?') nulles par defaut pour des raisons de compatibilite      */ \
                                        /* anterieure...                                                                             */ \
                                                                                                                                        \
                    Eblock                                                                                                              \
                                        /* Introduit le 20041118143736...                                                            */

#define   PROCESS_ARGUMENTS_DE_PERMUTATION_DES_COORDONNEES_ET_DES_DIFFERENTIELLES                                                       \
                    Bblock                                                                                                              \
                                                                                                                                        \
                    DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    GET_ARGUMENT_L("permuter_coordonnees_differentielles=""pcd=",permuter_les_coordonnees_et_les_differentielles);      \
                                                                                                                                        \
                    FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                     \
                                        /* Introduit le 20060208111433 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \
                                                                                                                                        \
                    Eblock                                                                                                              \
                                        /* Introduit le 20050615083350...                                                            */

#ifdef    PRAGMA_CPP_____AUTORISER_LE_GooF

#    ifdef     SI_L_ARITHMETIQUE_ETENDUE_DES_NOMBRES_FLOTTANTS_EST_ACTIVABLE_ALORS_L_UTILISER_AUSSI_POUR_LES_DERIVEES
#         define    PROCESS_ARGUMENTS_D_ACTIVATION_DE_L_ARITHMETIQUE_ETENDUE_ET_NON_BASIQUE_POUR_dFx_dFy_dFz                            \
                              Bblock                                                                                                    \
                                                                                                                                        \
                              DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                           \
                                                                                                                                        \
@         ifndef    PRAGMA_CPP_____MODULE_NON_DERIVABLE@@@                                                                              \
                              PROCESS_ARGUMENT_L("arithmetique_etendue_dFx_dFy_dFz=""ariedF=""ariedf=""aried="                          \
                                                ,dFx_dFy_dFz____`use_arithmetique_etendue_et_non_basique                                \
                                                ,BLOC(VIDE;)                                                                            \
                                                ,BLOC(Bblock                                                                            \
                                                      EGAL(si_le_GooF_est_activable`use_arithmetique_etendue_et_non_basique             \
                                                          ,NEUL(dFx_dFy_dFz____`use_arithmetique_etendue_et_non_basique)                \
                                                           );                                                                           \
                                                      Eblock                                                                            \
                                                      )                                                                                 \
                                                 );                                                                                     \
                              PROCESS_ARGUMENT_N("arithmetique_de_base_dFx_dFy_dFz=""aribdF=""aribdf=""aribd="                          \
                                                ,dFx_dFy_dFz____`use_arithmetique_etendue_et_non_basique                                \
                                                ,BLOC(VIDE;)                                                                            \
                                                ,BLOC(Bblock                                                                            \
                                                      EGAL(si_le_GooF_est_activable`use_arithmetique_etendue_et_non_basique             \
                                                          ,NOTL(dFx_dFy_dFz____`use_arithmetique_etendue_et_non_basique)                \
                                                           );                                                                           \
                                                      Eblock                                                                            \
                                                      )                                                                                 \
                                                 );                                                                                     \
                                        /* Le 20201012170616, je decouvre que ce sont ces directives conditionnees par la variable   */ \
                                        /* 'PRAGMA_CPP_____MODULE_NON_DERIVABLE' qui sont responsables de l'apparition du message    */ \
                                        /* 'v $xig/fonct$vv$DEF le.calcul.du.nombre.maximal.d.arguments.regroupes.en' lorsque        */ \
                                        /* l'option :                                                                                */ \
                                        /*                                                                                           */ \
                                        /*                  @define   PRAGMA_CPP_____MODULE_NON_DERIVABLE                            */ \
                                        /*                                                                                           */ \
                                        /* est presente dans 'v $xrs/Horner42.11$K PRAGMA_CPP_____MODULE_NON_DERIVABLE'...           */ \
                                        /* Supprimer ces directives fait disparaitre le probleme...                                  */ \
                                        /*                                                                                           */ \
                                        /* En fait le probleme venait de 'v $xcc/cpp$Z 20201013131140' qui faisait que certaines     */ \
                                        /* recuperations d'arguments qui etaient conditionnelles (ici via 'MODULE_NON_DERIVABLE')    */ \
                                        /* etaient malgre tout comptabilisees dans 'v $xcc/cpp$Z NoMbRe_PaRaMeTrEs' et dans ce       */ \
                                        /* cas il semblait y en avoir plus qu'en realite...                                          */ \
@         Aifndef   PRAGMA_CPP_____MODULE_NON_DERIVABLE@@@                                                                              \
                              BLOC(VIDE;);                                                                                              \
@         Eifndef   PRAGMA_CPP_____MODULE_NON_DERIVABLE@@@                                                                              \
                                                                                                                                        \
                              FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                           \
                                                                                                                                        \
                              Eblock                                                                                                    \
                                        /* Introduit le 20080125084000 et decoupe en {Fx,Fy,Fz} et {dFX,dFy,dFz} le 20080126105643.  */
#    Aifdef    SI_L_ARITHMETIQUE_ETENDUE_DES_NOMBRES_FLOTTANTS_EST_ACTIVABLE_ALORS_L_UTILISER_AUSSI_POUR_LES_DERIVEES
#         define    PROCESS_ARGUMENTS_D_ACTIVATION_DE_L_ARITHMETIQUE_ETENDUE_ET_NON_BASIQUE_POUR_dFx_dFy_dFz                            \
                              Bblock                                                                                                    \
                                                                                                                                        \
                              DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                           \
                                                                                                                                        \
                              BLOC(VIDE;);                                                                                              \
                                                                                                                                        \
                              FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                           \
                                                                                                                                        \
                              Eblock                                                                                                    \
                                        /* Introduit le 20080125084000 et decoupe en {Fx,Fy,Fz} et {dFX,dFy,dFz} le 20080126105643.  */
#    Eifdef    SI_L_ARITHMETIQUE_ETENDUE_DES_NOMBRES_FLOTTANTS_EST_ACTIVABLE_ALORS_L_UTILISER_AUSSI_POUR_LES_DERIVEES

#    define    PROCESS_ARGUMENTS_D_ACTIVATION_DE_L_ARITHMETIQUE_ETENDUE_ET_NON_BASIQUE_POUR_Fx_Fy_Fz                                    \
                         Bblock                                                                                                         \
                                                                                                                                        \
                         DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                \
                                                                                                                                        \
                         PROCESS_ARGUMENT_L("arithmetique_etendue_Fx_Fy_Fz=""arieF=""arief="                                            \
                                           ,Fx_Fy_Fz____`use_arithmetique_etendue_et_non_basique                                        \
                                           ,BLOC(VIDE;)                                                                                 \
                                           ,BLOC(Bblock                                                                                 \
                                                 EGAL(si_le_GooF_est_activable`use_arithmetique_etendue_et_non_basique                  \
                                                     ,Fx_Fy_Fz____`use_arithmetique_etendue_et_non_basique                              \
                                                      );                                                                                \
                                                 Eblock                                                                                 \
                                                 )                                                                                      \
                                            );                                                                                          \
                         PROCESS_ARGUMENT_N("arithmetique_de_base_Fx_Fy_Fz=""aribF=""aribf="                                            \
                                           ,Fx_Fy_Fz____`use_arithmetique_etendue_et_non_basique                                        \
                                           ,BLOC(VIDE;)                                                                                 \
                                           ,BLOC(Bblock                                                                                 \
                                                 EGAL(si_le_GooF_est_activable`use_arithmetique_etendue_et_non_basique                  \
                                                     ,NOTL(Fx_Fy_Fz____`use_arithmetique_etendue_et_non_basique)                        \
                                                      );                                                                                \
                                                 Eblock                                                                                 \
                                                 )                                                                                      \
                                            );                                                                                          \
                                                                                                                                        \
                         PROCESS_ARGUMENTS_D_ACTIVATION_DE_L_ARITHMETIQUE_ETENDUE_ET_NON_BASIQUE_POUR_dFx_dFy_dFz;                      \
                                                                                                                                        \
                         FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                \
                                                                                                                                        \
                         Eblock                                                                                                         \
                                        /* Introduit le 20080125084000 et decoupe en {Fx,Fy,Fz} et {dFX,dFy,dFz} le 20080126105643.  */
#Aifdef   PRAGMA_CPP_____AUTORISER_LE_GooF
#    define    PROCESS_ARGUMENTS_D_ACTIVATION_DE_L_ARITHMETIQUE_ETENDUE_ET_NON_BASIQUE_POUR_Fx_Fy_Fz                                    \
                         Bblock                                                                                                         \
                                                                                                                                        \
                         DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                \
                                                                                                                                        \
                         BLOC(VIDE;);                                                                                                   \
                                                                                                                                        \
                         FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES;                                                \
                                                                                                                                        \
                         Eblock                                                                                                         \
                                        /* Introduit le 20080125084000...                                                            */
#Eifdef   PRAGMA_CPP_____AUTORISER_LE_GooF




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