VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
makVrv::DtMixedRealityMask Class Referenceabstract

Object to handle rendering a mixed reality mask object into the scene. Typically the it renders an object to the alpha channel only to allow a video feed to be rendered in the transparent areas.

Inheritance diagram for makVrv::DtMixedRealityMask:
Inheritance graph
[legend]

Public Member Functions

 DtMixedRealityMask (DtDe &de)
 
virtual ~DtMixedRealityMask ()
 
virtual void initalizeMaskingObect (osg::Group *mountTo, const osg::Vec3 &offset, bool followObserver, std::string modelFile)
 
virtual void startMasking ()
 
virtual void stopMasking ()
 
virtual bool maskingActive ()
 
virtual void setOffset (const osg::Vec3 &offset)
 
virtual float nearDepthRange () const
 
virtual void nearDepthRange (float nearDepth)
 
virtual float farDepthRange () const
 
virtual void farDepthRange (float farDepth)
 
virtual bool chromaKeyActive () const
 
virtual void chromaKeyActive (bool active)
 
virtual osg::Vec3 chromaKeyHsvColor () const
 
virtual void chromaKeyHsvColor (osg::Vec3 hsv)
 
virtual osg::Vec3 chromaKeyHsvTolerance () const
 
virtual void chromaKeyHsvTolerance (osg::Vec3 tol)
 
virtual osg::Vec3 chromaKeyHsvFalloff () const
 
virtual void chromaKeyHsvFalloff (osg::Vec3 falloff)
 
virtual void slot_onPostUpdate ()
 

Protected Member Functions

virtual void initalizeMaskingObectImplementation (std::string modelFile)=0
 
DtSceneObjectfindSceneObjectFromElement (const DtElementID &id, int modelSet)
 

Protected Attributes

DtDemyDe
 
DtVirtualRealityDrivermyDriverHandle
 
DtSignalConnectionManager myConnections
 
bool myMaskingActive
 
osg::ref_ptr< osg::Group > myMountNode
 
osg::Vec3 myMaskNodeOffset
 
bool myShouldFollowObserver
 
bool myUseAttachmentPosition
 
float myNearDpethRange
 
float myFarDepthRange
 
bool myChromaKeyActive
 
osg::Vec3 myChromaHsvColor
 
osg::Vec3 myChromaHsvTolerance
 
osg::Vec3 myChromaHsvFalloff
 
osg::ref_ptr
< osg::MatrixTransform > 
myOffsetTransform
 
osg::ref_ptr
< osg::MatrixTransform > 
myMixedRealityMaskNode
 

Private Member Functions

 DtMixedRealityMask (const DtMixedRealityMask &other)
 
DtMixedRealityMaskoperator= (const DtMixedRealityMask &other)
 

Constructor & Destructor Documentation

makVrv::DtMixedRealityMask::DtMixedRealityMask ( const DtMixedRealityMask other)
private

Copy Constructor not implemented – Copy Not Allowed.

makVrv::DtMixedRealityMask::DtMixedRealityMask ( DtDe de)

constructor

virtual makVrv::DtMixedRealityMask::~DtMixedRealityMask ( )
virtual

DTOR.

Member Function Documentation

DtMixedRealityMask& makVrv::DtMixedRealityMask::operator= ( const DtMixedRealityMask other)
private

Assignment Operator Not implemented – Assignment Not Allowed.

virtual void makVrv::DtMixedRealityMask::initalizeMaskingObect ( osg::Group *  mountTo,
const osg::Vec3 &  offset,
bool  followObserver,
std::string  modelFile 
)
virtual

initalise the mask object by setting the offset, clearing any exisiting children then calling the provider specific implementation

virtual void makVrv::DtMixedRealityMask::startMasking ( )
virtual

start masking by attaching the node to the scene and enabling our callbacks

Reimplemented in makVrv::DtVarjoMixedRealityMask.

virtual void makVrv::DtMixedRealityMask::stopMasking ( )
virtual

stop masking by dettaching the node from the scene and disabling our callbacks

virtual bool makVrv::DtMixedRealityMask::maskingActive ( )
virtual

is masking currently active

virtual void makVrv::DtMixedRealityMask::setOffset ( const osg::Vec3 &  offset)
virtual

set the translation of the offset transform matrix

virtual float makVrv::DtMixedRealityMask::nearDepthRange ( ) const
virtual

returns the near depth range for depth testing MR

virtual void makVrv::DtMixedRealityMask::nearDepthRange ( float  nearDepth)
virtual

set the far depth range for depth testing MR

virtual float makVrv::DtMixedRealityMask::farDepthRange ( ) const
virtual

returns the near depth range for depth testing MR

virtual void makVrv::DtMixedRealityMask::farDepthRange ( float  farDepth)
virtual

set the far depth range for depth testing MR

virtual bool makVrv::DtMixedRealityMask::chromaKeyActive ( ) const
virtual

is chroma keying active

virtual void makVrv::DtMixedRealityMask::chromaKeyActive ( bool  active)
virtual

is chroma keying active

virtual osg::Vec3 makVrv::DtMixedRealityMask::chromaKeyHsvColor ( ) const
virtual

the key color in hsv space

virtual void makVrv::DtMixedRealityMask::chromaKeyHsvColor ( osg::Vec3  hsv)
virtual

the key color in hsv space

virtual osg::Vec3 makVrv::DtMixedRealityMask::chromaKeyHsvTolerance ( ) const
virtual

the key tolerence

virtual void makVrv::DtMixedRealityMask::chromaKeyHsvTolerance ( osg::Vec3  tol)
virtual

the key tolerence

virtual osg::Vec3 makVrv::DtMixedRealityMask::chromaKeyHsvFalloff ( ) const
virtual

the key falloff

virtual void makVrv::DtMixedRealityMask::chromaKeyHsvFalloff ( osg::Vec3  falloff)
virtual

the key falloff

virtual void makVrv::DtMixedRealityMask::slot_onPostUpdate ( )
virtual

post update event for syncing model with observer position if required

virtual void makVrv::DtMixedRealityMask::initalizeMaskingObectImplementation ( std::string  modelFile)
protectedpure virtual

provider specific implementation of object initalization, objects should be attached to the offset transform, when this function is called all object transform children will have been removed

Implemented in makVrv::DtVarjoMixedRealityMask, and makVrv::DtOpenVRMixedRealityMask.

DtSceneObject* makVrv::DtMixedRealityMask::findSceneObjectFromElement ( const DtElementID id,
int  modelSet 
)
protected

find scene object, used to find the observer attached objects

Member Data Documentation

DtDe& makVrv::DtMixedRealityMask::myDe
protected
DtVirtualRealityDriver* makVrv::DtMixedRealityMask::myDriverHandle
protected
DtSignalConnectionManager makVrv::DtMixedRealityMask::myConnections
protected
bool makVrv::DtMixedRealityMask::myMaskingActive
protected
osg::ref_ptr<osg::Group> makVrv::DtMixedRealityMask::myMountNode
protected
osg::Vec3 makVrv::DtMixedRealityMask::myMaskNodeOffset
protected
bool makVrv::DtMixedRealityMask::myShouldFollowObserver
protected
bool makVrv::DtMixedRealityMask::myUseAttachmentPosition
protected
float makVrv::DtMixedRealityMask::myNearDpethRange
protected
float makVrv::DtMixedRealityMask::myFarDepthRange
protected
bool makVrv::DtMixedRealityMask::myChromaKeyActive
protected
osg::Vec3 makVrv::DtMixedRealityMask::myChromaHsvColor
protected
osg::Vec3 makVrv::DtMixedRealityMask::myChromaHsvTolerance
protected
osg::Vec3 makVrv::DtMixedRealityMask::myChromaHsvFalloff
protected
osg::ref_ptr<osg::MatrixTransform> makVrv::DtMixedRealityMask::myOffsetTransform
protected
osg::ref_ptr<osg::MatrixTransform> makVrv::DtMixedRealityMask::myMixedRealityMaskNode
protected

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

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)