61 lines
1.7 KiB
C
61 lines
1.7 KiB
C
/*=========================================================================
|
|
*
|
|
* Vertex.h - vertex functions
|
|
*
|
|
* Version 1.0
|
|
* Revision date
|
|
*
|
|
*=======================================================================*/
|
|
#ifndef VERTEX_H
|
|
#define VERTEX_H
|
|
|
|
//--- Includes --------------------------------------------------------
|
|
|
|
#include "MTH.h"
|
|
|
|
|
|
//--- Defines --------------------------------------------------------
|
|
|
|
#define MLT_M_SetVertexX(A,B) MTH3D_M_vSetXofVector(A,B)
|
|
|
|
#define MLT_M_SetVertexY(A,B) MTH3D_M_vSetYofVector(A,B)
|
|
|
|
#define MLT_M_SetVertexZ(A,B) MTH3D_M_vSetZofVector(A,B)
|
|
|
|
#define MLT_M_SetVertexXYZ(A,B,C,D) MTH3D_M_vSetVectorElements(A,B,C,D)
|
|
|
|
#define MLT_M_GetVertexX(A,B) *(B) = MTH3D_M_xGetXofVector(A)
|
|
|
|
#define MLT_M_GetVertexY(A,B) *(B) = MTH3D_M_xGetYofVector(A)
|
|
|
|
#define MLT_M_GetVertexZ(A,B) *(B) = MTH3D_M_xGetZofVector(A)
|
|
|
|
#define MLT_M_GetVertexXYZ(A,B,C,D) MTH3D_M_vGetVectorElements(B,C,D,A) // WARNING !!! INVERSION OF PARAMS
|
|
|
|
#define MLT_M_NullVertex(A) MTH3D_M_vNullVector(A)
|
|
|
|
#define MLT_M_AddVertex(A,B) MTH3D_M_vAddVector(A,A,B)
|
|
|
|
#define MLT_M_SubVertex(A,B) MTH3D_M_vSubVector(A,A,B)
|
|
|
|
#define MLT_M_MulVertex(A,B) MTH3D_M_vMulScalarVector(A,B,A)
|
|
|
|
#define MLT_M_DotProduct(A,B) MTH3D_M_xDotProductVector(A,B)
|
|
|
|
#define MLT_M_CrossProduct(A,B,C) MTH3D_M_vCrossProductVector( A, B, C)
|
|
|
|
#define MLT_M_Norme(A) MTH3D_M_xNormVector(A)
|
|
|
|
#define MLT_M_Normalize(A) MTH3D_M_vNormalizeVector(A, A)
|
|
|
|
#define MLT_M_ScaleVertex(A,B) (A)->xX = MLT_M_Mul( (A)->xX , (B)->xX ) ; \
|
|
(A)->xY = MLT_M_Mul( (A)->xY , (B)->xY ) ; \
|
|
(A)->xZ = MLT_M_Mul( (A)->xZ , (B)->xZ ) // WARNING A FAIRE : AJOUTER A MTH !!!!
|
|
|
|
|
|
#endif // VERTEX_H
|
|
|
|
|
|
|
|
|