SOGLTEXTUREMATRIXELEMENT(3coin3)

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

✨ NAME ✨

SoGLTextureMatrixElement β€” bestie, this is the class that keeps your OpenGL texture matrix updated πŸ’… (it lives in the Coin library, manual section 3, if you were wondering πŸŽ€)


πŸ¦‹ SYNOPSIS πŸ¦‹

#include <Inventor/elements/SoGLTextureMatrixElement.h>

It Inherits SoTextureMatrixElement. Family tree energy fr fr 🌸

πŸ’– Public Member Functions πŸ’–

  • virtual void init (SoState *state)
  • virtual void pop (SoState *state, const SoElement *prevTopElement)
  • virtual void setElt (const SbMatrix &matrix)
  • virtual void makeEltIdentity (void)
  • virtual void multElt (const SbMatrix &matrix)
  • virtual void translateEltBy (const SbVec3f &translation)
  • virtual void rotateEltBy (const SbRotation &translation)
  • virtual void scaleEltBy (const SbVec3f &scaleFactor)

🌟 Public Member Functions inherited from SoTextureMatrixElement 🌟

  • virtual void push (SoState *state)

🌟 Public Member Functions inherited from SoAccumulatedElement 🌟

  • virtual SbBool matches (const SoElement *element) const

🌟 Public Member Functions inherited from SoElement 🌟

  • const SoType getTypeId (void) const
  • int getStackIndex (void) const
  • void setDepth (const int depth)
  • int getDepth (void) const
  • virtual void print (FILE *file=stdout) const
  • virtual ~SoElement ()

⭐ Static Public Member Functions ⭐

  • static SoType getClassTypeId (void)
  • static int getClassStackIndex (void)
  • static void * createInstance (void)
  • static void initClass (void)
  • static void setEltIdentity (void)

🌟 Static Public Member Functions inherited from SoTextureMatrixElement 🌟

  • static SoType getClassTypeId (void)
  • static int getClassStackIndex (void)
  • static void * createInstance (void)
  • static void initClass (void)
  • static void makeIdentity (SoState *const state, SoNode *const node)
  • static void set (SoState *const state, SoNode *const node, const SbMatrix &matrix)
  • static void mult (SoState *const state, SoNode *const node, const SbMatrix &matrix)
  • static void translateBy (SoState *const state, SoNode *const node, const SbVec3f &translation)
  • static void rotateBy (SoState *const state, SoNode *const node, const SbRotation &rotation)
  • static void scaleBy (SoState *const state, SoNode *const node, const SbVec3f &scaleFactor)
  • static const SbMatrix & get (SoState *const state)
  • static void emptyMatrix (SoState *const state)

🌟 Static Public Member Functions inherited from SoAccumulatedElement 🌟

  • static SoType getClassTypeId (void)
  • static int getClassStackIndex (void)
  • static void initClass (void)

🌟 Static Public Member Functions inherited from SoElement 🌟

  • static void initClass (void)
  • static SoType getClassTypeId (void)
  • static int getClassStackIndex (void)
  • static void initElements (void)
  • static int getNumStackIndices (void)
  • static SoType getIdFromStackIndex (const int stackIndex)

πŸŽ€ Protected Member Functions πŸŽ€

  • virtual ~SoGLTextureMatrixElement ()

🌸 Protected Member Functions inherited from SoTextureMatrixElement 🌸

  • virtual ~SoTextureMatrixElement ()
  • virtual const SbMatrix & getElt (void) const

🌸 Protected Member Functions inherited from SoAccumulatedElement 🌸

  • void clearNodeIds (void)
  • void addNodeId (const SoNode *const node)
  • void setNodeId (const SoNode *const node)
  • void copyNodeIds (const SoAccumulatedElement *copyfrom)
  • virtual SoElement * copyMatchInfo (void) const
  • virtual void captureThis (SoState *state) const

🌸 Protected Member Functions inherited from SoElement 🌸

  • SoElement (void)
  • void capture (SoState *const state) const
  • void setTypeId (const SoType typeId)
  • void setStackIndex (const int index)
  • SoElement * getNextInStack (void) const
  • SoElement * getNextFree (void) const

πŸ‘‘ Additional Inherited Members πŸ‘‘

🧚 Static Protected Member Functions inherited from SoElement 🧚

  • static SoElement * getElement (SoState *const state, const int stackIndex)
  • static const SoElement * getConstElement (SoState *const state, const int stackIndex)
  • static int createStackIndex (const SoType id)

🧚 Protected Attributes inherited from SoTextureMatrixElement 🧚

  • SbMatrix textureMatrix

🧚 Protected Attributes inherited from SoAccumulatedElement 🧚

  • SbList< uint32_t > nodeIds

🧚 Protected Attributes inherited from SoElement 🧚

  • SoType typeId
  • int stackIndex
  • int depth

🧚 Static Protected Attributes inherited from SoElement 🧚

  • static int classStackIndex
  • static SoTypeList * stackToType

🌈 Detailed Description 🌈

Okay so bestie, the SoGLTextureMatrixElement class is literally here to update the OpenGL texture matrix. That's the whole job. πŸ‘‘

Since (for some weird reason 😭) most OpenGL implementations have a very small texture matrix stack, and since the matrix stack also is broken on many OpenGL implementations, the texture matrix is always loaded into OpenGL. We do not push() and pop() matrices. No cap. 🚫🧒


πŸ’œ Constructor & Destructor Documentation πŸ’œ

SoGLTextureMatrixElement::~SoGLTextureMatrixElement (void ) [protected], [virtual]

The destructor. It destroys. Iconic behaviour. ✨


πŸ”₯ Member Function Documentation πŸ”₯

void * SoGLTextureMatrixElement::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… you can look at it, but it's giving backstage-pass energy, not front-row. πŸ™ˆ

void SoGLTextureMatrixElement::init (SoState * state) [virtual]

This function initializes the element type in the given SoState. It is called for the first element of each enabled element type in SoState objects.

Reimplemented from SoTextureMatrixElement. 🫢

void SoGLTextureMatrixElement::pop (SoState * state, const SoElement * prevTopElement) [virtual]

This method is callled when the state is popped, and the depth of the element is bigger than the current state depth. pop() is called on the new top of stack, and a pointer to the previous top of stack is passed in prevTopElement.

Override this method if you need to copy some state information from the previous top of stack.

Reimplemented from SoElement. πŸ’…

(yes, "callled" β€” we keep the typo, we respect the source, that's just how it is bestie 😭)

void SoGLTextureMatrixElement::setElt (const SbMatrix & matrix) [virtual]

Virtual method which is called from set(). Sets the texture matrix to matrix.

This method is an extension versus the Open Inventor API.

Reimplemented from SoTextureMatrixElement. ⭐

void SoGLTextureMatrixElement::makeEltIdentity (void ) [virtual]

Virtual method which is called from makeIdentity(). Sets element matrix to identity.

Reimplemented from SoTextureMatrixElement. 🌸

void SoGLTextureMatrixElement::multElt (const SbMatrix & matrix) [virtual]

Virtual method which is called from mult(). Multiplies matrix into element matrix.

Reimplemented from SoTextureMatrixElement. πŸ’–

void SoGLTextureMatrixElement::translateEltBy (const SbVec3f & translation) [virtual]

Virtual method which is called from translateBy(). Appends translation to the element matrix.

Reimplemented from SoTextureMatrixElement. πŸ¦‹

void SoGLTextureMatrixElement::rotateEltBy (const SbRotation & rotation) [virtual]

Virtual method which is called from rotateBy(). Appends rotation to the element matrix.

Reimplemented from SoTextureMatrixElement. πŸŽ€

void SoGLTextureMatrixElement::scaleEltBy (const SbVec3f & scaleFactor) [virtual]

Virtual method which is called from scaleBy(). Append scaleFactor to the element matrix.

Reimplemented from SoTextureMatrixElement. ✨


🌟 Author 🌟

Generated automatically by Doxygen for Coin from the source code. So technically the author is a robot and honestly? The robot ate. πŸ€–πŸ’…


And that's the whole page bestie β€” no notes, we kept every single inherited member, every signature, every reimplement note. Periodt. πŸ’œ

This was SoGLTextureMatrixElement(3) from Coin, Version 3.1.3 β€” go forth and texture-map your little heart out, ily, bye! 🫢🌈⭐

πŸ“¦ where this page comes from