LTI-Lib latest version v1.9 - last update 10 Apr 2010

lti::draw3D< T >::parameters Class Reference

parameters for draw3D. More...

#include <ltiDraw3D.h>

Inheritance diagram for lti::draw3D< T >::parameters:
Inheritance graph
[legend]
Collaboration diagram for lti::draw3D< T >::parameters:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 parameters ()
 parameters (const parameters &other)
virtual const char * getTypeName () const
parameterscopy (const parameters &other)
parametersoperator= (const parameters &other)
virtual parametersclone () const
virtual bool write (ioHandler &handler, const bool complete=true) const
virtual bool read (ioHandler &handler, const bool complete=true)
void setCamera (const double &x1, const double &y1, const double &z1, const double &x2, const double &y2, const double &z2)
void setCamera (const double &x1, const double &y1, const double &z1, const double &theElevation, const double &theAzimuth)
void setCamera (const dpoint3D &x1, const dpoint3D &x2)
void setCamera (const dpoint3D &x1, const double &theElevation, const double &theAzimuth)

Public Attributes

double zoom
double perspective
dpoint center
dpoint3D camPos
double elevation
double azimuth
dpoint3D lightPosition
diffuseColor
ambientColor

Detailed Description

template<class T>
class lti::draw3D< T >::parameters

parameters for draw3D.

Most of the parameters in this class can be accessed through access methods in the class draw3D directly. This simplifies changing the parameters and giving them to the drawer object again.

The camera position is given by the cam1 point. The direction of the camera is given through the second point cam2. The projective algorithm used will ensure that this second point cam2 will be mapped exactly at the position given by center.


Constructor & Destructor Documentation

template<class T>
lti::draw3D< T >::parameters::parameters ( void   )  [inline]

default constructor

Referenced by lti::draw3D< T >::parameters::clone().

template<class T>
lti::draw3D< T >::parameters::parameters ( const parameters other  )  [inline]

copy constructor

References lti::draw3D< T >::parameters::copy().


Member Function Documentation

template<class T>
virtual parameters* lti::draw3D< T >::parameters::clone (  )  const [inline, virtual]

returns a pointer to a clone of the parameters.

References lti::draw3D< T >::parameters::parameters().

template<class T>
parameters& lti::draw3D< T >::parameters::copy ( const parameters other  )  [inline]
template<class T>
virtual const char* lti::draw3D< T >::parameters::getTypeName ( void   )  const [inline, virtual]

returns the name of this type

Reimplemented from lti::ioObject.

template<class T>
parameters& lti::draw3D< T >::parameters::operator= ( const parameters other  )  [inline]

alias for copy member

Reimplemented from lti::ioObject.

References lti::draw3D< T >::parameters::copy().

template<class T>
virtual bool lti::draw3D< T >::parameters::read ( ioHandler handler,
const bool  complete = true 
) [inline, virtual]
template<class T>
void lti::draw3D< T >::parameters::setCamera ( const dpoint3D x1,
const double &  theElevation,
const double &  theAzimuth 
) [inline]
template<class T>
void lti::draw3D< T >::parameters::setCamera ( const dpoint3D x1,
const dpoint3D x2 
) [inline]
template<class T>
void lti::draw3D< T >::parameters::setCamera ( const double &  x1,
const double &  y1,
const double &  z1,
const double &  theElevation,
const double &  theAzimuth 
) [inline]
template<class T>
void lti::draw3D< T >::parameters::setCamera ( const double &  x1,
const double &  y1,
const double &  z1,
const double &  x2,
const double &  y2,
const double &  z2 
) [inline]

set position and target position of the camera

References lti::abs(), lti::acos(), lti::Pi, and lti::sqrt().

Referenced by lti::draw3D< T >::parameters::setCamera().

template<class T>
virtual bool lti::draw3D< T >::parameters::write ( ioHandler handler,
const bool  complete = true 
) const [inline, virtual]

Member Data Documentation

template<class T>
T lti::draw3D< T >::parameters::ambientColor

Color (or intensity) of the ambient light.

To avoid saturation ensure that diffuseColor+ambientColor is smaller than the maximum allowed value for T (i.e. 255 for ubyte, rgbPixel(255,255,255) or 1.0 for float)

Referenced by lti::draw3D< T >::parameters::copy(), lti::draw3D< T >::parameters::read(), and lti::draw3D< T >::parameters::write().

template<class T>
double lti::draw3D< T >::parameters::azimuth

azimuth is the angle (in radians) between the x-axis and the projection of the camera axis on the xy plane.

Default value: 0.0

Referenced by lti::draw3D< T >::parameters::copy(), lti::draw3D< T >::parameters::read(), lti::draw3D< T >::parameters::setCamera(), and lti::draw3D< T >::parameters::write().

template<class T>
dpoint3D lti::draw3D< T >::parameters::camPos
template<class T>
dpoint lti::draw3D< T >::parameters::center

view plane center in relative coordinates (default (0.5,0.5), i.e.

in the center of the used image)

Referenced by lti::draw3D< T >::parameters::copy(), lti::draw3D< T >::parameters::read(), and lti::draw3D< T >::parameters::write().

template<class T>
T lti::draw3D< T >::parameters::diffuseColor

Color (or intensity) of the light source.

To avoid saturation ensure that diffuseColor+ambientColor is smaller than the maximum allowed value for T (i.e. 255 for ubyte, rgbPixel(255,255,255) or 1.0 for float)

Referenced by lti::draw3D< T >::parameters::copy(), lti::draw3D< T >::parameters::read(), and lti::draw3D< T >::parameters::write().

template<class T>
double lti::draw3D< T >::parameters::elevation

elevation is the angle (in radians) between the z-axis and the camera axis.

Default value: 0.0

Referenced by lti::draw3D< T >::parameters::copy(), lti::draw3D< T >::parameters::read(), lti::draw3D< T >::parameters::setCamera(), and lti::draw3D< T >::parameters::write().

template<class T>
double lti::draw3D< T >::parameters::perspective

camera perspective factor.

Set to zero for an orthographic projection or greater zero for perspective effects. You can consider this value as zoom/f with f the focal distance.

Referenced by lti::draw3D< T >::parameters::copy(), lti::draw3D< T >::parameters::read(), and lti::draw3D< T >::parameters::write().

template<class T>
double lti::draw3D< T >::parameters::zoom

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

Generated on Sat Apr 10 15:27:14 2010 for LTI-Lib by Doxygen 1.6.1