SoMFVec4d(3)

πŸ“¦
version 4.0.10 Β· 4 versions
, in fedora 43, fedora 44

πŸ’– SoMFVec4d β€” NAME πŸ’–

okay so bestie, welcome to the SoMFVec4d(3) page from the Coin library πŸ’… this is the section-3 manual entry, and it's all about one lil class:

SoMFVec4d β€” it's a container for SbVec4d vectors. that's it, that's the whole vibe. a multi-field that holds a whole array of four-element double vectors. slay ✨


✨ SYNOPSIS ✨

#include <Inventor/fields/SoMFVec4d.h>

Inherits SoMField. πŸ‘‘

🫢 Public Member Functions

virtual SoType getTypeId (void) const
virtual void copyFrom (const SoField &field)
const SoMFVec4d & operator= (const SoMFVec4d &field)
virtual SbBool isSame (const SoField &field) const
const SbVec4d & operator[] (const int idx) const
const SbVec4d * getValues (const int start) const
int find (const SbVec4d &value, SbBool addifnotfound=FALSE)
void setValues (const int start, const int num, const SbVec4d *newvals)
void set1Value (const int idx, const SbVec4d &value)
void setValue (const SbVec4d &value)
const SbVec4d & operator= (const SbVec4d &val)
SbBool operator== (const SoMFVec4d &field) const
SbBool operator!= (const SoMFVec4d &field) const
SbVec4d * startEditing (void)
void finishEditing (void)
void setValuesPointer (const int num, const SbVec4d *userdata)
void setValuesPointer (const int num, SbVec4d *userdata)
void setValuesPointer (const int num, const double *userdata)
void setValuesPointer (const int num, double *userdata)
void setValues (int start, int num, const double xyzw[][4])
void set1Value (int idx, double x, double y, double z, double w)
void set1Value (int idx, const double xyzw[4])
void setValue (double x, double y, double z, double w)
void setValue (const double xyzw[4])

🌸 Public Member Functions inherited from SoMField

virtual ~SoMField ()
int getNum (void) const
void setNum (const int num)
virtual void deleteValues (int start, int num=-1)
virtual void insertSpace (int start, int num)
SbBool set1 (const int index, const char *const valuestring)
void get1 (const int index, SbString &valuestring)
virtual void enableDeleteValues (void)
virtual SbBool isDeleteValuesEnabled (void) const

πŸ¦‹ Public Member Functions inherited from SoField

virtual ~SoField ()
void setIgnored (SbBool ignore)
SbBool isIgnored (void) const
void setDefault (SbBool defaultVal)
SbBool isDefault (void) const
SbBool isOfType (const SoType type) const
void enableConnection (SbBool flag)
SbBool isConnectionEnabled (void) const
SbBool connectFrom (SoEngineOutput *master, SbBool notnotify=FALSE,
    SbBool append=FALSE)
SbBool appendConnection (SoEngineOutput *master, SbBool notnotify=FALSE)
void disconnect (SoEngineOutput *engineoutput)
SbBool isConnectedFromEngine (void) const
SbBool getConnectedEngine (SoEngineOutput *&master) const
SbBool connectFrom (SoField *master, SbBool notnotify=FALSE, SbBool
    append=FALSE)
SbBool appendConnection (SoField *master, SbBool notnotify=FALSE)
void disconnect (SoField *field)
SbBool isConnectedFromField (void) const
SbBool getConnectedField (SoField *&master) const
int getNumConnections (void) const
int getForwardConnections (SoFieldList &slavelist) const
int getConnections (SoFieldList &masterlist) const
void disconnect (void)
SbBool isConnected (void) const
void setContainer (SoFieldContainer *cont)
SoFieldContainer * getContainer (void) const
SbBool set (const char *valuestring)
void get (SbString &valuestring)
SbBool shouldWrite (void) const
virtual void touch (void)
virtual void startNotify (void)
virtual void notify (SoNotList *nlist)
SbBool enableNotify (SbBool on)
SbBool isNotifyEnabled (void) const
void addAuditor (void *f, SoNotRec::Type type)
void removeAuditor (void *f, SoNotRec::Type type)
int operator== (const SoField &f) const
int operator!= (const SoField &f) const
virtual void connectionStatusChanged (int numconnections)
SbBool isReadOnly (void) const
virtual void fixCopy (SbBool copyconnections)
virtual SbBool referencesCopy (void) const
void copyConnection (const SoField *fromfield)
virtual SbBool read (SoInput *input, const SbName &name)
virtual void write (SoOutput *out, const SbName &name) const
virtual void countWriteRefs (SoOutput *out) const
void setFieldType (int type)
int getFieldType (void) const
SbBool getDirty (void) const
void setDirty (SbBool dirty)
void evaluate (void) const

πŸ’œ Static Public Member Functions

static void * createInstance (void)
static SoType getClassTypeId (void)
static void initClass (void)

🌈 Static Public Member Functions inherited from SoMField

static SoType getClassTypeId (void)
static void atexit_cleanup (void)
static void initClass (void)

⭐ Static Public Member Functions inherited from SoField

static void initClass (void)
static void initClasses (void)
static void cleanupClass (void)
static SoType getClassTypeId (void)

πŸŽ€ Protected Member Functions

virtual void deleteAllValues (void)
virtual void copyValue (int to, int from)
virtual int fieldSizeof (void) const
virtual void * valuesPtr (void)
virtual void setValuesPtr (void *ptr)
virtual void allocValues (int num)

🧚 Protected Member Functions inherited from SoMField

SoMField (void)
virtual void makeRoom (int newnum)
virtual SoNotRec createNotRec (SoBase *container)
void setChangedIndex (const int chgidx)
void setChangedIndices (const int chgidx=-1, const int numchgind=0)

πŸ“ Protected Member Functions inherited from SoField

SoField (void)
void valueChanged (SbBool resetdefault=TRUE)
virtual void evaluateConnection (void) const
virtual SbBool readConnection (SoInput *in)
virtual void writeConnection (SoOutput *out) const
SbBool isDestructing (void) const

πŸ‘‘ Protected Attributes

SbVec4d * values

πŸ’€ Protected Attributes inherited from SoMField

int num
int maxNum
SbBool userDataIsUsed

πŸ™ˆ Additional Inherited Members

Public Types inherited from SoField:

enum FieldType { NORMAL_FIELD = 0, EVENTIN_FIELD, EVENTOUT_FIELD,
    EXPOSED_FIELD }

🌸 DETAILED DESCRIPTION 🌸

okay so, SoMFVec4d is a container for SbVec4d vectors, periodt. πŸ’…

this field is what you reach for when nodes, engines, or other field containers need to store an array of vectors with four elements. like, a whole squad of SbVec4ds, all chilling in one field. iconic.

this field supports application data sharing through a setValuesPointer() method. bestie if you wanna know how to actually use that, go read the SoMField documentation, it's all there. πŸ“š

See also: SbVec4d, SoSFVec4d

⚠️ real talk: be aware that this class is an extension for Coin, and it is not available in the original SGI Open Inventor v2.1 API. so if you're porting old SGI code, don't come for me. 😭

Since: Coin 2.5 πŸŽ‰


πŸŽ€ MEMBER FUNCTION DOCUMENTATION πŸŽ€

void * SoMFVec4d::createInstance (void ) [static]

this API member is considered internal to the library, as it is not likely to be of interest to the application programmer. so like, it's giving backstage pass energy β€” not for the general public. πŸ™ˆ

creates a new instance of the class type corresponding to the SoType object.

SoType SoMFVec4d::getClassTypeId (void ) [static]

this static method returns the SoType object associated with objects of this class. it's how the type system knows who you are at runtime. slay.

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

returns the type identification of an object derived from a class inheriting SoField. this is used for runtime type checking and "downward" casting.

Implements SoField.

void SoMFVec4d::copyFrom (const SoField & f) [virtual]

copy value(s) from f into this field. f must be of the same type as this field. no mixing, no matching, okay bestie? βœ‹

Implements SoField.

SbBool SoMFVec4d::isSame (const SoField & f) const [virtual]

check for equal type and value(s). basically a vibe check for fields. πŸ’…

Implements SoField.

void SoMFVec4d::deleteAllValues (void ) [protected], [virtual]

this API member is considered internal to the library, as it is not likely to be of interest to the application programmer.

Implements SoMField.

void SoMFVec4d::copyValue (int to, int from) [protected], [virtual]

this method is used for moving values around internally within a multivalue field. it needs to be overridden in each field so it automatically takes care of running copy constructors where necessary. so like, don't skip it when you're subclassing, fr fr.

Implements SoMField.

const SbVec4d * SoMFVec4d::getValues (const int start) const [inline]

returns a pointer to the values array. 🫢 just a lil pointer, no cap.

void SoMFVec4d::initClass (void ) [static]

internal method called upon initialization of the library (from SoDB::init()) to set up the type system. it's the behind-the-scenes main character. ✨

void SoMFVec4d::setValues (int start, int numarg, const double xyzw[][4])

set num vector array elements from xyzw, starting at index start.

void SoMFVec4d::set1Value (int idx, double x, double y, double z, double w)

set the vector at idx. one vector, four doubles, zero drama.

void SoMFVec4d::set1Value (int idx, const double xyzw[4])

set the vector at idx.

void SoMFVec4d::setValue (double x, double y, double z, double w)

set this field to contain a single vector with the given element values. one and done. πŸ’–

void SoMFVec4d::setValue (const double xyzw[4])

set this field to contain a single vector with the given element values.


πŸ‘‘ AUTHOR πŸ‘‘

Generated automatically by Doxygen for Coin from the source code. so technically the "author" is a robot, but we respect the hustle. πŸ€–βœ¨


and that's the whole page bestie!! πŸŽ€ this was Version 4.0.10, dated Thu Jun 25 2026 00:00:00 β€” and yeah, that's the footer, folded into a lil sign-off because you deserve cute things. go forth and store your four-element vectors, you absolute legend. πŸ¦‹πŸ’œ periodt.

πŸ“¦ where this page comes from