SoMFVec2s(3)

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

πŸ’… SoMFVec2s πŸ’…

ok so this is the SoMFVec2s(3) page, straight out of the Library Functions Manual, and bestie we are going to get you fluent in it. no cap. πŸ’–


πŸŽ€ NAME πŸŽ€

SoMFVec2s β€” the class that is literally a container for SbVec2s vectors. that's the whole job. she holds your 2D short vectors. icon behaviour. πŸ‘‘


✨ SYNOPSIS ✨

#include <Inventor/fields/SoMFVec2s.h>

Inherits SoMField. (so she's got the whole multi-value family tree behind her, we love a legacy moment 🌸)

🫢 Public Member Functions

  • virtual SoType getTypeId (void) const β€” hands you the type id, the little name tag that says this is the Coin field class she belongs to
  • virtual void copyFrom (const SoField &field) β€” copy the value(s) over from field
  • const SoMFVec2s & operator= (const SoMFVec2s &field) β€” assignment, girl math but for fields
  • virtual SbBool isSame (const SoField &field) const β€” are the types and values the same? yes or no babes
  • SbVec2s operator[] (const int idx) const β€” index into it like an array, so satisfying
  • const SbVec2s * getValues (const int start) const β€” pointer to the values array, starting at start
  • int find (SbVec2s value, SbBool addifnotfound=0) β€” go looking for value, and if addifnotfound is truthy, add it when it's not there
  • void setValues (const int start, const int num, const SbVec2s *newvals) β€” drop in num values from newvals at index start
  • void set1Value (const int idx, SbVec2s value) β€” set exactly one vector at idx
  • void setValue (SbVec2s value) β€” collapse the whole field down to a single vector
  • SbVec2s operator= (SbVec2s val) β€” assign a single SbVec2s in, slay
  • SbBool operator== (const SoMFVec2s &field) const β€” equality check against another SoMFVec2s
  • SbBool operator!= (const SoMFVec2s &field) const β€” the opposite of that, obviously πŸ’…
  • SbVec2s * startEditing (void) β€” begin editing, get your hands on the raw data
  • void finishEditing (void) β€” and we're done editing, close it out
  • void setValuesPointer (const int num, const SbVec2s *userdata) β€” point at num of your const SbVec2s data instead of copying, data sharing era
  • void setValuesPointer (const int num, SbVec2s *userdata) β€” same thing, non-const SbVec2s *
  • void setValuesPointer (const int num, const short *userdata) β€” same thing but the userdata is a const short *
  • void setValuesPointer (const int num, short *userdata) β€” and the plain short * version
  • void setValues (int start, int num, const short xy[][2]) β€” set num vector array elements from xy, starting at index start
  • void set1Value (int idx, short x, short y) β€” set the vector at idx from a pair of shorts
  • void set1Value (int idx, const short xy[2]) β€” set the vector at idx from a short[2]
  • void setValue (short x, short y) β€” make this field hold exactly one vector with these element values
  • void setValue (const short xy[2]) β€” same energy, but from an array

🌈 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)

πŸ¦‹ Public Member Functions inherited from SoField

  • virtual ~SoField ()
  • void setIgnored (SbBool ignore)
  • SbBool isIgnored (void) const
  • void setDefault (SbBool def)
  • SbBool isDefault (void) const
  • SbBool isOfType (const SoType type) const
  • void enableConnection (SbBool flag)
  • SbBool isConnectionEnabled (void) const
  • SbBool connectFrom (SoEngineOutput *master, SbBool notnotify=0, SbBool append=0)
  • SbBool appendConnection (SoEngineOutput *master, SbBool notnotify=0)
  • void disconnect (SoEngineOutput *engineoutput)
  • SbBool isConnectedFromEngine (void) const
  • SbBool getConnectedEngine (SoEngineOutput *&master) const
  • SbBool connectFrom (SoField *master, SbBool notnotify=0, SbBool append=0)
  • SbBool appendConnection (SoField *master, SbBool notnotify=0)
  • 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 *in, 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 initClass (void)

πŸ’œ Static Public Member Functions inherited from SoField

  • static void initClass (void)
  • static void initClasses (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)

πŸ’œ Protected Member Functions inherited from SoField

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

🧚 Protected Attributes

  • SbVec2s * 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 🌈

Bestie, listen. The SoMFVec2s class is a container for SbVec2s vectors. That's the assignment. πŸ’–

Where does she get used? Anywhere nodes, engines or other field containers need to store an array of vectors with two elements. That's her whole moment. 🌟

She also supports application data sharing through a setValuesPointer() method. If you wanna know how to actually use that function, go read the SoMField documentation β€” it's all in there. 🫢

See also

  • SbVec2s, SoSFVec2s

Since

  • Coin 2.5 (she's a Coin 2.5 girlie, vintage but make it cute πŸŽ€)

πŸ› οΈ Member Function Documentation πŸ› οΈ

✨ SoType SoMFVec2s::getTypeId (void ) const [virtual] ✨

Returns the type identification instance which uniquely identifies the Coin field class the object belongs to. It's her government name, basically. πŸ’…

See also

  • getClassTypeId(), SoType

Implements SoField.


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

Copy value(s) from f into this field. Heads up though: f must be of the same type as this field. no mixing, no matching, periodt.

Implements SoField.


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

Check for equal type and value(s). both or nothing. 😀

Implements SoField.


✨ void SoMFVec2s::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. Like, stay out of the kitchen bestie, this one's not for you.

Implements SoMField.


✨ void SoMFVec2s::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. Very behind-the-scenes, very stage crew energy. 🎭

Implements SoMField.


✨ const SbVec2s * SoMFVec2s::getValues (const int start) const [inline] ✨

Returns a pointer to the values array. 🫴✨

References SoMField::num.


✨ void SoMFVec2s::setValues (int start, int numarg, const short xy[][2]) ✨

Set num vector array elements from xy, starting at index start.

References SoMField::maxNum, SoMField::num, and SoField::valueChanged().


✨ void SoMFVec2s::set1Value (int idx, short x, short y) ✨

Set the vector at idx. one vector, two shorts, done. πŸ’…


✨ void SoMFVec2s::set1Value (int idx, const short xy[2]) ✨

Set the vector at idx. (yes bestie, same thing, different argument shape 🌸)


✨ void SoMFVec2s::setValue (short x, short y) ✨

Set this field to contain a single vector with the given element values. just the one. main character, solo. πŸ‘‘


✨ void SoMFVec2s::setValue (const short xy[2]) ✨

Set this field to contain a single vector with the given element values. same vibe, array flavour. πŸ“

References SoMField::setNum().


✍️ Author ✍️

Generated automatically by Doxygen for Coin from the source code. (not a human, just a robot doing her little documentation dance πŸ€–πŸ’ƒ)


ok and that's the whole page bestie!! πŸŽ€βœ¨

cute little sign-off for you: this one came from Coin, Version 2.5.0, dated alongside SoMFVec2s(3) β€” so if you ever need to cite your sources, you know exactly where she's from. now go forth and store your two-element short vectors, you absolute icon. πŸ’–πŸ¦‹πŸŒΈπŸ«ΆπŸ’…

πŸ“¦ where this page comes from