Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayMapData::cMapEntity Class Referenceabstract

#include <cMapEntity.h>

Inheritance diagram for GrayMapData::cMapEntity:
IScriptableObj GrayMapData::cMapEntityParams

Public Member Functions

 cMapEntity ()
 
virtual ~cMapEntity ()
 
virtual cMapBaseget_MapBase () const =0
 
virtual MAP_LOD_TYPE get_PatchLod () const
 
MAP_METERI_t get_PatchSize () const
 
virtual bool isPatchSaved () const
 
bool isTopLevel () const
 
virtual void UpdatePosition ()
 
virtual cXObjectPtr get_ContainerObject () const
 
cMapPatchPtr get_ParentPatch () const
 
virtual void put_Scale1 (float fScale)
 
const cVector3fget_Center () const
 
cPoint3f get_CenterW () const
 
const cVector3fget_Position () const
 
cPoint3f get_PosW () const
 
void put_Position (const cVector3f &vPos)
 
MAP_METER_t get_PositionHeight () const
 
void put_PositionHeight (MAP_METERf_t fGround)
 
CMapMoverPtr MakeMover ()
 
CMapMoverPtr get_Mover () const
 
void StopMover ()
 
- Public Member Functions inherited from GrayMapData::cMapEntityParams
 cMapEntityParams ()
 
 ~cMapEntityParams ()
 
void CopyEntityParams (const cMapEntityParams &from)
 
bool isSolid () const
 

Public Attributes

cMatrixDecomp4 m_ParentRel
 parent relative offset, rotation and scale. (SAVED) More...
 
bool m_bParentRelChanged
 Must call UpdatePosition() to recalc m_vPosition, m_BSphere, m_mWorld, etc. from m_ParentRel and all its children. More...
 
OBJ_SAVE_TYPE m_eSaveType
 How is the entity persisted ? More...
 
cNewPtr< CMapMovablem_pMoveable
 params if this might move. More...
 
cVector3f m_vPosition
 computed DX World coords position. (feet/root/origin position is not the same as m_BSphere pos) More...
 
cSpheref m_BSphere
 bounding sphere is oriented, scaled, in world (translated by m_ParentRel * parent chain). More...
 
cMatrix4x4f m_mWorld
 location + scale + orientation in world. More...
 
- Public Attributes inherited from GrayMapData::cMapEntityParams
bool m_bFlagParentScale
 (SAVED) Include my parents scaling matrix if i have a parent object. (offset+scale of parent) default=true More...
 
bool m_bFlagHover
 (SAVED) Gravity DOES NOT act on this. (true=flying/swimming). NOT relative to height map. More...
 
bool m_bFlagInsubstantial
 (SAVED) Can things pass through this? NOTE: use m_bFlagCollide to find if I collide with others when i move. More...
 
bool m_bFlagTerrainCut
 (SAVED) Consider interior/children to carve in ground - disable terrain collision checks More...
 
bool m_bFlagPhysics
 (SAVED) This can/might move ? tho may be at rest now. dynamic objects not saved in map script ? More...
 

Constructor & Destructor Documentation

◆ cMapEntity()

GrayMapData::cMapEntity::cMapEntity ( )

◆ ~cMapEntity()

GrayMapData::cMapEntity::~cMapEntity ( )
virtual

Member Function Documentation

◆ get_Center()

const cVector3f& GrayMapData::cMapEntity::get_Center ( ) const
inline

◆ get_CenterW()

cPoint3f GrayMapData::cMapEntity::get_CenterW ( ) const

◆ get_ContainerObject()

virtual cXObjectPtr GrayMapData::cMapEntity::get_ContainerObject ( ) const
inlinevirtual

< cXObject overload. What parent object is this contained by. may be inside or outside (visible)

◆ get_MapBase()

virtual cMapBase* GrayMapData::cMapEntity::get_MapBase ( ) const
pure virtual

◆ get_Mover()

CMapMoverPtr GrayMapData::cMapEntity::get_Mover ( ) const

◆ get_ParentPatch()

cMapPatchPtr GrayMapData::cMapEntity::get_ParentPatch ( ) const
inline

< Get my m_pParentCont if it is a cMapPatch and not another object. faster than just dynamic_cast m_pParentCont

◆ get_PatchLod()

virtual MAP_LOD_TYPE GrayMapData::cMapEntity::get_PatchLod ( ) const
inlinevirtual

< what MAP_LOD_TYPE should this object be stored in ? How big is it ? should be based on this objects m_BSphere radius.

◆ get_PatchSize()

MAP_METERI_t GrayMapData::cMapEntity::get_PatchSize ( ) const
inline

◆ get_Position()

const cVector3f& GrayMapData::cMapEntity::get_Position ( ) const
inline

computed DX9 3d coords root/feet position = World + d3dOffset

◆ get_PositionHeight()

MAP_METER_t GrayMapData::cMapEntity::get_PositionHeight ( ) const
inline

◆ get_PosW()

cPoint3f GrayMapData::cMapEntity::get_PosW ( ) const

◆ isPatchSaved()

virtual bool GrayMapData::cMapEntity::isPatchSaved ( ) const
inlinevirtual

is this saved in static SCP files? What OBJ_SAVE_TYPE is this?

Note
server database saved and temporary objects are not saved in the static SCP file.

◆ isTopLevel()

bool GrayMapData::cMapEntity::isTopLevel ( ) const

◆ MakeMover()

CMapMoverPtr GrayMapData::cMapEntity::MakeMover ( )

◆ put_Position()

void GrayMapData::cMapEntity::put_Position ( const cVector3f vPos)

◆ put_PositionHeight()

void GrayMapData::cMapEntity::put_PositionHeight ( MAP_METERf_t  fGround)

◆ put_Scale1()

virtual void GrayMapData::cMapEntity::put_Scale1 ( float  fScale)
inlinevirtual

◆ StopMover()

void GrayMapData::cMapEntity::StopMover ( )

◆ UpdatePosition()

virtual void GrayMapData::cMapEntity::UpdatePosition ( )
virtual

Member Data Documentation

◆ m_bParentRelChanged

bool GrayMapData::cMapEntity::m_bParentRelChanged

Must call UpdatePosition() to recalc m_vPosition, m_BSphere, m_mWorld, etc. from m_ParentRel and all its children.

◆ m_BSphere

cSpheref GrayMapData::cMapEntity::m_BSphere

bounding sphere is oriented, scaled, in world (translated by m_ParentRel * parent chain).

◆ m_eSaveType

OBJ_SAVE_TYPE GrayMapData::cMapEntity::m_eSaveType

How is the entity persisted ?

◆ m_mWorld

cMatrix4x4f GrayMapData::cMapEntity::m_mWorld

location + scale + orientation in world.

◆ m_ParentRel

cMatrixDecomp4 GrayMapData::cMapEntity::m_ParentRel

parent relative offset, rotation and scale. (SAVED)

◆ m_pMoveable

cNewPtr<CMapMovable> GrayMapData::cMapEntity::m_pMoveable

params if this might move.

◆ m_vPosition

cVector3f GrayMapData::cMapEntity::m_vPosition

computed DX World coords position. (feet/root/origin position is not the same as m_BSphere pos)


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