|
| RefMatrixf () |
|
| RefMatrixf (const Matrixf &other) |
|
| RefMatrixf (const Matrixd &other) |
|
| RefMatrixf (const RefMatrixf &other) |
|
| RefMatrixf (Matrixf::value_type const *const def) |
|
| RefMatrixf (Matrixf::value_type a00, Matrixf::value_type a01, Matrixf::value_type a02, Matrixf::value_type a03, Matrixf::value_type a10, Matrixf::value_type a11, Matrixf::value_type a12, Matrixf::value_type a13, Matrixf::value_type a20, Matrixf::value_type a21, Matrixf::value_type a22, Matrixf::value_type a23, Matrixf::value_type a30, Matrixf::value_type a31, Matrixf::value_type a32, Matrixf::value_type a33) |
|
virtual Object * | cloneType () const |
| Clone the type of an object, with Object* return type. More...
|
|
virtual Object * | clone (const CopyOp &) const |
| Clone an object, with Object* return type. More...
|
|
virtual bool | isSameKindAs (const Object *obj) const |
|
virtual const char * | libraryName () const |
| return the name of the object's library. More...
|
|
virtual const char * | className () const |
| return the name of the object's class type. More...
|
|
| Object () |
| Construct an object. More...
|
|
| Object (bool threadSafeRefUnref) |
|
| Object (const Object &, const CopyOp ©op=CopyOp::SHALLOW_COPY) |
| Copy constructor, optional CopyOp object can be used to control shallow vs deep copying of dynamic data. More...
|
|
std::string | getCompoundClassName () const |
| return the compound class name that combines the library name and class name. More...
|
|
virtual Node * | asNode () |
| Convert 'this' into a Node pointer if Object is a Node, otherwise return 0. More...
|
|
virtual const Node * | asNode () const |
| convert 'const this' into a const Node pointer if Object is a Node, otherwise return 0. More...
|
|
virtual NodeVisitor * | asNodeVisitor () |
| Convert 'this' into a NodeVisitor pointer if Object is a NodeVisitor, otherwise return 0. More...
|
|
virtual const NodeVisitor * | asNodeVisitor () const |
| convert 'const this' into a const NodeVisitor pointer if Object is a NodeVisitor, otherwise return 0. More...
|
|
virtual StateAttribute * | asStateAttribute () |
| Convert 'this' into a StateAttribute pointer if Object is a StateAttribute, otherwise return 0. More...
|
|
virtual const StateAttribute * | asStateAttribute () const |
| convert 'const this' into a const StateAttribute pointer if Object is a StateAttribute, otherwise return 0. More...
|
|
virtual Uniform * | asUniform () |
| Convert 'this' into a Uniform pointer if Object is a Uniform, otherwise return 0. More...
|
|
virtual const Uniform * | asUniform () const |
| convert 'const this' into a const Uniform pointer if Object is a Uniform, otherwise return 0. More...
|
|
virtual void | setThreadSafeRefUnref (bool threadSafe) |
| Set whether to use a mutex to ensure ref() and unref() are thread safe. More...
|
|
virtual void | setName (const std::string &name) |
| Set the name of object using C++ style string. More...
|
|
void | setName (const char *name) |
| Set the name of object using a C style string. More...
|
|
const std::string & | getName () const |
| Get the name of object. More...
|
|
void | setDataVariance (DataVariance dv) |
| Set the data variance of this object. More...
|
|
DataVariance | getDataVariance () const |
| Get the data variance of this object. More...
|
|
virtual void | computeDataVariance () |
| Compute the DataVariance based on an assessment of callback etc. More...
|
|
void | setUserDataContainer (osg::UserDataContainer *udc) |
| set the UserDataContainer object. More...
|
|
template<class T > |
void | setUserDataContainer (const ref_ptr< T > &udc) |
|
osg::UserDataContainer * | getUserDataContainer () |
| get the UserDataContainer attached to this object. More...
|
|
const osg::UserDataContainer * | getUserDataContainer () const |
| get the const UserDataContainer attached to this object. More...
|
|
osg::UserDataContainer * | getOrCreateUserDataContainer () |
| Convenience method that returns the UserDataContainer, and if one doesn't already exist creates and assigns a DefaultUserDataContainer to the Object and then return this new UserDataContainer. More...
|
|
virtual void | setUserData (Referenced *obj) |
| Set user data, data must be subclassed from Referenced to allow automatic memory handling. More...
|
|
template<class T > |
void | setUserData (const ref_ptr< T > &ud) |
|
virtual Referenced * | getUserData () |
| Get user data. More...
|
|
virtual const Referenced * | getUserData () const |
| Get const user data. More...
|
|
template<typename T > |
bool | getUserValue (const std::string &name, T &value) const |
| Convenience method that casts the named UserObject to osg::TemplateValueObject<T> and gets the value. More...
|
|
template<typename T > |
void | setUserValue (const std::string &name, const T &value) |
| Convenience method that creates the osg::TemplateValueObject<T> to store the specified value and adds it as a named UserObject. More...
|
|
virtual void | resizeGLObjectBuffers (unsigned int) |
| Resize any per context GLObject buffers to specified size. More...
|
|
virtual void | releaseGLObjects (osg::State *=0) const |
| If State is non-zero, this function releases any associated OpenGL objects for the specified graphics context. More...
|
|
template<typename T > |
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject BoundingBoxdValueObject BoundingSpheredValueObject bool | getUserValue (const std::string &name, T &value) const |
| provide implementation of osg::Object::getUserValue(..) template More...
|
|
| Referenced () |
|
| Referenced (bool threadSafeRefUnref) |
|
| Referenced (const Referenced &) |
|
Referenced & | operator= (const Referenced &) |
|
bool | getThreadSafeRefUnref () const |
| Get whether a mutex is used to ensure ref() and unref() are thread safe. More...
|
|
OpenThreads::Mutex * | getRefMutex () const |
| Get the mutex used to ensure thread safety of ref()/unref(). More...
|
|
int | ref () const |
| Increment the reference count by one, indicating that this object has another pointer which is referencing it. More...
|
|
int | unref () const |
| Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More...
|
|
int | unref_nodelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is no longer referencing it. More...
|
|
int | referenceCount () const |
| Return the number of pointers currently referencing this object. More...
|
|
ObserverSet * | getObserverSet () const |
| Get the ObserverSet if one is attached, otherwise return NULL. More...
|
|
ObserverSet * | getOrCreateObserverSet () const |
| Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet. More...
|
|
void | addObserver (Observer *observer) const |
| Add a Observer that is observing this object, notify the Observer when this object gets deleted. More...
|
|
void | removeObserver (Observer *observer) const |
| Remove Observer that is observing this object. More...
|
|
| Matrixf () |
|
| Matrixf (const Matrixf &mat) |
|
| Matrixf (const Matrixd &mat) |
|
| Matrixf (float const *const ptr) |
|
| Matrixf (double const *const ptr) |
|
| Matrixf (const Quat &quat) |
|
| Matrixf (value_type a00, value_type a01, value_type a02, value_type a03, value_type a10, value_type a11, value_type a12, value_type a13, value_type a20, value_type a21, value_type a22, value_type a23, value_type a30, value_type a31, value_type a32, value_type a33) |
|
| ~Matrixf () |
|
int | compare (const Matrixf &m) const |
|
bool | operator< (const Matrixf &m) const |
|
bool | operator== (const Matrixf &m) const |
|
bool | operator!= (const Matrixf &m) const |
|
value_type & | operator() (int row, int col) |
|
value_type | operator() (int row, int col) const |
|
bool | valid () const |
|
bool | isNaN () const |
|
Matrixf & | operator= (const Matrixf &rhs) |
|
Matrixf & | operator= (const Matrixd &other) |
|
void | set (const Matrixf &rhs) |
|
void | set (const Matrixd &rhs) |
|
void | set (float const *const ptr) |
|
void | set (double const *const ptr) |
|
void | set (value_type a00, value_type a01, value_type a02, value_type a03, value_type a10, value_type a11, value_type a12, value_type a13, value_type a20, value_type a21, value_type a22, value_type a23, value_type a30, value_type a31, value_type a32, value_type a33) |
|
value_type * | ptr () |
|
const value_type * | ptr () const |
|
bool | isIdentity () const |
|
void | makeIdentity () |
|
void | makeScale (const Vec3f &) |
|
void | makeScale (const Vec3d &) |
|
void | makeScale (value_type, value_type, value_type) |
|
void | makeTranslate (const Vec3f &) |
|
void | makeTranslate (const Vec3d &) |
|
void | makeTranslate (value_type, value_type, value_type) |
|
void | makeRotate (const Vec3f &from, const Vec3f &to) |
|
void | makeRotate (const Vec3d &from, const Vec3d &to) |
|
void | makeRotate (value_type angle, const Vec3f &axis) |
|
void | makeRotate (value_type angle, const Vec3d &axis) |
|
void | makeRotate (value_type angle, value_type x, value_type y, value_type z) |
|
void | makeRotate (const Quat &) |
|
void | makeRotate (value_type angle1, const Vec3f &axis1, value_type angle2, const Vec3f &axis2, value_type angle3, const Vec3f &axis3) |
|
void | makeRotate (value_type angle1, const Vec3d &axis1, value_type angle2, const Vec3d &axis2, value_type angle3, const Vec3d &axis3) |
|
void | decompose (osg::Vec3f &translation, osg::Quat &rotation, osg::Vec3f &scale, osg::Quat &so) const |
| decompose the matrix into translation, rotation, scale and scale orientation. More...
|
|
void | decompose (osg::Vec3d &translation, osg::Quat &rotation, osg::Vec3d &scale, osg::Quat &so) const |
| decompose the matrix into translation, rotation, scale and scale orientation. More...
|
|
void | makeOrtho (double left, double right, double bottom, double top, double zNear, double zFar) |
| Set to an orthographic projection. More...
|
|
bool | getOrtho (double &left, double &right, double &bottom, double &top, double &zNear, double &zFar) const |
| Get the orthographic settings of the orthographic projection matrix. More...
|
|
bool | getOrtho (float &left, float &right, float &bottom, float &top, float &zNear, float &zFar) const |
| float version of getOrtho(..) More...
|
|
void | makeOrtho2D (double left, double right, double bottom, double top) |
| Set to a 2D orthographic projection. More...
|
|
void | makeFrustum (double left, double right, double bottom, double top, double zNear, double zFar) |
| Set to a perspective projection. More...
|
|
bool | getFrustum (double &left, double &right, double &bottom, double &top, double &zNear, double &zFar) const |
| Get the frustum settings of a perspective projection matrix. More...
|
|
bool | getFrustum (float &left, float &right, float &bottom, float &top, float &zNear, float &zFar) const |
| float version of getFrustum(..) More...
|
|
void | makePerspective (double fovy, double aspectRatio, double zNear, double zFar) |
| Set to a symmetrical perspective projection. More...
|
|
bool | getPerspective (double &fovy, double &aspectRatio, double &zNear, double &zFar) const |
| Get the frustum settings of a symmetric perspective projection matrix. More...
|
|
bool | getPerspective (float &fovy, float &aspectRatio, float &zNear, float &zFar) const |
| float version of getPerspective(..) More...
|
|
void | makeLookAt (const Vec3d &eye, const Vec3d ¢er, const Vec3d &up) |
| Set the position and orientation to be a view matrix, using the same convention as gluLookAt. More...
|
|
void | getLookAt (Vec3f &eye, Vec3f ¢er, Vec3f &up, value_type lookDistance=1.0f) const |
| Get to the position and orientation of a modelview matrix, using the same convention as gluLookAt. More...
|
|
void | getLookAt (Vec3d &eye, Vec3d ¢er, Vec3d &up, value_type lookDistance=1.0f) const |
| Get to the position and orientation of a modelview matrix, using the same convention as gluLookAt. More...
|
|
bool | invert (const Matrixf &rhs) |
| invert the matrix rhs, automatically select invert_4x3 or invert_4x4. More...
|
|
bool | invert_4x3 (const Matrixf &rhs) |
| 4x3 matrix invert, not right hand column is assumed to be 0,0,0,1. More...
|
|
bool | invert_4x4 (const Matrixf &rhs) |
| full 4x4 matrix invert. More...
|
|
void | orthoNormalize (const Matrixf &rhs) |
| ortho-normalize the 3x3 rotation & scale matrix More...
|
|
Vec3f | preMult (const Vec3f &v) const |
|
Vec3d | preMult (const Vec3d &v) const |
|
Vec3f | postMult (const Vec3f &v) const |
|
Vec3d | postMult (const Vec3d &v) const |
|
Vec3f | operator* (const Vec3f &v) const |
|
Vec3d | operator* (const Vec3d &v) const |
|
Vec4f | preMult (const Vec4f &v) const |
|
Vec4d | preMult (const Vec4d &v) const |
|
Vec4f | postMult (const Vec4f &v) const |
|
Vec4d | postMult (const Vec4d &v) const |
|
Vec4f | operator* (const Vec4f &v) const |
|
Vec4d | operator* (const Vec4d &v) const |
|
void | setRotate (const Quat &q) |
|
Quat | getRotate () const |
| Get the matrix rotation as a Quat. More...
|
|
void | setTrans (value_type tx, value_type ty, value_type tz) |
|
void | setTrans (const Vec3f &v) |
|
void | setTrans (const Vec3d &v) |
|
Vec3d | getTrans () const |
|
Vec3d | getScale () const |
|
void | mult (const Matrixf &, const Matrixf &) |
|
void | preMult (const Matrixf &) |
|
void | postMult (const Matrixf &) |
|
void | preMultTranslate (const Vec3d &v) |
| Optimized version of preMult(translate(v));. More...
|
|
void | preMultTranslate (const Vec3f &v) |
|
void | postMultTranslate (const Vec3d &v) |
| Optimized version of postMult(translate(v));. More...
|
|
void | postMultTranslate (const Vec3f &v) |
|
void | preMultScale (const Vec3d &v) |
| Optimized version of preMult(scale(v));. More...
|
|
void | preMultScale (const Vec3f &v) |
|
void | postMultScale (const Vec3d &v) |
| Optimized version of postMult(scale(v));. More...
|
|
void | postMultScale (const Vec3f &v) |
|
void | preMultRotate (const Quat &q) |
| Optimized version of preMult(rotate(q));. More...
|
|
void | postMultRotate (const Quat &q) |
| Optimized version of postMult(rotate(q));. More...
|
|
void | operator*= (const Matrixf &other) |
|
Matrixf | operator* (const Matrixf &m) const |
|
Matrixf | operator* (value_type rhs) const |
| Multiply by scalar. More...
|
|
Matrixf & | operator*= (value_type rhs) |
| Unary multiply by scalar. More...
|
|
Matrixf | operator/ (value_type rhs) const |
| Divide by scalar. More...
|
|
Matrixf & | operator/= (value_type rhs) |
| Unary divide by scalar. More...
|
|
Matrixf | operator+ (const Matrixf &rhs) const |
| Binary vector add. More...
|
|
Matrixf & | operator+= (const Matrixf &rhs) |
| Unary vector add. More...
|
|
|
enum | DataVariance { DYNAMIC,
STATIC,
UNSPECIFIED
} |
|
typedef float | value_type |
|
typedef double | other_value_type |
|
static OpenThreads::Mutex * | getGlobalReferencedMutex () |
| Get the optional global Referenced mutex, this can be shared between all osg::Referenced. More...
|
|
static void | setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting) |
| Set whether reference counting should use a mutex for thread safe reference counting. More...
|
|
static bool | getThreadSafeReferenceCounting () |
| Get whether reference counting is active. More...
|
|
static void | setDeleteHandler (DeleteHandler *handler) |
| Set a DeleteHandler to which deletion of all referenced counted objects will be delegated. More...
|
|
static DeleteHandler * | getDeleteHandler () |
| Get a DeleteHandler. More...
|
|
static Matrixf | identity (void) |
|
static Matrixf | scale (const Vec3f &sv) |
|
static Matrixf | scale (const Vec3d &sv) |
|
static Matrixf | scale (value_type sx, value_type sy, value_type sz) |
|
static Matrixf | translate (const Vec3f &dv) |
|
static Matrixf | translate (const Vec3d &dv) |
|
static Matrixf | translate (value_type x, value_type y, value_type z) |
|
static Matrixf | rotate (const Vec3f &from, const Vec3f &to) |
|
static Matrixf | rotate (const Vec3d &from, const Vec3d &to) |
|
static Matrixf | rotate (value_type angle, value_type x, value_type y, value_type z) |
|
static Matrixf | rotate (value_type angle, const Vec3f &axis) |
|
static Matrixf | rotate (value_type angle, const Vec3d &axis) |
|
static Matrixf | rotate (value_type angle1, const Vec3f &axis1, value_type angle2, const Vec3f &axis2, value_type angle3, const Vec3f &axis3) |
|
static Matrixf | rotate (value_type angle1, const Vec3d &axis1, value_type angle2, const Vec3d &axis2, value_type angle3, const Vec3d &axis3) |
|
static Matrixf | rotate (const Quat &quat) |
|
static Matrixf | inverse (const Matrixf &matrix) |
|
static Matrixf | orthoNormal (const Matrixf &matrix) |
|
static Matrixf | ortho (double left, double right, double bottom, double top, double zNear, double zFar) |
| Create an orthographic projection matrix. More...
|
|
static Matrixf | ortho2D (double left, double right, double bottom, double top) |
| Create a 2D orthographic projection. More...
|
|
static Matrixf | frustum (double left, double right, double bottom, double top, double zNear, double zFar) |
| Create a perspective projection. More...
|
|
static Matrixf | perspective (double fovy, double aspectRatio, double zNear, double zFar) |
| Create a symmetrical perspective projection. More...
|
|
static Matrixf | lookAt (const Vec3f &eye, const Vec3f ¢er, const Vec3f &up) |
| Create the position and orientation as per a camera, using the same convention as gluLookAt. More...
|
|
static Matrixf | lookAt (const Vec3d &eye, const Vec3d ¢er, const Vec3d &up) |
| Create the position and orientation as per a camera, using the same convention as gluLookAt. More...
|
|
static Vec3f | transform3x3 (const Vec3f &v, const Matrixf &m) |
| apply a 3x3 transform of v*M[0..2,0..2]. More...
|
|
static Vec3d | transform3x3 (const Vec3d &v, const Matrixf &m) |
| apply a 3x3 transform of v*M[0..2,0..2]. More...
|
|
static Vec3f | transform3x3 (const Matrixf &m, const Vec3f &v) |
| apply a 3x3 transform of M[0..2,0..2]*v. More...
|
|
static Vec3d | transform3x3 (const Matrixf &m, const Vec3d &v) |
| apply a 3x3 transform of M[0..2,0..2]*v. More...
|
|
std::string | _name |
|
DataVariance | _dataVariance |
|
osg::UserDataContainer * | _userDataContainer |
|
OpenThreads::AtomicPtr | _observerSet |
|
OpenThreads::Atomic | _refCount |
|
value_type | _mat [4][4] |
|