Visualization LibraryA lightweight C++ OpenGL middleware for 2D/3D graphics |
[Home] [Tutorials] [All Classes] [Grouped Classes] |
A Transform that aligns an Actor towards the camera. More...
#include <Billboard.hpp>
Public Member Functions | |
| Billboard () | |
| virtual const char * | className () |
| Returns the name of the class. | |
| void | setPosition (const vec3 &pos) |
| The billboard position and rotation center. | |
| void | setPosition (Real x, Real y, Real z) |
| The billboard position and rotation center. | |
| vec3 | position () |
| The billboard position and rotation center. | |
| void | setAxis (const vec3 &axis) |
| The rotation axis in world coordinates. Used only for axis aligned billboards. | |
| const vec3 & | axis () const |
| The rotation axis in world coordinates. Used only for axis aligned billboards. | |
| void | setNormal (const vec3 &normal) |
| Used only for axis aligned billboards. | |
| const vec3 & | normal () const |
| Used only for axis aligned billboards. | |
| virtual void | computeWorldMatrix (Camera *camera=NULL) |
| Computes the world matrix by concatenating the parent's world matrix with its own local matrix. | |
| EBillboardType | type () const |
| The type of the billboard. | |
| void | setType (EBillboardType type) |
| The type of the billboard. | |
Protected Attributes | |
| vec3 | mAxis |
| vec3 | mNormal |
| EBillboardType | mType |
A Transform that aligns an Actor towards the camera.
Definition at line 46 of file Billboard.hpp.
| Billboard::Billboard | ( | ) |
Definition at line 38 of file Billboard.cpp.
References vl::BT_SphericalBillboard, mType, setAxis(), setNormal(), and VL_DEBUG_SET_OBJECT_NAME.
| virtual const char* vl::Billboard::className | ( | ) | [inline, virtual] |
Returns the name of the class.
Reimplemented from vl::Object.
Definition at line 50 of file Billboard.hpp.
| void Billboard::setPosition | ( | const vec3 & | pos ) |
The billboard position and rotation center.
Definition at line 51 of file Billboard.cpp.
References vl::Matrix4< float >::getTranslation(), and vl::Transform::setLocalMatrix().
The billboard position and rotation center.
Definition at line 54 of file Billboard.hpp.
References setPosition().
Referenced by setPosition().
| vec3 Billboard::position | ( | ) |
The billboard position and rotation center.
Definition at line 46 of file Billboard.cpp.
References vl::Matrix4< T_Scalar >::getT(), and vl::Transform::localMatrix().
Referenced by computeWorldMatrix().
| void vl::Billboard::setAxis | ( | const vec3 & | axis ) | [inline] |
The rotation axis in world coordinates. Used only for axis aligned billboards.
Definition at line 58 of file Billboard.hpp.
References vl::Vector3< T_Scalar >::normalize().
Referenced by Billboard().
| const vec3& vl::Billboard::axis | ( | ) | const [inline] |
The rotation axis in world coordinates. Used only for axis aligned billboards.
Definition at line 60 of file Billboard.hpp.
Referenced by computeWorldMatrix().
| void vl::Billboard::setNormal | ( | const vec3 & | normal ) | [inline] |
Used only for axis aligned billboards.
Definition at line 62 of file Billboard.hpp.
References vl::Vector3< T_Scalar >::normalize().
Referenced by Billboard().
| const vec3& vl::Billboard::normal | ( | ) | const [inline] |
Used only for axis aligned billboards.
Definition at line 64 of file Billboard.hpp.
Referenced by computeWorldMatrix().
| void Billboard::computeWorldMatrix | ( | Camera * | = NULL ) |
[virtual] |
Computes the world matrix by concatenating the parent's world matrix with its own local matrix.
Reimplemented from vl::Transform.
Definition at line 56 of file Billboard.cpp.
References vl::Transform::assumeIdentityWorldMatrix(), axis(), vl::BT_AxisAlignedBillboard, vl::BT_SphericalBillboard, vl::cross(), vl::dot(), vl::Matrix4< float >::getRotation(), vl::Matrix4< T_Scalar >::getT(), vl::Matrix4< float >::getTranslation(), vl::Matrix4< T_Scalar >::getY(), vl::Matrix4< T_Scalar >::getZ(), vl::Camera::inverseViewMatrix(), mNormal, normal(), vl::Vector3< T_Scalar >::normalize(), vl::normalize(), vl::Transform::parent(), position(), vl::Transform::setWorldMatrix(), vl::Matrix4< T_Scalar >::setX(), vl::Matrix4< T_Scalar >::setY(), vl::Matrix4< T_Scalar >::setZ(), type(), and vl::Transform::worldMatrix().
| EBillboardType vl::Billboard::type | ( | ) | const [inline] |
The type of the billboard.
Definition at line 67 of file Billboard.hpp.
Referenced by computeWorldMatrix().
| void vl::Billboard::setType | ( | EBillboardType | type ) | [inline] |
The type of the billboard.
Definition at line 69 of file Billboard.hpp.
vec3 vl::Billboard::mAxis [protected] |
Definition at line 72 of file Billboard.hpp.
vec3 vl::Billboard::mNormal [protected] |
Definition at line 73 of file Billboard.hpp.
Referenced by computeWorldMatrix().
EBillboardType vl::Billboard::mType [protected] |
Definition at line 74 of file Billboard.hpp.
Referenced by Billboard().