Provided by: inventor-doc_2.1.5-10-18_all bug

NAME

       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

                                                                             SoPickedPoint(3IV)()