SoPickedPoint.3iv man page

SoPickedPoint — represents point on surface of picked object

Inherits from

SoPickedPoint

Synopsis

#include <Inventor/SoPickedPoint.h>

Methods from class SoPickedPoint:

SoPickedPoint(const SoPickedPoint &pp)

~SoPickedPoint()

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 *node = NULL) const

const SbMatrix getObjectToWorld(const SoNode *node = NULL) const

const SbMatrix getWorldToObject(const SoNode *node = NULL) const

const SbMatrix getObjectToImage(const SoNode *node = NULL) const

const SbMatrix getImageToObject(const SoNode *node = NULL) const

const SbVec3f getObjectPoint(const SoNode *node = NULL) const

const SbVec3f getObjectNormal(const SoNode *node = NULL) const

const SbVec4f getObjectTextureCoords(const SoNode *node=NULL) const

Description

An SoPickedPoint represents a point on the surface of an object that was picked by applying an SoRayPickAction to a scene. It contains a path to the picked shape, the point of intersection, the surface normal and texture coordinates at that point, and other information.

Each node in the picked path may have a corresponding instance of a detail subclass. These detail instances are stored in the SoPickedPoint.

Methods

SoPickedPoint(const SoPickedPoint &pp)
Copy constructor.

~SoPickedPoint()
Destructor.

const SbVec3f & getPoint() const

const SbVec3f & getNormal() const

const SbVec4f & getTextureCoords() const
These return the intersection point and surface normal in world space, and the texture coordinates in image space.

int getMaterialIndex() const
Returns the index into the current set of materials of the material active at the intersection point. Note that if the materials are interpolated between vertices, the index will correspond to the material at one of the vertices.

SoPath * getPath() const
Returns the path to the object that was intersected.

SbBool isOnGeometry() const
Returns whether the intersection is actually on the geometry of the character that was hit, as opposed to being on the bounding box. The pick style (see SoPickStyle) affects this decision.

const SoDetail * getDetail(const SoNode *node = NULL) const
Returns the detail that corresponds to the given node in the path returned by getPath(). If the node pointer is NULL (the default), the detail corresponding to the tail of the (full) path is returned.

const SbMatrix getObjectToWorld(const SoNode *node = NULL) const

const SbMatrix getWorldToObject(const SoNode *node = NULL) const
These return the transformation matrices between world space and the object space corresponding to the given node in the path. If the node pointer is NULL (the default), the matrix corresponding to the tail of the (full) path is returned.

const SbMatrix getObjectToImage(const SoNode *node = NULL) const

const SbMatrix getImageToObject(const SoNode *node = NULL) const
These return the texture transformation matrices between image space and the object space corresponding to the given node in the path. If the node pointer is NULL (the default), the matrix corresponding to the tail of the (full) path is returned.

const SbVec3f getObjectPoint(const SoNode *node = NULL) const

const SbVec3f getObjectNormal(const SoNode *node = NULL) const

const SbVec4f getObjectTextureCoords(const SoNode *node=NULL) const
These return the intersection point, surface normal, and texture coordinates in the object space corresponding to the given node in the path. If the node pointer is NULL (the default), the information corresponding to the tail of the (full) path is returned.

See Also

SoRayPickAction, SoPickStyle, SoDetail, SoPath

Info