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

#include <Scene.h>

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

Public Member Functions

 Scene ()
 
virtual ~Scene ()
 
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::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)
 
::rl::sg::Shaperaycast (const ::rl::math::Vector3 &source, const ::rl::math::Vector3 &target, ::rl::math::Real &distance)
 
bool raycast (::rl::sg::Shape *shape, const ::rl::math::Vector3 &source, const ::rl::math::Vector3 &target, ::rl::math::Real &distance)
 
void setMargin (const ::rl::math::Real &margin)
 
- 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::RaycastScene
 RaycastScene ()
 
virtual ~RaycastScene ()
 
virtual bool raycast (Shape *shape, const ::rl::math::Vector3 &source, const ::rl::math::Vector3 &target, ::rl::math::Real &distance)=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
 
virtual bool isColliding ()
 

Public Attributes

BP_SceneHandle broad
 
DT_SceneHandle scene
 

Static Private Member Functions

static void beginOverlap (void *clientData, void *object1, void *object2)
 
static void endOverlap (void *clientData, void *object1, void *object2)
 

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::solid::Scene::Scene ( )

◆ ~Scene()

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

Reimplemented from rl::sg::Scene.

Member Function Documentation

◆ areColliding()

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

◆ beginOverlap()

void rl::sg::solid::Scene::beginOverlap ( void *  clientData,
void *  object1,
void *  object2 
)
staticprivate

◆ create()

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

Implements rl::sg::Scene.

◆ depth()

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

◆ distance() [1/2]

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

◆ distance() [2/2]

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

◆ endOverlap()

void rl::sg::solid::Scene::endOverlap ( void *  clientData,
void *  object1,
void *  object2 
)
staticprivate

◆ raycast() [1/2]

bool rl::sg::solid::Scene::raycast ( ::rl::sg::Shape shape,
const ::rl::math::Vector3 source,
const ::rl::math::Vector3 target,
::rl::math::Real distance 
)

◆ raycast() [2/2]

rl::sg::Shape * rl::sg::solid::Scene::raycast ( const ::rl::math::Vector3 source,
const ::rl::math::Vector3 target,
::rl::math::Real distance 
)
virtual

Implements rl::sg::RaycastScene.

◆ setMargin()

void rl::sg::solid::Scene::setMargin ( const ::rl::math::Real margin)

Member Data Documentation

◆ broad

BP_SceneHandle rl::sg::solid::Scene::broad

◆ scene

DT_SceneHandle rl::sg::solid::Scene::scene

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