#ifndef GLI_VERTEX_H
#define GLI_VERTEX_H
 
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
 
/*#define  GLI_tdstVertex_ MTH3D_tdstVector_
#define  GLI_tdstVertex  MTH3D_tdstVector*/
 
typedef struct GLI_tdst2DVertex_
{
  float  xX ;
  float  xY ;
  float  xOoZ;
}
  GLI_tdst2DVertex ;
 
/* #define GLI_M_ScreenVertex(p_stGlobaleMT) ((GLI_tdstScreenVertex *)p_stGlobaleMT->gs_aDEF_stDuplicatedScreenVertex) */
 
/* #define GLI_M_SetVertexX(A,B) MTH3D_M_vSetXofVector(A,B) */
 
/* #define GLI_M_SetVertexY(A,B) MTH3D_M_vSetYofVector(A,B) */
 
/* #define GLI_M_SetVertexZ(A,B) MTH3D_M_vSetZofVector(A,B) */
 
/* #define GLI_M_SetVertexXYZ(A,B,C,D)     MTH3D_M_vSetVectorElements(A,B,C,D) */
          
/* #define GLI_M_GetVertexX(A,B) *(B) = MTH3D_M_xGetXofVector(A) */
 
/* #define GLI_M_GetVertexY(A,B) *(B) = MTH3D_M_xGetYofVector(A) */
 
/* #define GLI_M_GetVertexZ(A,B) *(B) = MTH3D_M_xGetZofVector(A) */
 
/* #define GLI_M_GetVertexXYZ(A,B,C,D)      MTH3D_M_vGetVectorElements(B,C,D,A) */     /* WARNING !!! INVERSION OF PARAMS*/
 
/* #define GLI_M_NullVertex(A) MTH3D_M_vNullVector(A) */
 
/* #define GLI_M_AddVertex(A,B)    MTH3D_M_vAddVector(A,A,B) */
 
/* #define GLI_M_SubVertex(A,B)    MTH3D_M_vSubVector(A,A,B) */
 
/* #define GLI_M_ScaleVertex(A,B)\
          (A)->xX = GLI_M_Mul( (A)->xX , (B)->xX ) ; \
          (A)->xY = GLI_M_Mul( (A)->xY , (B)->xY ) ; \
          (A)->xZ = GLI_M_Mul( (A)->xZ , (B)->xZ ) */     /* WARNING A FAIRE : AJOUTER A MTH !!!! */
 
/* #define GLI_M_MulVertex(A,B)    MTH3D_M_vMulScalarVector(A,B,A) */
 
/* #define GLI_M_DotProduct(A,B)   MTH3D_M_xDotProductVector(A,B) */
 
/* #define GLI_M_CrossProduct(A,B,C)       MTH3D_M_vCrossProductVector( A, B, C) */
 
/* #define GLI_M_Norme(A)  MTH3D_M_xNormVector(A) */
 
/* #define GLI_M_Normalize(A)        MTH3D_M_vNormalizeVector(     A, A) */
 
#ifdef __cplusplus
};
#endif /* __cplusplus */
 
#endif /* GLI_VERTEX_H*/
