Enki  1.9
Public Member Functions | Public Attributes | Protected Attributes | List of all members
Enki::OmniCam Class Reference

1D omnidirectional circular camera, based on 2 CircularCam Pixels start at -PI and then follow mathematical orientation to PI More...

#include <CircularCam.h>

Inheritance diagram for Enki::OmniCam:
Enki::LocalInteraction Enki::EPuckScannerTurret

Public Member Functions

 OmniCam (Robot *owner, double height, unsigned halfPixelCount)
 Constructor. More...
 
virtual ~OmniCam ()
 Destructor.
 
virtual void init (double dt, World *w)
 Init at each step.
 
virtual void objectStep (double dt, World *w, PhysicalObject *po)
 Interact with object. More...
 
virtual void wallsStep (double dt, World *w)
 Interact with walls. More...
 
virtual void finalize (double dt, World *w)
 Finalize at each step.
 
void setRange (double range)
 Change the sight range of the camera.
 
void setFogConditions (bool useFog, double density=0.0, Color threshold=Color::black)
 Change the fog condition for this camera. If useFog is true, an exponential fog with density will be used. Additionally, a threshold can be applied on the resulting color.
 
void setPixelOperationFunctor (PixelOperationFunctor *pixelOperationFunctor)
 Change the pixel operation functor.
 
- Public Member Functions inherited from Enki::LocalInteraction
 LocalInteraction ()
 Constructor.
 
 LocalInteraction (double range, Robot *owner)
 Constructor.
 
virtual ~LocalInteraction ()
 Destructor.
 
double getRange () const
 Return the range of the interaction.
 

Public Attributes

std::valarray< double > zbuffer
 zbuffer: distances at square (array of size pixelCount of double)
 
std::valarray< Colorimage
 Image (array of size pixelCount of Color)
 

Protected Attributes

CircularCam cam0
 Cameras doing the real job, first part.
 
CircularCam cam1
 Cameras doing the real job, second part.
 
- Protected Attributes inherited from Enki::LocalInteraction
double r
 Radius of the local interaction.
 
Robotowner
 The physical object that owns the interaction.
 

Detailed Description

1D omnidirectional circular camera, based on 2 CircularCam Pixels start at -PI and then follow mathematical orientation to PI

Constructor & Destructor Documentation

Enki::OmniCam::OmniCam ( Robot owner,
double  height,
unsigned  halfPixelCount 
)

Constructor.

Parameters
ownerrobot this camera is attached to
heightheight of this camera with respect to ground
halfPixelCounthalf the number of pixel to cover the full 2*PI field of view

References Enki::LocalInteraction::owner, and Enki::LocalInteraction::r.

Member Function Documentation

void Enki::OmniCam::objectStep ( double  dt,
World w,
PhysicalObject po 
)
virtual

Interact with object.

Parameters
dttime step
poobject to interact with
wworld where the interaction takes place

Reimplemented from Enki::LocalInteraction.

References cam0, cam1, and Enki::CircularCam::objectStep().

void Enki::OmniCam::wallsStep ( double  dt,
World w 
)
virtual

Interact with walls.

Parameters
wworld to which interact

Reimplemented from Enki::LocalInteraction.

References cam0, cam1, and Enki::CircularCam::wallsStep().


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