#include <OpenGLCanvas.h>
Inheritance diagram for IDVR.OpenGLCanvas:
namespace: IDVR
Baseclass: System::Windows::Forms::Form, IDVR.Interfaces.IOpenGLCanvas
This is the class, where the rendered image is drawn to. It also provides methos to draw a proxy object and to visualize the light direction.
Public Member Functions | |
OpenGLCanvas (int n_LoactionX, int n_LocationY, int n_Width, int n_Heigth, int n_CanvasWidth, int n_CanvasHeight, Color n_CanvasBackColor) | |
Constructor. | |
__property void | set_Size (int n_Width, int n_Height) |
Sets the size of the openGL canvas. | |
__property void | set_OpenGLCanvasSize (int n_Width, int n_Height) |
Sets the size of the openGL panel. | |
__property void | set_ImagePlaneModel (ImagePlane *n_ImagePlane) |
Sets the image plane. | |
__property void | set_DrawModel (DrawModelGLSW *n_DrawModelGLSW) |
Sets the draw model. | |
__property void | set_LightModel (Light *n_LightModel) |
Sets the light model. | |
__property void | set_ProxyObject (ProxyObjectGL *n_ProxyObject) |
Sets the proxy object. | |
__property void | set_SystemStatus (unsigned char n_Status) |
Sets the status. | |
__property void | set_CanvasBackColor (Color n_CanvasBackColor) |
Sets the background color of the openGL canvas. | |
__property ImagePlane * | get_ImagePlaneModel (void) |
Returns the image plane. | |
__property DrawModelGLSW * | get_DrawModel (void) |
Returns the draw model. | |
__property ProxyObjectGL * | get_ProxyObject (void) |
Returns the proxy object. | |
void | setLightDirectionPanel (StatusBarPanel *n_LightDirectionPanel) |
Sets the light direction panel. | |
void | setViewDirectionPanel (StatusBarPanel *n_ViewDirectionPanel) |
Sets the view direction panel. | |
void | setProxyObjectTransMatrix (Matrix4 *n_TransMatrix) |
Sets the transform matrix of the proxy object. | |
void | setLightViewMode (unsigned char n_LightViewMode) |
Sets the light view mode. | |
OpenGLPanel::OpenGLPanel * | getCanvas (void) |
Returns the openGL canvas. | |
void | createProxyObjectGL (int n_CanvasLength, float n_RelLength __gc[], Matrix4 *n_TransMatrix) |
Creates the proxy object. | |
void | createProxyObjectGL (int n_CanvasLength, float n_RelLength __gc[]) |
Creates the proxy object. | |
void | createDrawModelGLSW (int n_Width, int n_Height, short n_Resolution) |
Creates the draw object. | |
void | createLightObjectGL (int n_CanvasLength, Light *n_LightModel) |
Creates the light object. | |
void | createLightObjectGL (int n_CanvasLength, Light *n_LightModel, Matrix4 *n_TransMatrix) |
Creates the light object. | |
void | modifyProxyObjectTransMatrix (Matrix4 *n_TransMatrix) |
Modifies the transform matrix of the proxy object. | |
void | modifyLightObjectGLOffsetRotation (Matrix4 *n_OffsetRotation) |
Modifies the offset rotation matrix of the light object. | |
void | modifyLightObjectGLBaseRotation (Matrix4 *n_BaseRotation) |
Modifies the base rotation matrix of the light object. | |
virtual void | drawImage (unsigned char n_FrameBuffer __gc[]) |
Draws the framebuffer to the openGL canvas. | |
void | drawProxy (void) |
Draws the proxy object. | |
void | clearCanvas (void) |
Clears the openGL canvas. | |
void | drawLightArrow (void) |
Draws the light arrow. | |
void | resetViewPointPosition (void) |
Resets the view parameters to default values. | |
void | resetLightDirection (void) |
Resets the light direction to default values. | |
Private Member Functions | |
void | InitializeComponent (void) |
Initializes the GUI components. | |
System::Void | sizeChanged (System::Object *sender, System::EventArgs *e) |
Eventhandler for size changed events. | |
System::Void | sizeChanged_OpenGLCanvas (System::Object *sender, System::EventArgs *e) |
Eventhandler for size changed events. | |
System::Void | mouseDown_OpenGLCanvas (System::Object *sender, System::Windows::Forms::MouseEventArgs *e) |
Eventhandler for mouse down events. | |
System::Void | mouseUp_OpenGLCanvas (System::Object *sender, System::Windows::Forms::MouseEventArgs *e) |
Eventhandler for mouse up events. | |
System::Void | mouseMove_OpenGLCanvas (System::Object *sender, System::Windows::Forms::MouseEventArgs *e) |
Eventhandler for mouse move events. | |
System::Void | mouseWheel_OpenGLCanvas (System::Object *sender, System::Windows::Forms::MouseEventArgs *e) |
Eventhandler for mouse wheel events. | |
System::Void | m_OpenGLPanel_DoubleClick (System::Object *sender, System::EventArgs *e) |
Eventhandler for double click events. | |
Private Attributes | |
OpenGLPanel::OpenGLPanel * | m_OpenGLPanel |
The openGL panel. | |
ImagePlane * | m_ImagePlane |
The image plane. | |
Light * | m_MainLight |
The main light. | |
Light * | m_ProxyLight |
The light object for the proxy objet. | |
DrawModelGLSW * | m_DrawModel |
The draw model. | |
ProxyObjectGL * | m_ProxyObject |
The proxy object. | |
LightObjectGL * | m_LightObject |
The light object. | |
ClearCanvasGL * | m_ClearCanvasGL |
Object to clear the canvas. | |
Color | m_CanvasBackColor |
Background color of the canvas. | |
StatusBarPanel * | m_LightDirectionPanel |
Panel for the light direction. | |
StatusBarPanel * | m_ViewDirectionPanel |
Panel for the view direction. | |
bool | m_IsProxyObjectDrawn |
flag for the proxy object | |
bool | m_IsResultDrawn |
flag for the result | |
bool | m_IsLightObjectDrawn |
flag for the light object | |
bool | m_IsLeftMouseButton |
flag for the left mouse button | |
bool | m_IsRightMouseButton |
flag for the right mouse button | |
unsigned char | m_Status |
Status. | |
unsigned char | m_LightViewMode |
Light view mode. | |
ArcBall * | m_ArcBallProxy |
Arcball for the proxy object. | |
ArcBall * | m_ArcBallWorld |
Arcball for the world. | |
Matrix4 * | m_ThisRotProxy |
New rotation matrix of the proxy object. | |
Matrix4 * | m_LastRotProxy |
Last rotation matrix of the proxy object. | |
Matrix4 * | m_TransformMatrixProxy |
Transform matrix of the proxy object. | |
Matrix4 * | m_ThisRotWorld |
New rotation matrix of the world. | |
Matrix4 * | m_LastRotWorld |
Last rotation matrix of the world. | |
Matrix4 * | m_TransformMatrixWorld |
Transform matrix of the world. | |
Matrix4 * | m_CurrentTransformWorld |
The current transform matrix. | |
PointF | m_BeginPointLightRotation |
Point, that marks the begin of the light rotation. | |
PointF | m_EndPointLightRotation |
Point, that marks the end of the light rotation. | |
Static Private Attributes | |
static const char | NODATALOADED = 0 |
No data loaded. | |
static const char | READY = 1 |
Ready. | |
static const char | RENDERING = 2 |
Rendering. |
|
Constructor.
|
|
Clears the openGL canvas.
|
|
Creates the draw object.
|
|
Creates the light object.
|
|
Creates the light object.
|
|
Creates the proxy object.
|
|
Creates the proxy object.
|
|
Draws the framebuffer to the openGL canvas.
|
|
Draws the light arrow.
|
|
Draws the proxy object.
|
|
Returns the draw model.
|
|
Returns the image plane.
|
|
Returns the proxy object.
|
|
Returns the openGL canvas.
|
|
Eventhandler for double click events.
|
|
Modifies the base rotation matrix of the light object.
|
|
Modifies the offset rotation matrix of the light object.
|
|
Modifies the transform matrix of the proxy object.
|
|
Eventhandler for mouse down events.
|
|
Eventhandler for mouse move events.
|
|
Eventhandler for mouse up events.
|
|
Eventhandler for mouse wheel events.
|
|
Resets the light direction to default values.
|
|
Resets the view parameters to default values.
|
|
Sets the background color of the openGL canvas.
|
|
Sets the draw model.
|
|
Sets the image plane.
|
|
Sets the light model.
|
|
Sets the size of the openGL panel.
|
|
Sets the proxy object.
|
|
Sets the size of the openGL canvas.
|
|
Sets the status.
|
|
Sets the light direction panel.
|
|
Sets the light view mode.
|
|
Sets the transform matrix of the proxy object.
|
|
Sets the view direction panel.
|
|
Eventhandler for size changed events.
|
|
Eventhandler for size changed events.
|