SoBumpMapMatrixElement(3)
β¨ NAME β¨
SoBumpMapMatrixElement β The SoBumpMapMatrixElement class is used to manage the bump map matrix stack.
okay so bestie, this is SoBumpMapMatrixElement(3) from the Library Functions Manual, and she is literally the girl who runs the bump map matrix stack. no cap. π
πΈ SYNOPSIS πΈ
#include <Inventor/elements/SoBumpMapMatrixElement.h>
Inherits SoAccumulatedElement.
π Public Member Functions π
virtual void init (SoState *state)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) constint getStackIndex (void) constvirtual void pop (SoState *state, const SoElement *prevTopElement)void setDepth (const int depth)int getDepth (void) constvirtual void print (FILE *file=stdout) constvirtual ~SoElement ()
β¨ Static Public Member Functions β¨
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 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 ~SoBumpMapMatrixElement ()virtual void makeEltIdentity (void)virtual void setElt (const SbMatrix &matrix)virtual void multElt (const SbMatrix &matrix)virtual void translateEltBy (const SbVec3f &translation)virtual void rotateEltBy (const SbRotation &rotation)virtual void scaleEltBy (const SbVec3f &scaleFactor)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) constvirtual void captureThis (SoState *state) const
π§ Protected Member Functions inherited from SoElement π§
SoElement (void)void capture (SoState *const state) constvoid setTypeId (const SoType typeId)void setStackIndex (const int index)SoElement * getNextInStack (void) constSoElement * getNextFree (void) const
π Protected Attributes π
SbMatrix bumpMapMatrix
π Protected Attributes inherited from SoAccumulatedElement π
SbList< uint32_t > nodeIds
π Protected Attributes inherited from SoElement π
SoType typeIdint stackIndexint depth
β 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)
π Static Protected Attributes inherited from SoElement π
static int classStackIndexstatic SoTypeList * stackToType
π Detailed Description π
The SoBumpMapMatrixElement class is used to manage the bump map matrix stack.
okay so what does she actually do, bestie? The bump map matrix is used to transform bump map coordinates before being used to map bump maps onto polygons. that's the whole vibe. she takes your bump map coords, runs them through the matrix, and then they get mapped onto polygons. iconic behavior tbh. π
π Constructor & Destructor Documentation π
SoBumpMapMatrixElement::~SoBumpMapMatrixElement (void ) [protected], [virtual]
The destructor.
it's the destructor bestie, she cleans up after herself. protected and virtual, so you can't just call her from anywhere β she's for the class and her subclasses. periodt. π
β¨ Member Function Documentation β¨
void * SoBumpMapMatrixElement::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: this one's internal, bestie. the library uses her, but if you're an application programmer you probably don't need to care. no cap. π
void SoBumpMapMatrixElement::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 SoAccumulatedElement.
so init() sets up the element type inside the SoState you hand her. she gets called for the first element of every enabled element type in SoState objects. and yeah, she's reimplemented from SoAccumulatedElement β that's her origin story. π±
void SoBumpMapMatrixElement::push (SoState * state) [virtual]
This method is called every time a new element is required in one of the stacks. This happens when a writable element is requested, using SoState::getElement() or indirectly SoElement::getElement(), and the depth of the current element is less than the state depth.
Override this method if your element needs to copy data from the previous top of stack. The push() method is called on the new element, and the previous element can be found using SoElement::getNextInStack().
Reimplemented from SoAccumulatedElement.
every time a new element is needed in one of the stacks, push() shows up. this happens when you request a writable element with SoState::getElement() or indirectly with SoElement::getElement(), and the depth of the current element is less than the state depth. if your element needs to copy data from the previous top of stack, override this. push() is called on the new element, and you can find the previous one with SoElement::getNextInStack(). reimplemented from SoAccumulatedElement, obviously. π
void SoBumpMapMatrixElement::makeIdentity (SoState *const state, SoNode *const node) [static]
Sets current texture matrix to identity.
sets the current texture matrix to identity. simple as that. she's resetting the vibe to neutral. β¨
void SoBumpMapMatrixElement::set (SoState *const state, SoNode *const node, const SbMatrix & matrix) [static]
Sets the current texture matrix to matrix.
This method is an extension versus the Open Inventor API.
sets the current texture matrix to matrix. and bestie, this method is an extension versus the Open Inventor API β so she's extra, she's special, she's not in the original API. periodt. π
void SoBumpMapMatrixElement::mult (SoState *const state, SoNode *const node, const SbMatrix & matrix) [static]
Multiplies matrix into the current texture matrix.
multiplies matrix into the current texture matrix. stacking those transformations like it's nothing. π₯
void SoBumpMapMatrixElement::translateBy (SoState *const state, SoNode *const node, const SbVec3f & translation) [static]
Appends translation to the current texture matrix.
appends translation to the current texture matrix. she's adding that translation to the end, no big deal. π¦
void SoBumpMapMatrixElement::rotateBy (SoState *const state, SoNode *const node, const SbRotation & rotation) [static]
Appends rotation to the current texture matrix.
appends rotation to the current texture matrix. spin it, bestie. β¨
void SoBumpMapMatrixElement::scaleBy (SoState *const state, SoNode *const node, const SbVec3f & scaleFactor) [static]
Appends scaleFactor to the current texture matrix.
appends scaleFactor to the current texture matrix. scale it up, scale it down, she's flexible. π
const SbMatrix & SoBumpMapMatrixElement::get (SoState *const state) [static]
Returns current texture matrix.
returns the current texture matrix. that's it, that's the tweet. β¨
void SoBumpMapMatrixElement::makeEltIdentity (void ) [protected], [virtual]
virtual method which is called from makeIdentity(). Sets element matrix to identity.
virtual method called from makeIdentity(). sets the element matrix to identity. so makeIdentity() does the current texture matrix, and makeEltIdentity() does the element matrix. two different girls, same energy. π
void SoBumpMapMatrixElement::setElt (const SbMatrix & matrix) [protected], [virtual]
virtual method which is called from set(). Sets the texture matrix to matrix.
This method is an extension versus the Open Inventor API.
virtual method called from set(). sets the texture matrix to matrix. and yes, this one is also an extension versus the Open Inventor API. she's exclusive. π
void SoBumpMapMatrixElement::multElt (const SbMatrix & matrix) [protected], [virtual]
virtual method which is called from mult(). Multiplies matrix into element matrix.
virtual method called from mult(). multiplies matrix into the element matrix. π₯
void SoBumpMapMatrixElement::translateEltBy (const SbVec3f & translation) [protected], [virtual]
virtual method which is called from translateBy(). Appends translation to the element matrix.
virtual method called from translateBy(). appends translation to the element matrix. π¦
void SoBumpMapMatrixElement::rotateEltBy (const SbRotation & rotation) [protected], [virtual]
virtual method which is called from rotateBy(). Appends rotation to the element matrix.
virtual method called from rotateBy(). appends rotation to the element matrix. β¨
void SoBumpMapMatrixElement::scaleEltBy (const SbVec3f & scaleFactor) [protected], [virtual]
virtual method which is called from scaleBy(). Append scaleFactor to the element matrix.
virtual method called from scaleBy(). append scaleFactor to the element matrix. π
const SbMatrix & SoBumpMapMatrixElement::getElt (void ) const [protected], [virtual]
Returns element matrix. Called from get().
returns the element matrix. called from get(). that's the whole thing. β¨
π Member Data Documentation π
SbMatrix SoBumpMapMatrixElement::bumpMapMatrix [protected]
The matrix.
it's the matrix, bestie. SbMatrix type, protected, named bumpMapMatrix. the whole point of this class. π
π Author π
Generated automatically by Doxygen for Coin from the source code.
so yeah, Doxygen auto-generated this for Coin from the source code. not a human author, a whole robot. iconic. π
that's the whole page, bestie. this was Coin Version 3.1.3, page SoBumpMapMatrixElement(3). go forth and bump map those matrices. πβ¨π
π¦ where this page comes from
- fedora 43: Coin3-devel 3.1.3-40.fc43 Β· GPL-2.0-only
- fedora 43: Coin3-devel 3.1.3-40.fc43 Β· GPL-2.0-only
- fedora 44: Coin3-devel 3.1.3-42.fc44 Β· GPL-2.0-only
- fedora 44: Coin3-devel 3.1.3-42.fc44 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms