NAME
SoPickedPoint -
The SoPickedPoint class is used for specifying picked points.
It holds miscellaneous information about the picked point, such as
position, normal, texture coordinate and material index in the current
material. It might also hold detail information (an SoDetail subclass)
for every node in the picked path.
SYNOPSIS
#include <Inventor/SoPickedPoint.h>
Public Member Functions
SoPickedPoint (const SoPickedPoint &pp)
SoPickedPoint (const SoPath *const path, SoState *const state, const
SbVec3f &objSpacePoint)
~SoPickedPoint ()
SoPickedPoint * copy () const
const SbVec3f & getPoint () const
const SbVec3f & getNormal () const
const SbVec4f & getTextureCoords () const
int getMaterialIndex () const
SoPath * getPath () const
SbBool isOnGeometry () const
const SoDetail * getDetail (const SoNode *const node=NULL) const
const SbMatrix & getObjectToWorld (const SoNode *const node=NULL) const
const SbMatrix & getWorldToObject (const SoNode *const node=NULL) const
const SbMatrix & getObjectToImage (const SoNode *const node=NULL) const
const SbMatrix & getImageToObject (const SoNode *const node=NULL) const
SbVec3f getObjectPoint (const SoNode *const node=NULL) const
SbVec3f getObjectNormal (const SoNode *const node=NULL) const
SbVec4f getObjectTextureCoords (const SoNode *const node=NULL) const
void setObjectNormal (const SbVec3f &normal)
void setObjectTextureCoords (const SbVec4f &texCoords)
void setMaterialIndex (const int index)
void setDetail (SoDetail *detail, SoNode *node)
Detailed Description
The SoPickedPoint class is used for specifying picked points.
It holds miscellaneous information about the picked point, such as
position, normal, texture coordinate and material index in the current
material. It might also hold detail information (an SoDetail subclass)
for every node in the picked path.
See also:
SoRayPickAction
Constructor & Destructor Documentation
SoPickedPoint::SoPickedPoint (const SoPickedPoint & pp) Copy constructor.
SoPickedPoint::SoPickedPoint (const SoPath *const pathptr, SoState *const
stateptr, const SbVec3f & objSpacePoint) Constructor. Uses the state to
convert between world and object space for the data.
SoPickedPoint::~SoPickedPoint () Destructor.
Member Function Documentation
SoPickedPoint * SoPickedPoint::copy () const Returns a copy of this picked
point.
Note that if the Coin library has been built as a DLL under Microsoft
Windows and you use this method from application code, you must make
sure that both the Coin DLL and the application executable is using the
same instance of a C Run-Time (CRT) library. Otherwise, you will get
memory heap corruption upon deallocating the returned instances,
eventually leading to mysterious crashes.
const SbVec3f & SoPickedPoint::getPoint () const Returns the world space
point.
const SbVec3f & SoPickedPoint::getNormal (void) const Returns the world
space normal.
const SbVec4f & SoPickedPoint::getTextureCoords () const Returns the image
space texture coordinates.
int SoPickedPoint::getMaterialIndex () const Returns the material index.
SoPath * SoPickedPoint::getPath () const Returns the path to the picked
object.
SbBool SoPickedPoint::isOnGeometry () const Returns TRUE if this picked
point is on the actual geometry of the picked object, or FALSE if not
(it might for instance be on the bounding box if picking was done on
bounding boxes).
const SoDetail * SoPickedPoint::getDetail (const SoNode *const node =
NULL) const Returns detail for node. If node equals NULL, the detail
for the picked object is returned.
const SbMatrix & SoPickedPoint::getObjectToWorld (const SoNode *const node
= NULL) const Returns the matrix which converts from object (specified
by node) to world space. If node equals NULL, the object space of the
picked object will used.
const SbMatrix & SoPickedPoint::getWorldToObject (const SoNode *const node
= NULL) const Returns the matrix which converts from world to object
(specified by node) space. If node equals NULL, the object space of the
picked object will used.
const SbMatrix & SoPickedPoint::getObjectToImage (const SoNode *const node
= NULL) const Returns the matrix which converts from object (specified
by node) to image space. If node equals NULL, the object space of the
picked object will used.
const SbMatrix & SoPickedPoint::getImageToObject (const SoNode *const node
= NULL) const Returns the matrix which converts from image to object
(specified by node) space. If node equals NULL, the object space of the
picked object will used.
SbVec3f SoPickedPoint::getObjectPoint (const SoNode *const node = NULL)
const Returns the object space point, in the object space specified by
node. If node equals NULL, the object space of the node where the point
was actually picked will be used (this is what one would usually be
interested in).
node can be any node in the scenegraph.
SbVec3f SoPickedPoint::getObjectNormal (const SoNode *const node = NULL)
const Returns the object space (specified by node) normal. If node
equals NULL, the picked point object space will be used.
SbVec4f SoPickedPoint::getObjectTextureCoords (const SoNode *const node =
NULL) const Returns the object space (specified by node) texture
coordinates. If node equals NULL, the picked point object space will be
used.
void SoPickedPoint::setObjectNormal (const SbVec3f & normalref) Sets the
picked point objects space normal vector.
void SoPickedPoint::setObjectTextureCoords (const SbVec4f & texCoordsref)
Sets the picked point object space texture coordinates.
void SoPickedPoint::setMaterialIndex (const int index) Sets the material
index.
void SoPickedPoint::setDetail (SoDetail * detail, SoNode * node) Sets the
detail for node. node must be in the picked path, of course. Set to
NULL if you want to remove a detail for a node.
Author
Generated automatically by Doxygen for Coin from the source code.