54 bool GetLiquidHeight(
const G3D::Vector3 &pos,
float &liqHeight)
const;
59 bool writeToFile(FILE* wf);
60 static bool readFromFile(FILE* rf,
WmoLiquid* &liquid);
79 iBound(bound), iMogpFlags(mogpFlags), iGroupWMOID(groupWMOID), iLiquid(
NULL) { }
83 void setMeshData(std::vector<G3D::Vector3> &vert, std::vector<MeshTriangle> &tri);
85 bool IntersectRay(
const G3D::Ray &ray,
float &
distance,
bool stopAtFirstHit)
const;
87 bool GetLiquidLevel(
const G3D::Vector3 &pos,
float &liqHeight)
const;
88 uint32 GetLiquidType()
const;
89 bool writeToFile(FILE* wf);
90 bool readFromFile(FILE* rf);
94 void getMeshData(std::vector<G3D::Vector3>& outVertices, std::vector<MeshTriangle>& outTriangles,
WmoLiquid*& liquid);
112 void setGroupModels(std::vector<GroupModel> &models);
114 bool IntersectRay(
const G3D::Ray &ray,
float &
distance,
bool stopAtFirstHit)
const;
117 bool writeFile(
const std::string &filename);
118 bool readFile(
const std::string &filename);
119 void getGroupModels(std::vector<GroupModel>& outGroupModels);
127 #endif // _WORLDMODEL_H
Definition: WorldModel.h:73
uint32 GetMogpFlags() const
Definition: WorldModel.h:92
float * iHeight
(tilesX + 1)*(tilesY + 1) height values
Definition: WorldModel.h:68
WorldModel()
Definition: WorldModel.h:109
arena_t NULL
Definition: jemalloc_internal.h:624
uint32 idx2
Definition: WorldModel.h:44
uint8 * iFlags
info if liquid tile is used
Definition: WorldModel.h:69
float * GetHeightStorage()
Definition: WorldModel.h:56
uint32 idx0
Definition: WorldModel.h:42
Definition: IVMapManager.h:31
double distance(double x, double y)
Definition: g3dmath.h:731
~GroupModel()
Definition: WorldModel.h:80
std::vector< MeshTriangle > triangles
Definition: WorldModel.h:100
uint32 RootWMOID
Definition: WorldModel.h:121
std::vector< GroupModel > groupModels
Definition: WorldModel.h:122
MeshTriangle()
Definition: WorldModel.h:39
MeshTriangle(uint32 na, uint32 nb, uint32 nc)
Definition: WorldModel.h:40
Definition: WorldModel.h:36
void setRootWmoID(uint32 id)
Definition: WorldModel.h:113
G3D::Vector3 iCorner
the lower corner
Definition: WorldModel.h:66
WmoLiquid()
Definition: WorldModel.h:63
BIH groupTree
Definition: WorldModel.h:123
Definition: WorldModel.h:106
uint32 iTilesX
number of tiles in x direction, each
Definition: WorldModel.h:64
uint32 idx1
Definition: WorldModel.h:43
Vector2int16 & operator=(const Any &a)
uint32_t uint32
Definition: Define.h:150
#define TC_COMMON_API
Definition: Define.h:116
GroupModel()
Definition: WorldModel.h:76
uint32 GetWmoID() const
Definition: WorldModel.h:93
uint8 * GetFlagsStorage()
Definition: WorldModel.h:57
BIH meshTree
Definition: WorldModel.h:101
Definition: WorldModel.h:47
G3D::AABox iBound
Definition: WorldModel.h:96
const G3D::AABox & GetBound() const
Definition: WorldModel.h:91
void setLiquidData(WmoLiquid *&liquid)
Definition: WorldModel.h:84
uint32 iMogpFlags
Definition: WorldModel.h:97
GroupModel(uint32 mogpFlags, uint32 groupWMOID, const G3D::AABox &bound)
Definition: WorldModel.h:78
uint32 iType
liquid type
Definition: WorldModel.h:67
uint8_t uint8
Definition: Define.h:152
std::vector< G3D::Vector3 > vertices
Definition: WorldModel.h:99
WmoLiquid * iLiquid
Definition: WorldModel.h:102
uint32 iTilesY
Definition: WorldModel.h:65
uint32 GetType() const
Definition: WorldModel.h:55
uint32 iGroupWMOID
Definition: WorldModel.h:98
Definition: BoundingIntervalHierarchy.h:70