#include <CircularCam.h>
Inheritance diagram for Enki::CircularCam:

Public Member Functions | |
| CircularCam (Robot *owner, An::Vector pos, double height, double orientation, double fieldOfView, unsigned pixelCount) | |
| Constructor. r is the vision radius and owner is the Sbot the camera belongs to. | |
| virtual | ~CircularCam () |
| Destructor. | |
| virtual void | init () |
| Init at each step. | |
| virtual void | objectStep (double dt, PhysicalObject *po, World *w) |
| Interact with object. | |
| virtual void | wallsStep (World *w) |
| Interact with walls. | |
| virtual void | finalize (double dt) |
| Finalize at each step. | |
| An::Point | getAbsolutePosition (void) |
| Return the absolute position (world coordinates) of the camera, updated at each time step on init(). | |
| double | getAbsoluteOrientation (void) |
| Return the absolute orientation (world coordinates) of the camera, updated at each time step on init(). | |
Public Attributes | |
| std::valarray< double > | zbuffer |
| zbuffer (array of size pixelCount of double) | |
| std::valarray< An::Color > | image |
| Image (array of size pixelCount of Color). | |
| double | fieldOfView |
| Field of view = [-fieldOfView; + fieldOfView]. [0; PI/2]. | |
| double | angleOffset |
| Angular offset based on owner angle. | |
| bool | useFog |
| Fog switch, exponential decay of light with distance. | |
| double | fogDensity |
| Density of fog, used to compute light attenuation with the function: light = light0 * exp(-fogDensity * distance). | |
| An::Color | lightThreshold |
| Minimum incoming light, otherwise 0. Only used if useFog is true. | |
| PixelOperationFunctor * | pixelOperation |
| Pointer to active pixel operation. | |
Protected Member Functions | |
| double | interpolateLinear (double s0, double s1, double sv, double d0, double d1) |
| Return linear interpolated value between d0 and d1, given a sensorvalue sv between s0 and s1. | |
| void | drawTexturedLine (const An::Point &p0, const An::Point &p1, const An::Texture &texture) |
| Draw a textured line from point p0 to p1 using texture - WTF are p0 and p1?? | |
Protected Attributes | |
| An::Vector | positionOffset |
| Position offset based on owner position. | |
| double | height |
| Height above ground, the camera will not see any object of smaller height. | |
| An::Vector | absPos |
| Absolute position in the world, updated on init(). | |
| double | absOrientation |
| Absolute angle in the world, updated on init(). | |
1.4.2