CrystalSpace

Public API Reference

CS::Collisions::iCollisionObject Struct Reference

This is the interface of a collision object. More...

#include <ivaria/collisions.h>

Inheritance diagram for CS::Collisions::iCollisionObject:

List of all members.

Public Member Functions

virtual csPtr< iCollisionDataCollide (iCollisionObject *otherObject) const =0
 Test for the collisions with another collision object.
virtual iCameraGetAttachedCamera () const =0
 Get the camera attached to this collision object.
virtual iSceneNodeGetAttachedSceneNode () const =0
 Get the iSceneNode attached to this collision object. Its transform will always coincide with the object's transform.
virtual iColliderGetCollider () const =0
 Get the collider that defines this object's shape.
virtual const csOrthoTransformGetColliderTransform () const =0
 Get the relative transform of the collider of this object.
virtual iCollisionCallbackGetCollisionCallback ()=0
 Get the collision response callback.
virtual iCollisionGroupGetCollisionGroup () const =0
 Get the collision group of this object.
virtual iCollisionObjectGetContactObject (size_t index)=0
 Get the collision object in contact with this object at the given index.
virtual size_t GetContactObjectsCount ()=0
 Get the count of collision objects in contact with this object.
virtual bool GetDeactivable () const =0
 Get whether or not this object may be excluded from deactivation.
virtual CollisionObjectType GetObjectType () const =0
 Return the type of the collision object.
virtual iCollisionSectorGetSector () const =0
 Return the collision sector containing this object, or nullptr if it is not in a sector (therefore not currently part of the physical simulation).
virtual csOrthoTransform GetTransform () const =0
 Get the transform of this object.
virtual HitBeamResult HitBeam (const csVector3 &start, const csVector3 &end) const =0
 Follow a beam from start to end and return whether or not this body was hit.
virtual iCollisionActorQueryCollisionActor ()=0
 Return the actor pointer if it's an actor, or nullptr.
virtual iObjectQueryObject (void)=0
 Return the underlying object.
virtual
CS::Physics::iPhysicalBody
QueryPhysicalBody ()=0
 Return the physical body pointer if it's a physical body, or nullptr otherwise.
virtual void SetAttachedCamera (iCamera *camera)=0
 Set the camera attached to this collision object.
virtual void SetAttachedSceneNode (iSceneNode *sceneNode)=0
 Set the iSceneNode attached to this collision object. Its transform will always coincide with the object's transform.
virtual void SetCollider (iCollider *collider, const csOrthoTransform &transform=csOrthoTransform())=0
 Set the collider that defines this object's shape.
virtual void SetColliderTransform (const csOrthoTransform &transform)=0
 Set the relative transform of the collider of this object.
virtual void SetCollisionCallback (iCollisionCallback *cb)=0
 Set a callback to be executed when this body collides with another.
virtual void SetCollisionGroup (iCollisionGroup *group)=0
 Rebuild this collision object.
virtual void SetDeactivable (bool d)=0
 Set whether or not this object may be excluded from deactivation.
virtual void SetSector (iCollisionSector *sector)=0
 Put this object into the given collision sector.
virtual void SetTransform (const csOrthoTransform &trans)=0
 Set the transform of this object.

Detailed Description

This is the interface of a collision object.

It contains the collision information of the object.

Main creators of instances implementing this interface:

Main ways to get pointers to this interface:

Main users of this interface:

Definition at line 278 of file collisions.h.


Member Function Documentation

virtual csPtr<iCollisionData> CS::Collisions::iCollisionObject::Collide ( iCollisionObject otherObject  )  const [pure virtual]

Test for the collisions with another collision object.

virtual iCamera* CS::Collisions::iCollisionObject::GetAttachedCamera (  )  const [pure virtual]

Get the camera attached to this collision object.

virtual iSceneNode* CS::Collisions::iCollisionObject::GetAttachedSceneNode (  )  const [pure virtual]

Get the iSceneNode attached to this collision object. Its transform will always coincide with the object's transform.

virtual iCollider* CS::Collisions::iCollisionObject::GetCollider (  )  const [pure virtual]

Get the collider that defines this object's shape.

virtual const csOrthoTransform& CS::Collisions::iCollisionObject::GetColliderTransform (  )  const [pure virtual]

Get the relative transform of the collider of this object.

virtual iCollisionCallback* CS::Collisions::iCollisionObject::GetCollisionCallback (  )  [pure virtual]

Get the collision response callback.

virtual iCollisionGroup* CS::Collisions::iCollisionObject::GetCollisionGroup (  )  const [pure virtual]

Get the collision group of this object.

virtual iCollisionObject* CS::Collisions::iCollisionObject::GetContactObject ( size_t  index  )  [pure virtual]

Get the collision object in contact with this object at the given index.

virtual size_t CS::Collisions::iCollisionObject::GetContactObjectsCount (  )  [pure virtual]

Get the count of collision objects in contact with this object.

virtual bool CS::Collisions::iCollisionObject::GetDeactivable (  )  const [pure virtual]

Get whether or not this object may be excluded from deactivation.

virtual CollisionObjectType CS::Collisions::iCollisionObject::GetObjectType (  )  const [pure virtual]

Return the type of the collision object.

virtual iCollisionSector* CS::Collisions::iCollisionObject::GetSector (  )  const [pure virtual]

Return the collision sector containing this object, or nullptr if it is not in a sector (therefore not currently part of the physical simulation).

virtual csOrthoTransform CS::Collisions::iCollisionObject::GetTransform (  )  const [pure virtual]

Get the transform of this object.

virtual HitBeamResult CS::Collisions::iCollisionObject::HitBeam ( const csVector3 start,
const csVector3 end 
) const [pure virtual]

Follow a beam from start to end and return whether or not this body was hit.

virtual iCollisionActor* CS::Collisions::iCollisionObject::QueryCollisionActor (  )  [pure virtual]

Return the actor pointer if it's an actor, or nullptr.

virtual iObject* CS::Collisions::iCollisionObject::QueryObject ( void   )  [pure virtual]

Return the underlying object.

virtual CS::Physics::iPhysicalBody* CS::Collisions::iCollisionObject::QueryPhysicalBody (  )  [pure virtual]

Return the physical body pointer if it's a physical body, or nullptr otherwise.

virtual void CS::Collisions::iCollisionObject::SetAttachedCamera ( iCamera camera  )  [pure virtual]

Set the camera attached to this collision object.

Its position will be updated automatically when this object is moved.

virtual void CS::Collisions::iCollisionObject::SetAttachedSceneNode ( iSceneNode sceneNode  )  [pure virtual]

Set the iSceneNode attached to this collision object. Its transform will always coincide with the object's transform.

virtual void CS::Collisions::iCollisionObject::SetCollider ( iCollider collider,
const csOrthoTransform transform = csOrthoTransform() 
) [pure virtual]

Set the collider that defines this object's shape.

virtual void CS::Collisions::iCollisionObject::SetColliderTransform ( const csOrthoTransform transform  )  [pure virtual]

Set the relative transform of the collider of this object.

virtual void CS::Collisions::iCollisionObject::SetCollisionCallback ( iCollisionCallback cb  )  [pure virtual]

Set a callback to be executed when this body collides with another.

If nullptr, then no callback is executed.

Todo:
Currently no callback will be triggered unless the test method Collide() is used.
virtual void CS::Collisions::iCollisionObject::SetCollisionGroup ( iCollisionGroup group  )  [pure virtual]

Rebuild this collision object.

Set the collision group of this object

virtual void CS::Collisions::iCollisionObject::SetDeactivable ( bool  d  )  [pure virtual]

Set whether or not this object may be excluded from deactivation.

virtual void CS::Collisions::iCollisionObject::SetSector ( iCollisionSector sector  )  [pure virtual]

Put this object into the given collision sector.

The object will now be part of the physical simulation.

Note:
This is equivalent to a call to CS::Collisions::iCollisionSector::AddCollisionObject().
virtual void CS::Collisions::iCollisionObject::SetTransform ( const csOrthoTransform trans  )  [pure virtual]

Set the transform of this object.


The documentation for this struct was generated from the following file:

Generated for Crystal Space 2.1 by doxygen 1.6.1