CTransform



Implementation of the ITransform. This implementation allow all transformation.

You can find more information in comments below. Overrided methods can be found in corresponding base class or interface.

class CTransform :public virtual ITransform, public CFeedbackEx
{
public:
    float getTx() const override;
    float getTy() const override;
    float getTz() const override;
    float getSx() const override;
    float getSy() const override;
    float getSz() const override;
    float getRx() const override;
    float getRy() const override;
    float getRz() const override;
    TRANSFORM_ORDER getTransformOrder() const override;
    ROTATE_ORDER getRotateOrder() const override;
    const Matrix &getMatrix() override;
    const Matrix &getMatrixInversed() override;
    const Matrix &getMatrixTranslate() override;
    const Matrix &getMatrixScale() override;
    const Matrix &getMatrixRotate() override;
    const TRANSFORM &getTransform() override;
    bool isTranslateIdentity() const override;
    bool isScaleIdentity() const override;
    bool isRotateIdentity() const override;
    bool isIdentity() const override;

    bool setTx(const float value) override;
    bool setTy(const float value) override;
    bool setTz(const float value) override;
    bool setSx(const float value) override;
    bool setSy(const float value) override;
    bool setSz(const float value) override;
    bool setRx(const float value) override;
    bool setRy(const float value) override;
    bool setRz(const float value) override;
    bool setTransformOrder(const TRANSFORM_ORDER value) override;
    bool setRotateOrder(const ROTATE_ORDER value) override;
    bool setTransform(const TRANSFORM &value) override;

    CTransform(IFeedback::Callback before, IFeedback::Callback after, void *param);
    ~CTransform() override;

    bool Translate(const float tx, const float ty, const float tz) override;
    bool Scale(const float sx, const float sy, const float sz) override;
    bool Rotate(const float rx, const float ry, const float rz) override;
    bool Transform(const float tx, const float ty, const float tz, const float sx, const float sy, const float sz, const float rx, const float ry, const float rz) override;

    ITransformService *QueryService() override;
    void Release() override;
};
Namespace: nitisa
Include: Nitisa/Core/Transform.h