SoVRMLGeometry(3)

๐Ÿ“ฆ version 3.1.3, in fedora 43, fedora 44

๐ŸŽ€ NAME ๐ŸŽ€

SoVRMLGeometry โ€” bestie, this is the superclass for VRML shapes. That's the whole job description. She doesn't do the drawing herself, she's the blueprint the other shape classes are built on top of. Mother of shapes, basically. ๐Ÿ‘‘


๐Ÿฆ‹ SYNOPSIS ๐Ÿฆ‹

#include <Inventor/VRMLnodes/SoVRMLGeometry.h>

Inherits SoShape. โ€” so she's got a whole ancestry situation going on, we love a lineage ๐Ÿ’–

Inherited by SoVRMLBox, SoVRMLCone, SoVRMLCylinder, SoVRMLElevationGrid, SoVRMLExtrusion, SoVRMLSphere, SoVRMLText, SoVRMLVertexLine, SoVRMLVertexPoint, and SoVRMLVertexShape. โ€” okay so literally the entire shape squad descended from her, the way that she's the moment and the legacy ๐ŸŒˆโœจ


โœจ Public Member Functions โœจ

  • virtual SoType getTypeId (void) const โ€” hers, declared right here in her own class ๐Ÿ’…
  • virtual void search (SoSearchAction *action) โ€” also hers, no borrowing needed ๐Ÿ”
  • virtual void copyContents (const SoFieldContainer *from, SbBool copyConn) โ€” hers too, she does her own copying ๐Ÿซถ

๐ŸŒธ Public Member Functions inherited from SoShape ๐ŸŒธ

  • virtual SbBool affectsState (void) const โ€” handed down from SoShape ๐Ÿงš
  • virtual void getBoundingBox (SoGetBoundingBoxAction *action) โ€” from SoShape ๐Ÿ“ฆ
  • virtual void GLRender (SoGLRenderAction *action) โ€” from SoShape ๐ŸŽจ
  • virtual void rayPick (SoRayPickAction *action) โ€” from SoShape ๐ŸŽฏ
  • virtual void callback (SoCallbackAction *action) โ€” from SoShape ๐Ÿ“ž
  • virtual void computeBBox (SoAction *action, SbBox3f &box, SbVec3f &center)=0 โ€” from SoShape (and yes bestie, that =0 means it's pure virtual, the subclasses have to bring their own) ๐Ÿ’€
  • virtual void getPrimitiveCount (SoGetPrimitiveCountAction *action) โ€” from SoShape ๐Ÿ”ข
  • const SoBoundingBoxCache * getBoundingBoxCache (void) const โ€” from SoShape ๐Ÿ—‚๏ธ

๐Ÿ’œ Public Member Functions inherited from SoNode ๐Ÿ’œ

  • void setOverride (const SbBool state) โ€” from SoNode ๐Ÿ‘‘
  • SbBool isOverride (void) const โ€” from SoNode ๐Ÿ‘‘
  • void setNodeType (const NodeType type) โ€” from SoNode ๐Ÿท๏ธ
  • NodeType getNodeType (void) const โ€” from SoNode ๐Ÿท๏ธ
  • virtual SoNode * copy (SbBool copyconnections=FALSE) const โ€” from SoNode ๐Ÿ“‹
  • virtual void doAction (SoAction *action) โ€” from SoNode โšก
  • virtual void GLRenderBelowPath (SoGLRenderAction *action) โ€” from SoNode ๐ŸŽจ
  • virtual void GLRenderInPath (SoGLRenderAction *action) โ€” from SoNode ๐ŸŽจ
  • virtual void GLRenderOffPath (SoGLRenderAction *action) โ€” from SoNode ๐ŸŽจ
  • virtual void getMatrix (SoGetMatrixAction *action) โ€” from SoNode ๐Ÿ“
  • virtual void handleEvent (SoHandleEventAction *action) โ€” from SoNode ๐Ÿ–ฑ๏ธ
  • virtual void pick (SoPickAction *action) โ€” from SoNode ๐ŸŽฏ
  • virtual void write (SoWriteAction *action) โ€” from SoNode โœ๏ธ
  • virtual void audioRender (SoAudioRenderAction *action) โ€” from SoNode ๐Ÿ”Š
  • virtual void grabEventsSetup (void) โ€” from SoNode โœŠ
  • virtual void grabEventsCleanup (void) โ€” from SoNode ๐Ÿงน
  • virtual void startNotify (void) โ€” from SoNode ๐Ÿ””
  • uint32_t getNodeId (void) const โ€” from SoNode ๐Ÿ†”
  • virtual void writeInstance (SoOutput *out) โ€” from SoNode โœ๏ธ
  • virtual SoNode * addToCopyDict (void) const โ€” from SoNode ๐Ÿ“š
  • virtual SoFieldContainer * copyThroughConnection (void) const โ€” from SoNode ๐Ÿ”—

๐Ÿฆ‹ Public Member Functions inherited from SoFieldContainer ๐Ÿฆ‹

  • void setToDefaults (void) โ€” from SoFieldContainer ๐Ÿงผ
  • SbBool hasDefaultValues (void) const โ€” from SoFieldContainer โœ…
  • SbBool fieldsAreEqual (const SoFieldContainer *container) const โ€” from SoFieldContainer ๐ŸŸฐ
  • void copyFieldValues (const SoFieldContainer *container, SbBool copyconnections=FALSE) โ€” from SoFieldContainer ๐Ÿ“‹
  • SbBool set (const char *const fielddata) โ€” from SoFieldContainer ๐Ÿ“ฅ
  • void get (SbString &fielddata) โ€” from SoFieldContainer ๐Ÿ“ค
  • virtual int getFields (SoFieldList &l) const โ€” from SoFieldContainer ๐Ÿ“ƒ
  • virtual int getAllFields (SoFieldList &l) const โ€” from SoFieldContainer ๐Ÿ“ƒ
  • virtual SoField * getField (const SbName &name) const โ€” from SoFieldContainer ๐Ÿ”Ž
  • virtual SoField * getEventIn (const SbName &name) const โ€” from SoFieldContainer โฌ…๏ธ
  • virtual SoField * getEventOut (const SbName &name) const โ€” from SoFieldContainer โžก๏ธ
  • SbBool getFieldName (const SoField *const field, SbName &name) const โ€” from SoFieldContainer ๐Ÿท๏ธ
  • SbBool enableNotify (const SbBool flag) โ€” from SoFieldContainer ๐Ÿ””
  • SbBool isNotifyEnabled (void) const โ€” from SoFieldContainer ๐Ÿ””
  • SbBool set (const char *fielddata, SoInput *input) โ€” from SoFieldContainer ๐Ÿ“ฅ
  • void get (SbString &fielddata, SoOutput *out) โ€” from SoFieldContainer ๐Ÿ“ค
  • virtual SbBool validateNewFieldValue (SoField *field, void *newval) โ€” from SoFieldContainer ๐Ÿงช
  • virtual void addWriteReference (SoOutput *out, SbBool isfromfield=FALSE) โ€” from SoFieldContainer โœ๏ธ
  • SbBool getIsBuiltIn (void) const โ€” from SoFieldContainer ๐Ÿ 
  • virtual void getFieldsMemorySize (size_t &managed, size_t &unmanaged) const โ€” from SoFieldContainer ๐Ÿงฎ
  • void setUserData (void *userdata) const โ€” from SoFieldContainer ๐ŸŽ’
  • void * getUserData (void) const โ€” from SoFieldContainer ๐ŸŽ’

โญ Public Member Functions inherited from SoBase โญ

  • void ref (void) const โ€” from SoBase ๐Ÿ”—
  • void unref (void) const โ€” from SoBase โœ‚๏ธ
  • void unrefNoDelete (void) const โ€” from SoBase โœ‚๏ธ
  • int32_t getRefCount (void) const โ€” from SoBase ๐Ÿ”ข
  • void touch (void) โ€” from SoBase ๐Ÿ‘†
  • SbBool isOfType (SoType type) const โ€” from SoBase ๐Ÿงฌ
  • virtual SbName getName (void) const โ€” from SoBase ๐Ÿท๏ธ
  • virtual void setName (const SbName &newname) โ€” from SoBase โœ๏ธ
  • void addAuditor (void *const auditor, const SoNotRec::Type type) โ€” from SoBase ๐Ÿ‘€
  • void removeAuditor (void *const auditor, const SoNotRec::Type type) โ€” from SoBase ๐Ÿ‘‹
  • const SoAuditorList & getAuditors (void) const โ€” from SoBase ๐Ÿ“‹
  • SbBool shouldWrite (void) โ€” from SoBase โœ๏ธ
  • void assertAlive (void) const โ€” from SoBase ๐Ÿ’€

๐Ÿซถ Static Public Member Functions ๐Ÿซถ

  • static SoType getClassTypeId (void) โ€” her very own static, right here ๐Ÿ’–
  • static void initClass (void) โ€” hers, she runs her own setup โœจ

๐ŸŒˆ Static Public Member Functions inherited from SoShape ๐ŸŒˆ

  • static SoType getClassTypeId (void) โ€” from SoShape ๐Ÿงฌ
  • static void initClass (void) โ€” from SoShape โœจ
  • static void getScreenSize (SoState *const state, const SbBox3f &boundingbox, SbVec2s &rectsize) โ€” from SoShape ๐Ÿ“
  • static float getDecimatedComplexity (SoState *state, float complexity) โ€” from SoShape ๐Ÿ“‰
  • static const SoFieldData ** getFieldDataPtr (void) โ€” wait no bestie, hold that thought, that one's a protected static, she's coming up later ๐Ÿ‘€

๐ŸŒŸ Static Public Member Functions inherited from SoNode ๐ŸŒŸ

  • static uint32_t getCompatibilityTypes (const SoType &nodetype) โ€” from SoNode ๐Ÿงฌ
  • static SoType getClassTypeId (void) โ€” from SoNode ๐Ÿงฌ
  • static SoNode * getByName (const SbName &name) โ€” from SoNode ๐Ÿ”Ž
  • static int getByName (const SbName &name, SoNodeList &l) โ€” from SoNode ๐Ÿ”Ž
  • static void initClass (void) โ€” from SoNode โœจ
  • static void initClasses (void) โ€” from SoNode โœจ
  • static uint32_t getNextNodeId (void) โ€” from SoNode ๐Ÿ†”
  • static int getActionMethodIndex (const SoType type) โ€” from SoNode ๐Ÿ”ข
  • static void getBoundingBoxS (SoAction *action, SoNode *node) โ€” from SoNode ๐Ÿ“ฆ
  • static void GLRenderS (SoAction *action, SoNode *node) โ€” from SoNode ๐ŸŽจ
  • static void callbackS (SoAction *action, SoNode *node) โ€” from SoNode ๐Ÿ“ž
  • static void getMatrixS (SoAction *action, SoNode *node) โ€” from SoNode ๐Ÿ“
  • static void handleEventS (SoAction *action, SoNode *node) โ€” from SoNode ๐Ÿ–ฑ๏ธ
  • static void pickS (SoAction *action, SoNode *node) โ€” from SoNode ๐ŸŽฏ
  • static void rayPickS (SoAction *action, SoNode *node) โ€” from SoNode ๐ŸŽฏ
  • static void searchS (SoAction *action, SoNode *node) โ€” from SoNode ๐Ÿ”
  • static void writeS (SoAction *action, SoNode *node) โ€” from SoNode โœ๏ธ
  • static void audioRenderS (SoAction *action, SoNode *node) โ€” from SoNode ๐Ÿ”Š
  • static void getPrimitiveCountS (SoAction *action, SoNode *node) โ€” from SoNode ๐Ÿ”ข

๐Ÿ’ซ Static Public Member Functions inherited from SoFieldContainer ๐Ÿ’ซ

  • static void initClass (void) โ€” from SoFieldContainer โœจ
  • static SoType getClassTypeId (void) โ€” from SoFieldContainer ๐Ÿงฌ
  • static void cleanupClass (void) โ€” from SoFieldContainer ๐Ÿงน
  • static void initCopyDict (void) โ€” from SoFieldContainer ๐Ÿ“š
  • static void addCopy (const SoFieldContainer *orig, const SoFieldContainer *copy) โ€” from SoFieldContainer ๐Ÿ“‹
  • static SoFieldContainer * checkCopy (const SoFieldContainer *orig) โ€” from SoFieldContainer โœ…
  • static SoFieldContainer * findCopy (const SoFieldContainer *orig, const SbBool copyconnections) โ€” from SoFieldContainer ๐Ÿ”Ž
  • static void copyDone (void) โ€” from SoFieldContainer ๐Ÿ

๐ŸŒธ Static Public Member Functions inherited from SoBase ๐ŸŒธ

  • static void initClass (void) โ€” from SoBase โœจ
  • static SoType getClassTypeId (void) โ€” from SoBase ๐Ÿงฌ
  • static void addName (SoBase *const base, const char *const name) โ€” from SoBase ๐Ÿท๏ธ
  • static void removeName (SoBase *const base, const char *const name) โ€” from SoBase ๐Ÿท๏ธ
  • static void incrementCurrentWriteCounter (void) โ€” from SoBase โž•
  • static void decrementCurrentWriteCounter (void) โ€” from SoBase โž–
  • static SoBase * getNamedBase (const SbName &name, SoType type) โ€” from SoBase ๐Ÿ”Ž
  • static int getNamedBases (const SbName &name, SoBaseList &baselist, SoType type) โ€” from SoBase ๐Ÿ”Ž
  • static SbBool read (SoInput *input, SoBase *&base, SoType expectedtype) โ€” from SoBase ๐Ÿ“–
  • static void setInstancePrefix (const SbString &c) โ€” from SoBase ๐Ÿ”ค
  • static void setTraceRefs (SbBool trace) โ€” from SoBase ๐Ÿ›
  • static SbBool getTraceRefs (void) โ€” from SoBase ๐Ÿ›
  • static SbBool connectRoute (SoInput *input, const SbName &fromnodename, const SbName &fromfieldname, const SbName &tonodename, const SbName &tofieldname) โ€” from SoBase ๐Ÿ”—
  • static SbBool readRoute (SoInput *input) โ€” from SoBase ๐Ÿ“–

๐Ÿ™ˆ Protected Member Functions ๐Ÿ™ˆ

these are the ones only her and her subclasses get to touch, like the group chat nobody else is in ๐Ÿ’…

  • virtual const SoFieldData * getFieldData (void) const โ€” hers ๐Ÿ“ƒ
  • SoVRMLGeometry (void) โ€” her constructor, she's right here ๐Ÿผ
  • virtual ~SoVRMLGeometry () โ€” and her destructor ๐Ÿชฆ
  • void setupShapeHints (SoState *state, const SbBool ccw, const SbBool solid) โ€” hers ๐Ÿ› ๏ธ
  • virtual SbBool shouldGLRender (SoGLRenderAction *action) โ€” hers ๐ŸŽจ
  • virtual SoChildList * getChildren (void) const โ€” hers ๐Ÿ‘ถ
  • virtual void notify (SoNotList *list) โ€” hers ๐Ÿ””

๐Ÿงš Protected Member Functions inherited from SoShape ๐Ÿงš

  • SoShape (void) โ€” from SoShape ๐Ÿผ
  • virtual ~SoShape () โ€” from SoShape ๐Ÿชฆ
  • float getComplexityValue (SoAction *action) โ€” from SoShape ๐Ÿ“‰
  • virtual void generatePrimitives (SoAction *action)=0 โ€” from SoShape (another pure virtual, =0 and all, subclasses you know what to do) ๐Ÿ’€
  • void beginSolidShape (SoGLRenderAction *action) โ€” from SoShape ๐Ÿงฑ
  • void endSolidShape (SoGLRenderAction *action) โ€” from SoShape ๐Ÿงฑ
  • void GLRenderBoundingBox (SoGLRenderAction *action) โ€” from SoShape ๐Ÿ“ฆ
  • SbBool shouldPrimitiveCount (SoGetPrimitiveCountAction *action) โ€” from SoShape ๐Ÿ”ข
  • SbBool shouldRayPick (SoRayPickAction *const action) โ€” from SoShape ๐ŸŽฏ
  • void computeObjectSpaceRay (SoRayPickAction *const action) โ€” from SoShape ๐ŸŽฏ
  • void computeObjectSpaceRay (SoRayPickAction *const action, const SbMatrix &matrix) โ€” from SoShape ๐ŸŽฏ
  • virtual SoDetail * createTriangleDetail (SoRayPickAction *action, const SoPrimitiveVertex *v1, const SoPrimitiveVertex *v2, const SoPrimitiveVertex *v3, SoPickedPoint *pp) โ€” from SoShape ๐Ÿ”บ
  • virtual SoDetail * createLineSegmentDetail (SoRayPickAction *action, const SoPrimitiveVertex *v1, const SoPrimitiveVertex *v2, SoPickedPoint *pp) โ€” from SoShape ๐Ÿ“
  • virtual SoDetail * createPointDetail (SoRayPickAction *action, const SoPrimitiveVertex *v, SoPickedPoint *pp) โ€” from SoShape ๐Ÿ“
  • void invokeTriangleCallbacks (SoAction *const action, const SoPrimitiveVertex *const v1, const SoPrimitiveVertex *const v2, const SoPrimitiveVertex *const v3) โ€” from SoShape ๐Ÿ“ž
  • void invokeLineSegmentCallbacks (SoAction *const action, const SoPrimitiveVertex *const v1, const SoPrimitiveVertex *const v2) โ€” from SoShape ๐Ÿ“ž
  • void invokePointCallbacks (SoAction *const action, const SoPrimitiveVertex *const v) โ€” from SoShape ๐Ÿ“ž
  • void beginShape (SoAction *const action, const TriangleShape shapetype, SoDetail *const detail=NULL) โ€” from SoShape โ–ถ๏ธ
  • void shapeVertex (const SoPrimitiveVertex *const v) โ€” from SoShape ๐Ÿ”น
  • void endShape (void) โ€” from SoShape โน๏ธ
  • void generateVertex (SoPrimitiveVertex *const pv, const SbVec3f &point, const SbBool useTexFunc, const SoTextureCoordinateElement *const tce, const float s, const float t, const SbVec3f &normal) โ€” from SoShape ๐Ÿ”น
  • void generateVertex (SoPrimitiveVertex *const pv, const SbVec3f &point, const SbBool useTexFunc, const SoTextureCoordinateElement *const tce, const float s, const float t, const float r, const SbVec3f &normal) โ€” from SoShape (yep, there's an extra const float r on this one, not a typo, two whole overloads) ๐Ÿ”น
  • SbBool startVertexArray (SoGLRenderAction *action, const SoCoordinateElement *coords, const SbVec3f *pervertexnormals, const SbBool texpervertex, const SbBool colorpervertex) โ€” from SoShape ๐Ÿงฎ
  • void finishVertexArray (SoGLRenderAction *action, const SbBool vbo, const SbBool normpervertex, const SbBool texpervertex, const SbBool colorpervertex) โ€” from SoShape ๐Ÿงฎ

๐ŸŽ€ Protected Member Functions inherited from SoNode ๐ŸŽ€

  • SoNode (void) โ€” from SoNode ๐Ÿผ
  • virtual ~SoNode () โ€” from SoNode ๐Ÿชฆ
  • virtual SbBool readInstance (SoInput *in, unsigned short flags) โ€” from SoNode ๐Ÿ“–

๐Ÿ’œ Protected Member Functions inherited from SoFieldContainer ๐Ÿ’œ

  • SoFieldContainer (void) โ€” from SoFieldContainer ๐Ÿผ
  • virtual ~SoFieldContainer () โ€” from SoFieldContainer ๐Ÿชฆ

๐Ÿ“ Protected Member Functions inherited from SoBase ๐Ÿ“

  • SoBase (void) โ€” from SoBase ๐Ÿผ
  • virtual ~SoBase () โ€” from SoBase ๐Ÿชฆ
  • virtual void destroy (void) โ€” from SoBase ๐Ÿ’ฅ
  • SbBool hasMultipleWriteRefs (void) const โ€” from SoBase ๐Ÿ”—
  • SbBool writeHeader (SoOutput *out, SbBool isgroup, SbBool isengine) const โ€” from SoBase โœ๏ธ
  • void writeFooter (SoOutput *out) const โ€” from SoBase โœ๏ธ
  • virtual const char * getFileFormatName (void) const โ€” from SoBase ๐Ÿ“„

๐ŸŒŸ Static Protected Member Functions ๐ŸŒŸ

  • static const SoFieldData ** getFieldDataPtr (void) โ€” her own static protected one, here she is, told you she'd show up ๐Ÿ’…

๐Ÿง Static Protected Member Functions inherited from SoShape ๐Ÿง

  • static const SoFieldData ** getFieldDataPtr (void) โ€” from SoShape ๐Ÿ“ƒ

๐Ÿฆ„ Static Protected Member Functions inherited from SoNode ๐Ÿฆ„

  • static const SoFieldData ** getFieldDataPtr (void) โ€” from SoNode ๐Ÿ“ƒ
  • static void setNextActionMethodIndex (int index) โ€” from SoNode ๐Ÿ”ข
  • static int getNextActionMethodIndex (void) โ€” from SoNode ๐Ÿ”ข
  • static void incNextActionMethodIndex (void) โ€” from SoNode โž•
  • static void setCompatibilityTypes (const SoType &nodetype, const uint32_t bitmask) โ€” from SoNode ๐Ÿงฌ

and bestie, that's only the top half of this page ๐Ÿ’… the rest is literally still loading, keep scrolling ๐ŸŒˆ

Static Protected Member Functions inherited from SoBase ๐Ÿ’ซ

  • static uint32_t getCurrentWriteCounter (void) โ€” hands you the current write counter, no cap.
  • static void staticDataLock (void) โ€” locks the static data, bestie. gatekeeping the globals fr.
  • static void staticDataUnlock (void) โ€” and this one unlocks it again. balance โœจ

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 }

Protected Types inherited from SoBase

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

Protected Attributes inherited from SoNode

uint32_t uniqueId

Protected Attributes inherited from SoFieldContainer

SbBool isBuiltIn

Static Protected Attributes inherited from SoNode

static uint32_t nextUniqueId = 1
static int nextActionMethodIndex = 0

Detailed Description ๐Ÿ“–

Okay so SoVRMLGeometry is the superclass for all the VRML shapes. It's giving founding mother of the whole VRML geometry fam. ๐Ÿ’… Every VRML shape you know and love traces back to her.


Constructor & Destructor Documentation ๐Ÿงš

SoVRMLGeometry::SoVRMLGeometry (void ) [protected]

Constructor. yeah that's it, she just exists. iconic of her. โœจ

SoVRMLGeometry::~SoVRMLGeometry () [protected], [virtual]

Destructor. the farewell arc ๐Ÿ˜ญ virtual, so she cleans up right for the whole bloodline.


Member Function Documentation ๐Ÿฆ‹

SoType SoVRMLGeometry::getTypeId (void ) const [virtual]

Returns the type identification of an object derived from a class inheriting SoBase. This is used for run-time type checking and "downward" casting. iykyk โ€” it's literally how Coin figures out what you are at runtime.

Usage example, keep it exact bestie:

void foo(SoNode * node)
{
  if (node->getTypeId() == SoFile::getClassTypeId()) {
    SoFile * filenode = (SoFile *)node;  // safe downward cast, knows the type
  }
}

Now for all my application programmers out there who wanna extend the library with new nodes, engines, nodekits, draggers or whatever: this method needs to be overridden in all subclasses. that's not a suggestion, that's the assignment. ๐Ÿ’€ It's typically done as part of setting up the full type system for extension classes, which is usually accomplished by using the pre-defined macros available through for instance Inventor/nodes/SoSubNode.h (SO_NODE_INIT_CLASS and SO_NODE_CONSTRUCTOR for node classes), Inventor/engines/SoSubEngine.h (for engine classes) and so on.

For more info on writing Coin extensions, see the class documentation of the toplevel superclasses for the various class groups. ๐Ÿซถ

Reimplemented from SoShape.

Reimplemented in SoVRMLBox, SoVRMLCone, SoVRMLCylinder, SoVRMLElevationGrid, SoVRMLExtrusion, SoVRMLIndexedFaceSet, SoVRMLIndexedLine, SoVRMLIndexedLineSet, SoVRMLIndexedShape, SoVRMLPointSet, SoVRMLSphere, SoVRMLText, SoVRMLVertexLine, SoVRMLVertexPoint, and SoVRMLVertexShape. look at the whole squad showing up. ๐Ÿ‘‘

const SoFieldData * SoVRMLGeometry::getFieldData (void ) const [protected], [virtual]

Returns a pointer to the class-wide field data storage object for this instance. If no fields are present, returns NULL. no fields, no pointer, we move on. โœจ

Reimplemented from SoShape.

Reimplemented in SoVRMLBox, SoVRMLCone, SoVRMLCylinder, SoVRMLElevationGrid, SoVRMLExtrusion, SoVRMLIndexedFaceSet, SoVRMLIndexedLine, SoVRMLIndexedLineSet, SoVRMLIndexedShape, SoVRMLPointSet, SoVRMLSphere, SoVRMLText, SoVRMLVertexLine, SoVRMLVertexPoint, and SoVRMLVertexShape.

void SoVRMLGeometry::search (SoSearchAction * action) [virtual]

Action method for SoSearchAction. ๐Ÿ•ต๏ธ

Compares the search criteria from the action to see if this node is a match. Searching is done by matching up all criteria set up in the SoSearchAction โ€” if any of the requested criteria is a miss, the search is not deemed successful for the node. it's giving โœจstrictโœจ, one wrong detail and the whole vibe check fails.

See also: SoSearchAction

Reimplemented from SoNode.

void SoVRMLGeometry::copyContents (const SoFieldContainer * from, SbBool copyconnections) [virtual]

Makes a deep copy of all data of from into this instance, except external scenegraph references if copyconnections is FALSE. the deepest of copies, no half measures. ๐Ÿ’…

This is the protected method that should be overridden by extension node / engine / dragger / whatever subclasses which needs to account for internal data that are not handled automatically.

For copying nodes from application code, you should not invoke this function directly, but rather call the SoNode::copy() function:

SoNode * mynewnode = templatenode->copy();

The same also goes for engines.

Make sure that when you override the copyContents() method in your extension class that you also make it call upwards to it's parent superclass in the inheritance hierarchy, as copyContents() in for instance SoNode and SoFieldContainer does important work. skip the parent call and things get weird, and not in a cute way. ๐Ÿ’€

It should go something like this:

void
MyCoinExtensionNode::copyContents(const SoFieldContainer * from,
                                  SbBool copyconnections)
{
  // let parent superclasses do their thing (copy fields, copy
  // instance name, etc etc)
  SoNode::copyContents(from, copyconnections);

  // [..then copy internal data..]
}

Reimplemented from SoNode.

void SoVRMLGeometry::setupShapeHints (SoState * state, const SbBool ccw, const SbBool solid) [protected]

Convenience method that updates the shape hints element. lil helper doing the most behind the scenes. ๐ŸŽ€

SbBool SoVRMLGeometry::shouldGLRender (SoGLRenderAction * action) [protected], [virtual]

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer. aka: not for you bestie, it's giving staff-only door. ๐Ÿ™ˆ

Reimplemented from SoShape.

Reimplemented in SoVRMLVertexLine, SoVRMLVertexPoint, and SoVRMLVertexShape.

SoChildList * SoVRMLGeometry::getChildren (void ) const [protected], [virtual]

Returns list of children for this node. the family tree, literally. ๐ŸŒธ

Reimplemented from SoNode.

Reimplemented in SoVRMLText.

void SoVRMLGeometry::notify (SoNotList * l) [protected], [virtual]

Notifies all auditors for this instance when changes are made. gossip girl behavior and honestly? we respect it. ๐Ÿ“ฃ

Reimplemented from SoShape.

Reimplemented in SoVRMLElevationGrid, SoVRMLExtrusion, SoVRMLIndexedLine, SoVRMLIndexedLineSet, SoVRMLIndexedShape, SoVRMLText, SoVRMLVertexLine, SoVRMLVertexPoint, and SoVRMLVertexShape.


Author ๐ŸŒˆ

Generated automatically by Doxygen for Coin from the source code. not me being auto-generated and still having main character energy ๐Ÿ’…


okay that's the whole page bestie, we ate and left no crumbs โœจ this was Coin, Version 3.1.3, and the page is dated SoVRMLGeometry(3) โ€” ily, go make something pretty ๐Ÿซถ๐Ÿ’–

๐Ÿ“ฆ where this page comes from