Conscience Core
Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
CscWorldEntity Class Reference

#include <CscWorldEntity.h>

Inheritance diagram for CscWorldEntity:
CscWorldElement

Public Member Functions

 CscWorldEntity (const string &serialNumber, const CscEntityModel *model, const string &name, CscPoint3d *position, CscPoint3d *rotation)
 
virtual ~CscWorldEntity ()=default
 
const CscEntityModelgetModel () const
 
CscWorldEntityclone () const
 
- Public Member Functions inherited from CscWorldElement
 CscWorldElement (const CscWorldElementId &id, const string &name, CscPoint3d *positionIn, CscPoint3d *rotationEulerIn, CscPhysicsType physicsType=CscPhysicsType::BOUNDING_BOX, float mass=5.0, vector< CscWorldElementPart * > *parts=nullptr, vector< CscPoint3d * > *positions=nullptr, vector< CscPoint3d * > *normals=nullptr, vector< CscPolygon * > *polygons=nullptr, vector< const CscLocationTag * > *locationTags=nullptr, float minX=0, float minY=0, float minZ=0, float depth=0, float height=0, float width=0)
 
virtual ~CscWorldElement ()
 
virtual CscPoint3d getMinPositionInWorldCoordinates () const
 
const CscPoint3dgetPosition () const
 
void setPosition (float x, float y, float z)
 
const CscPoint3dgetRotationEulerAsPoint () const
 
void setRotationEuler (double x, double y, double z)
 
void setRotationQuaternion (double w, double x, double y, double z)
 
bool isIn3DArea (const CscArea3d *area) const
 
const string & getName () const
 
virtual CscWorldElementId getId () const
 
float getMass ()
 
virtual CscSize3d getDimensions () const
 
float * getVerticesArray () const
 
float * getPolygonsArray () const
 
int getVerticesCount () const
 
int getPolygonsCount () const
 
void repositionateToZeroOriginPositions ()
 
void repositionateToZeroOriginPolygons ()
 
vector< CscPoint3d * > * getPositions () const
 
vector< CscPolygon * > * getPolygons () const
 
vector< CscPolygon * > getPolygonsInWorldCoordinates () const
 
vector< CscPoint3d * > getYPlanSlicePoints (double sliceY, double precisionCm=5.0) const
 
vector< CscPoint3d * > * getNormals () const
 
const vector< CscWorldElementPart * > * getParts () const
 
vector< CscPoint3d * > * getReconstructedVerticesFromPolygons (const int stepInCm=10) const
 
CscPhysicsType getPhysicsType () const
 
const CscLocationTaggetLocationTagByName (const string &name) const
 
void forcePolygons (const vector< CscPolygon * > &newPolygons)
 
void addTag (const string &tag)
 
void removeTag (const string &tag)
 
bool hasTag (const string &tag) const
 
const double *const getRotationQuaternionArray () const
 
CscQuaternion getRotationQuaternion () const
 
CscRotation3dEuler getRotationEuler () const
 

Static Public Attributes

static const CscPoint3d *const entityDaeToCscEulerXYZ = new CscPoint3d(0.0, 0.0, -M_PI_2)
 

Protected Member Functions

const CscPoint3dgetBaseRotation () const override
 

Additional Inherited Members

- Static Public Member Functions inherited from CscWorldElement
static CscWorldElementId nextId ()
 
- Public Attributes inherited from CscWorldElement
float depth = 0
 
float height = 0
 
float width = 0
 
float minX
 
float minY
 
float minZ
 
float mass = 1.0
 
float restitution = 0.3
 
float dampingLinear = 0.3
 
float dampingAngular = 0.3
 
float friction = 1.0
 
bool collideWithOthers = true
 
float certitude = 0.0
 
- Protected Attributes inherited from CscWorldElement
const CscWorldElementId id
 
vector< const CscLocationTag * > * locationTags
 

Constructor & Destructor Documentation

◆ CscWorldEntity()

CscWorldEntity::CscWorldEntity ( const string &  serialNumber,
const CscEntityModel model,
const string &  name,
CscPoint3d position,
CscPoint3d rotation 
)

◆ ~CscWorldEntity()

virtual CscWorldEntity::~CscWorldEntity ( )
virtualdefault

Member Function Documentation

◆ clone()

CscWorldEntity * CscWorldEntity::clone ( ) const

◆ getBaseRotation()

const CscPoint3d & CscWorldEntity::getBaseRotation ( ) const
overrideprotectedvirtual
Returns
base rotation for this element type. Some element types have a base rotation (for instance places => CscWorldPlace::placeDaeToCscEulerXYZ)

Reimplemented from CscWorldElement.

◆ getModel()

const CscEntityModel * CscWorldEntity::getModel ( ) const

Member Data Documentation

◆ entityDaeToCscEulerXYZ

const CscPoint3d* const CscWorldEntity::entityDaeToCscEulerXYZ = new CscPoint3d(0.0, 0.0, -M_PI_2)
inlinestatic

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