/*************************************************************************************************************************************/ /* */ /* 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/volumes.13$I' : */ /* */ /* Jean-Francois COLONNA (LACTAMME, 20040325104039). */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* 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 20190228174928... */ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* 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_w \ Bblock \ \ DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ \ GET_ARGUMENT_L("UVW_transformer=""UVW=",transformer_u_v_w); \ /* Le 20150527143530 je note que lorsque les coordonnees {U,V,W} sont utilisees, il est */ \ /* fortement conseille de ne pas interpoler dans 'FFAload_point_coordonnees_01(...)' via : */ \ /* */ \ /* tinterpoler=FAUX */ \ /* */ \ /* afin d'eviter des points isoles ou d'autres defauts... */ \ GET_ARGUMENT_L("UVW_trouer=",trouer_u_v_w); \ \ GET_ARGUMENT_L("tore_u=",gestion_torique_de_u); \ GET_ARGUMENT_L("tore_v=",gestion_torique_de_v); \ GET_ARGUMENT_L("tore_w=",gestion_torique_de_w); \ /* La gestion "torique" de {u,v,w} a ete introduite le 20060601132713... */ \ GET_ARGUMENT_C("albumU=""U=",nom_albumTransformation_u); \ GET_ARGUMENT_C("postfixeU=",nom_postfixeTransformation_u); \ GET_ARGUMENT_I("premiereU=",premiere_imageTransformation_u); \ GET_ARGUMENT_I("pasU=",pas_des_imagesTransformation_u); \ GET_ARGUMENT_I("chiffresU=",nombre_de_chiffresTransformation_u); \ \ GET_ARGUMENT_C("albumV=""V=",nom_albumTransformation_v); \ GET_ARGUMENT_C("postfixeV=",nom_postfixeTransformation_v); \ GET_ARGUMENT_I("premiereV=",premiere_imageTransformation_v); \ GET_ARGUMENT_I("pasV=",pas_des_imagesTransformation_v); \ GET_ARGUMENT_I("chiffresV=",nombre_de_chiffresTransformation_v); \ \ GET_ARGUMENT_C("albumW=""W=",nom_albumTransformation_w); \ GET_ARGUMENT_C("postfixeW=",nom_postfixeTransformation_w); \ GET_ARGUMENT_I("premiereW=",premiere_imageTransformation_w); \ GET_ARGUMENT_I("pasW=",pas_des_imagesTransformation_w); \ GET_ARGUMENT_I("chiffresW=",nombre_de_chiffresTransformation_w); \ \ GET_ARGUMENT_C("albumTUVW=""TUVW=",nom_albumTrouage_uvw); \ GET_ARGUMENT_C("postfixeTUVW=",nom_postfixeTrouage_uvw); \ GET_ARGUMENT_I("premiereTUVW=",premiere_imageTrouage_uvw); \ GET_ARGUMENT_I("pasTUVW=",pas_des_imagesTrouage_uvw); \ GET_ARGUMENT_I("chiffresTUVW=",nombre_de_chiffresTrouage_uvw); \ \ GET_ARGUMENT_L("UVW_periodiser_u=""UVW_per_u=",transformer_u_v_w_periodiser_u); \ GET_ARGUMENT_L("UVW_symetriser_u=""UVW_sym_u=",transformer_u_v_w_symetriser_u); \ GET_ARGUMENT_L("UVW_prolonger_u=""UVW_pro_u=",transformer_u_v_w_prolonger_u); \ GET_ARGUMENT_L("TUVW_periodiser_u=""TUVW_per_u=",trouer_u_v_w_periodiser_u); \ GET_ARGUMENT_L("TUVW_symetriser_u=""TUVW_sym_u=",trouer_u_v_w_symetriser_u); \ GET_ARGUMENT_L("TUVW_prolonger_u=""TUVW_pro_u=",trouer_u_v_w_prolonger_u); \ \ GET_ARGUMENT_L("UVW_periodiser_v=""UVW_per_v=",transformer_u_v_w_periodiser_v); \ GET_ARGUMENT_L("UVW_symetriser_v=""UVW_sym_v=",transformer_u_v_w_symetriser_v); \ GET_ARGUMENT_L("UVW_prolonger_v=""UVW_pro_v=",transformer_u_v_w_prolonger_v); \ GET_ARGUMENT_L("TUVW_periodiser_v=""TUVW_per_v=",trouer_u_v_w_periodiser_v); \ GET_ARGUMENT_L("TUVW_symetriser_v=""TUVW_sym_v=",trouer_u_v_w_symetriser_v); \ GET_ARGUMENT_L("TUVW_prolonger_v=""TUVW_pro_v=",trouer_u_v_w_prolonger_v); \ \ GET_ARGUMENT_L("UVW_periodiser_w=""UVW_per_w=",transformer_u_v_w_periodiser_w); \ GET_ARGUMENT_L("UVW_symetriser_w=""UVW_sym_w=",transformer_u_v_w_symetriser_w); \ GET_ARGUMENT_L("UVW_prolonger_w=""UVW_pro_w=",transformer_u_v_w_prolonger_w); \ GET_ARGUMENT_L("TUVW_periodiser_w=""TUVW_per_w=",trouer_u_v_w_periodiser_w); \ GET_ARGUMENT_L("TUVW_symetriser_w=""TUVW_sym_w=",trouer_u_v_w_symetriser_w); \ GET_ARGUMENT_L("TUVW_prolonger_w=""TUVW_pro_w=",trouer_u_v_w_prolonger_w); \ \ GET_ARGUMENT_F("UVW_hors=",transformer_u_v_w_niveau_hors_album); \ \ GET_ARGUMENT_L("Transformation_uvw_interpoler=""albumTransformation_uvw_interpoler=" \ ,albumTransformation_uvw__interpoler_bilineairement_ou_bicubiquement \ ); \ GET_ARGUMENT_L("Transformation_uvw_lineaire=""albumTransformation_uvw_lineaire=" \ ,albumTransformation_uvw__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_N("Transformation_uvw_cubique=""albumTransformation_uvw_cubique=" \ ,albumTransformation_uvw__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_L("Transformation_uvw_eviter_discontinuites=""albumTransformation_uvw_eviter_discontinuites=" \ ,albumTransformation_uvw__eviter_les_fortes_discontinuites \ ); \ GET_ARGUMENT_F("Transformation_uvw_epsilon_discontinuites=""albumTransformation_uvw_epsilon_discontinuites=" \ ,albumTransformation_uvw__epsilon_detection_des_fortes_discontinuites \ ); \ \ GET_ARGUMENT_L("Trouage_uvw_interpoler=""albumTrouage_uvw_interpoler=" \ ,albumTrouage_uvw__interpoler_bilineairement_ou_bicubiquement \ ); \ GET_ARGUMENT_L("Trouage_uvw_lineaire=""albumTrouage_uvw_lineaire=" \ ,albumTrouage_uvw__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_N("Trouage_uvw_cubique=""albumTrouage_uvw_cubique=" \ ,albumTrouage_uvw__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_L("Trouage_uvw_eviter_discontinuites=""albumTrouage_uvw_eviter_discontinuites=" \ ,albumTrouage_uvw__eviter_les_fortes_discontinuites \ ); \ GET_ARGUMENT_F("Trouage_uvw_epsilon_discontinuites=""albumTrouage_uvw_epsilon_discontinuites=" \ ,albumTrouage_uvw__epsilon_detection_des_fortes_discontinuites \ ); \ /* Arguments introduits le 20150528132331... */ \ \ GET_ARGUMENT_L("u_v_w_arbitraires=""uvwa=",definir_arbitrairement_les_coordonnees_u_v_w); \ /* Cette possibilite a ete introduite le 20221221145659... */ \ \ 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 20221221145659... */ \ \ GET_ARGUMENT_F("separateur_u_v_w=""suvw=",separateur_de_definition_arbitraire_des_coordonnees_u_v_w); \ /* Cette possibilite a ete introduite le 20230217102127... */ \ \ 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 \ ); \ PROKESF_ARGUMENT_FICHIER("coordonnees_w=" \ ,fichier_des_coordonnees_w \ ,liste_des_coordonnees_w \ ,COORDONNEE_w_IMPLICITE \ ,lTRANSFORMAT_0d \ ,iGENERATION_D_UN_FICHIER \ ); \ /* Cette possibilite a ete introduite le 20221221145659... */ \ \ 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 20230124132909... */ \ \ PROKESF_ARGUMENT_FICHIER("coordonnees_RAYON=" \ ,fichier_des_coordonnees_RAYON \ ,liste_des_coordonnees_RAYON \ ,COORDONNEE_RAYON_IMPLICITE \ ,lTRANSFORMAT_0d \ ,iGENERATION_D_UN_FICHIER \ ); \ /* Introduit le 20240517141151... */ \ \ PROKESF_ARGUMENT_FICHIER("coordonnees_MASSE=" \ ,fichier_des_coordonnees_MASSE \ ,liste_des_coordonnees_MASSE \ ,COORDONNEE_MASSE_IMPLICITE \ ,lTRANSFORMAT_0d \ ,iGENERATION_D_UN_FICHIER \ ); \ /* Introduit le 20240519091233... */ \ \ FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ \ Eblock \ /* Introduit le 20060530122107, mais inutilise a cette date... */ #ifndef DEFINITION_DES_INTERPOLATIONS_Fx_Fy_Fz # define PROCESS_ARGUMENTS_D_INTERPOLATION \ Bblock \ \ DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ \ GET_ARGUMENTS7_L("tinterpoler=" \ ,FFAload_point_coordonnees_01_____interpoler_bilineairement_ou_bicubiquement \ ,Album_RAYON__interpoler_bilineairement_ou_bicubiquement \ ,Album_ROUGE__interpoler_bilineairement_ou_bicubiquement \ ,Album_VERTE__interpoler_bilineairement_ou_bicubiquement \ ,Album_BLEUE__interpoler_bilineairement_ou_bicubiquement \ ,albumTransformation_uvw__interpoler_bilineairement_ou_bicubiquement \ ,albumTrouage_uvw__interpoler_bilineairement_ou_bicubiquement \ ); \ /* L'utilisation de 'GET_ARGUMENTS7_L(...)' le 20150528113215 est destinee a garantir la */ \ /* compatibilite anterieure a cette date, lorsque "tinterpoler=" controlait toutes les */ \ /* interpolations de 'FFAload_point_coordonnees_01(...)'. */ \ GET_ARGUMENTS7_L("tlineaire=""tbilineaire=" \ ,FFAload_point_coordonnees_01_____utiliser_l_interpolation_bilineaire \ ,Album_RAYON__utiliser_l_interpolation_bilineaire \ ,Album_ROUGE__utiliser_l_interpolation_bilineaire \ ,Album_VERTE__utiliser_l_interpolation_bilineaire \ ,Album_BLEUE__utiliser_l_interpolation_bilineaire \ ,albumTransformation_uvw__utiliser_l_interpolation_bilineaire \ ,albumTrouage_uvw__utiliser_l_interpolation_bilineaire \ ); \ /* L'utilisation de 'GET_ARGUMENTS7_L(...)' le 20150528113215 est destinee a garantir la */ \ /* compatibilite anterieure a cette date, lorsque "tinterpoler=" controlait toutes les */ \ /* interpolations de 'FFAload_point_coordonnees_01(...)'. */ \ GET_ARGUMENTS7_N("tcubique=""tbicubique=" \ ,FFAload_point_coordonnees_01_____utiliser_l_interpolation_bilineaire \ ,Album_RAYON__utiliser_l_interpolation_bilineaire \ ,Album_ROUGE__utiliser_l_interpolation_bilineaire \ ,Album_VERTE__utiliser_l_interpolation_bilineaire \ ,Album_BLEUE__utiliser_l_interpolation_bilineaire \ ,albumTransformation_uvw__utiliser_l_interpolation_bilineaire \ ,albumTrouage_uvw__utiliser_l_interpolation_bilineaire \ ); \ /* L'utilisation de 'GET_ARGUMENTS7_N(...)' le 20150528113215 est destinee a garantir la */ \ /* compatibilite anterieure a cette date, lorsque "tinterpoler=" controlait toutes les */ \ /* interpolations de 'FFAload_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; \ \ GET_ARGUMENTSa_L("tinterpoler=" \ ,FFAload_point_coordonnees_01_____interpoler_bilineairement_ou_bicubiquement \ ,Album_Fx__interpoler_bilineairement_ou_bicubiquement \ ,Album_Fy__interpoler_bilineairement_ou_bicubiquement \ ,Album_Fz__interpoler_bilineairement_ou_bicubiquement \ ,Album_RAYON__interpoler_bilineairement_ou_bicubiquement \ ,Album_ROUGE__interpoler_bilineairement_ou_bicubiquement \ ,Album_VERTE__interpoler_bilineairement_ou_bicubiquement \ ,Album_BLEUE__interpoler_bilineairement_ou_bicubiquement \ ,albumTransformation_uvw__interpoler_bilineairement_ou_bicubiquement \ ,albumTrouage_uvw__interpoler_bilineairement_ou_bicubiquement \ ); \ GET_ARGUMENTSa_L("tlineaire=""tbilineaire=" \ ,FFAload_point_coordonnees_01_____utiliser_l_interpolation_bilineaire \ ,Album_Fx__utiliser_l_interpolation_bilineaire \ ,Album_Fy__utiliser_l_interpolation_bilineaire \ ,Album_Fz__utiliser_l_interpolation_bilineaire \ ,Album_RAYON__utiliser_l_interpolation_bilineaire \ ,Album_ROUGE__utiliser_l_interpolation_bilineaire \ ,Album_VERTE__utiliser_l_interpolation_bilineaire \ ,Album_BLEUE__utiliser_l_interpolation_bilineaire \ ,albumTransformation_uvw__utiliser_l_interpolation_bilineaire \ ,albumTrouage_uvw__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENTSa_N("tcubique=""tbicubique=" \ ,FFAload_point_coordonnees_01_____utiliser_l_interpolation_bilineaire \ ,Album_Fx__utiliser_l_interpolation_bilineaire \ ,Album_Fy__utiliser_l_interpolation_bilineaire \ ,Album_Fz__utiliser_l_interpolation_bilineaire \ ,Album_RAYON__utiliser_l_interpolation_bilineaire \ ,Album_ROUGE__utiliser_l_interpolation_bilineaire \ ,Album_VERTE__utiliser_l_interpolation_bilineaire \ ,Album_BLEUE__utiliser_l_interpolation_bilineaire \ ,albumTransformation_uvw__utiliser_l_interpolation_bilineaire \ ,albumTrouage_uvw__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_DU_VOLUME \ /* Introduit le 20050628090147... */ \ Bblock \ \ DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ /* Introduit le 20060208111557 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \ \ GET_ARGUMENT_L("projeter=""projections=""projection=",generer_les_trois_projections_du_volume); \ GET_ARGUMENT_L("isp=""initialisations_projection=",faire_les_initialisations_specifiques_de_projection_du_volume); \ /* Introduit le 20060502143145 par symetrie avec 'v $xrs/surfaces.13$I 20060502143135'... */ \ GET_ARGUMENT_L("fuvwp=""forcer_uvw_projection=",forcer_les_extrema_de_u_v_w_lors_de_la_projection_du_volume); \ /* Introduit le 20060307104134... */ \ \ GET_ARGUMENT_C("albumPR=""albumPFx=""PR=""PFx=",nom_albumProjectionFx); \ GET_ARGUMENT_C("postfixePFx=",nom_postfixeProjectionFx); \ GET_ARGUMENT_I("premierePFx=",premiere_imageProjectionFx); \ GET_ARGUMENT_I("pasPFx=",pas_des_imagesProjectionFx); \ GET_ARGUMENT_I("chiffresPFx=",nombre_de_chiffresProjectionFx); \ \ GET_ARGUMENT_C("albumPV=""albumPFy=""PV=""PFy=",nom_albumProjectionFy); \ GET_ARGUMENT_C("postfixePFy=",nom_postfixeProjectionFy); \ GET_ARGUMENT_I("premierePFy=",premiere_imageProjectionFy); \ GET_ARGUMENT_I("pasPFy=",pas_des_imagesProjectionFy); \ GET_ARGUMENT_I("chiffresPFy=",nombre_de_chiffresProjectionFy); \ \ GET_ARGUMENT_C("albumPFz=""albumPB=""PFz=""PB=",nom_albumProjectionFz); \ GET_ARGUMENT_C("postfixePFz=",nom_postfixeProjectionFz); \ GET_ARGUMENT_I("premierePFz=",premiere_imageProjectionFz); \ GET_ARGUMENT_I("pasPFz=",pas_des_imagesProjectionFz); \ GET_ARGUMENT_I("chiffresPFz=",nombre_de_chiffresProjectionFz); \ \ PROCESS_ARGUMENTS_D_INTERPOLATION; \ \ GET_ARGUMENT_L("tpasX_et_pasY_et_pasZ=""tpasXYZ=",FFAload_point_coordonnees_01_____utiliser_pasX_et_pasY_et_pasZ); \ GET_ARGUMENT_I("tpasX=",FFAload_point_coordonnees_01_____pasX); \ GET_ARGUMENT_I("tpasY=",FFAload_point_coordonnees_01_____pasY); \ GET_ARGUMENT_I("tpasZ=",FFAload_point_coordonnees_01_____pasZ); \ /* Arguments introduits le 20150527143530 par symetrie avec 'v $xrs/surfaces.13$I' et */ \ /* completes le 20150527160207 par "tinterpoler="... */ \ \ FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ /* Introduit le 20060208111557 ('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 20060208111557 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \ \ GET_ARGUMENT_F("lignes_de_coordonnees=""lc=""intersections=""grossissement=" \ ,grossissement_du_rayon_de_visualisation_aux_intersections_des_lignes_de_coordonnees \ ); \ \ 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 20120606144258... */ \ \ GET_ARGUMENT_L("AXES_COORDONNEES_FERMES_OUVERTS__texturage_____compatibilite_20130220=""compatibilite_20130220=" \ ,AXES_COORDONNEES_FERMES_OUVERTS__texturage_volumes_____compatibilite_20130220 \ ); \ /* Introduit le 20130220133135... */ \ \ GET_ARGUMENT_C("albumTR=""TR=",nom_texture_ROUGE); \ GET_ARGUMENT_C("postfixeTR=",nom_postfixe_ROUGE); \ GET_ARGUMENT_I("premiereTR=",premiere_image_ROUGE); \ GET_ARGUMENT_I("pasTR=",pas_des_images_ROUGE); \ GET_ARGUMENT_I("chiffresTR=",nombre_de_chiffres_ROUGE); \ GET_ARGUMENT_L("TR_periodiser_u=""TR_per_u=",Album_ROUGE_periodiser_u); \ GET_ARGUMENT_L("TR_symetriser_u=""TR_sym_u=",Album_ROUGE_symetriser_u); \ GET_ARGUMENT_L("TR_prolonger_u=""TR_pro_u=",Album_ROUGE_prolonger_u); \ GET_ARGUMENT_L("TR_periodiser_v=""TR_per_v=",Album_ROUGE_periodiser_v); \ GET_ARGUMENT_L("TR_symetriser_v=""TR_sym_v=",Album_ROUGE_symetriser_v); \ GET_ARGUMENT_L("TR_prolonger_v=""TR_pro_v=",Album_ROUGE_prolonger_v); \ GET_ARGUMENT_L("TR_periodiser_w=""TR_per_w=",Album_ROUGE_periodiser_w); \ GET_ARGUMENT_L("TR_symetriser_w=""TR_sym_w=",Album_ROUGE_symetriser_w); \ GET_ARGUMENT_L("TR_prolonger_w=""TR_pro_w=",Album_ROUGE_prolonger_w); \ GET_ARGUMENT_F("TR_hors=",Album_ROUGE_niveau_hors_album); \ \ GET_ARGUMENT_C("albumTV=""TV=",nom_texture_VERTE); \ GET_ARGUMENT_C("postfixeTV=",nom_postfixe_VERTE); \ GET_ARGUMENT_I("premiereTV=",premiere_image_VERTE); \ GET_ARGUMENT_I("pasTV=",pas_des_images_VERTE); \ GET_ARGUMENT_I("chiffresTV=",nombre_de_chiffres_VERTE); \ GET_ARGUMENT_L("TV_periodiser_u=""TV_per_u=",Album_VERTE_periodiser_u); \ GET_ARGUMENT_L("TV_symetriser_u=""TV_sym_u=",Album_VERTE_symetriser_u); \ GET_ARGUMENT_L("TV_prolonger_u=""TV_pro_u=",Album_VERTE_prolonger_u); \ GET_ARGUMENT_L("TV_periodiser_v=""TV_per_v=",Album_VERTE_periodiser_v); \ GET_ARGUMENT_L("TV_symetriser_v=""TV_sym_v=",Album_VERTE_symetriser_v); \ GET_ARGUMENT_L("TV_prolonger_v=""TV_pro_v=",Album_VERTE_prolonger_v); \ GET_ARGUMENT_L("TV_periodiser_w=""TV_per_w=",Album_VERTE_periodiser_w); \ GET_ARGUMENT_L("TV_symetriser_w=""TV_sym_w=",Album_VERTE_symetriser_w); \ GET_ARGUMENT_L("TV_prolonger_w=""TV_pro_w=",Album_VERTE_prolonger_w); \ GET_ARGUMENT_F("TV_hors=",Album_VERTE_niveau_hors_album); \ \ GET_ARGUMENT_C("albumTB=""TB=",nom_texture_BLEUE); \ GET_ARGUMENT_C("postfixeTB=",nom_postfixe_BLEUE); \ GET_ARGUMENT_I("premiereTB=",premiere_image_BLEUE); \ GET_ARGUMENT_I("pasTB=",pas_des_images_BLEUE); \ GET_ARGUMENT_I("chiffresTB=",nombre_de_chiffres_BLEUE); \ GET_ARGUMENT_L("TB_periodiser_u=""TB_per_u=",Album_BLEUE_periodiser_u); \ GET_ARGUMENT_L("TB_symetriser_u=""TB_sym_u=",Album_BLEUE_symetriser_u); \ GET_ARGUMENT_L("TB_prolonger_u=""TB_pro_u=",Album_BLEUE_prolonger_u); \ GET_ARGUMENT_L("TB_periodiser_v=""TB_per_v=",Album_BLEUE_periodiser_v); \ GET_ARGUMENT_L("TB_symetriser_v=""TB_sym_v=",Album_BLEUE_symetriser_v); \ GET_ARGUMENT_L("TB_prolonger_v=""TB_pro_v=",Album_BLEUE_prolonger_v); \ GET_ARGUMENT_L("TB_periodiser_w=""TB_per_w=",Album_BLEUE_periodiser_w); \ GET_ARGUMENT_L("TB_symetriser_w=""TB_sym_w=",Album_BLEUE_symetriser_w); \ GET_ARGUMENT_L("TB_prolonger_w=""TB_pro_w=",Album_BLEUE_prolonger_w); \ GET_ARGUMENT_F("TB_hors=",Album_BLEUE_niveau_hors_album); \ \ GET_ARGUMENT_L("ROUGE_interpoler=""Album_ROUGE_interpoler=" \ ,Album_ROUGE__interpoler_bilineairement_ou_bicubiquement \ ); \ GET_ARGUMENT_L("ROUGE_lineaire=""Album_ROUGE_lineaire=" \ ,Album_ROUGE__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_N("ROUGE_cubique=""Album_ROUGE_cubique=" \ ,Album_ROUGE__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_L("ROUGE_eviter_discontinuites=""Album_ROUGE_eviter_discontinuites=" \ ,Album_ROUGE__eviter_les_fortes_discontinuites \ ); \ GET_ARGUMENT_F("ROUGE_epsilon_discontinuites=""Album_ROUGE_epsilon_discontinuites=" \ ,Album_ROUGE__epsilon_detection_des_fortes_discontinuites \ ); \ \ GET_ARGUMENT_L("VERTE_interpoler=""Album_VERTE_interpoler=" \ ,Album_VERTE__interpoler_bilineairement_ou_bicubiquement \ ); \ GET_ARGUMENT_L("VERTE_lineaire=""Album_VERTE_lineaire=" \ ,Album_VERTE__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_N("VERTE_cubique=""Album_VERTE_cubique=" \ ,Album_VERTE__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_L("VERTE_eviter_discontinuites=""Album_VERTE_eviter_discontinuites=" \ ,Album_VERTE__eviter_les_fortes_discontinuites \ ); \ GET_ARGUMENT_F("VERTE_epsilon_discontinuites=""Album_VERTE_epsilon_discontinuites=" \ ,Album_VERTE__epsilon_detection_des_fortes_discontinuites \ ); \ \ GET_ARGUMENT_L("BLEUE_interpoler=""Album_BLEUE_interpoler=" \ ,Album_BLEUE__interpoler_bilineairement_ou_bicubiquement \ ); \ GET_ARGUMENT_L("BLEUE_lineaire=""Album_BLEUE_lineaire=" \ ,Album_BLEUE__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_N("BLEUE_cubique=""Album_BLEUE_cubique=" \ ,Album_BLEUE__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_L("BLEUE_eviter_discontinuites=""Album_BLEUE_eviter_discontinuites=" \ ,Album_BLEUE__eviter_les_fortes_discontinuites \ ); \ GET_ARGUMENT_F("BLEUE_epsilon_discontinuites=""Album_BLEUE_epsilon_discontinuites=" \ ,Album_BLEUE__epsilon_detection_des_fortes_discontinuites \ ); \ \ 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); \ \ GET_ARGUMENT_C("albumRAYON=""RAYON=",nom_RAYON); \ GET_ARGUMENT_C("postfixeR=",nom_postfixe_RAYON); \ GET_ARGUMENT_I("premiereR=",premiere_image_RAYON); \ GET_ARGUMENT_I("pasR=",pas_des_images_RAYON); \ GET_ARGUMENT_I("chiffresR=",nombre_de_chiffres_RAYON); \ GET_ARGUMENT_L("R_periodiser_u=""R_per_u=",Album_RAYON_periodiser_u); \ GET_ARGUMENT_L("R_symetriser_u=""R_sym_u=",Album_RAYON_symetriser_u); \ GET_ARGUMENT_L("R_prolonger_u=""R_pro_u=",Album_RAYON_prolonger_u); \ GET_ARGUMENT_L("R_periodiser_v=""R_per_v=",Album_RAYON_periodiser_v); \ GET_ARGUMENT_L("R_symetriser_v=""R_sym_v=",Album_RAYON_symetriser_v); \ GET_ARGUMENT_L("R_prolonger_v=""R_pro_v=",Album_RAYON_prolonger_v); \ GET_ARGUMENT_L("R_periodiser_w=""R_per_w=",Album_RAYON_periodiser_w); \ GET_ARGUMENT_L("R_symetriser_w=""R_sym_w=",Album_RAYON_symetriser_w); \ GET_ARGUMENT_L("R_prolonger_w=""R_pro_w=",Album_RAYON_prolonger_w); \ GET_ARGUMENT_F("R_hors=",Album_RAYON_niveau_hors_album); \ \ GET_ARGUMENT_L("RAYON_interpoler=""Album_RAYON_interpoler=" \ ,Album_RAYON__interpoler_bilineairement_ou_bicubiquement \ ); \ GET_ARGUMENT_L("RAYON_lineaire=""Album_RAYON_lineaire=" \ ,Album_RAYON__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_N("RAYON_cubique=""Album_RAYON_cubique=" \ ,Album_RAYON__utiliser_l_interpolation_bilineaire \ ); \ GET_ARGUMENT_L("RAYON_eviter_discontinuites=""Album_RAYON_eviter_discontinuites=" \ ,Album_RAYON__eviter_les_fortes_discontinuites \ ); \ GET_ARGUMENT_F("RAYON_epsilon_discontinuites=""Album_RAYON_epsilon_discontinuites=" \ ,Album_RAYON__epsilon_detection_des_fortes_discontinuites \ ); \ \ FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ /* Introduit le 20060208111557 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \ \ Eblock \ /* La gestion de la texture a ete introduite le 20050622085932... */ #define PROCESS_ARGUMENTS_DE_DEFINITION_DES_COORDONNEES_CURVILIGNES \ Bblock \ \ DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ /* Introduit le 20060208111557 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \ \ GET_ARGUMENT_L("luvw=""lister_u_v_w=",lister_les_coordonnees_u_v_w_des_points); \ /* Introduit le 20101006103421... */ \ \ GET_ARGUMENT_L("majoration_maximum_des_coordonnees_u_v_w_____compatibilite_20160414=""compatibilite_20160414=" \ ,majoration_du_maximum_des_coordonnees_u_v_w_____compatibilite_20160414 \ ); \ GET_ARGUMENT_F("epsilon_majoration_maximum_des_coordonnees_u_v_w=""epsilon_maximum_u_v_w=""eMuvw=" \ ,epsilon_de_majoration_du_maximum_des_coordonnees_u_v_w \ ); \ /* Introduit le 20160414132146... */ \ \ 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_F("mw=",minimum_de_w); \ GET_ARGUMENT_F("Mw=",maximum_de_w); \ GET_ARGUMENT_F("pas_w=""pw=",pas_de_w); \ GET_ARGUMENT_I("ew=",echantillonnage_de_w); \ GET_ARGUMENT_I("tew=",translation_de_l_echantillonnage_de_w); \ GET_ARGUMENT_F("dpw=",diviseur_du_pas_de_w); \ \ GET_ARGUMENT_I("nombre_inter_paralleles=""niu=",nombre_d_inters_u); \ GET_ARGUMENT_I("nombre_points_entre_deux_paralleles=""npu=",nombre_de_points_dans_un_inter_u); \ GET_ARGUMENT_I("nombre_inter_meridiens=""niv=",nombre_d_inters_v); \ GET_ARGUMENT_I("nombre_points_entre_deux_meridiens=""npv=",nombre_de_points_dans_un_inter_v); \ GET_ARGUMENT_I("nombre_inter_profondeurs=""niw=",nombre_d_inters_w); \ GET_ARGUMENT_I("nombre_points_entre_deux_profondeurs=""npw=",nombre_de_points_dans_un_inter_w); \ PROCESS_ARGUMENT_L("faciliter_parametrage_u_v_w=""fpuvw=" \ ,faciliter_le_parametrage_de_u_v_w \ ,BLOC(VIDE;) \ ,BLOC(Bblock \ Test(IL_FAUT(faciliter_le_parametrage_de_u_v_w)) \ Bblock \ 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)); \ \ EGAL(nombre_de_points_dans_un_inter_w \ ,MAX2(nombre_de_points_dans_un_inter_w,NOMBRE_DE_POINTS_DANS_UN_INTER_w) \ ); \ EGAL(pas_de_w,DIVI(SOUS(maximum_de_w,minimum_de_w),FLOT(nombre_d_inters_w))); \ EGAL(echantillonnage_de_w,nombre_de_points_dans_un_inter_w); \ EGAL(diviseur_du_pas_de_w,FLOT(nombre_de_points_dans_un_inter_w)); \ Eblock \ ATes \ Bblock \ Eblock \ ETes \ Eblock \ ) \ ); \ /* Introduits le 20160414132146 pour faciliter le parametrage de l'espace {u,v,w}... */ \ /* */ \ /* ATTENTION : l'argument "fpuvw=" doit absolument etre reference APRES tous ceux qui */ \ /* participent a la definition de l'espace {u,v,w} etant donnee la programmation de */ \ /* 'PROCESS_ARGUMENT_L(...)'. */ \ /* */ \ /* On notera que je ne savais comment denommer la troisieme coordonnee (a cote de */ \ /* "parallele" pour 'u' et "meridien" pour 'v'), d'ou un nom tout a fait arbitraire */ \ /* "profondeur" pour 'w'... */ \ \ FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ /* Introduit le 20060208111557 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \ \ Eblock #define PROCESS_ARGUMENTS_DE_DERIVATION_PARTIELLE_NUMERIQUE \ Bblock \ \ DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ /* Introduit le 20060208111557 ('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); \ GET_ARGUMENT_L("hddw=",le_pas_de_w_de_differentiation_est_homothetique); \ /* Introduit le 20060505162347... */ \ \ GET_ARGUMENT_F("ddu=",diviseur_de_differentiation_de_u); \ GET_ARGUMENT_F("ddv=",diviseur_de_differentiation_de_v); \ GET_ARGUMENT_F("ddw=",diviseur_de_differentiation_de_w); \ /* Introduit le 20060505162347... */ \ \ GET_ARGUMENT_F("dxdu=",facteur_x_de_pas_de_u); \ GET_ARGUMENT_F("dxdv=",facteur_x_de_pas_de_v); \ GET_ARGUMENT_F("dxdw=",facteur_x_de_pas_de_w); \ \ GET_ARGUMENT_F("dydu=",facteur_y_de_pas_de_u); \ GET_ARGUMENT_F("dydv=",facteur_y_de_pas_de_v); \ GET_ARGUMENT_F("dydw=",facteur_y_de_pas_de_w); \ \ GET_ARGUMENT_F("dzdu=",facteur_z_de_pas_de_u); \ GET_ARGUMENT_F("dzdv=",facteur_z_de_pas_de_v); \ GET_ARGUMENT_F("dzdw=",facteur_z_de_pas_de_w); \ \ FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ /* Introduit le 20060208111557 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \ \ Eblock \ /* Introduit le 20040327183510... */ #define PROCESS_ARGUMENTS_DE_COLORIAGE \ Bblock \ \ DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ /* Introduit le 20060208111557 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \ \ GET_ARGUMENT_F("dxFx=",ponderation_de__x_____dans_dx); \ GET_ARGUMENT_F("dxFy=",ponderation_de__y_____dans_dx); \ GET_ARGUMENT_F("dxFz=",ponderation_de__z_____dans_dx); \ /* Parametres introduits le 20090723120320... */ \ GET_ARGUMENT_F("pxu=""dxu=",ponderation_de__u_____dans_dx); \ GET_ARGUMENT_F("pxv=""dxv=",ponderation_de__v_____dans_dx); \ GET_ARGUMENT_F("pxw=""dxw=",ponderation_de__w_____dans_dx); \ GET_ARGUMENT_F("pxx=""dxFxuvw=",ponderation_de_dx_____dans_dx); \ GET_ARGUMENT_F("pxy=""dxFyuvw=",ponderation_de_dy_____dans_dx); \ GET_ARGUMENT_F("pxz=""dxFzuvw=",ponderation_de_dz_____dans_dx); \ /* Parametres completes par "dx...=" le 20090723120320... */ \ \ GET_ARGUMENT_F("dyFx=",ponderation_de__x_____dans_dy); \ GET_ARGUMENT_F("dyFy=",ponderation_de__y_____dans_dy); \ GET_ARGUMENT_F("dyFz=",ponderation_de__z_____dans_dy); \ /* Parametres introduits le 20090723120320... */ \ GET_ARGUMENT_F("pyu=""dyu=",ponderation_de__u_____dans_dy); \ GET_ARGUMENT_F("pyv=""dyv=",ponderation_de__v_____dans_dy); \ GET_ARGUMENT_F("pyw=""dyw=",ponderation_de__w_____dans_dy); \ GET_ARGUMENT_F("pyx=""dyFxuvw=",ponderation_de_dx_____dans_dy); \ GET_ARGUMENT_F("pyy=""dyFyuvw=",ponderation_de_dy_____dans_dy); \ GET_ARGUMENT_F("pyz=""dyFzuvw=",ponderation_de_dz_____dans_dy); \ /* Parametres completes par "dy...=" le 20090723120320... */ \ \ GET_ARGUMENT_F("dzFx=",ponderation_de__x_____dans_dz); \ GET_ARGUMENT_F("dzFy=",ponderation_de__y_____dans_dz); \ GET_ARGUMENT_F("dzFz=",ponderation_de__z_____dans_dz); \ /* Parametres introduits le 20090723120320... */ \ GET_ARGUMENT_F("pzu=""dzu=",ponderation_de__u_____dans_dz); \ GET_ARGUMENT_F("pzv=""dzv=",ponderation_de__v_____dans_dz); \ GET_ARGUMENT_F("pzw=""dzw=",ponderation_de__w_____dans_dz); \ GET_ARGUMENT_F("pzx=""dzFxuvw=",ponderation_de_dx_____dans_dz); \ GET_ARGUMENT_F("pzy=""dzFyuvw=",ponderation_de_dy_____dans_dz); \ GET_ARGUMENT_F("pzz=""dzFzuvw=",ponderation_de_dz_____dans_dz); \ /* Parametres completes par "dz...=" le 20090723120320... */ \ \ FIN___D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ /* Introduit le 20060208111557 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \ \ Eblock \ /* Introduit le 20040328174958... */ #define PROCESS_ARGUMENTS_DE_PERMUTATION_DES_COORDONNEES_ET_DES_DIFFERENTIELLES \ Bblock \ \ DEBUT_D_IMBRICATION_DES_____gPROCESS_PARAMETRE_____SECONDAIRES; \ /* Introduit le 20060208111557 ('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 20060208111557 ('v $xig/fonct$vv$DEF _IMBRICATION_DES__gPROCESS_PARAMETRE'). */ \ \ Eblock \ /* Introduit le 20050623090145... */