Open CASCADE Technology  6.9.0
Public Member Functions
SelectMgr_FrustumBuilder Class Reference

The purpose of this class is to provide unified interface for building selecting frustum depending on current camera projection and orientation matrices, window size and viewport parameters. More...

#include <SelectMgr_FrustumBuilder.hxx>

Inheritance diagram for SelectMgr_FrustumBuilder:
Inheritance graph
[legend]

Public Member Functions

 SelectMgr_FrustumBuilder ()
 Creates new frustum builder with empty matrices. More...
 
void SetOrientation (const Graphic3d_Mat4d &theOrientation)
 Stores current orientation matrix. More...
 
void SetProjection (const Graphic3d_Mat4d &theProjection)
 Stores current projection matrix. More...
 
void SetWindowSize (const Standard_Integer theWidth, const Standard_Integer theHeight)
 Stores current window width and height. More...
 
void SetViewport (const Standard_Real theX, const Standard_Real theY, const Standard_Real theWidth, const Standard_Real theHeight)
 Stores current viewport coordinates. More...
 
void InvalidateViewport ()
 
Standard_Real SignedPlanePntDist (const SelectMgr_Vec3 &theEq, const SelectMgr_Vec3 &thePnt) const
 Calculates signed distance between plane with equation theEq and point thePnt. More...
 
SelectMgr_Vec3 ProjectPntOnViewPlane (const Standard_Real &theX, const Standard_Real &theY, const Standard_Real &theZ) const
 Projects 2d screen point onto view frustum plane: theZ = 0 - near plane, theZ = 1 - far plane. More...
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor. More...
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing. More...
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter. More...
 
virtual ~Standard_Transient ()
 Destructor must be virtual. More...
 
virtual void Delete () const
 Memory deallocator for transient classes. 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...
 

Detailed Description

The purpose of this class is to provide unified interface for building selecting frustum depending on current camera projection and orientation matrices, window size and viewport parameters.

Constructor & Destructor Documentation

SelectMgr_FrustumBuilder::SelectMgr_FrustumBuilder ( )

Creates new frustum builder with empty matrices.

Member Function Documentation

void SelectMgr_FrustumBuilder::InvalidateViewport ( )
SelectMgr_Vec3 SelectMgr_FrustumBuilder::ProjectPntOnViewPlane ( const Standard_Real theX,
const Standard_Real theY,
const Standard_Real theZ 
) const

Projects 2d screen point onto view frustum plane: theZ = 0 - near plane, theZ = 1 - far plane.

void SelectMgr_FrustumBuilder::SetOrientation ( const Graphic3d_Mat4d theOrientation)

Stores current orientation matrix.

void SelectMgr_FrustumBuilder::SetProjection ( const Graphic3d_Mat4d theProjection)

Stores current projection matrix.

void SelectMgr_FrustumBuilder::SetViewport ( const Standard_Real  theX,
const Standard_Real  theY,
const Standard_Real  theWidth,
const Standard_Real  theHeight 
)

Stores current viewport coordinates.

void SelectMgr_FrustumBuilder::SetWindowSize ( const Standard_Integer  theWidth,
const Standard_Integer  theHeight 
)

Stores current window width and height.

Standard_Real SelectMgr_FrustumBuilder::SignedPlanePntDist ( const SelectMgr_Vec3 theEq,
const SelectMgr_Vec3 thePnt 
) const

Calculates signed distance between plane with equation theEq and point thePnt.


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