Open CASCADE Technology 7.8.0
Public Member Functions | Protected Attributes
OpenGl_Flipper Class Reference

Being rendered, the elements modifies current model-view matrix such that the axes of the specified reference system (in model space) become oriented in the following way: More...

#include <OpenGl_Flipper.hxx>

Inheritance diagram for OpenGl_Flipper:
Inheritance graph
[legend]

Public Member Functions

 OpenGl_Flipper (const gp_Ax2 &theReferenceSystem)
 Construct rendering element to flip model-view matrix along the reference system to ensure up-Y, right-X orientation.
 
void SetOptions (const Standard_Boolean theIsEnabled)
 Set options for the element.
 
virtual void Render (const Handle< OpenGl_Workspace > &theWorkspace) const override
 
virtual void Release (OpenGl_Context *theCtx) override
 Release GPU resources. Pointer to the context is used because this method might be called when the context is already being destroyed and usage of a handle would be unsafe.
 
virtual void DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const override
 Dumps the content of me into the stream.
 
- Public Member Functions inherited from OpenGl_Element
 OpenGl_Element ()
 
virtual Standard_Boolean IsFillDrawMode () const
 Return TRUE if primitive type generates shaded triangulation (to be used in filters).
 
virtual Standard_Size EstimatedDataSize () const
 Returns estimated GPU memory usage for holding data without considering overheads and allocation alignment rules.
 
virtual void UpdateMemStats (Graphic3d_FrameStatsDataTmp &theStats) const
 Increment memory usage statistics. Default implementation puts EstimatedDataSize() into Graphic3d_FrameStatsCounter_EstimatedBytesGeom.
 
virtual void UpdateDrawStats (Graphic3d_FrameStatsDataTmp &theStats, bool theIsDetailed) const
 Increment draw calls statistics.
 
virtual void SynchronizeAspects ()
 Update parameters of the drawable elements.
 

Protected Attributes

OpenGl_Vec4 myReferenceOrigin
 
OpenGl_Vec4 myReferenceX
 
OpenGl_Vec4 myReferenceY
 
OpenGl_Vec4 myReferenceZ
 
Standard_Boolean myIsEnabled
 

Additional Inherited Members

- Static Public Member Functions inherited from OpenGl_Element
template<typename theResource_t >
static void Destroy (OpenGl_Context *theContext, theResource_t *&theElement)
 Pointer to the context is used because this method might be called when the context is already being destroyed and usage of a handle would be unsafe.
 
- Protected Member Functions inherited from OpenGl_Element
virtual ~OpenGl_Element ()
 

Detailed Description

Being rendered, the elements modifies current model-view matrix such that the axes of the specified reference system (in model space) become oriented in the following way:

Constructor & Destructor Documentation

◆ OpenGl_Flipper()

OpenGl_Flipper::OpenGl_Flipper ( const gp_Ax2 theReferenceSystem)

Construct rendering element to flip model-view matrix along the reference system to ensure up-Y, right-X orientation.

Parameters
theReferenceSystem[in] the reference coordinate system.

Member Function Documentation

◆ DumpJson()

virtual void OpenGl_Flipper::DumpJson ( Standard_OStream theOStream,
Standard_Integer  theDepth = -1 
) const
overridevirtual

Dumps the content of me into the stream.

Reimplemented from OpenGl_Element.

◆ Release()

virtual void OpenGl_Flipper::Release ( OpenGl_Context theContext)
overridevirtual

Release GPU resources. Pointer to the context is used because this method might be called when the context is already being destroyed and usage of a handle would be unsafe.

Implements OpenGl_Element.

◆ Render()

virtual void OpenGl_Flipper::Render ( const Handle< OpenGl_Workspace > &  theWorkspace) const
overridevirtual

Implements OpenGl_Element.

◆ SetOptions()

void OpenGl_Flipper::SetOptions ( const Standard_Boolean  theIsEnabled)
inline

Set options for the element.

Parameters
theIsEnabled[in] flag indicates whether the flipper matrix modification should be set up or restored back.

Field Documentation

◆ myIsEnabled

Standard_Boolean OpenGl_Flipper::myIsEnabled
protected

◆ myReferenceOrigin

OpenGl_Vec4 OpenGl_Flipper::myReferenceOrigin
protected

◆ myReferenceX

OpenGl_Vec4 OpenGl_Flipper::myReferenceX
protected

◆ myReferenceY

OpenGl_Vec4 OpenGl_Flipper::myReferenceY
protected

◆ myReferenceZ

OpenGl_Vec4 OpenGl_Flipper::myReferenceZ
protected

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