TrinityCore
VMAP::GroupModel Class Reference

#include <WorldModel.h>

Public Member Functions

 GroupModel ()
 
 GroupModel (GroupModel const &other)
 
 GroupModel (uint32 mogpFlags, uint32 groupWMOID, G3D::AABox const &bound)
 
 ~GroupModel ()
 
void setMeshData (std::vector< G3D::Vector3 > &vert, std::vector< MeshTriangle > &tri)
 pass mesh data to object and create BIH. Passed vectors get get swapped with old geometry! More...
 
void setLiquidData (WmoLiquid *&liquid)
 
bool IntersectRay (const G3D::Ray &ray, float &distance, bool stopAtFirstHit) const
 
bool IsInsideObject (const G3D::Vector3 &pos, const G3D::Vector3 &down, float &z_dist) const
 
bool GetLiquidLevel (const G3D::Vector3 &pos, float &liqHeight) const
 
uint32 GetLiquidType () const
 
bool writeToFile (FILE *wf)
 
bool readFromFile (FILE *rf)
 
const G3D::AABox & GetBound () const
 
uint32 GetMogpFlags () const
 
uint32 GetWmoID () const
 
std::vector< G3D::Vector3 > const & GetVertices () const
 
std::vector< MeshTriangle > const & GetTriangles () const
 
WmoLiquid const * GetLiquid () const
 

Protected Attributes

G3D::AABox iBound
 
uint32 iMogpFlags
 
uint32 iGroupWMOID
 
std::vector< G3D::Vector3 > vertices
 
std::vector< MeshTriangletriangles
 
BIH meshTree
 
WmoLiquidiLiquid
 

Detailed Description

holding additional info for WMO group files

Definition at line 80 of file WorldModel.h.

Constructor & Destructor Documentation

◆ GroupModel() [1/3]

VMAP::GroupModel::GroupModel ( )
inline

Definition at line 83 of file WorldModel.h.

◆ GroupModel() [2/3]

VMAP::GroupModel::GroupModel ( GroupModel const &  other)

Definition at line 290 of file WorldModel.cpp.

◆ GroupModel() [3/3]

VMAP::GroupModel::GroupModel ( uint32  mogpFlags,
uint32  groupWMOID,
G3D::AABox const &  bound 
)
inline

Definition at line 85 of file WorldModel.h.

◆ ~GroupModel()

VMAP::GroupModel::~GroupModel ( )
inline

Definition at line 87 of file WorldModel.h.

Member Function Documentation

◆ GetBound()

const G3D::AABox & VMAP::GroupModel::GetBound ( ) const
inline

Definition at line 98 of file WorldModel.h.

+ Here is the caller graph for this function:

◆ GetLiquid()

WmoLiquid const * VMAP::GroupModel::GetLiquid ( ) const
inline

Definition at line 103 of file WorldModel.h.

◆ GetLiquidLevel()

bool VMAP::GroupModel::GetLiquidLevel ( const G3D::Vector3 &  pos,
float &  liqHeight 
) const

Definition at line 432 of file WorldModel.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetLiquidType()

uint32 VMAP::GroupModel::GetLiquidType ( ) const

Definition at line 439 of file WorldModel.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetMogpFlags()

uint32 VMAP::GroupModel::GetMogpFlags ( ) const
inline

Definition at line 99 of file WorldModel.h.

+ Here is the caller graph for this function:

◆ GetTriangles()

std::vector< MeshTriangle > const & VMAP::GroupModel::GetTriangles ( ) const
inline

Definition at line 102 of file WorldModel.h.

◆ GetVertices()

std::vector< G3D::Vector3 > const & VMAP::GroupModel::GetVertices ( ) const
inline

Definition at line 101 of file WorldModel.h.

◆ GetWmoID()

uint32 VMAP::GroupModel::GetWmoID ( ) const
inline

Definition at line 100 of file WorldModel.h.

+ Here is the caller graph for this function:

◆ IntersectRay()

bool VMAP::GroupModel::IntersectRay ( const G3D::Ray &  ray,
float &  distance,
bool  stopAtFirstHit 
) const

Definition at line 409 of file WorldModel.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ IsInsideObject()

bool VMAP::GroupModel::IsInsideObject ( const G3D::Vector3 &  pos,
const G3D::Vector3 &  down,
float &  z_dist 
) const

Definition at line 419 of file WorldModel.cpp.

+ Here is the call graph for this function:

◆ readFromFile()

bool VMAP::GroupModel::readFromFile ( FILE *  rf)

Definition at line 352 of file WorldModel.cpp.

+ Here is the call graph for this function:

◆ setLiquidData()

void VMAP::GroupModel::setLiquidData ( WmoLiquid *&  liquid)
inline

Definition at line 91 of file WorldModel.h.

◆ setMeshData()

void VMAP::GroupModel::setMeshData ( std::vector< G3D::Vector3 > &  vert,
std::vector< MeshTriangle > &  tri 
)

pass mesh data to object and create BIH. Passed vectors get get swapped with old geometry!

Definition at line 298 of file WorldModel.cpp.

+ Here is the call graph for this function:

◆ writeToFile()

bool VMAP::GroupModel::writeToFile ( FILE *  wf)

Definition at line 306 of file WorldModel.cpp.

+ Here is the call graph for this function:

Member Data Documentation

◆ iBound

G3D::AABox VMAP::GroupModel::iBound
protected

Definition at line 105 of file WorldModel.h.

◆ iGroupWMOID

uint32 VMAP::GroupModel::iGroupWMOID
protected

Definition at line 107 of file WorldModel.h.

◆ iLiquid

WmoLiquid* VMAP::GroupModel::iLiquid
protected

Definition at line 111 of file WorldModel.h.

◆ iMogpFlags

uint32 VMAP::GroupModel::iMogpFlags
protected

Definition at line 106 of file WorldModel.h.

◆ meshTree

BIH VMAP::GroupModel::meshTree
protected

Definition at line 110 of file WorldModel.h.

◆ triangles

std::vector<MeshTriangle> VMAP::GroupModel::triangles
protected

Definition at line 109 of file WorldModel.h.

◆ vertices

std::vector<G3D::Vector3> VMAP::GroupModel::vertices
protected

Definition at line 108 of file WorldModel.h.


The documentation for this class was generated from the following files: