Open CASCADE Technology: OpenGl_Workspace Class Reference

Open CASCADE Technology 6.9.1

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

Public Member Functions | Data Fields | Protected Member Functions
OpenGl_Workspace Class Reference

Represents window with GL context. Provides methods to render primitives and maintain GL state. More...

`#include <OpenGl_Workspace.hxx>`

Inheritance diagram for OpenGl_Workspace:
[legend]

## Public Member Functions
| OpenGl_Workspace (const Handle< OpenGl_GraphicDriver > &theDriver, const CALL_DEF_WINDOW &theCWindow, Aspect_RenderingContext theGContext, const Handle< OpenGl_Caps > &theCaps, const Handle< OpenGl_Context > &theShareCtx)
| Main constructor - prepare GL context for specified window. More...
virtual | ~OpenGl_Workspace ()
| Destructor. More...
void | SetActiveView (const Handle< OpenGl_View > &theView, const Standard_Integer theViewId)
const Handle< OpenGl_View > & | ActiveView () const
Standard_Integer | ActiveViewId () const
void | Redraw (const Graphic3d_CView &theCView, const Aspect_CLayer2d &theCUnderLayer, const Aspect_CLayer2d &theCOverLayer)
| Redraw the window. More...
Standard_Boolean | SetImmediateModeDrawToFront (const Standard_Boolean theDrawToFrontBuffer)
void | RedrawImmediate (const Graphic3d_CView &theCView, const Aspect_CLayer2d &theCUnderLayer, const Aspect_CLayer2d &theCOverLayer)
void | Invalidate (const Graphic3d_CView &)
Standard_Boolean | Print (const Handle< OpenGl_PrinterContext > &thePrintContext, const Graphic3d_CView &theCView, const Aspect_CLayer2d &theCUnderLayer, const Aspect_CLayer2d &theCOverLayer, const Aspect_Handle theHPrintDC, const Standard_Boolean theToShowBackground, const Standard_CString theFileName, const Aspect_PrintAlgo thePrintAlgorithm, const Standard_Real theScaleFactor)
| Special method to perform printing. System-specific and currently only Win platform implemented. More...
const Handle< OpenGl_PrinterContext > & | PrinterContext () const
void | DisplayCallback (const Graphic3d_CView &theCView, int theReason)
Graphic3d_PtrFrameBuffer | FBOCreate (const Standard_Integer theWidth, const Standard_Integer theHeight)
void | FBORelease (Graphic3d_PtrFrameBuffer theFBOPtr)
Standard_Boolean | BufferDump (OpenGl_FrameBuffer *theFBOPtr, Image_PixMap &theImage, const Graphic3d_BufferType &theBufferType)
Standard_Boolean & | UseZBuffer ()
Standard_Boolean & | UseDepthTest ()
Standard_Boolean & | UseGLLight ()
Standard_Integer | AntiAliasingMode () const
const OpenGl_AspectLine * | SetAspectLine (const OpenGl_AspectLine *theAspect)
const OpenGl_AspectFace * | SetAspectFace (const OpenGl_AspectFace *theAspect)
const OpenGl_AspectMarker * | SetAspectMarker (const OpenGl_AspectMarker *theAspect)
const OpenGl_AspectText * | SetAspectText (const OpenGl_AspectText *theAspect)
void | SetTextParam (const OpenGl_TextParam *theParam)
const OpenGl_AspectLine * | AspectLine (const Standard_Boolean theWithApply)
const OpenGl_AspectFace * | AspectFace (const Standard_Boolean theWithApply)
const OpenGl_AspectMarker * | AspectMarker (const Standard_Boolean theWithApply)
const OpenGl_AspectText * | AspectText (const Standard_Boolean theWithApply)
const OpenGl_TextParam * | AspectTextParams () const
void | ResetAppliedAspect ()
| Clear the applied aspect state. More...
Handle< OpenGl_Texture > | DisableTexture ()
Handle< OpenGl_Texture > | EnableTexture (const Handle< OpenGl_Texture > &theTexture, const Handle< Graphic3d_TextureParams > &theParams=NULL)
const Handle< OpenGl_Texture > & | ActiveTexture () const
void | SetRenderFilter (const Handle< OpenGl_RenderFilter > &theFilter)
| Set filter for restricting rendering of particular elements. Filter can be applied for rendering passes used by recursive rendering algorithms for rendering elements of groups. More...
const Handle< OpenGl_RenderFilter > & | GetRenderFilter () const
| Get rendering filter. More...
const OpenGl_Matrix * | ViewMatrix () const
const OpenGl_Matrix * | ModelMatrix () const
void | SetPolygonOffset (int theMode, Standard_ShortReal theFactor, Standard_ShortReal theUnits)
| Sets and applies current polygon offset. More...
const TEL_POFFSET_PARAM & | AppliedPolygonOffset ()
| Returns currently applied polygon offset params. More...
Standard_Boolean | IsCullingEnabled () const
const Handle< OpenGl_CappingAlgoFilter > & | DefaultCappingAlgoFilter () const
| Returns capping algorithm rendering filter. More...
const OpenGl_AspectFace & | NoneCulling () const
| Returns face aspect for none culling mode. More...
const OpenGl_AspectFace & | FrontCulling () const
| Returns face aspect for front face culling mode. More...
Public Member Functions inherited from OpenGl_Window
| OpenGl_Window (const Handle< OpenGl_GraphicDriver > &theDriver, const CALL_DEF_WINDOW &theCWindow, Aspect_RenderingContext theGContext, const Handle< OpenGl_Caps > &theCaps, const Handle< OpenGl_Context > &theShareCtx)
| Main constructor - prepare GL context for specified window. More...
virtual | ~OpenGl_Window ()
| Destructor. More...
void | Resize (const CALL_DEF_WINDOW &theCWindow)
| Resizes the window. More...
void | ReadDepths (const Standard_Integer theX, const Standard_Integer theY, const Standard_Integer theWidth, const Standard_Integer theHeight, float *theDepths)
| Reads depth component for current scene into specified buffer. More...
void | SetBackgroundColor (const Standard_ShortReal theR, const Standard_ShortReal theG, const Standard_ShortReal theB)
Standard_Integer | Width () const
Standard_Integer | Height () const
const TEL_COLOUR & | BackgroundColor () const
const Handle< OpenGl_Context > & | GetGlContext () const
Public Member Functions inherited from MMgt_TShared
virtual void | Delete () const
| Memory deallocator for transient classes. More...
Public Member Functions inherited from Standard_Transient
| Standard_Transient ()
| Empty constructor. More...
| Standard_Transient (const Standard_Transient &)
| Copy constructor – does nothing. More...
Standard_Transient & | operator= (const Standard_Transient &)
| Assignment operator, needed to avoid copying reference counter. More...
virtual | ~Standard_Transient ()
| Destructor must be virtual. More...
virtual const Handle_Standard_Type & | DynamicType () const
| Returns a type information object about this object. More...
Standard_Boolean | IsInstance (const Handle_Standard_Type &theType) const
| Returns a true value if this is an instance of Type. More...
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const
| Returns a true value if this is an instance of TypeName. More...
Standard_Boolean | IsKind (const Handle_Standard_Type &theType) const
| Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
Standard_Boolean | IsKind (const Standard_CString theTypeName) const
| Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
virtual Handle_Standard_Transient | This () const
| Returns a Handle which references this object. Must never be called to objects created in stack. More...
Standard_Integer | GetRefCount () const
| Get the reference counter of this object. More...

## Data Fields
Standard_Integer | NamedStatus
const TEL_COLOUR * | HighlightColor

## Protected Member Functions
void | copyBackToFront ()
| Copy content of Back buffer to the Front buffer. More...
bool | blitBuffers (OpenGl_FrameBuffer *theReadFbo, OpenGl_FrameBuffer *theDrawFbo)
| Blit image from/to specified buffers. More...
virtual Standard_Boolean | Activate ()
| Makes GL context for this window active in current thread. More...
void | redraw1 (const Graphic3d_CView &theCView, const Aspect_CLayer2d &theCUnderLayer, const Aspect_CLayer2d &theCOverLayer, OpenGl_FrameBuffer *theReadDrawFbo, const Graphic3d_Camera::Projection theProjection)
void | bindDefaultFbo (OpenGl_FrameBuffer *theCustomFbo=NULL)
| Setup default FBO. More...
void | drawStereoPair (const Graphic3d_CView &theCView)
| Blend together views pair into stereo image. More...
bool | redrawImmediate (const Graphic3d_CView &theCView, const Aspect_CLayer2d &theCUnderLayer, const Aspect_CLayer2d &theCOverLayer, OpenGl_FrameBuffer *theReadFbo, const Graphic3d_Camera::Projection theProjection, OpenGl_FrameBuffer *theDrawFbo, const Standard_Boolean theIsPartialUpdate=Standard_False)
| Blit snapshot containing main scene (myMainSceneFbos or BackBuffer) into presentation buffer (myMainSceneFbos -> offscreen FBO or myMainSceneFbos -> BackBuffer or BackBuffer -> FrontBuffer), and redraw immediate structures on top. More...
void | updateMaterial (const int theFlag)
void | setTextureParams (Handle< OpenGl_Texture > &theTexture, const Handle< Graphic3d_TextureParams > &theParams)
Protected Member Functions inherited from OpenGl_Window
void | Init ()
| Activates GL context and setup viewport. More...
void | EnableFeatures () const
void | DisableFeatures () const

## Protected Attributes
protected fields
Handle< OpenGl_FrameBuffer > | myMainSceneFbos [2]
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
Handle< OpenGl_FrameBuffer > | myImmediateSceneFbos [2]
| Additional buffers for immediate layer in stereo mode. More...
Standard_Boolean | myHasFboBlit
| Special flag which is invalidated when myMainSceneFbos can not be blitted for some reason (e.g. driver bugs). More...
OpenGl_VertexBuffer | myFullScreenQuad
| Vertices for full-screen quad rendering. More...
Handle< OpenGl_PrinterContext > | myPrintContext
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
Handle< OpenGl_View > | myView
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
Handle< OpenGl_LineAttributes > | myLineAttribs
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
Standard_Integer | myViewId
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
Standard_Integer | myAntiAliasingMode
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
Standard_Boolean | myTransientDrawToFront
| optimization flag for immediate mode (to render directly to the front buffer) More...
Standard_Boolean | myBackBufferRestored
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
Standard_Boolean | myIsImmediateDrawn
| flag indicates that immediate mode buffer contains some data More...
Standard_Boolean | myUseZBuffer
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
Standard_Boolean | myUseDepthTest
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
Standard_Boolean | myUseGLLight
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
Standard_Boolean | myIsCullingEnabled
| frustum culling flag More...
unsigned int | myFrameCounter
| redraw counter, for debugging More...
Handle< OpenGl_CappingAlgoFilter > | myDefaultCappingAlgoFilter
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
OpenGl_AspectFace | myNoneCulling
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
OpenGl_AspectFace | myFrontCulling
| Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers). More...
fields related to status
Handle< OpenGl_RenderFilter > | myRenderFilter
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
Handle< OpenGl_Texture > | myTextureBound
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_AspectLine * | AspectLine_set
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_AspectLine * | AspectLine_applied
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_AspectFace * | AspectFace_set
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_AspectFace * | AspectFace_applied
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_AspectMarker * | AspectMarker_set
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_AspectMarker * | AspectMarker_applied
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_AspectText * | AspectText_set
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_AspectText * | AspectText_applied
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_TextParam * | TextParam_set
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_TextParam * | TextParam_applied
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_Matrix * | ViewMatrix_applied
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
const OpenGl_Matrix * | StructureMatrix_applied
| currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture) More...
OpenGl_Material | myMatFront
| current front material state (cached to reduce GL context updates) More...
OpenGl_Material | myMatBack
| current back material state More...
OpenGl_Material | myMatTmp
| temporary variable More...
TelCullMode | myCullingMode
| back face culling mode, applied from face aspect More...
OpenGl_Matrix | myModelViewMatrix
| Model matrix with applied structure transformations. More...
TEL_POFFSET_PARAM | PolygonOffset_applied
| Currently applied polygon offset. More...
OpenGl_AspectFace | myAspectFaceHl
| Hiddenline aspect. More...
Protected Attributes inherited from OpenGl_Window
Handle< OpenGl_Context > | myGlContext
Standard_Boolean | myOwnGContext
| set to TRUE if GL context was not created by this class More...
Standard_Integer | myWidth
| window width in pixels More...
Standard_Integer | myHeight
| window height in pixels More...
TEL_COLOUR | myBgColor
| background color More...
Standard_Integer | mySwapInterval
| last assigned swap interval (VSync) for this window More...

## Detailed Description

Represents window with GL context. Provides methods to render primitives and maintain GL state.

## Constructor & Destructor Documentation

OpenGl_Workspace::OpenGl_Workspace | ( | const Handle< OpenGl_GraphicDriver > & | theDriver,
|  | const CALL_DEF_WINDOW & | theCWindow,
|  | Aspect_RenderingContext | theGContext,
|  | const Handle< OpenGl_Caps > & | theCaps,
|  | const Handle< OpenGl_Context > & | theShareCtx
| ) |  |

Main constructor - prepare GL context for specified window.

virtual OpenGl_Workspace::~OpenGl_Workspace | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

virtual Standard_Boolean OpenGl_Workspace::Activate | ( |  | ) |
| protectedvirtual

Makes GL context for this window active in current thread.

Reimplemented from OpenGl_Window.

const Handle< OpenGl_Texture >& OpenGl_Workspace::ActiveTexture | ( |  | ) | const
| inline

const Handle< OpenGl_View >& OpenGl_Workspace::ActiveView | ( |  | ) | const
| inline

Standard_Integer OpenGl_Workspace::ActiveViewId | ( |  | ) | const
| inline

Standard_Integer OpenGl_Workspace::AntiAliasingMode | ( |  | ) | const
| inline

const TEL_POFFSET_PARAM& OpenGl_Workspace::AppliedPolygonOffset | ( |  | ) |
| inline

Returns currently applied polygon offset params.

const OpenGl_AspectFace* OpenGl_Workspace::AspectFace | ( | const Standard_Boolean | theWithApply | ) |

const OpenGl_AspectLine* OpenGl_Workspace::AspectLine | ( | const Standard_Boolean | theWithApply | ) |

const OpenGl_AspectMarker* OpenGl_Workspace::AspectMarker | ( | const Standard_Boolean | theWithApply | ) |

const OpenGl_AspectText* OpenGl_Workspace::AspectText | ( | const Standard_Boolean | theWithApply | ) |

const OpenGl_TextParam* OpenGl_Workspace::AspectTextParams | ( |  | ) | const
| inline

void OpenGl_Workspace::bindDefaultFbo | ( | OpenGl_FrameBuffer * | theCustomFbo = `NULL` | ) |
| protected

Setup default FBO.

bool OpenGl_Workspace::blitBuffers | ( | OpenGl_FrameBuffer * | theReadFbo,
|  | OpenGl_FrameBuffer * | theDrawFbo
| ) |  |
| protected

Blit image from/to specified buffers.

Standard_Boolean OpenGl_Workspace::BufferDump | ( | OpenGl_FrameBuffer * | theFBOPtr,
|  | Image_PixMap & | theImage,
|  | const Graphic3d_BufferType & | theBufferType
| ) |  |

void OpenGl_Workspace::copyBackToFront | ( |  | ) |
| protected

Copy content of Back buffer to the Front buffer.

const Handle< OpenGl_CappingAlgoFilter >& OpenGl_Workspace::DefaultCappingAlgoFilter | ( |  | ) | const
| inline

Returns capping algorithm rendering filter.

Handle< OpenGl_Texture > OpenGl_Workspace::DisableTexture | ( |  | ) |

void OpenGl_Workspace::DisplayCallback | ( | const Graphic3d_CView & | theCView,
|  | int | theReason
| ) |  |

void OpenGl_Workspace::drawStereoPair | ( | const Graphic3d_CView & | theCView | ) |
| protected

Blend together views pair into stereo image.

Handle< OpenGl_Texture > OpenGl_Workspace::EnableTexture | ( | const Handle< OpenGl_Texture > & | theTexture,
|  | const Handle< Graphic3d_TextureParams > & | theParams = `NULL`
| ) |  |

Graphic3d_PtrFrameBuffer OpenGl_Workspace::FBOCreate | ( | const Standard_Integer | theWidth,
|  | const Standard_Integer | theHeight
| ) |  |

void OpenGl_Workspace::FBORelease | ( | Graphic3d_PtrFrameBuffer | theFBOPtr | ) |

const OpenGl_AspectFace& OpenGl_Workspace::FrontCulling | ( |  | ) | const
| inline

Returns face aspect for front face culling mode.

const Handle< OpenGl_RenderFilter >& OpenGl_Workspace::GetRenderFilter | ( |  | ) | const
| inline

Get rendering filter.

Returns
  filter instance.

void OpenGl_Workspace::Invalidate | ( | const Graphic3d_CView & |  | ) |
| inline

Standard_Boolean OpenGl_Workspace::IsCullingEnabled | ( |  | ) | const
| inline

Returns
  true if clipping algorithm enabled

const OpenGl_Matrix* OpenGl_Workspace::ModelMatrix | ( |  | ) | const
| inline

Returns
  applied model structure matrix.

const OpenGl_AspectFace& OpenGl_Workspace::NoneCulling | ( |  | ) | const
| inline

Returns face aspect for none culling mode.

Standard_Boolean OpenGl_Workspace::Print | ( | const Handle< OpenGl_PrinterContext > & | thePrintContext,
|  | const Graphic3d_CView & | theCView,
|  | const Aspect_CLayer2d & | theCUnderLayer,
|  | const Aspect_CLayer2d & | theCOverLayer,
|  | const Aspect_Handle | theHPrintDC,
|  | const Standard_Boolean | theToShowBackground,
|  | const Standard_CString | theFileName,
|  | const Aspect_PrintAlgo | thePrintAlgorithm,
|  | const Standard_Real | theScaleFactor
| ) |  |

Special method to perform printing. System-specific and currently only Win platform implemented.

const Handle< OpenGl_PrinterContext >& OpenGl_Workspace::PrinterContext | ( |  | ) | const
| inline

void OpenGl_Workspace::Redraw | ( | const Graphic3d_CView & | theCView,
|  | const Aspect_CLayer2d & | theCUnderLayer,
|  | const Aspect_CLayer2d & | theCOverLayer
| ) |  |

Redraw the window.

void OpenGl_Workspace::redraw1 | ( | const Graphic3d_CView & | theCView,
|  | const Aspect_CLayer2d & | theCUnderLayer,
|  | const Aspect_CLayer2d & | theCOverLayer,
|  | OpenGl_FrameBuffer * | theReadDrawFbo,
|  | const Graphic3d_Camera::Projection | theProjection
| ) |  |
| protected

void OpenGl_Workspace::RedrawImmediate | ( | const Graphic3d_CView & | theCView,
|  | const Aspect_CLayer2d & | theCUnderLayer,
|  | const Aspect_CLayer2d & | theCOverLayer
| ) |  |

bool OpenGl_Workspace::redrawImmediate | ( | const Graphic3d_CView & | theCView,
|  | const Aspect_CLayer2d & | theCUnderLayer,
|  | const Aspect_CLayer2d & | theCOverLayer,
|  | OpenGl_FrameBuffer * | theReadFbo,
|  | const Graphic3d_Camera::Projection | theProjection,
|  | OpenGl_FrameBuffer * | theDrawFbo,
|  | const Standard_Boolean | theIsPartialUpdate = `Standard_False`
| ) |  |
| protected

Blit snapshot containing main scene (myMainSceneFbos or BackBuffer) into presentation buffer (myMainSceneFbos -> offscreen FBO or myMainSceneFbos -> BackBuffer or BackBuffer -> FrontBuffer), and redraw immediate structures on top.

When scene caching is disabled (myTransientDrawToFront, no double buffer in window, etc.), the first step (blitting) will be skipped.

Returns
  false if immediate structures has been rendered directly into FrontBuffer and Buffer Swap should not be called.

void OpenGl_Workspace::ResetAppliedAspect | ( |  | ) |

Clear the applied aspect state.

void OpenGl_Workspace::SetActiveView | ( | const Handle< OpenGl_View > & | theView,
|  | const Standard_Integer | theViewId
| ) |  |
| inline

const OpenGl_AspectFace* OpenGl_Workspace::SetAspectFace | ( | const OpenGl_AspectFace * | theAspect | ) |

const OpenGl_AspectLine* OpenGl_Workspace::SetAspectLine | ( | const OpenGl_AspectLine * | theAspect | ) |

const OpenGl_AspectMarker* OpenGl_Workspace::SetAspectMarker | ( | const OpenGl_AspectMarker * | theAspect | ) |

const OpenGl_AspectText* OpenGl_Workspace::SetAspectText | ( | const OpenGl_AspectText * | theAspect | ) |

Standard_Boolean OpenGl_Workspace::SetImmediateModeDrawToFront | ( | const Standard_Boolean | theDrawToFrontBuffer | ) |

void OpenGl_Workspace::SetPolygonOffset | ( | int | theMode,
|  | Standard_ShortReal | theFactor,
|  | Standard_ShortReal | theUnits
| ) |  |

Sets and applies current polygon offset.

void OpenGl_Workspace::SetRenderFilter | ( | const Handle< OpenGl_RenderFilter > & | theFilter | ) |
| inline

Set filter for restricting rendering of particular elements. Filter can be applied for rendering passes used by recursive rendering algorithms for rendering elements of groups.

Parameters

  theFilter | [in] the filter instance.

void OpenGl_Workspace::SetTextParam | ( | const OpenGl_TextParam * | theParam | ) |
| inline

void OpenGl_Workspace::setTextureParams | ( | Handle< OpenGl_Texture > & | theTexture,
|  | const Handle< Graphic3d_TextureParams > & | theParams
| ) |  |
| protected

void OpenGl_Workspace::updateMaterial | ( | const int | theFlag | ) |
| protected

Standard_Boolean& OpenGl_Workspace::UseDepthTest | ( |  | ) |
| inline

Standard_Boolean& OpenGl_Workspace::UseGLLight | ( |  | ) |
| inline

Standard_Boolean& OpenGl_Workspace::UseZBuffer | ( |  | ) |
| inline

const OpenGl_Matrix* OpenGl_Workspace::ViewMatrix | ( |  | ) | const
| inline

Returns
  applied view matrix.

## Field Documentation

const OpenGl_AspectFace * OpenGl_Workspace::AspectFace_applied
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

const OpenGl_AspectFace* OpenGl_Workspace::AspectFace_set
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

const OpenGl_AspectLine * OpenGl_Workspace::AspectLine_applied
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

const OpenGl_AspectLine* OpenGl_Workspace::AspectLine_set
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

const OpenGl_AspectMarker * OpenGl_Workspace::AspectMarker_applied
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

const OpenGl_AspectMarker* OpenGl_Workspace::AspectMarker_set
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

const OpenGl_AspectText * OpenGl_Workspace::AspectText_applied
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

const OpenGl_AspectText* OpenGl_Workspace::AspectText_set
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

const TEL_COLOUR* OpenGl_Workspace::HighlightColor

Standard_Integer OpenGl_Workspace::myAntiAliasingMode
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

OpenGl_AspectFace OpenGl_Workspace::myAspectFaceHl
| protected

Hiddenline aspect.

Standard_Boolean OpenGl_Workspace::myBackBufferRestored
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

TelCullMode OpenGl_Workspace::myCullingMode
| protected

back face culling mode, applied from face aspect

Handle< OpenGl_CappingAlgoFilter > OpenGl_Workspace::myDefaultCappingAlgoFilter
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

unsigned int OpenGl_Workspace::myFrameCounter
| protected

redraw counter, for debugging

OpenGl_AspectFace OpenGl_Workspace::myFrontCulling
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

OpenGl_VertexBuffer OpenGl_Workspace::myFullScreenQuad
| protected

Vertices for full-screen quad rendering.

Standard_Boolean OpenGl_Workspace::myHasFboBlit
| protected

Special flag which is invalidated when myMainSceneFbos can not be blitted for some reason (e.g. driver bugs).

Handle< OpenGl_FrameBuffer > OpenGl_Workspace::myImmediateSceneFbos[2]
| protected

Additional buffers for immediate layer in stereo mode.

Standard_Boolean OpenGl_Workspace::myIsCullingEnabled
| protected

frustum culling flag

Standard_Boolean OpenGl_Workspace::myIsImmediateDrawn
| protected

flag indicates that immediate mode buffer contains some data

Handle< OpenGl_LineAttributes > OpenGl_Workspace::myLineAttribs
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

Handle< OpenGl_FrameBuffer > OpenGl_Workspace::myMainSceneFbos[2]
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

OpenGl_Material OpenGl_Workspace::myMatBack
| protected

current back material state

OpenGl_Material OpenGl_Workspace::myMatFront
| protected

current front material state (cached to reduce GL context updates)

OpenGl_Material OpenGl_Workspace::myMatTmp
| protected

temporary variable

OpenGl_Matrix OpenGl_Workspace::myModelViewMatrix
| protected

Model matrix with applied structure transformations.

OpenGl_AspectFace OpenGl_Workspace::myNoneCulling
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

Handle< OpenGl_PrinterContext > OpenGl_Workspace::myPrintContext
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

Handle< OpenGl_RenderFilter > OpenGl_Workspace::myRenderFilter
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

Handle< OpenGl_Texture > OpenGl_Workspace::myTextureBound
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

Standard_Boolean OpenGl_Workspace::myTransientDrawToFront
| protected

optimization flag for immediate mode (to render directly to the front buffer)

Standard_Boolean OpenGl_Workspace::myUseDepthTest
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

Standard_Boolean OpenGl_Workspace::myUseGLLight
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

Standard_Boolean OpenGl_Workspace::myUseZBuffer
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

Handle< OpenGl_View > OpenGl_Workspace::myView
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

Standard_Integer OpenGl_Workspace::myViewId
| protected

Two framebuffers (left and right views) store cached main presentation of the view (without presentation of immediate layers).

Standard_Integer OpenGl_Workspace::NamedStatus

TEL_POFFSET_PARAM OpenGl_Workspace::PolygonOffset_applied
| protected

Currently applied polygon offset.

const OpenGl_Matrix* OpenGl_Workspace::StructureMatrix_applied
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

const OpenGl_TextParam * OpenGl_Workspace::TextParam_applied
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

const OpenGl_TextParam* OpenGl_Workspace::TextParam_set
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

const OpenGl_Matrix* OpenGl_Workspace::ViewMatrix_applied
| protected

currently bound texture (managed by OpenGl_AspectFace and OpenGl_View environment texture)

The documentation for this class was generated from the following file:

- OpenGl_Workspace.hxx