I3DControl



This interface represents common layout of all geometry controls of the package.

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

class I3DControl :public virtual IControl
{
public:
    enum RENDER_MODE // How 3D geometry should be rendered 
    {
        rmFill, // Common way, triagnles are displayed in normal, filled, way 
        rmWireframe, // Render as wireframes, only edges or triangles are rendered 
        rmVertices // Render only vertices as points 
    };
public:
    virtual IModel *getModel() = 0; // Return associated model 
    virtual IMaterialControl *getMaterial() = 0; // Return associated material control 
    virtual RENDER_MODE getRenderMode() = 0; // Return rendering mode 
    virtual ROTATE_ORDER getRotateOrder() = 0; // Return rotation order 
    virtual TRANSFORM_ORDER getTransformOrder() = 0; // Return transformation order 
    virtual float getX() = 0; // Return X position 
    virtual float getY() = 0; // Return Y position 
    virtual float getZ() = 0; // Return Z position 
    virtual float getSx() = 0; // Return scaling in local X direction 
    virtual float getSy() = 0; // Return scaling in local Y direction 
    virtual float getSz() = 0; // Return scaling in local Z direction 
    virtual float getPitch() = 0; // Return rotation around local X axis 
    virtual float getYaw() = 0; // Return rotation around local Y axis 
    virtual float getRoll() = 0; // Return rotation around local Z axis 

    virtual bool setMaterial(IMaterialControl *value) = 0; // Assign material control 
    virtual bool setRenderMode(const RENDER_MODE value) = 0; // Set rendering mode 
    virtual bool setRotateOrder(const ROTATE_ORDER value) = 0; // Set rotate order 
    virtual bool setTransformOrder(const TRANSFORM_ORDER value) = 0; // Set transform order 
    virtual bool setX(const float value) = 0; // Set X position 
    virtual bool setY(const float value) = 0; // Set Y position 
    virtual bool setZ(const float value) = 0; // Set Z position 
    virtual bool setSx(const float value) = 0; // Set scaling in local X direction 
    virtual bool setSy(const float value) = 0; // Set scaling in local Y direction 
    virtual bool setSz(const float value) = 0; // Set scaling in local Z direction 
    virtual bool setPitch(const float value) = 0; // Set rotation angle around local X axis 
    virtual bool setYaw(const float value) = 0; // Set rotation angle around local Y axis 
    virtual bool setRoll(const float value) = 0; // Set rotation angle around local Z axis 
};
Namespace: nitisa::opengl
Include: OpenGL/Interfaces/I3DControl.h