Robot Simulator of the Robotics Group for Self-Organization of Control  0.8.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ComplexPlayground Class Reference

Playground that uses an xfig file with polylines linetype 0 is normal wall linetype 1 is border thickness is used as well, thickness is multiplied with wallthickness. More...

#include <complexplayground.h>

Inheritance diagram for ComplexPlayground:
Collaboration diagram for ComplexPlayground:

Public Member Functions

 ComplexPlayground (const OdeHandle &odeHandle, const OsgHandle &osgHandle, const std::string &filename, double factor=1, double heightfactor=0.02, bool createGround=true)
 
void createPolyline (const PolyLine &)
 
- Public Member Functions inherited from AbstractGround
 AbstractGround (const OdeHandle &odeHandle, const OsgHandle &osgHandle, bool createGround, double groundLength, double groundWidth, double wallThickness)
 
virtual ~AbstractGround ()
 
virtual void setPose (const osg::Matrix &pose)
 sets position of the obstacle and creates/recreates obstacle if necessary More...
 
virtual void createGround (bool create)
 
virtual PrimitivegetMainPrimitive () const
 return the "main" primitive of the obtactle. The meaning of "main" is arbitrary More...
 
virtual void changeGeometry (double length, double width, double height, double factorxy)
 
virtual void printContours (FILE *f)
 prints the contour of the boxes into the file More...
 
virtual void setGroundTexture (const std::string &filename)
 assigns the texture to the object More...
 
virtual void setGroundColor (const Color &color)
 sets the ground color should be called before setPosition() More...
 
virtual void setGroundSubstance (const Substance &substance)
 sets the substance of the ground. More...
 
virtual std::list< PositiongetCornerPointsXY ()
 returns the corner points of the groundplane More...
 
virtual double getGroundLength ()
 size in x dimension More...
 
virtual double getGroundWidth ()
 size in y dimension More...
 
virtual double getGroundThickness ()
 
virtual void setGroundThickness (double thickness)
 
- Public Member Functions inherited from AbstractObstacle
 AbstractObstacle (const OdeHandle &odeHandle, const OsgHandle &osgHandle)
 Constructor. More...
 
virtual ~AbstractObstacle ()
 
virtual void update ()
 updates the position if the scenegraph nodes the default implementation calls update on all primitive on "obst" More...
 
virtual void setPos (const osg::Vec3 &pos)
 sets position of the obstacle and creates/recreates obstacle if necessary More...
 
virtual void setPosition (const osg::Vec3 &pos)
 sets position of the obstacle and creates/recreates obstacle if necessary More...
 
virtual osg::Vec3 getPos ()
 gives actual position of the obstacle More...
 
virtual osg::Matrix getPose ()
 gives actual pose of the obstacle More...
 
virtual void setColor (const Color &color)
 sets the obstacle color More...
 
virtual void setColor (const std::string &color)
 
virtual void setTexture (const std::string &texturefilename)
 assigns a texture to the all primitives of this obstactle with repeat -1,-1 More...
 
virtual void setTexture (const TextureDescr &texture)
 assigns a texture to the all primitives of this obstactle More...
 
virtual void setTexture (int surface, const TextureDescr &texture)
 assigns a texture to the x-th surface of each primitive, More...
 
virtual void setTexture (int primitive, int surface, const TextureDescr &texture)
 assigns a texture to the x-th surface of the k-th primitive, (The texture setting of the last primitve is repeated for the remaining ones) More...
 
virtual TextureDescr getTexture (int primitive, int surface) const
 returns the texture of the given surface on the given primitive More...
 
virtual std::vector< TextureDescrgetTextures (int primitive) const
 returns the textures of the given primitive More...
 
virtual void setSubstance (const Substance &substance)
 sets the substance of the obtactle. More...
 
virtual const SubstancegetSubstance ()
 returns the substance of this obstacle More...
 
virtual Position getPosition () const
 returns position of the object More...
 
virtual Position getSpeed () const
 returns linear speed vector of the object More...
 
virtual Position getAngularSpeed () const
 returns angular velocity vector of the object More...
 
virtual matrix::Matrix getOrientation () const
 returns the orientation of the object More...
 

Protected Member Functions

virtual void create ()
 overload this function to create the obstactle. All primitives should go into the list "obst" More...
 
- Protected Member Functions inherited from AbstractGround
virtual void createGround ()
 
- Protected Member Functions inherited from AbstractObstacle
virtual void destroy ()
 is called to destroy the object. The default implementation is to delete all primitives in "obst". More...
 

Protected Attributes

std::string filename
 
double factor
 
double heightfactor
 
std::list< PolyLinepolylines
 
- Protected Attributes inherited from AbstractGround
PrimitivegroundPlane
 
bool creategroundPlane
 
double groundLength
 
double groundWidth
 
double wallThickness
 
double groundThickness
 
Substance groundSubstance
 
Color groundColor
 
std::string groundTextureFileName
 
- Protected Attributes inherited from AbstractObstacle
std::vector< Primitive * > obst
 primitives which belong to this obstacle More...
 
std::vector< std::vector
< TextureDescr > > 
textures
 for each primitive the texture settings per surface More...
 
osg::Matrix pose
 
bool obstacle_exists
 
OdeHandle odeHandle
 
OsgHandle osgHandle
 

Detailed Description

Playground that uses an xfig file with polylines linetype 0 is normal wall linetype 1 is border thickness is used as well, thickness is multiplied with wallthickness.

depth is used as a height value and is multiplied with heightfactor. The entire size can be scaled with a global factor

Constructor & Destructor Documentation

ComplexPlayground ( const OdeHandle odeHandle,
const OsgHandle osgHandle,
const std::string &  filename,
double  factor = 1,
double  heightfactor = 0.02,
bool  createGround = true 
)
Parameters
factorglobal factor for the entire playground factor for depth value of xfig line to determine wall height

Member Function Documentation

void create ( )
protectedvirtual

overload this function to create the obstactle. All primitives should go into the list "obst"

Implements AbstractObstacle.

void createPolyline ( const PolyLine polyline)

Member Data Documentation

double factor
protected
std::string filename
protected
double heightfactor
protected
std::list<PolyLine> polylines
protected

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