SoPointSet(3)

๐Ÿ“ฆ
version 4.0.10 ยท 4 versions
, in fedora 43, fedora 44

SoPointSet(3) โ€” Coin ๐Ÿ’–

okay bestie, welcome to the SoPointSet(3) manpage from Coin ๐Ÿ’… this is part 1 of 3, so buckle up โœจ


NAME

SoPointSet โ€” the SoPointSet class is used to display a set of 3D points. she's literally the point queen ๐Ÿ‘‘๐Ÿ’–


SYNOPSIS

#include <Inventor/nodes/SoPointSet.h>

Inherits SoNonIndexedShape.

Inherited by SoMarkerSet.

๐Ÿ’– Public Member Functions ๐Ÿ’–

  • virtual SoType getTypeId (void) const โ€” she's virtual, she's iconic ๐Ÿ’…
  • SoPointSet (void) โ€” the constructor, she's here to build your point set โœจ
  • virtual void GLRender (SoGLRenderAction *action) โ€” does the GL render thing, slay ๐Ÿ’–
  • virtual void getBoundingBox (SoGetBoundingBoxAction *action) โ€” gets that bounding box, periodt ๐Ÿ“ฆ
  • virtual void getPrimitiveCount (SoGetPrimitiveCountAction *action) โ€” counts primitives, no cap ๐Ÿ”ข

Public Member Functions inherited from SoVertexShape

  • virtual void notify (SoNotList *nl) โ€” notifies, she's a communicator ๐Ÿ’ฌ
  • virtual void write (SoWriteAction *action) โ€” writes, iconic โœ๏ธ

Public Member Functions inherited from SoShape

  • virtual SbBool affectsState (void) const โ€” does it affect state? maybe ๐Ÿค”
  • virtual void rayPick (SoRayPickAction *action) โ€” ray picking, so cool ๐Ÿ”ฆ
  • virtual void callback (SoCallbackAction *action) โ€” callback time ๐ŸŽ€
  • const SoBoundingBoxCache * getBoundingBoxCache (void) const โ€” returns the bounding box cache, periodt ๐Ÿ’…

Public Member Functions inherited from SoNode

  • void setOverride (const SbBool state) โ€” sets override, she's over it ๐Ÿ™…โ€โ™€๏ธ
  • SbBool isOverride (void) const โ€” is it override? ๐Ÿ‘€
  • void setNodeType (const NodeType type) โ€” sets node type, slay ๐ŸŽ€
  • NodeType getNodeType (void) const โ€” gets node type, iconic โœจ
  • virtual SoNode * copy (SbBool copyconnections=FALSE) const โ€” copies, with copyconnections=FALSE by default ๐Ÿ’–
  • virtual void doAction (SoAction *action) โ€” does the action, periodt ๐Ÿ’…
  • virtual void GLRenderBelowPath (SoGLRenderAction *action) โ€” GL render below path, she's on a journey ๐Ÿ›ฃ๏ธ
  • virtual void GLRenderInPath (SoGLRenderAction *action) โ€” GL render in path, iconic ๐Ÿ›ค๏ธ
  • virtual void GLRenderOffPath (SoGLRenderAction *action) โ€” GL render off path, she's off the beaten track ๐ŸŒฟ
  • virtual void getMatrix (SoGetMatrixAction *action) โ€” gets the matrix, wake up bestie ๐Ÿ•ถ๏ธ
  • virtual void handleEvent (SoHandleEventAction *action) โ€” handles events, she's a handler ๐Ÿ’โ€โ™€๏ธ
  • virtual void pick (SoPickAction *action) โ€” pick, pick, pick ๐ŸŽฏ
  • virtual void search (SoSearchAction *action) โ€” search, she's looking ๐Ÿ”
  • virtual void audioRender (SoAudioRenderAction *action) โ€” audio render, sound on ๐Ÿ”Š
  • virtual void grabEventsSetup (void) โ€” grabs events setup, iconic ๐Ÿ‘‘
  • virtual void grabEventsCleanup (void) โ€” grabs events cleanup, she cleans up nice ๐Ÿงน
  • virtual void startNotify (void) โ€” starts notify, here we go ๐Ÿ’–
  • SbUniqueId getNodeId (void) const โ€” gets node ID, she has an identity ๐Ÿ’…
  • virtual SoChildList * getChildren (void) const โ€” gets children, she's a mom ๐Ÿผ
  • virtual void writeInstance (SoOutput *out) โ€” writes instance, periodt โœ๏ธ
  • virtual SoNode * addToCopyDict (void) const โ€” adds to copy dict, slay ๐Ÿ“–
  • virtual void copyContents (const SoFieldContainer *from, SbBool copyconnections) โ€” copies contents, so thorough ๐Ÿ’–
  • virtual SoFieldContainer * copyThroughConnection (void) const โ€” copies through connection, iconic ๐Ÿ”—

Public Member Functions inherited from SoFieldContainer

  • void setToDefaults (void) โ€” sets to defaults, back to basics โœจ
  • SbBool hasDefaultValues (void) const โ€” has default values? ๐Ÿค”
  • SbBool fieldsAreEqual (const SoFieldContainer *container) const โ€” fields are equal? check bestie ๐Ÿ‘ฏโ€โ™€๏ธ
  • void copyFieldValues (const SoFieldContainer *container, SbBool copyconnections=FALSE) โ€” copies field values, with copyconnections=FALSE default ๐Ÿ’…
  • SbBool set (const char *const fielddata) โ€” sets from fielddata, slay ๐Ÿ“
  • void get (SbString &fielddata) โ€” gets into fielddata, iconic ๐Ÿ“ค
  • virtual int getFields (SoFieldList &l) const โ€” gets fields, so many ๐Ÿ’–
  • virtual int getAllFields (SoFieldList &l) const โ€” gets all fields, she's greedy ๐Ÿ˜ˆ
  • virtual SoField * getField (const SbName &name) const โ€” gets a field by name, periodt ๐Ÿ”
  • virtual SoField * getEventIn (const SbName &name) const โ€” gets event in, she's in ๐Ÿ“ฅ
  • virtual SoField * getEventOut (const SbName &name) const โ€” gets event out, she's out ๐Ÿ“ค
  • SbBool getFieldName (const SoField *const field, SbName &name) const โ€” gets field name, name drop ๐Ÿ’…
  • SbBool enableNotify (const SbBool flag) โ€” enables notify, flag it ๐Ÿšฉ
  • SbBool isNotifyEnabled (void) const โ€” is notify enabled? ๐Ÿ‘€
  • SbBool set (const char *fielddata, SoInput *input) โ€” sets from fielddata with input, slay ๐ŸŽ€
  • void get (SbString &fielddata, SoOutput *out) โ€” gets into fielddata with out, iconic ๐Ÿ“ค
  • virtual SbBool validateNewFieldValue (SoField *field, void *newval) โ€” validates new field value, she's checking โœ…
  • virtual void addWriteReference (SoOutput *out, SbBool isfromfield=FALSE) โ€” adds write reference, isfromfield=FALSE default ๐Ÿ’–
  • SbBool getIsBuiltIn (void) const โ€” is it built in? ๐Ÿ 
  • virtual void getFieldsMemorySize (size_t &managed, size_t &unmanaged) const โ€” gets fields memory size, so technical ๐Ÿ’พ
  • void setUserData (void *userdata) const โ€” sets user data, she's got your data ๐Ÿ’พ
  • void * getUserData (void) const โ€” gets user data, periodt ๐Ÿ”‘

Public Member Functions inherited from SoBase

  • void ref (void) const โ€” ref, she's referencing ๐Ÿ’…
  • void unref (void) const โ€” unref, she's done ๐Ÿ‘‹
  • void unrefNoDelete (void) const โ€” unref no delete, she's gentle ๐Ÿ•Š๏ธ
  • int32_t getRefCount (void) const โ€” gets ref count, numbers don't lie ๐Ÿ”ข
  • void touch (void) โ€” touch, she's tactile โœ‹
  • SbBool isOfType (SoType type) const โ€” returns TRUE if the type of this object is either of the same type or inherited from type. periodt. ๐Ÿ’…
  • virtual SbName getName (void) const โ€” gets name, what's her name? ๐Ÿ‘‘
  • virtual void setName (const SbName &newname) โ€” sets name to newname, name change slay ๐Ÿ’–
  • void addAuditor (void *const auditor, const SoNotRec::Type type) โ€” adds auditor, she's listening ๐Ÿ‘‚
  • void removeAuditor (void *const auditor, const SoNotRec::Type type) โ€” removes auditor, she's over it ๐Ÿ™‰
  • const SoAuditorList & getAuditors (void) const โ€” gets auditors, the whole list ๐Ÿ’…
  • SbBool shouldWrite (void) โ€” should write? maybe โœ๏ธ
  • void assertAlive (void) const โ€” assert alive, she's alive and thriving ๐ŸŒฑ

๐Ÿ’– Static Public Member Functions ๐Ÿ’–

  • static SoType getClassTypeId (void) โ€” gets class type ID, iconic ๐Ÿ’…
  • static void initClass (void) โ€” sets up initialization for data common to all instances of this class, like submitting necessary info to the Coin type system. she's the setup queen ๐Ÿ‘‘

Static Public Member Functions inherited from SoNonIndexedShape

  • static SoType getClassTypeId (void) โ€” gets class type ID, again ๐Ÿ’–
  • static void initClass (void) โ€” init class, slay โœจ

Static Public Member Functions inherited from SoVertexShape

  • static SoType getClassTypeId (void) โ€” gets class type ID, periodt ๐Ÿ’…
  • static void initClass (void) โ€” init class, iconic ๐ŸŽ€

Static Public Member Functions inherited from SoShape

  • static SoType getClassTypeId (void) โ€” gets class type ID, she's back ๐Ÿ’–
  • static void initClass (void) โ€” sets up initialization for data common to all instances of this class, like submitting necessary info to the Coin type system. ๐Ÿ‘‘
  • static void getScreenSize (SoState *const state, const SbBox3f &boundingbox, SbVec2s &rectsize) โ€” gets screen size, so handy ๐Ÿ“
  • static float getDecimatedComplexity (SoState *state, float complexity) โ€” gets decimated complexity, complex but she's got it ๐Ÿง 

Static Public Member Functions inherited from SoNode

  • static uint32_t getCompatibilityTypes (const SoType &nodetype) โ€” gets compatibility types, matching vibes ๐Ÿ’ž
  • static SoType getClassTypeId (void) โ€” gets class type ID, again and again ๐Ÿ’…
  • static SoNode * getByName (const SbName &name) โ€” gets by name, name search ๐Ÿ”
  • static int getByName (const SbName &name, SoNodeList &l) โ€” gets by name into list, so many ๐Ÿ“‹
  • static void initClass (void) โ€” sets up initialization for data common to all instances of this class, like submitting necessary info to the Coin type system. โœจ
  • static void initClasses (void) โ€” init classes, plural slay ๐Ÿ’–
  • static SbUniqueId getNextNodeId (void) โ€” gets next node ID, next up ๐Ÿ”ข
  • static int getActionMethodIndex (const SoType type) โ€” gets action method index, indexing ๐Ÿ“‡
  • static void getBoundingBoxS (SoAction *action, SoNode *node) โ€” gets bounding box S, static style ๐Ÿ“ฆ
  • static void GLRenderS (SoAction *action, SoNode *node) โ€” GL render S, static render ๐ŸŽจ
  • static void callbackS (SoAction *action, SoNode *node) โ€” callback S, static callback ๐Ÿ“ž
  • static void getMatrixS (SoAction *action, SoNode *node) โ€” get matrix S, static matrix ๐Ÿงฎ
  • static void handleEventS (SoAction *action, SoNode *node) โ€” handle event S, static handle ๐Ÿ’โ€โ™€๏ธ
  • static void pickS (SoAction *action, SoNode *node) โ€” pick S, static pick ๐ŸŽฏ
  • static void rayPickS (SoAction *action, SoNode *node) โ€” ray pick S, static ray ๐Ÿ”ฆ
  • static void searchS (SoAction *action, SoNode *node) โ€” search S, static search ๐Ÿ”
  • static void writeS (SoAction *action, SoNode *node) โ€” write S, static write โœ๏ธ
  • static void audioRenderS (SoAction *action, SoNode *node) โ€” audio render S, static sound ๐Ÿ”Š
  • static void getPrimitiveCountS (SoAction *action, SoNode *node) โ€” get primitive count S, static count ๐Ÿ”ข

Static Public Member Functions inherited from SoFieldContainer

  • static void initClass (void) โ€” sets up initialization for data common to all instances of this class, like submitting necessary info to the Coin type system. ๐Ÿ’…
  • static SoType getClassTypeId (void) โ€” this static method returns the SoType object associated with objects of this class. iconic. ๐Ÿ’–
  • static void cleanupClass (void) โ€” cleanup class, she cleans up ๐Ÿงน
  • static void initCopyDict (void) โ€” init copy dict, copy time ๐Ÿ“–
  • static void addCopy (const SoFieldContainer *orig, const SoFieldContainer *copy) โ€” adds a copy, so meta ๐Ÿ‘ฏโ€โ™€๏ธ
  • static SoFieldContainer * checkCopy (const SoFieldContainer *orig) โ€” checks copy, verifying โœ…
  • static SoFieldContainer * findCopy (const SoFieldContainer *orig, const SbBool copyconnections) โ€” finds copy, with copyconnections ๐Ÿ’…
  • static void copyDone (void) โ€” copy done, finished ๐Ÿ

Static Public Member Functions inherited from SoBase

  • static void initClass (void) โ€” sets up initialization for data common to all instances of this class, like submitting necessary info to the Coin type system. ๐Ÿ‘‘
  • static SoType getClassTypeId (void) โ€” this static method returns the SoType object associated with objects of this class. periodt. ๐Ÿ’…
  • static void addName (SoBase *const base, const char *const name) โ€” adds name, name tag ๐Ÿท๏ธ
  • static void removeName (SoBase *const base, const char *const name) โ€” removes name, bye name ๐Ÿ‘‹
  • static void incrementCurrentWriteCounter (void) โ€” increments current write counter, plus one โž•
  • static void decrementCurrentWriteCounter (void) โ€” decrements current write counter, minus one โž–
  • static SoBase * getNamedBase (const SbName &name, SoType type) โ€” gets named base, base search ๐Ÿ”
  • static int getNamedBases (const SbName &name, SoBaseList &baselist, SoType type) โ€” gets named bases into list, so many ๐Ÿ“‹
  • static SbBool read (SoInput *input, SoBase *&base, SoType expectedtype) โ€” reads, input time ๐Ÿ“ฅ
  • static void setInstancePrefix (const SbString &c) โ€” sets instance prefix, prefix slay ๐Ÿ’…
  • static void setTraceRefs (SbBool trace) โ€” sets trace refs, tracing ๐Ÿ•ต๏ธโ€โ™€๏ธ
  • static SbBool getTraceRefs (void) โ€” gets trace refs, periodt ๐Ÿ”
  • static SbBool connectRoute (SoInput *input, const SbName &fromnodename, const SbName &fromfieldname, const SbName &tonodename, const SbName &tofieldname) โ€” connects route, so many names ๐Ÿ›ฃ๏ธ
  • static SbBool readRoute (SoInput *input) โ€” reads route, reading the route ๐Ÿ“–

๐Ÿ’– Public Attributes ๐Ÿ’–

  • SoSFInt32 numPoints โ€” number of points, iconic ๐Ÿ”ข

Public Attributes inherited from SoNonIndexedShape

  • SoSFInt32 startIndex โ€” start index, where it begins ๐Ÿ

Public Attributes inherited from SoVertexShape

  • SoSFNode vertexProperty โ€” vertex property, property of the vertex ๐Ÿ’Ž

๐Ÿ’– Protected Member Functions ๐Ÿ’–

  • virtual const SoFieldData * getFieldData (void) const โ€” gets field data, protected but powerful ๐Ÿ’ช
  • virtual ~SoPointSet () โ€” the destructor, she's breaking down ๐Ÿ’”
  • virtual void generatePrimitives (SoAction *action) โ€” generates primitives, so generative โœจ
  • virtual void computeBBox (SoAction *action, SbBox3f &box, SbVec3f &center) โ€” computes bounding box, math queen ๐Ÿ“
  • virtual SbBool generateDefaultNormals (SoState *, SoNormalCache *nc) โ€” generates default normals, normal but iconic ๐Ÿ’…
  • virtual SbBool generateDefaultNormals (SoState *state, SoNormalBundle *bundle) โ€” generates default normals with bundle, bundle up ๐Ÿงฃ

Protected Member Functions inherited from SoNonIndexedShape

  • SoNonIndexedShape (void) โ€” constructor, she's building ๐Ÿ—๏ธ
  • virtual ~SoNonIndexedShape () โ€” destructor, she's breaking down ๐Ÿ’”
  • void computeCoordBBox (SoAction *action, int numVertices, SbBox3f &box, SbVec3f &center) โ€” computes coord bounding box, coordinates and boxes ๐Ÿ“ฆ
  • void fixNumVerticesPointers (SoState *state, const int32_t *&start, const int32_t *&end, int32_t *dummyarray) const โ€” fixes num vertices pointers, fixing things ๐Ÿ”ง

Protected Member Functions inherited from SoVertexShape

  • SoVertexShape (void) โ€” constructor, vertex shape building ๐Ÿ—๏ธ
  • virtual ~SoVertexShape () โ€” destructor, breaking down ๐Ÿ’”
  • virtual SbBool shouldGLRender (SoGLRenderAction *action) โ€” should GL render? maybe ๐ŸŽจ
  • void setNormalCache (SoState *const state, const int num, const SbVec3f *normals) โ€” sets normal cache, caching normals ๐Ÿ’พ
  • SoNormalCache * getNormalCache (void) const โ€” gets normal cache, cache retrieval ๐Ÿ”
  • SoNormalCache * generateAndReadLockNormalCache (SoState *const state) โ€” generates and read locks normal cache, locking it ๐Ÿ”’
  • void getVertexData (SoState *state, const SoCoordinateElement *&coords, const SbVec3f *&normals, const SbBool neednormals) โ€” gets vertex data, data time ๐Ÿ“Š
  • void readLockNormalCache (void) โ€” read locks normal cache, read lock ๐Ÿ”
  • void readUnlockNormalCache (void) โ€” read unlocks normal cache, unlock ๐Ÿ”“

to be continued in part 2... ๐Ÿ’–

๐ŸŽ€ Protected Member Functions inherited from SoShape

okay so these are the protected goodies SoPointSet inherits from its parent SoShape โ€” not stuff you call from the outside, but the family tree is real and we respect it ๐Ÿ’…

  • SoShape (void) โ€” the constructor, handed down.
  • virtual ~SoShape () โ€” the destructor, and yes it's virtual.
  • float getComplexityValue (SoAction *action) โ€” pulls out the complexity value for the action in question.
  • void beginSolidShape (SoGLRenderAction *action) โ€” kicks off solid-shape rendering.
  • void endSolidShape (SoGLRenderAction *action) โ€” wraps that solid-shape rendering back up.
  • void GLRenderBoundingBox (SoGLRenderAction *action) โ€” renders the bounding box, GL-style.
  • SbBool shouldPrimitiveCount (SoGetPrimitiveCountAction *action) โ€” decides if the primitive count should actually be counted.
  • SbBool shouldRayPick (SoRayPickAction *const action) โ€” decides whether this is doing ray pick or not.
  • void computeObjectSpaceRay (SoRayPickAction *const action) โ€” works out the object-space ray, no matrix version.
  • void computeObjectSpaceRay (SoRayPickAction *const action, const SbMatrix &matrix) โ€” same thing but you hand it a matrix too.
  • virtual SoDetail * createTriangleDetail (SoRayPickAction *action, const SoPrimitiveVertex *v1, const SoPrimitiveVertex *v2, const SoPrimitiveVertex *v3, SoPickedPoint *pp) โ€” makes the triangle detail for picking, virtual.
  • virtual SoDetail * createLineSegmentDetail (SoRayPickAction *action, const SoPrimitiveVertex *v1, const SoPrimitiveVertex *v2, SoPickedPoint *pp) โ€” makes the line-segment detail, also virtual.
  • virtual SoDetail * createPointDetail (SoRayPickAction *action, const SoPrimitiveVertex *v, SoPickedPoint *pp) โ€” and here's the point version โœจ
  • void invokeTriangleCallbacks (SoAction *const action, const SoPrimitiveVertex *const v1, const SoPrimitiveVertex *const v2, const SoPrimitiveVertex *const v3) โ€” fires off the triangle callbacks.
  • void invokeLineSegmentCallbacks (SoAction *const action, const SoPrimitiveVertex *const v1, const SoPrimitiveVertex *const v2) โ€” fires off the line-segment callbacks.
  • void invokePointCallbacks (SoAction *const action, const SoPrimitiveVertex *const v) โ€” fires off the point callbacks.
  • void beginShape (SoAction *const action, const TriangleShape shapetype, SoDetail *const detail=NULL) โ€” opens a shape with a given TriangleShape, detail defaults to NULL.
  • void shapeVertex (const SoPrimitiveVertex *const v) โ€” feeds a vertex into the shape.
  • void endShape (void) โ€” closes the shape.
  • void generateVertex (SoPrimitiveVertex *const pv, const SbVec3f &point, const SbBool useTexFunc, const SoMultiTextureCoordinateElement *const tce, const float s, const float t, const SbVec3f &normal) โ€” builds a vertex from a point, texture coords s/t, and a normal.
  • void generateVertex (SoPrimitiveVertex *const pv, const SbVec3f &point, const SbBool useTexFunc, const SoMultiTextureCoordinateElement *const tce, const float s, const float t, const float r, const SbVec3f &normal) โ€” the 3-coord version, adds that r ๐Ÿฆ‹
  • SbBool startVertexArray (SoGLRenderAction *action, const SoCoordinateElement *coords, const SbVec3f *pervertexnormals, const SbBool texpervertex, const SbBool colorpervertex) โ€” spins up the vertex array.
  • void finishVertexArray (SoGLRenderAction *action, const SbBool vbo, const SbBool normpervertex, const SbBool texpervertex, const SbBool colorpervertex) โ€” and tears it back down.

๐Ÿ’œ Protected Member Functions inherited from SoNode

  • SoNode (void) โ€” constructor, inherited.
  • virtual ~SoNode () โ€” virtual destructor.
  • virtual SbBool readInstance (SoInput *in, unsigned short flags) โ€” reads an instance, virtual, takes an SoInput * and unsigned short flags.

๐Ÿฉท Protected Member Functions inherited from SoFieldContainer

  • SoFieldContainer (void) โ€” constructor.
  • virtual ~SoFieldContainer () โ€” destructor, virtual as always.

๐Ÿ’– Protected Member Functions inherited from SoBase

  • SoBase (void) โ€” constructor.
  • virtual ~SoBase () โ€” destructor, virtual.
  • virtual void destroy (void) โ€” the destroy hook, virtual.
  • SbBool hasMultipleWriteRefs (void) const โ€” checks for multiple write refs, const.
  • SbBool writeHeader (SoOutput *out, SbBool isgroup, SbBool isengine) const โ€” writes the header, const.
  • void writeFooter (SoOutput *out) const โ€” writes the footer, also const.
  • virtual const char * getFileFormatName (void) const โ€” hands back the file format name, const, virtual.
  • virtual SoNotRec createNotRec (void) โ€” builds a SoNotRec, virtual.

๐ŸŒธ Static Protected Member Functions

  • static const SoFieldData ** getFieldDataPtr (void) โ€” grabs the field data pointer.

๐Ÿ’ Static Protected Member Functions inherited from SoNonIndexedShape

  • static const SoFieldData ** getFieldDataPtr (void) โ€” same deal, inherited.

๐ŸŒท Static Protected Member Functions inherited from SoVertexShape

  • static const SoFieldData ** getFieldDataPtr (void) โ€” yep, this one too.

๐ŸŒบ Static Protected Member Functions inherited from SoShape

  • static const SoFieldData ** getFieldDataPtr (void) โ€” inherited again, no cap.

๐Ÿฆ‹ Static Protected Member Functions inherited from SoNode

  • static const SoFieldData ** getFieldDataPtr (void) โ€” the pointer getter.
  • static void setNextActionMethodIndex (int index) โ€” sets the next action method index.
  • static int getNextActionMethodIndex (void) โ€” gets the next action method index.
  • static void incNextActionMethodIndex (void) โ€” increments that index, one at a time bestie.
  • static void setCompatibilityTypes (const SoType &nodetype, const uint32_t bitmask) โ€” sets compatibility types from a nodetype and a uint32_t bitmask.

๐ŸŽ€ Static Protected Member Functions inherited from SoBase

  • static uint32_t getCurrentWriteCounter (void) โ€” grabs the current write counter.
  • static void staticDataLock (void) โ€” locks the static data.
  • static void staticDataUnlock (void) โ€” unlocks it. balance, periodt.

โœจ Additional Inherited Members โœจ

๐Ÿ‘‘ Public Types inherited from SoShape

enum TriangleShape { TRIANGLE_STRIP, TRIANGLE_FAN, TRIANGLES, POLYGON,
    QUADS, QUAD_STRIP, POINTS, LINES, LINE_STRIP }

๐Ÿ’Ž Public Types inherited from SoNode

enum NodeType { INVENTOR = 0x0000, VRML1 = 0x0001, VRML2 = 0x0002,
    INVENTOR_1 = 0x0004, INVENTOR_2_0 = 0x0008, INVENTOR_2_1 = 0x0010,
    INVENTOR_2_5 = 0x0020, INVENTOR_2_6 = 0x0040, COIN_1_0 = 0x0080,
    COIN_2_0 = 0x0100, EXTENSION = 0x0200, COIN_2_2 = 0x0400, COIN_2_3 =
    0x0800, COIN_2_4 = 0x1000, INVENTOR_5_0 = 0x2000, COIN_2_5 = 0x4000,
    COIN_3_0 = 0x8000, INVENTOR_6_0 = 0x10000, COIN_4_0 = 0x20000 }

๐Ÿ” Protected Types inherited from SoBase

enum BaseFlags { IS_ENGINE = 0x01, IS_GROUP = 0x02 }

๐Ÿงš Protected Attributes inherited from SoNode

  • SbUniqueId uniqueId โ€” the unique id, protected.

๐Ÿ’œ Protected Attributes inherited from SoFieldContainer

  • SbBool isBuiltIn โ€” whether it's built in, protected.

โญ Static Protected Attributes inherited from SoNode

  • static SbUniqueId nextUniqueId = 1 โ€” starts at 1, iconic.
  • static int nextActionMethodIndex = 0 โ€” starts at 0.

๐ŸŒˆ Detailed Description ๐ŸŒˆ

The SoPointSet class is used to display a set of 3D points. yes bestie, that's literally the whole job and it eats ๐Ÿ’…

This node either uses the coordinates currently on the state (typically set up by a leading SoCoordinate3 node in the scene graph) or from a SoVertexProperty node attached to this node to render a set of 3D points.

The SoPointSet::numPoints field specifies the number of points in the coordinate set which should be rendered (or otherwise handled by traversal actions).

Here's a simple usage example of SoPointSet in a scene graph:

#Inventor V2.1 ascii

Separator {
   Material {
      diffuseColor [
       1 0 0, 0 1 0, 0 0 1, 1 1 0, 1 0 1, 1 1 1, 1 0.8 0.6, 0.6 0.8 1
      ]
   }
   MaterialBinding { value PER_PART }

   Coordinate3 {
      point [
       -1 1 0, -1 -1 0, 1 -1 0, 1 1 0, 0 2 -1, -2 0 -1, 0 -2 -1, 2 0 -1
      ]
   }

   DrawStyle { pointSize 3 }

   PointSet { }
}

FILE FORMAT/DEFAULTS:

PointSet {
    vertexProperty NULL
    startIndex 0
    numPoints -1
}

๐ŸŽ€ Constructor & Destructor Documentation ๐ŸŽ€

๐Ÿ’– SoPointSet::SoPointSet (void )

Constructor.

๐Ÿฆ‹ SoPointSet::~SoPointSet () [protected], [virtual]

Destructor.

๐Ÿ’… Member Function Documentation ๐Ÿ’…

okay bestie, this is the part where we meet the actual methods โ€” the little functions that do the work. every single one, no skipping, i promise. let's get into it ๐Ÿซถ


โœจ SoType SoPointSet::getClassTypeId(void) [static]

it's giving "who am i" but for classes. this static method hands you back the SoType object that's associated with objects of this class. that's it, that's the whole vibe. โœจ


๐Ÿฆ‹ SoType SoPointSet::getTypeId(void) const [virtual]

returns the type identification of an object derived from a class inheriting SoBase. literally its whole job is runtime type checking and doing that "downward" casting thing. iykyk ๐Ÿ‘‘

  • Reimplemented from SoNonIndexedShape.
  • Reimplemented in SoMarkerSet.

๐Ÿ”’ const SoFieldData ** SoPointSet::getFieldDataPtr(void) [static], [protected]

internal library business, bestie. this API member is considered internal to the library, since it's not likely to be of interest to the application programmer. no cap.

returns the SoFieldData class which holds info about the fields in this node. ๐Ÿ“‹


๐ŸŽ€ const SoFieldData * SoPointSet::getFieldData(void) const [protected], [virtual]

returns a pointer to the class-wide field data storage object for this instance. and if there are no fields present? it returns NULL. that's the whole tea. ๐Ÿต

  • Reimplemented from SoNonIndexedShape.
  • Reimplemented in SoMarkerSet.

๐ŸŒธ void SoPointSet::initClass(void) [static]

no description on this one, bestie โ€” the manpage just leaves it standing there looking iconic. that's the whole entry. ๐Ÿ’…


๐Ÿ”ฅ void SoPointSet::GLRender(SoGLRenderAction * action) [virtual]

this is the action method for SoGLRenderAction, and it gets called during rendering traversals. any node that influences the rendering state in any way โ€” or that just wants to hurl geometry primitives at OpenGL โ€” overrides this method. main character behavior fr fr. ๐Ÿ”ฅ

  • Reimplemented from SoShape.
  • Reimplemented in SoMarkerSet.

๐ŸŒˆ void SoPointSet::getBoundingBox(SoGetBoundingBoxAction * action) [virtual]

action method for SoGetBoundingBoxAction, periodt.

it calculates the bounding box and center coordinates for the node, then modifies the values of the action so they encompass the bounding box for this node โ€” and shifts the center point for the scene more towards the one for this node. very "make it about me" of it, and honestly? valid. โœจ

nodes that influence how geometry nodes calculate their bounding box also override this method to change the relevant state variables.

  • Reimplemented from SoShape.

๐Ÿ“ void SoPointSet::getPrimitiveCount(SoGetPrimitiveCountAction * action) [virtual]

action method for SoGetPrimitiveCountAction.

calculates the number of triangle, line segment and point primitives for the node, and adds these to the counters of the action. it's a headcount but for geometry. ๐Ÿงฎ

nodes influencing how geometry nodes calculate their primitive count also override this method to change the relevant state variables.

  • Reimplemented from SoShape.
  • Reimplemented in SoMarkerSet.

๐Ÿงš void SoPointSet::generatePrimitives(SoAction * action) [protected], [virtual]

this method implements action behavior for shape nodes for SoCallbackAction. it gets invoked from SoShape::callback().

heads up, bestie: subclasses should not override SoNode::callback(). don't do it. ๐Ÿ’€

the subclass implementations use the convenience methods SoShape::beginShape(), SoShape::shapeVertex(), and SoShape::endShape(), with SoDetail instances, to pass the primitives making up the shape back to the caller.

  • Implements SoShape.

๐Ÿ’œ void SoPointSet::computeBBox(SoAction * action, SbBox3f & box, SbVec3f & center) [protected], [virtual]

this one is implemented by SoShape subclasses to let the SoShape superclass know the exact size and weighted center point of the shape's bounding box.

the bounding box and center point should be calculated and returned in the local coordinate system.

this method implements action behavior for shape nodes for SoGetBoundingBoxAction. it gets invoked from SoShape::getBoundingBox().

again with the warning, and it matters: subclasses should not override SoNode::getBoundingBox().

and here's the fine print: the box parameter sent in is guaranteed to be an empty box, while center is undefined upon function entry. so don't come for it before it's been filled in. ๐Ÿซถ

  • Implements SoShape.

๐ŸŽ€ SbBool SoPointSet::generateDefaultNormals(SoState * state, SoNormalCache * cache) [protected], [virtual]

internal API alert ๐Ÿ’… this API member is considered internal to the library, since it's not likely to be of interest to the application programmer.

subclasses should override this method to generate default normals using the SoNormalCache class. this is more effective than using SoNormalGenerator. return TRUE if normals were generated, FALSE otherwise.

the default method just returns FALSE. lowkey lazy of it but okay. ๐Ÿ™ˆ

๐Ÿ“Œ this function is an extension for Coin, and it is not available in the original SGI Open Inventor v2.1 API.
  • Reimplemented from SoVertexShape.

๐ŸŒธ SbBool SoPointSet::generateDefaultNormals(SoState * state, SoNormalBundle * bundle) [protected], [virtual]

also internal API, bestie ๐Ÿ’… this API member is considered internal to the library, since it's not likely to be of interest to the application programmer.

subclasses should override this method to generate default normals using the SoNormalBundle class. TRUE should be returned if normals were generated, FALSE otherwise.

the default method returns FALSE. (yes, again. the default is not the moment. ๐Ÿ˜ญ)

๐Ÿ“Œ this function is an extension for Coin, and it is not available in the original SGI Open Inventor v2.1 API.
  • Reimplemented from SoVertexShape.

๐ŸŒŸ Member Data Documentation ๐ŸŒŸ

๐Ÿ’– SoSFInt32 SoPointSet::numPoints

used to specify the number of points in the point set. the coordinates for those points get taken from the state stack's set of 3D coordinates โ€” typically set up by a leading SoCoordinate3 node. ๐ŸŽฏ

if this field is equal to -1 (the default value) all coordinates currently on the state will be rendered or otherwise handled by traversal actions.

also, so you know: SoPointSet inherits the field SoNonIndexedShape::startIndex, which specifies the start index for points from the current state set of coordinates.

โš ๏ธ bestie, please note: that field has been obsoleted, but it's still provided for compatibility. it's a legacy icon, we keep it around out of respect. ๐Ÿ‘‘

๐Ÿฆ‹ Author ๐Ÿฆ‹

generated automatically by Doxygen for Coin from the source code. (not a human, just a very thorough robot doing its thing. respect. ๐Ÿค–โœจ)


and that's the whole page, bestie!! ๐ŸŽ‰ this was Coin manual page for SoPointSet, from version 4.0.10, dated Thu Jun 25 2026 00:00:00, and it lives at SoPointSet(3). slay, you made it to the end. go render some points. ๐Ÿ’…๐ŸŒŸ

๐Ÿ“ฆ where this page comes from