SoMFVec3f(3)
πΈ SoMFVec3f πΈ
ok bestie, listen β this is a page from the Coin manual, and today's main character is SoMFVec3f. Buckle up, it's giving vector-container realness. π
NAME
SoMFVec3f</p> β the class that's literally just a container for SbVec3f vectors. that's the whole vibe. β¨
SYNOPSIS
#include <Inventor/fields/SoMFVec3f.h>
Inherits SoMField.
π Public Member Functions
virtual SoType getTypeId (void) constvirtual void copyFrom (const SoField &field)const SoMFVec3f & operator= (const SoMFVec3f &field)virtual SbBool isSame (const SoField &field) constconst SbVec3f & operator[] (const int idx) constconst SbVec3f * getValues (const int start) constint find (const SbVec3f &value, SbBool addifnotfound=FALSE)void setValues (const int start, const int num, const SbVec3f *newvals)void set1Value (const int idx, const SbVec3f &value)void setValue (const SbVec3f &value)const SbVec3f & operator= (const SbVec3f &val)SbBool operator== (const SoMFVec3f &field) constSbBool operator!= (const SoMFVec3f &field) constSbVec3f * startEditing (void)void finishEditing (void)void setValuesPointer (const int num, const SbVec3f *userdata)void setValuesPointer (const int num, SbVec3f *userdata)void setValuesPointer (const int num, const float *userdata)void setValuesPointer (const int num, float *userdata)void setValues (int start, int num, const float xyz[][3])void set1Value (int idx, float x, float y, float z)void set1Value (int idx, const float xyz[3])void setValue (float x, float y, float z)void setValue (const float xyz[3])
Public Member Functions inherited from SoMField
virtual ~SoMField ()int getNum (void) constvoid 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) constvoid setDefault (SbBool defaultVal)SbBool isDefault (void) constSbBool isOfType (const SoType type) constvoid enableConnection (SbBool flag)SbBool isConnectionEnabled (void) constSbBool connectFrom (SoEngineOutput *master, SbBool notnotify=FALSE, SbBool append=FALSE)SbBool appendConnection (SoEngineOutput *master, SbBool notnotify=FALSE)void disconnect (SoEngineOutput *engineoutput)SbBool isConnectedFromEngine (void) constSbBool getConnectedEngine (SoEngineOutput *&master) constSbBool connectFrom (SoField *master, SbBool notnotify=FALSE, SbBool append=FALSE)SbBool appendConnection (SoField *master, SbBool notnotify=FALSE)void disconnect (SoField *field)SbBool isConnectedFromField (void) constSbBool getConnectedField (SoField *&master) constint getNumConnections (void) constint getForwardConnections (SoFieldList &slavelist) constint getConnections (SoFieldList &masterlist) constvoid disconnect (void)SbBool isConnected (void) constvoid setContainer (SoFieldContainer *cont)SoFieldContainer * getContainer (void) constSbBool set (const char *valuestring)void get (SbString &valuestring)SbBool shouldWrite (void) constvirtual void touch (void)virtual void startNotify (void)virtual void notify (SoNotList *nlist)SbBool enableNotify (SbBool on)SbBool isNotifyEnabled (void) constvoid addAuditor (void *f, SoNotRec::Type type)void removeAuditor (void *f, SoNotRec::Type type)int operator== (const SoField &f) constint operator!= (const SoField &f) constvirtual void connectionStatusChanged (int numconnections)SbBool isReadOnly (void) constvirtual void fixCopy (SbBool copyconnections)virtual SbBool referencesCopy (void) constvoid copyConnection (const SoField *fromfield)virtual SbBool read (SoInput *input, const SbName &name)virtual void write (SoOutput *out, const SbName &name) constvirtual void countWriteRefs (SoOutput *out) constvoid setFieldType (int type)int getFieldType (void) constSbBool getDirty (void) constvoid 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) constvirtual 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) constvirtual SbBool readConnection (SoInput *in)virtual void writeConnection (SoOutput *out) constSbBool isDestructing (void) const
π¦ Protected Attributes
SbVec3f * values
Protected Attributes inherited from SoMField
int numint maxNumSbBool userDataIsUsed
π Additional Inherited Members
Public Types inherited from SoField
enum FieldType { NORMAL_FIELD = 0, EVENTIN_FIELD, EVENTOUT_FIELD,
EXPOSED_FIELD }
π Detailed Description
ok so the SoMFVec3f class is a container for SbVec3f vectors. no cap, that's the whole thing. π«Ά
This field is used where nodes, engines or other field containers need to store an array of vectors with three elements. it's the multi-value bestie of the vec3 world. π₯
This field supports application data sharing through a setValuesPointer() method. See the SoMField documentation for information on how to use this function. (iykyk β go read that page, it's the source of truth for this one.) π
See also: SbVec3f, SoSFVec3f β¨
π Member Function Documentation
void * SoMFVec3f::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. (translation: not for you, bestie, but it's here so you know it exists.)
Creates a new instance of the class type corresponding to the SoType object.
SoType SoMFVec3f::getClassTypeId (void ) [static]
This static method returns the SoType object associated with objects of this class. π―
SoType SoMFVec3f::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 SoMFVec3f::copyFrom (const SoField & f) [virtual]
Copy value(s) from f into this field. f must be of the same type as this field. no switching up types, that's not the vibe.
Implements SoField.
SbBool SoMFVec3f::isSame (const SoField & f) const [virtual]
Check for equal type and value(s). both. not just one. periodt. π―
Implements SoField.
void SoMFVec3f::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 SoMFVec3f::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.
Implements SoMField.
const SbVec3f * SoMFVec3f::getValues (const int start) const [inline]
Returns a pointer to the values array. π«Ά
void SoMFVec3f::initClass (void ) [static]
Internal method called upon initialization of the library (from SoDB::init()) to set up the type system.
void SoMFVec3f::setValues (int start, int numarg, const float xyz[][3])
Set num vector array elements from the xyz array, reading from index 0 in the given float-triplet vector array and storing values from index start in this SoMFVec3f's array.
If start + num is larger than the current number of elements in the SoMFVec3f field, this method will automatically expand the field to accommodate all given float-vector element values. it grows. it's flexible. we love that for it. π±
void SoMFVec3f::set1Value (int idx, float x, float y, float z)
Set the vector at idx. β¨
void SoMFVec3f::set1Value (int idx, const float xyz[3])
Set the vector at idx. (same energy, array flavored) π
void SoMFVec3f::setValue (float x, float y, float z)
Set this field to contain a single vector with the given element values.
void SoMFVec3f::setValue (const float xyz[3])
Set this field to contain a single vector with the given element values.
π Author
Generated automatically by Doxygen for Coin from the source code. (yes the robot wrote it, and honestly? it ate. π)
and that's the page, bestie!! π This was Version 4.0.10, dated Thu Jun 25 2026 00:00:00, and it's filed under SoMFVec3f(3). go forth and store ur vectors, you absolute icon. πβ¨π
π¦ where this page comes from
- fedora 43: Coin4-devel 4.0.10-1.fc43 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 43: Coin4-devel 4.0.10-1.fc43 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 44: Coin4-devel 4.0.10-1.fc44 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 44: Coin4-devel 4.0.10-1.fc44 Β· BSD-3-Clause AND GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms