SoPickedPoint(3)

πŸ“¦ version 3.1.3, in fedora 43, fedora 44

πŸ’– SoPickedPoint πŸ’–

okay so bestie, welcome to a page straight out of the Library Functions Manual ✨ this one's about SoPickedPoint, and no cap, it's the lil guy that holds everything you ever wanted to know about a point somebody picked in your 3D scene. point, normal, texture coords, material index, all of it. let's get into it πŸŽ€


✨ NAME ✨

SoPickedPoint β€” the SoPickedPoint class is used for specifying picked points.


πŸ¦‹ 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. πŸ’…

She's the keeper of miscellaneous information about the picked point β€” think position, normal, texture coordinate, and the material index in the current material. Lowkey a whole info hub. She might also hold detail information (an SoDetail subclass) for every single node in the picked path, which is giving organized queen energy πŸ‘‘.

πŸ’œ See also

  • SoRayPickAction

πŸŽ€ Constructor & Destructor Documentation πŸŽ€

πŸ“ SoPickedPoint::SoPickedPoint (const SoPickedPoint & pp)

Copy constructor. literally just clones the vibe πŸ’–

πŸ“ SoPickedPoint::SoPickedPoint (const SoPath *const pathptr, SoState *const stateptr, const SbVec3f & objSpacePoint)

Constructor. It uses the state to convert between world and object space for the data β€” so it's doing the math so you don't have to 🧚

πŸ“ SoPickedPoint::~SoPickedPoint ()

Destructor. say bye bestie 🫢


🌈 Member Function Documentation 🌈

⭐ SoPickedPoint * SoPickedPoint::copy () const

Returns a copy of this picked point. ✨

⚠️ bestie, read this one fr fr: 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. πŸ’€ not a drill, this is the scary part.

⭐ const SbVec3f & SoPickedPoint::getPoint () const

Returns the world space point. 🌍

⭐ const SbVec3f & SoPickedPoint::getNormal () 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. the receipts, basically 🧾

⭐ 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. so like, real surface or just the box outline? this tells you πŸ”₯

⭐ 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. any of them. main character of your choosing πŸ’…

⭐ 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 β€” no random nodes invited to this party 🚫. Set to NULL if you want to remove a detail for a node.


πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for Coin from the source code. (yes bestie, the docs wrote themselves, we just added the sparkle ✨)


and that's the whole page, mwah πŸ’‹ this was Coin, Version 3.1.3, page SoPickedPoint(3) from the Library Functions Manual β€” go pick some points, you absolute icon πŸ¦‹πŸ’–

πŸ“¦ where this page comes from