TrinityCore
Loading...
Searching...
No Matches
VMAP::GroupModel Class Reference

#include <WorldModel.h>

Public Types

enum  InsideResult { INSIDE = 0 , MAYBE_INSIDE = 1 , ABOVE = 2 , OUT_OF_BOUNDS = -1 }
 

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.
 
void setLiquidData (WmoLiquid *liquid)
 
bool IntersectRay (const G3D::Ray &ray, float &distance, bool stopAtFirstHit) const
 
InsideResult IsInsideObject (G3D::Ray const &ray, float &z_dist) const
 
bool GetLiquidLevel (const G3D::Vector3 &pos, float &liqHeight) const
 
uint32 GetLiquidType () const
 
bool writeToFile (FILE *wf)
 
bool readFromFile (FILE *rf)
 
G3D::AABox const & GetBound () const
 
G3D::AABox const & GetMeshTreeBound () 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.

Member Enumeration Documentation

◆ InsideResult

Enumerator
INSIDE 
MAYBE_INSIDE 
ABOVE 
OUT_OF_BOUNDS 

Definition at line 93 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 291 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()

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

Definition at line 99 of file WorldModel.h.

+ Here is the caller graph for this function:

◆ GetLiquid()

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

Definition at line 105 of file WorldModel.h.

◆ GetLiquidLevel()

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

Definition at line 462 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 469 of file WorldModel.cpp.

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

◆ GetMeshTreeBound()

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

Definition at line 100 of file WorldModel.h.

◆ GetMogpFlags()

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

Definition at line 101 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 104 of file WorldModel.h.

◆ GetVertices()

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

Definition at line 103 of file WorldModel.h.

◆ GetWmoID()

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

Definition at line 102 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 410 of file WorldModel.cpp.

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

◆ IsInsideObject()

GroupModel::InsideResult VMAP::GroupModel::IsInsideObject ( G3D::Ray const &  ray,
float &  z_dist 
) const

Definition at line 429 of file WorldModel.cpp.

+ Here is the call graph for this function:

◆ readFromFile()

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

Definition at line 353 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.

Definition at line 299 of file WorldModel.cpp.

+ Here is the call graph for this function:

◆ writeToFile()

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

Definition at line 307 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 107 of file WorldModel.h.

◆ iGroupWMOID

uint32 VMAP::GroupModel::iGroupWMOID
protected

Definition at line 109 of file WorldModel.h.

◆ iLiquid

WmoLiquid* VMAP::GroupModel::iLiquid
protected

Definition at line 113 of file WorldModel.h.

◆ iMogpFlags

uint32 VMAP::GroupModel::iMogpFlags
protected

Definition at line 108 of file WorldModel.h.

◆ meshTree

BIH VMAP::GroupModel::meshTree
protected

Definition at line 112 of file WorldModel.h.

◆ triangles

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

Definition at line 111 of file WorldModel.h.

◆ vertices

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

Definition at line 110 of file WorldModel.h.


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