Robotics Library  0.7.0
Classes | Public Member Functions | Public Attributes | Static Private Member Functions | Private Attributes | List of all members
rl::sg::fcl::Scene Class Reference

#include <Scene.h>

Inheritance diagram for rl::sg::fcl::Scene:
Inheritance graph
[legend]

Classes

struct  CollisionData
 
struct  DistanceData
 

Public Member Functions

 Scene ()
 
virtual ~Scene ()
 
void add (::rl::sg::Model *model)
 
void addCollisionObject (::fcl::CollisionObject *collisionObject, Body *body)
 
bool areColliding (::rl::sg::Body *first, ::rl::sg::Body *second)
 
bool areColliding (::rl::sg::Model *first, ::rl::sg::Model *second)
 
bool areColliding (::rl::sg::Shape *first, ::rl::sg::Shape *second)
 
::rl::sg::Modelcreate ()
 
::rl::math::Real depth (::rl::sg::Shape *first, ::rl::sg::Shape *second, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
::rl::math::Real distance (::rl::sg::Body *first, ::rl::sg::Body *second, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
::rl::math::Real distance (::rl::sg::Model *first, ::rl::sg::Model *second, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
::rl::math::Real distance (::rl::sg::Shape *first, ::rl::sg::Shape *second, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
::rl::math::Real distance (::rl::sg::Shape *shape, const ::rl::math::Vector3 &point, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
bool isColliding ()
 
void remove (::rl::sg::Model *model)
 
void removeCollisionObject (::fcl::CollisionObject *collisionObject)
 
- Public Member Functions inherited from rl::sg::DepthScene
 DepthScene ()
 
virtual ~DepthScene ()
 
virtual ::rl::math::Real depth (Body *first, Body *second, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
virtual ::rl::math::Real depth (Model *first, Model *second, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
virtual ::rl::math::Real depth (Shape *first, Shape *second, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)=0
 
- Public Member Functions inherited from rl::sg::Scene
 Scene ()
 
virtual void add (Model *model)
 
Iterator begin ()
 
Iterator end ()
 
ModelgetModel (const ::std::size_t &i) const
 
virtual ::std::string getName () const
 
::std::size_t getNumModels () const
 
void load (const ::std::string &filename, const bool &doBoundingBoxPoints=false, const bool &doPoints=false)
 
virtual void remove (Model *model)
 
virtual void setName (const ::std::string &name)
 
- Public Member Functions inherited from rl::sg::DistanceScene
 DistanceScene ()
 
virtual ~DistanceScene ()
 
virtual ::rl::math::Real distance (const ::rl::math::Vector3 &point, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
virtual ::rl::math::Real distance (Body *first, Body *second, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
virtual ::rl::math::Real distance (Body *body, const ::rl::math::Vector3 &point, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
virtual ::rl::math::Real distance (Model *first, Model *second, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
virtual ::rl::math::Real distance (Model *model, const ::rl::math::Vector3 &point, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)
 
virtual ::rl::math::Real distance (Shape *first, Shape *second, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)=0
 
virtual ::rl::math::Real distance (Shape *shape, const ::rl::math::Vector3 &point, ::rl::math::Vector3 &point1, ::rl::math::Vector3 &point2)=0
 
- Public Member Functions inherited from rl::sg::SimpleScene
 SimpleScene ()
 
virtual ~SimpleScene ()
 
virtual bool areColliding (Body *first, Body *second)
 
virtual bool areColliding (Model *first, Model *second)
 
virtual bool areColliding (Shape *first, Shape *second)=0
 

Public Attributes

::fcl::DynamicAABBTreeCollisionManager manager
 

Static Private Member Functions

static bool defaultCollisionFunction (::fcl::CollisionObject *o1, ::fcl::CollisionObject *o2, void *data)
 
static bool defaultDistanceFunction (::fcl::CollisionObject *o1, ::fcl::CollisionObject *o2, void *data, ::fcl::FCL_REAL &dist)
 

Private Attributes

::std::unordered_map< ::fcl::CollisionObject *, Body * > bodyForObj
 

Additional Inherited Members

- Public Types inherited from rl::sg::Scene
typedef ::std::vector< Model * >::iterator Iterator
 
- Protected Attributes inherited from rl::sg::Scene
bool isScalingSupported
 
::std::vector< Model * > models
 

Constructor & Destructor Documentation

◆ Scene()

rl::sg::fcl::Scene::Scene ( )

◆ ~Scene()

rl::sg::fcl::Scene::~Scene ( )
virtual

Reimplemented from rl::sg::Scene.

Member Function Documentation

◆ add()

void rl::sg::fcl::Scene::add ( ::rl::sg::Model model)

◆ addCollisionObject()

void rl::sg::fcl::Scene::addCollisionObject ( ::fcl::CollisionObject *  collisionObject,
Body body 
)

◆ areColliding() [1/3]

bool rl::sg::fcl::Scene::areColliding ( ::rl::sg::Body first,
::rl::sg::Body second 
)

◆ areColliding() [2/3]

bool rl::sg::fcl::Scene::areColliding ( ::rl::sg::Model first,
::rl::sg::Model second 
)

◆ areColliding() [3/3]

bool rl::sg::fcl::Scene::areColliding ( ::rl::sg::Shape first,
::rl::sg::Shape second 
)

◆ create()

rl::sg::Model * rl::sg::fcl::Scene::create ( )
virtual

Implements rl::sg::Scene.

◆ defaultCollisionFunction()

bool rl::sg::fcl::Scene::defaultCollisionFunction ( ::fcl::CollisionObject *  o1,
::fcl::CollisionObject *  o2,
void *  data 
)
staticprivate

◆ defaultDistanceFunction()

bool rl::sg::fcl::Scene::defaultDistanceFunction ( ::fcl::CollisionObject *  o1,
::fcl::CollisionObject *  o2,
void *  data,
::fcl::FCL_REAL &  dist 
)
staticprivate

◆ depth()

rl::math::Real rl::sg::fcl::Scene::depth ( ::rl::sg::Shape first,
::rl::sg::Shape second,
::rl::math::Vector3 point1,
::rl::math::Vector3 point2 
)

◆ distance() [1/4]

rl::math::Real rl::sg::fcl::Scene::distance ( ::rl::sg::Body first,
::rl::sg::Body second,
::rl::math::Vector3 point1,
::rl::math::Vector3 point2 
)

◆ distance() [2/4]

rl::math::Real rl::sg::fcl::Scene::distance ( ::rl::sg::Model first,
::rl::sg::Model second,
::rl::math::Vector3 point1,
::rl::math::Vector3 point2 
)

◆ distance() [3/4]

rl::math::Real rl::sg::fcl::Scene::distance ( ::rl::sg::Shape first,
::rl::sg::Shape second,
::rl::math::Vector3 point1,
::rl::math::Vector3 point2 
)

◆ distance() [4/4]

rl::math::Real rl::sg::fcl::Scene::distance ( ::rl::sg::Shape shape,
const ::rl::math::Vector3 point,
::rl::math::Vector3 point1,
::rl::math::Vector3 point2 
)

◆ isColliding()

bool rl::sg::fcl::Scene::isColliding ( )
virtual

Reimplemented from rl::sg::SimpleScene.

◆ remove()

void rl::sg::fcl::Scene::remove ( ::rl::sg::Model model)

◆ removeCollisionObject()

void rl::sg::fcl::Scene::removeCollisionObject ( ::fcl::CollisionObject *  collisionObject)

Member Data Documentation

◆ bodyForObj

::std::unordered_map< ::fcl::CollisionObject*, Body*> rl::sg::fcl::Scene::bodyForObj
private

◆ manager

::fcl::DynamicAABBTreeCollisionManager rl::sg::fcl::Scene::manager

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