/*========================================================================= * * GeoObj.h.h - Geometric Object * * Version 1.0 * Revision date * *=======================================================================*/ #ifndef __MLT_GEOOBJ_H #define __MLT_GEOOBJ_H //--- Includes -------------------------------------------------------- #include "MTH.h" #include "typedef.h" #include "matrix.h" #include "element.h" //--- structures -------------------------------------------------------- // vector for normals typedef struct MLT_tdstVector_ { int iIndex[200]; int *iIndexObj; int *iIndexPoint; int iIndexElem[200]; } MLT_tdstVector; // geometric object typedef struct MLT_tdstGeometricObject_ { // name xString sName; // flag BOOL bNotForSave; // associated physical xString sPhysicalSection; long lNumberInTable; long lNbLod; // comment xString sComment; // vertices xString sPointsOf; long xNbPoints; MTH3D_tdstVector *d_stListOfPoints; MTH3D_tdstVector *d_stListOfPointsNormals; MLT_tdstColor *d_stListOfPointsReceivedLightIntensity; // min&max MTH3D_tdstVector stMinPoint; MTH3D_tdstVector stMaxPoint; // elements xString *sElementOf; BOOL bHasElementOf; long *sIndexOf; long xNbElements; long *d_xListOfElementsTypes; void **d_stListOfElements; // edges xString sEdgesOf; long xNbEdges; MLT_tdstDoubledIndex *d_stListOfEdges; // for altimap int iFlags; // for symmetry char cGeom; double fGeom; // for LookAt char sConstraintAxis[7]; // normals MLT_tdstMatrix *p_stMatrix; MLT_tdstVector *p_stFaceIndexes; } MLT_tdstGeometricObject; #endif // __MLT_GEOOBJ_H