SoSFMatrix(3)

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

πŸ’– SoSFMatrix πŸ’–

okay so bestie, welcome to SoSFMatrix(3) from the Coin library ✨ this is the page for SoSFMatrix β€” and yes it lives in the Coin manual, section 3, and it's about to be your new favorite little container πŸ’…


πŸŽ€ NAME πŸŽ€

SoSFMatrix β€” the class that is literally just a container for an SbMatrix. That's it, that's the whole personality. One matrix, single field, no drama πŸ¦‹


✨ SYNOPSIS ✨

#include <Inventor/fields/SoSFMatrix.h>

Inherits SoSField. πŸ’–

🌸 Public Member Functions

  • virtual SoType getTypeId (void) const
  • virtual void copyFrom (const SoField &field)
  • const SoSFMatrix & operator= (const SoSFMatrix &field)
  • virtual SbBool isSame (const SoField &field) const
  • const SbMatrix & getValue (void) const
  • void setValue (const SbMatrix &newvalue)
  • const SbMatrix & operator= (const SbMatrix &newvalue)
  • int operator== (const SoSFMatrix &field) const
  • int operator!= (const SoSFMatrix &field) const
  • void setValue (const float a11, const float a12, const float a13, const float a14, const float a21, const float a22, const float a23, const float a24, const float a31, const float a32, const float a33, const float a34, const float a41, const float a42, const float a43, const float a44)

🫢 Public Member Functions inherited from SoSField

  • virtual ~SoSField ()

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

  • static void initClass (void)
  • static SoType getClassTypeId (void)
  • static void atexit_cleanup (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 Attributes

  • SbMatrix value

πŸ‘‘ Additional Inherited Members

Public Types inherited from SoField

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

Protected Member Functions inherited from SoSField

  • SoSField (void)

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
  • virtual SoNotRec createNotRec (SoBase *cont)

πŸ”₯ Detailed Description πŸ”₯

SoSFMatrix is a container for an SbMatrix. no cap, that's the assignment and it ate πŸ’…

So like β€” this field is what you reach for when nodes, engines or other field containers need to store a 4x4 matrix. It's the single-value sibling of the multi-value stuff, and it knows exactly one matrix and it's gonna hold it with main character energy πŸ‘‘

Fields of this type stores their value to file as a set of 16 floating point values, written from the matrix in row-major mode. That detail matters, bestie β€” row-major, fr fr, don't come at me with column-major 🌈

See also

  • SoMFMatrix β€” the multi-value version, if one matrix isn't enough for you πŸ¦‹

πŸ’… Member Function Documentation πŸ’…

void * SoSFMatrix::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. 🫣

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

SoType SoSFMatrix::getClassTypeId (void ) [static]

This static method returns the SoType object associated with objects of this class. It's giving type-system royalty ✨

SoType SoSFMatrix::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. iykyk 😌

Implements SoField.

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

Copy value(s) from f into this field. f must be of the same type as this field β€” like, don't try to be cute and pass something else, it won't slay πŸ’€

Implements SoField.

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

Check for equal type and value(s). Basically the vibe check for fields 🌸

Implements SoField.

void SoSFMatrix::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 bestie doing the real work 🧚

void SoSFMatrix::setValue (const float a11, const float a12, const float a13, const float a14, const float a21, const float a22, const float a23, const float a24, const float a31, const float a32, const float a33, const float a34, const float a41, const float a42, const float a43, const float a44)

Set matrix elements. All sixteen of them, handed over one by one like friendship bracelets πŸŽ€ a11 through a44, and yes you have to give every single one.


🌟 Author 🌟

Generated automatically by Doxygen for Coin from the source code. Not a human, just a very thorough little robot πŸ€–πŸ’–


and that's the whole page, bestie!! πŸŽ‰ this was SoSFMatrix(3) from Coin, and the footer energy is: Version 4.0.10, dated Thu Jun 25 2026 00:00:00 β€” so yeah, that's the version and the timestamp, slay πŸ’…βœ¨ periodt.

πŸ“¦ where this page comes from