struct CCL::Transform3D

Overview

3D Transformation Matrix More…

#include <transform3d.h>

struct Transform3D: public CCL::PlainTransform3D
{
    // methods

    Transform3D& operator = (Transform3DRef t);
    bool operator == (Transform3DRef other) const;
    bool operator != (Transform3DRef other) const;
    bool isIdentity () const;
    Transform3D& transpose ();
    Transform3D getInverseTransform () const;
    Transform3D& translate (float tx, float ty, float tz);
    Transform3D& translate (PointF3DRef p);
    Transform3D& scale (float sx, float sy, float sz);
    Transform3D& rotateX (float angle);
    Transform3D& rotateY (float angle);
    Transform3D& rotateZ (float angle);
    Transform3D operator * (Transform3DRef rhs) const;
    Transform3D& operator *= (Transform3DRef& t);
    Transform3D& rightMultiply (Transform3DRef t);
    Transform3D& leftMultiply (Transform3DRef t);
    void resetTranslation ();
    void resetRotation ();
    void resetScale ();
    PointF3D& transform (PointF3D& p) const;
    void getTranslation (PointF3D& translation) const;
    void getRotation (PointF3D& rotation) const;
    void getScale (PointF3D& scale) const;
};

Inherited Members

public:
    // fields

    float v11;
    float v12;
    float v13;
    float v14;
    float v21;
    float v22;
    float v23;
    float v24;
    float v31;
    float v32;
    float v33;
    float v34;
    float v41;
    float v42;
    float v43;
    float v44;
    float v [4][4];

Detailed Documentation

3D Transformation Matrix

Methods

Transform3D& operator = (Transform3DRef t)

Assign matrix.

bool operator == (Transform3DRef other) const

Comparison operator.

bool operator != (Transform3DRef other) const

Comparison operator.

bool isIdentity () const

Check if this is an identity matrix.

Transform3D& transpose ()

Transpose matrix.

Transform3D getInverseTransform () const

Get inverse matrix.

Transform3D& translate (float tx, float ty, float tz)

Add translation.

Transform3D& scale (float sx, float sy, float sz)

Add scaling (relative to origin).

Transform3D& rotateX (float angle)

Add rotation around a coordinate axis.

Transform3D operator * (Transform3DRef rhs) const

Multiply with other matrix.

void resetTranslation ()

Reset translation component.

void resetRotation ()

Reset rotation component.

void resetScale ()

Reset scale component.

PointF3D& transform (PointF3D& p) const

Transform point.

void getTranslation (PointF3D& translation) const

Get translation component.

void getRotation (PointF3D& rotation) const

Get rotation component.

void getScale (PointF3D& scale) const

Get scale component.