OpenCOVER
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
opencover::coVRIntersectionInteractor Class Referenceabstract

#include <coVRIntersectionInteractor.h>

Inheritance diagram for opencover::coVRIntersectionInteractor:
Inheritance graph
[legend]
Collaboration diagram for opencover::coVRIntersectionInteractor:
Collaboration graph
[legend]

Public Member Functions

 coVRIntersectionInteractor (float size, coInteraction::InteractionType buttonId, const char *iconName, const char *interactorName, enum coInteraction::InteractionPriority priority)
 
virtual ~coVRIntersectionInteractor ()
 
void enableIntersection ()
 
bool isEnabled ()
 
void disableIntersection ()
 
virtual int hit (vrui::vruiHit *hit)
 
virtual void miss ()
 
virtual void startInteraction ()
 
virtual void doInteraction ()
 
virtual void stopInteraction ()
 
void show ()
 
void hide ()
 
virtual void addIcon ()
 
virtual void removeIcon ()
 
int isIntersected ()
 
bool wasHit ()
 
osg::Vec3 getHitPos ()
 
virtual void preFrame ()
 
char * getInteractorName ()
 
osg::Matrix getMatrix ()
 class methods for traversing children More...
 
void setCaseTransform (osg::MatrixTransform *)
 
- Public Member Functions inherited from vrui::coAction
 coAction ()
 Constructor. More...
 
virtual ~coAction ()
 Destructor. More...
 
void setFrame (unsigned int frame)
 INTERNAL set the framecounter (used to produce the miss call) More...
 
unsigned int getFrame () const
 INTERNAL get the framecounter (used to produce the miss call) More...
 
void setNode (vruiNode *)
 INTERNAL set the node this action belongs to. More...
 
void addChild (coAction *)
 INTERNAL add a child action. More...
 
virtual int hitAll (vruiHit *hit)
 INTERNAL same as miss/hit, but do it for all children as well. More...
 
virtual void missAll ()
 INTERNAL same as miss/hit, but do it for all children as well. More...
 
- Public Member Functions inherited from vrui::coCombinedButtonInteraction
 coCombinedButtonInteraction (InteractionType type, const std::string &name, InteractionPriority priority=Medium)
 
virtual ~coCombinedButtonInteraction ()
 
virtual void setHitByMouse (bool)
 
virtual bool isMouse () const
 
virtual vruiMatrixgetHandMatrix () const
 
virtual bool is2D () const
 
- Public Member Functions inherited from vrui::coButtonInteraction
 coButtonInteraction (InteractionType type, const std::string &name, InteractionPriority priority=Medium)
 
virtual ~coButtonInteraction ()
 
virtual void cancelInteraction ()
 
virtual void resetState ()
 
bool wasStarted () const
 
bool isRunning () const
 
bool wasStopped () const
 
bool isIdle () const
 
int getWheelCount ()
 
- Public Member Functions inherited from vrui::coInteraction
 coInteraction (InteractionType type, const std::string &name, InteractionPriority priority=Medium)
 
virtual ~coInteraction ()
 
InteractionState getState () const
 
InteractionType getType () const
 
InteractionPriority getPriority () const
 
int getRemoteLockID () const
 
void setRemoteLockID (int ID)
 
void setRemoteLock (bool)
 
void setRemoteActive (bool)
 
void requestActivation ()
 
virtual void setName (const std::string &name)
 
virtual bool hasPriority ()
 
virtual void cancelPendingActivation ()
 
virtual void doActivation ()
 
virtual void pause ()
 
virtual const std::string & getName () const
 
bool activate ()
 
bool isRegistered ()
 
void setNotifyOnly (bool flag)
 
bool isNotifyOnly ()
 

Protected Member Functions

virtual void createGeometry ()=0
 
virtual void keepSize ()
 
osg::Vec3 restrictToVisibleScene (osg::Vec3)
 
const osg::Matrix & getPointerMat () const
 
- Protected Member Functions inherited from vrui::coCombinedButtonInteraction
virtual void update ()
 

Protected Attributes

osg::ref_ptr< osg::Node > geometryNode
 Geometry node. More...
 
osg::ref_ptr
< osg::MatrixTransform > 
moveTransform
 
osg::ref_ptr
< osg::MatrixTransform > 
scaleTransform
 
osg::ref_ptr
< osg::MatrixTransform > 
interactorCaseTransform
 
osg::MatrixTransform * parent
 
char * _interactorName
 
char * labelStr_
 
bool _hit
 
bool _intersectionEnabled
 
bool _justHit
 
bool _wasHit
 
bool _standardHL
 
osg::Vec3 _hitPos
 
osg::Vec3 _interPos
 
vrui::OSGVruiNodevNode
 
osg::ref_ptr< osg::StateSet > _selectedHl
 
osg::ref_ptr< osg::StateSet > _intersectedHl
 
osg::ref_ptr< osg::StateSet > _oldHl
 
coVRLabellabel_
 
float _interSize
 
- Protected Attributes inherited from vrui::coAction
std::string actionName
 
- Protected Attributes inherited from vrui::coCombinedButtonInteraction
vruiButtonsmousebutton
 
bool mouse
 
- Protected Attributes inherited from vrui::coButtonInteraction
RunningState runningState
 
InteractionState oldState
 
int wheelCount
 
vruiButtonsbutton
 
- Protected Attributes inherited from vrui::coInteraction
std::string name
 
InteractionState state
 
InteractionType type
 
InteractionPriority priority
 
bool notifyOnly
 
bool hasPriorityFlag
 
bool registered
 
bool remoteLock
 
int remoteLockID
 

Additional Inherited Members

- Public Types inherited from vrui::coAction
enum  Result { ACTION_DONE = 0x00, ACTION_CALL_ON_MISS = 0x01, ACTION_UNDEF = 0x02 }
 
- Public Types inherited from vrui::coButtonInteraction
enum  RunningState { StateStarted = 0, StateRunning, StateStopped, StateNotRunning }
 
- Public Types inherited from vrui::coInteraction
enum  InteractionState {
  Idle = 0, PendingActive, Active, Paused,
  RemoteActive, ActiveNotify, Stopped
}
 
enum  InteractionPriority {
  Low = 0, Navigation, NavigationHigh, Medium,
  High, Menu, Highest
}
 
enum  InteractionType {
  ButtonA = 0, ButtonB, ButtonC, ButtonD,
  ButtonE, Wheel, Joystick, AllButtons,
  NumInteractorTypes
}
 

Constructor & Destructor Documentation

opencover::coVRIntersectionInteractor::coVRIntersectionInteractor ( float  size,
coInteraction::InteractionType  buttonId,
const char *  iconName,
const char *  interactorName,
enum coInteraction::InteractionPriority  priority 
)
virtual opencover::coVRIntersectionInteractor::~coVRIntersectionInteractor ( )
virtual

Member Function Documentation

virtual void opencover::coVRIntersectionInteractor::addIcon ( )
virtual

Reimplemented from vrui::coInteraction.

virtual void opencover::coVRIntersectionInteractor::createGeometry ( )
protectedpure virtual
void opencover::coVRIntersectionInteractor::disableIntersection ( )
virtual void opencover::coVRIntersectionInteractor::doInteraction ( )
virtual
void opencover::coVRIntersectionInteractor::enableIntersection ( )
osg::Vec3 opencover::coVRIntersectionInteractor::getHitPos ( )
inline
char* opencover::coVRIntersectionInteractor::getInteractorName ( )
inline
osg::Matrix opencover::coVRIntersectionInteractor::getMatrix ( )
inline

class methods for traversing children

const osg::Matrix& opencover::coVRIntersectionInteractor::getPointerMat ( ) const
protected
void opencover::coVRIntersectionInteractor::hide ( )
virtual int opencover::coVRIntersectionInteractor::hit ( vrui::vruiHit hit)
virtual

hit is called whenever the node, or any node underneath the node with this action is intersected return ACTION_CALL_ON_MISS if you want miss to be called otherwise return ACTION_DONE

Implements vrui::coAction.

bool opencover::coVRIntersectionInteractor::isEnabled ( )
int opencover::coVRIntersectionInteractor::isIntersected ( )
inline
virtual void opencover::coVRIntersectionInteractor::keepSize ( )
protectedvirtual
virtual void opencover::coVRIntersectionInteractor::miss ( )
virtual

miss is called once after a hit, if the node is not intersected anymore

Reimplemented from vrui::coAction.

virtual void opencover::coVRIntersectionInteractor::preFrame ( )
virtual
virtual void opencover::coVRIntersectionInteractor::removeIcon ( )
virtual

Reimplemented from vrui::coInteraction.

osg::Vec3 opencover::coVRIntersectionInteractor::restrictToVisibleScene ( osg::Vec3  )
protected
void opencover::coVRIntersectionInteractor::setCaseTransform ( osg::MatrixTransform *  )
void opencover::coVRIntersectionInteractor::show ( )
virtual void opencover::coVRIntersectionInteractor::startInteraction ( )
virtual
virtual void opencover::coVRIntersectionInteractor::stopInteraction ( )
virtual

Reimplemented from vrui::coButtonInteraction.

bool opencover::coVRIntersectionInteractor::wasHit ( )
inline

Member Data Documentation

bool opencover::coVRIntersectionInteractor::_hit
protected
osg::Vec3 opencover::coVRIntersectionInteractor::_hitPos
protected
char* opencover::coVRIntersectionInteractor::_interactorName
protected
osg::Vec3 opencover::coVRIntersectionInteractor::_interPos
protected
osg::ref_ptr<osg::StateSet> opencover::coVRIntersectionInteractor::_intersectedHl
protected
bool opencover::coVRIntersectionInteractor::_intersectionEnabled
protected
float opencover::coVRIntersectionInteractor::_interSize
protected
bool opencover::coVRIntersectionInteractor::_justHit
protected
osg::ref_ptr<osg::StateSet> opencover::coVRIntersectionInteractor::_oldHl
protected
osg::ref_ptr<osg::StateSet> opencover::coVRIntersectionInteractor::_selectedHl
protected
bool opencover::coVRIntersectionInteractor::_standardHL
protected
bool opencover::coVRIntersectionInteractor::_wasHit
protected
osg::ref_ptr<osg::Node> opencover::coVRIntersectionInteractor::geometryNode
protected

Geometry node.

osg::ref_ptr<osg::MatrixTransform> opencover::coVRIntersectionInteractor::interactorCaseTransform
protected
coVRLabel* opencover::coVRIntersectionInteractor::label_
protected
char* opencover::coVRIntersectionInteractor::labelStr_
protected
osg::ref_ptr<osg::MatrixTransform> opencover::coVRIntersectionInteractor::moveTransform
protected
osg::MatrixTransform* opencover::coVRIntersectionInteractor::parent
protected
osg::ref_ptr<osg::MatrixTransform> opencover::coVRIntersectionInteractor::scaleTransform
protected
vrui::OSGVruiNode* opencover::coVRIntersectionInteractor::vNode
protected

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