.TH "SoVRMLDragSensor" 3 "Thu May 29 2014" "Version 4.0.0a" "Coin" \" -*- nroff -*- .ad l .nh .SH NAME SoVRMLDragSensor \- .PP The \fBSoVRMLDragSensor\fP class is a superclass for VRML drag sensors\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits \fBSoVRMLSensor\fP\&. .PP Inherited by \fBSoVRMLCylinderSensor\fP, \fBSoVRMLPlaneSensor\fP, and \fBSoVRMLSphereSensor\fP\&. .SS "Public Member Functions" .in +1c .ti -1c .RI "virtual \fBSoType\fP \fBgetTypeId\fP (void) const " .br .RI "\fIReturns the type identification of an object derived from a class inheriting \fBSoBase\fP\&. This is used for run-time type checking and 'downward' casting\&. \fP" .ti -1c .RI "virtual void \fBhandleEvent\fP (\fBSoHandleEventAction\fP *action)" .br .in -1c .SS "Static Public Member Functions" .in +1c .ti -1c .RI "static \fBSoType\fP \fBgetClassTypeId\fP (void)" .br .ti -1c .RI "static void \fBinitClass\fP (void)" .br .in -1c .SS "Public Attributes" .in +1c .ti -1c .RI "\fBSoSFVec3f\fP \fBtrackPoint_changed\fP" .br .ti -1c .RI "\fBSoSFBool\fP \fBautoOffset\fP" .br .in -1c .SS "Protected Member Functions" .in +1c .ti -1c .RI "virtual const \fBSoFieldData\fP * \fBgetFieldData\fP (void) const " .br .ti -1c .RI "virtual SbBool \fBdragStart\fP (void)=0" .br .ti -1c .RI "virtual void \fBdrag\fP (void)=0" .br .ti -1c .RI "virtual void \fBdragFinish\fP (void)=0" .br .ti -1c .RI "\fBSoVRMLDragSensor\fP (void)" .br .ti -1c .RI "virtual \fB~SoVRMLDragSensor\fP ()" .br .ti -1c .RI "const \fBSbVec3f\fP & \fBgetLocalStartingPoint\fP (void) const " .br .ti -1c .RI "const \fBSbMatrix\fP & \fBgetLocalToWorldMatrix\fP (void) const " .br .ti -1c .RI "const \fBSbMatrix\fP & \fBgetWorldToLocalMatrix\fP (void) const " .br .ti -1c .RI "const \fBSbViewVolume\fP & \fBgetViewVolume\fP (void) const " .br .ti -1c .RI "const \fBSbVec2f\fP & \fBgetNormalizedLocaterPosition\fP (void) const " .br .in -1c .SS "Static Protected Member Functions" .in +1c .ti -1c .RI "static const \fBSoFieldData\fP ** \fBgetFieldDataPtr\fP (void)" .br .in -1c .SS "Additional Inherited Members" .SH "Detailed Description" .PP The \fBSoVRMLDragSensor\fP class is a superclass for VRML drag sensors\&. This class collects the two fields that are common for some of the sensor nodes, plus some common functions for these\&. Since this is an abstract 'helper' class, it does not represent an actual node from the VRML97 specification, so don't use it as such\&. .PP For more information, a detailed discussion of drag sensors is available in section 4\&.6\&.7\&.4 of the VRML97 specification: .PP http://www.web3d.org/x3d/specifications/vrml/ISO-IEC-14772-VRML97/part1/concepts.html#4.6.7.4\&. .SH "Constructor & Destructor Documentation" .PP .SS "SoVRMLDragSensor::SoVRMLDragSensor (void)\fC [protected]\fP" Constructor\&. .SS "SoVRMLDragSensor::~SoVRMLDragSensor ()\fC [protected]\fP, \fC [virtual]\fP" Destructor\&. .SH "Member Function Documentation" .PP .SS "\fBSoType\fP SoVRMLDragSensor::getTypeId (void) const\fC [virtual]\fP" .PP Returns the type identification of an object derived from a class inheriting \fBSoBase\fP\&. This is used for run-time type checking and 'downward' casting\&. Usage example: .PP .PP .nf void foo(SoNode * node) { if (node->getTypeId() == SoFile::getClassTypeId()) { SoFile * filenode = (SoFile *)node; // safe downward cast, knows the type } } .fi .PP .PP For application programmers wanting to extend the library with new nodes, engines, nodekits, draggers or others: this method needs to be overridden in \fIall\fP subclasses\&. This is typically done as part of setting up the full type system for extension classes, which is usually accomplished by using the pre-defined macros available through for instance \fBInventor/nodes/SoSubNode\&.h\fP (SO_NODE_INIT_CLASS and SO_NODE_CONSTRUCTOR for node classes), Inventor/engines/SoSubEngine\&.h (for engine classes) and so on\&. .PP For more information on writing Coin extensions, see the class documentation of the toplevel superclasses for the various class groups\&. .PP Reimplemented from \fBSoVRMLSensor\fP\&. .PP Reimplemented in \fBSoVRMLSphereSensor\fP, \fBSoVRMLCylinderSensor\fP, and \fBSoVRMLPlaneSensor\fP\&. .SS "const \fBSoFieldData\fP * SoVRMLDragSensor::getFieldData (void) const\fC [protected]\fP, \fC [virtual]\fP" Returns a pointer to the class-wide field data storage object for this instance\&. If no fields are present, returns \fCNULL\fP\&. .PP Reimplemented from \fBSoVRMLSensor\fP\&. .PP Reimplemented in \fBSoVRMLSphereSensor\fP, \fBSoVRMLCylinderSensor\fP, and \fBSoVRMLPlaneSensor\fP\&. .SS "void SoVRMLDragSensor::handleEvent (\fBSoHandleEventAction\fP *action)\fC [virtual]\fP" Action method for \fBSoHandleEventAction\fP\&. .PP Inspects the event data from \fIaction\fP, and processes it if it is something which this node should react to\&. .PP Nodes influencing relevant state variables for how event handling is done also overrides this method\&. .PP Reimplemented from \fBSoNode\fP\&. .SS "SbBool SoVRMLDragSensor::dragStart (void)\fC [protected]\fP, \fC [pure virtual]\fP" \fIThis API member is considered internal to the library, as it is not likely to be of interest to the application programmer\&.\fP .PP Called when dragger is selected (picked) by the user\&. .PP Implemented in \fBSoVRMLCylinderSensor\fP, \fBSoVRMLPlaneSensor\fP, and \fBSoVRMLSphereSensor\fP\&. .SS "void SoVRMLDragSensor::drag (void)\fC [protected]\fP, \fC [pure virtual]\fP" \fIThis API member is considered internal to the library, as it is not likely to be of interest to the application programmer\&.\fP .PP Called when user drags the mouse after picking the dragger\&. .PP Implemented in \fBSoVRMLCylinderSensor\fP, \fBSoVRMLPlaneSensor\fP, and \fBSoVRMLSphereSensor\fP\&. .SS "void SoVRMLDragSensor::dragFinish (void)\fC [protected]\fP, \fC [pure virtual]\fP" \fIThis API member is considered internal to the library, as it is not likely to be of interest to the application programmer\&.\fP .PP Called when mouse button is released after picking and interacting with the dragger\&. .PP Implemented in \fBSoVRMLCylinderSensor\fP, \fBSoVRMLPlaneSensor\fP, and \fBSoVRMLSphereSensor\fP\&. .SS "const \fBSbVec3f\fP & SoVRMLDragSensor::getLocalStartingPoint (void) const\fC [protected]\fP" Returns the interaction starting point\&. .SS "const \fBSbMatrix\fP & SoVRMLDragSensor::getLocalToWorldMatrix (void) const\fC [protected]\fP" Returns the matrix that transforms to the world coordinate system\&. .SS "const \fBSbMatrix\fP & SoVRMLDragSensor::getWorldToLocalMatrix (void) const\fC [protected]\fP" Returns the matrix that transforms from the world coordinate system\&. .SS "const \fBSbViewVolume\fP & SoVRMLDragSensor::getViewVolume (void) const\fC [protected]\fP" Returns the current view volume\&. .SS "const \fBSbVec2f\fP & SoVRMLDragSensor::getNormalizedLocaterPosition (void) const\fC [protected]\fP" Returns the current normalized pointer position\&. .SH "Member Data Documentation" .PP .SS "\fBSoSFVec3f\fP SoVRMLDragSensor::trackPoint_changed" An event out that is generated when the trackpoint is changed\&. .SS "\fBSoSFBool\fP SoVRMLDragSensor::autoOffset" When \fCTRUE\fP, the offset field is updated when a dragging sequence is finished\&. Default value is \fCTRUE\fP\&. .SH "Author" .PP Generated automatically by Doxygen for Coin from the source code\&.