/*************************************************************************************************************************************/ /* */ /* T E S T D E S T R A N S F O R M A T I O N S C A R T E S I E N N E S <--> S P H E R I Q U E S 3 D : */ /* */ /* */ /* Author of '$xtKi/CartSph3D.01$K' : */ /* */ /* Jean-Francois COLONNA (LACTAMME, 20010327091142). */ /* */ /*************************************************************************************************************************************/ #include INCLUDES_BASE /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* P A R A M E T R E S : */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* M A C R O S U T I L E S : */ /* */ /*************************************************************************************************************************************/ #define PRINT(X,Y,Z) \ Bblock \ DEFV(Float,INIT(X_avant,X)); \ DEFV(Float,INIT(Y_avant,Y)); \ DEFV(Float,INIT(Z_avant,Z)); \ \ DEFV(Float,INIT(Rho,FLOT__UNDEF)); \ DEFV(Float,INIT(Phi,FLOT__UNDEF)); \ DEFV(Float,INIT(Theta,FLOT__UNDEF)); \ \ DEFV(Float,INIT(X_apres,FLOT__UNDEF)); \ DEFV(Float,INIT(Y_apres,FLOT__UNDEF)); \ DEFV(Float,INIT(Z_apres,FLOT__UNDEF)); \ \ EGAL(Rho,Rho_3D(X_avant,Y_avant,Z_avant)); \ EGAL(Phi,Phi_3D(X_avant,Y_avant,Z_avant)); \ EGAL(Theta,Theta_3D(X_avant,Y_avant,Z_avant)); \ \ EGAL(X_apres,Xcartesienne_3D(Rho,Phi,Theta)); \ EGAL(Y_apres,Ycartesienne_3D(Rho,Phi,Theta)); \ EGAL(Z_apres,Zcartesienne_3D(Rho,Phi,Theta)); \ \ CAL2(Prin3("{%+.^^^,%+.^^^,%+.^^^}",X_avant,Y_avant,Z_avant)); \ CAL2(Prin3(" --> {%+.^^^,%+.^^^,%+.^^^}",Rho,Phi,Theta)); \ CAL2(Prin3(" --> {%+.^^^,%+.^^^,%+.^^^}",X_apres,Y_apres,Z_apres)); \ /* Le 20060105162023, le format "16g" est passe a "^^g" pour plus de souplesse... */ \ /* */ \ /* Le 20091123123736, le format "^^g" est passe a "^^^" pour plus de souplesse... */ \ CAL2(Prin0("\n")); \ Eblock /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* T E S T D E S T R A N S F O R M A T I O N S C A R T E S I E N N E S <--> S P H E R I Q U E S 3 D : */ /* */ /*************************************************************************************************************************************/ BCommande(nombre_d_arguments,arguments) /*-----------------------------------------------------------------------------------------------------------------------------------*/ Bblock /*..............................................................................................................................*/ GET_ARGUMENTSi(nombre_d_arguments ,BLOC(VIDE;) ); PRINT(+1.11,+2.22,+3.33); PRINT(-1.11,-2.22,-3.33); CAL2(Prin0("\n")); PRINT(0,+2.22,+3.33); PRINT(0,-2.22,-3.33); CAL2(Prin0("\n")); PRINT(+1.11,0,+3.33); PRINT(-1.11,0,-3.33); CAL2(Prin0("\n")); PRINT(+1.11,+2.22,0); PRINT(-1.11,-2.22,0); CAL2(Prin0("\n")); RETU_Commande; Eblock ECommande