.TH "SoMultiTextureCoordinateElement" 3 "Tue Dec 26 2023 17:59:22" "Version 4.0.2" "Coin" \" -*- nroff -*- .ad l .nh .SH NAME SoMultiTextureCoordinateElement \- The \fBSoMultiTextureCoordinateElement\fP class is yet to be documented\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits \fBSoElement\fP\&. .PP Inherited by \fBSoGLMultiTextureCoordinateElement\fP\&. .SS "Classes" .in +1c .ti -1c .RI "class \fBUnitData\fP" .br .in -1c .SS "Public Types" .in +1c .ti -1c .RI "enum \fBCoordType\fP { \fBNONE\fP = 0, \fBTEXGEN\fP = 0, \fBEXPLICIT\fP = 1, \fBFUNCTION\fP = 2, \fBDEFAULT\fP = 3 }" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBvirtual\fP \fBvoid\fP \fBinit\fP (\fBSoState\fP *state)" .br .RI "FIXME: write doc\&. " .ti -1c .RI "\fBvirtual\fP CoordType \fBgetType\fP (\fBconst\fP int unit=0) \fBconst\fP" .br .RI "FIXME: write doc\&. " .ti -1c .RI "\fBconst\fP \fBSbVec4f\fP & \fBget\fP (\fBconst\fP int unit, \fBconst\fP \fBSbVec3f\fP &point, \fBconst\fP \fBSbVec3f\fP &normal) \fBconst\fP" .br .ti -1c .RI "int32_t \fBgetNum\fP (\fBconst\fP int unit=0) \fBconst\fP" .br .RI "FIXME: write doc\&. " .ti -1c .RI "SbBool \fBis2D\fP (\fBconst\fP int unit=0) \fBconst\fP" .br .RI "FIXME: write doc\&. (for backwards compatibility\&. Use \fBgetDimension()\fP instead)\&. " .ti -1c .RI "int32_t \fBgetDimension\fP (\fBconst\fP int unit=0) \fBconst\fP" .br .ti -1c .RI "\fBconst\fP \fBSbVec2f\fP & \fBget2\fP (\fBconst\fP int unit, \fBconst\fP int index) \fBconst\fP" .br .RI "FIXME: write doc\&. " .ti -1c .RI "\fBconst\fP \fBSbVec3f\fP & \fBget3\fP (\fBconst\fP int unit, \fBconst\fP int index) \fBconst\fP" .br .ti -1c .RI "\fBconst\fP \fBSbVec4f\fP & \fBget4\fP (\fBconst\fP int unit, \fBconst\fP int index) \fBconst\fP" .br .RI "FIXME: write doc\&. " .ti -1c .RI "\fBconst\fP \fBSbVec2f\fP * \fBgetArrayPtr2\fP (\fBconst\fP int unit=0) \fBconst\fP" .br .ti -1c .RI "\fBconst\fP \fBSbVec3f\fP * \fBgetArrayPtr3\fP (\fBconst\fP int unit=0) \fBconst\fP" .br .ti -1c .RI "\fBconst\fP \fBSbVec4f\fP * \fBgetArrayPtr4\fP (\fBconst\fP int unit=0) \fBconst\fP" .br .ti -1c .RI "\fBvirtual\fP \fBvoid\fP \fBpush\fP (\fBSoState\fP *state)" .br .ti -1c .RI "\fBvirtual\fP SbBool \fBmatches\fP (\fBconst\fP \fBSoElement\fP *elem) \fBconst\fP" .br .ti -1c .RI "\fBSoElement\fP * \fBcopyMatchInfo\fP (\fBvoid\fP) \fBconst\fP" .br .ti -1c .RI "\fBconst\fP \fBSbVec4f\fP & \fBget\fP (\fBconst\fP \fBSbVec3f\fP &point, \fBconst\fP \fBSbVec3f\fP &normal) \fBconst\fP" .br .ti -1c .RI "\fBconst\fP \fBSbVec2f\fP & \fBget2\fP (\fBconst\fP int index) \fBconst\fP" .br .ti -1c .RI "\fBconst\fP \fBSbVec3f\fP & \fBget3\fP (\fBconst\fP int index) \fBconst\fP" .br .ti -1c .RI "\fBconst\fP \fBSbVec4f\fP & \fBget4\fP (\fBconst\fP int index) \fBconst\fP" .br .in -1c Public Member Functions inherited from \fBSoElement\fP .in +1c .ti -1c .RI "\fBconst\fP \fBSoType\fP \fBgetTypeId\fP (\fBvoid\fP) \fBconst\fP" .br .ti -1c .RI "int \fBgetStackIndex\fP (\fBvoid\fP) \fBconst\fP" .br .ti -1c .RI "\fBvirtual\fP \fBvoid\fP \fBpop\fP (\fBSoState\fP *state, \fBconst\fP \fBSoElement\fP *\fBprevTopElement\fP)" .br .ti -1c .RI "\fBvoid\fP \fBsetDepth\fP (\fBconst\fP int \fBdepth\fP)" .br .ti -1c .RI "int \fBgetDepth\fP (\fBvoid\fP) \fBconst\fP" .br .ti -1c .RI "\fBvirtual\fP \fBvoid\fP \fBprint\fP (\fBFILE\fP *\fBfile\fP=\fBstdout\fP) \fBconst\fP" .br .ti -1c .RI "\fBvirtual\fP \fB~SoElement\fP ()" .br .in -1c .SS "Static Public Member Functions" .in +1c .ti -1c .RI "\fBstatic\fP \fBSoType\fP \fBgetClassTypeId\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBstatic\fP int \fBgetClassStackIndex\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBstatic\fP \fBvoid\fP * \fBcreateInstance\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBinitClass\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBsetDefault\fP (\fBSoState\fP *\fBconst\fP state, \fBSoNode\fP *\fBconst\fP node, \fBconst\fP int unit=0)" .br .RI "FIXME: write doc\&. " .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBsetFunction\fP (\fBSoState\fP *\fBconst\fP state, \fBSoNode\fP *\fBconst\fP node, \fBconst\fP int unit, SoTextureCoordinateFunctionCB *\fBconst\fP func, \fBvoid\fP *\fBconst\fP userdata)" .br .RI "FIXME: write doc\&. " .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBset2\fP (\fBSoState\fP *\fBconst\fP state, \fBSoNode\fP *\fBconst\fP node, \fBconst\fP int unit, \fBconst\fP int32_t numCoords, \fBconst\fP \fBSbVec2f\fP *\fBconst\fP coords)" .br .RI "FIXME: write doc\&. " .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBset3\fP (\fBSoState\fP *\fBconst\fP state, \fBSoNode\fP *\fBconst\fP node, \fBconst\fP int unit, \fBconst\fP int32_t numCoords, \fBconst\fP \fBSbVec3f\fP *\fBconst\fP coords)" .br .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBset4\fP (\fBSoState\fP *\fBconst\fP state, \fBSoNode\fP *\fBconst\fP node, \fBconst\fP int unit, \fBconst\fP int32_t numCoords, \fBconst\fP \fBSbVec4f\fP *\fBconst\fP coords)" .br .RI "FIXME: write doc\&. " .ti -1c .RI "\fBstatic\fP CoordType \fBgetType\fP (\fBSoState\fP *\fBconst\fP state, \fBconst\fP int unit=0)" .br .ti -1c .RI "\fBstatic\fP \fBconst\fP \fBSoMultiTextureCoordinateElement\fP * \fBgetInstance\fP (\fBSoState\fP *\fBconst\fP state)" .br .RI "FIXME: write doc\&. " .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBsetFunction\fP (\fBSoState\fP *\fBconst\fP state, \fBSoNode\fP *\fBconst\fP node, SoTextureCoordinateFunctionCB *\fBconst\fP func, \fBvoid\fP *\fBconst\fP userdata)" .br .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBset2\fP (\fBSoState\fP *\fBconst\fP state, \fBSoNode\fP *\fBconst\fP node, \fBconst\fP int32_t numCoords, \fBconst\fP \fBSbVec2f\fP *\fBconst\fP coords)" .br .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBset3\fP (\fBSoState\fP *\fBconst\fP state, \fBSoNode\fP *\fBconst\fP node, \fBconst\fP int32_t numCoords, \fBconst\fP \fBSbVec3f\fP *\fBconst\fP coords)" .br .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBset4\fP (\fBSoState\fP *\fBconst\fP state, \fBSoNode\fP *\fBconst\fP node, \fBconst\fP int32_t numCoords, \fBconst\fP \fBSbVec4f\fP *\fBconst\fP coords)" .br .in -1c Static Public Member Functions inherited from \fBSoElement\fP .in +1c .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBinitClass\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBstatic\fP \fBSoType\fP \fBgetClassTypeId\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBstatic\fP int \fBgetClassStackIndex\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBstatic\fP \fBvoid\fP \fBinitElements\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBstatic\fP int \fBgetNumStackIndices\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBstatic\fP \fBSoType\fP \fBgetIdFromStackIndex\fP (\fBconst\fP int \fBstackIndex\fP)" .br .in -1c .SS "Protected Member Functions" .in +1c .ti -1c .RI "\fBSoMultiTextureCoordinateElement\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBvirtual\fP \fB~SoMultiTextureCoordinateElement\fP ()" .br .ti -1c .RI "int \fBgetMaxUnits\fP () \fBconst\fP" .br .ti -1c .RI "\fBUnitData\fP & \fBgetUnitData\fP (\fBconst\fP int unit)" .br .ti -1c .RI "\fBconst\fP \fBUnitData\fP & \fBgetUnitData\fP (\fBconst\fP int unit) \fBconst\fP" .br .in -1c Protected Member Functions inherited from \fBSoElement\fP .in +1c .ti -1c .RI "\fBSoElement\fP (\fBvoid\fP)" .br .ti -1c .RI "\fBvoid\fP \fBcapture\fP (\fBSoState\fP *\fBconst\fP state) \fBconst\fP" .br .ti -1c .RI "\fBvirtual\fP \fBvoid\fP \fBcaptureThis\fP (\fBSoState\fP *state) \fBconst\fP" .br .ti -1c .RI "\fBvoid\fP \fBsetTypeId\fP (\fBconst\fP \fBSoType\fP \fBtypeId\fP)" .br .ti -1c .RI "\fBvoid\fP \fBsetStackIndex\fP (\fBconst\fP int index)" .br .ti -1c .RI "\fBSoElement\fP * \fBgetNextInStack\fP (\fBvoid\fP) \fBconst\fP" .br .ti -1c .RI "\fBSoElement\fP * \fBgetNextFree\fP (\fBvoid\fP) \fBconst\fP" .br .in -1c .SS "Protected Attributes" .in +1c .ti -1c .RI "\fBSbVec2f\fP \fBconvert2\fP" .br .ti -1c .RI "\fBSbVec3f\fP \fBconvert3\fP" .br .ti -1c .RI "\fBSbVec4f\fP \fBconvert4\fP" .br .in -1c Protected Attributes inherited from \fBSoElement\fP .in +1c .ti -1c .RI "\fBSoType\fP \fBtypeId\fP" .br .ti -1c .RI "int \fBstackIndex\fP" .br .ti -1c .RI "int \fBdepth\fP" .br .in -1c .SS "Additional Inherited Members" Static Protected Member Functions inherited from \fBSoElement\fP .in +1c .ti -1c .RI "\fBstatic\fP \fBSoElement\fP * \fBgetElement\fP (\fBSoState\fP *\fBconst\fP state, \fBconst\fP int \fBstackIndex\fP)" .br .ti -1c .RI "\fBstatic\fP \fBconst\fP \fBSoElement\fP * \fBgetConstElement\fP (\fBSoState\fP *\fBconst\fP state, \fBconst\fP int \fBstackIndex\fP)" .br .ti -1c .RI "\fBstatic\fP int \fBcreateStackIndex\fP (\fBconst\fP \fBSoType\fP id)" .br .in -1c Static Protected Attributes inherited from \fBSoElement\fP .in +1c .ti -1c .RI "\fBstatic\fP int \fBclassStackIndex\fP" .br .ti -1c .RI "\fBstatic\fP \fBSoTypeList\fP * \fBstackToType\fP" .br .in -1c .SH "Detailed Description" .PP The \fBSoMultiTextureCoordinateElement\fP class is yet to be documented\&. FIXME: write doc\&. .PP Be aware that this class is an extension for Coin, and it is not available in the original SGI Open Inventor \fBv2\&.1\fP API\&. .br .PP \fBSince\fP .RS 4 Coin \fB2\&.2\fP .RE .PP .SH "Constructor & Destructor Documentation" .PP .SS "SoMultiTextureCoordinateElement::SoMultiTextureCoordinateElement (\fBvoid\fP)\fC [protected]\fP" Constructor\&. .SS "SoMultiTextureCoordinateElement::~SoMultiTextureCoordinateElement ()\fC [protected]\fP, \fC [virtual]\fP" Destructor\&. .SH "Member Function Documentation" .PP .SS "\fBSoType\fP SoMultiTextureCoordinateElement::getClassTypeId (\fBvoid\fP)\fC [static]\fP" This static method returns the \fBSoType\fP object associated with objects of this class\&. .br .SS "int SoMultiTextureCoordinateElement::getClassStackIndex (\fBvoid\fP)\fC [static]\fP" This static method returns the state stack index for the class\&. .br .SS "\fBvoid\fP * SoMultiTextureCoordinateElement::createInstance (\fBvoid\fP)\fC [static]\fP" \fIThis API member is considered internal to the library, as it is not likely to be of interest to the application programmer\&.\fP .br .br Creates a new instance of the class type corresponding to the \fBSoType\fP object\&. .br .SS "\fBvoid\fP SoMultiTextureCoordinateElement::initClass (\fBvoid\fP)\fC [static]\fP" Initialize relevant common data for all instances, like the type system\&. .SS "\fBvoid\fP SoMultiTextureCoordinateElement::init (\fBSoState\fP * state)\fC [virtual]\fP" .PP FIXME: write doc\&. .PP Reimplemented from \fBSoElement\fP\&. .PP Reimplemented in \fBSoGLMultiTextureCoordinateElement\fP\&. .SS "\fBvoid\fP SoMultiTextureCoordinateElement::set3 (\fBSoState\fP *\fBconst\fP state, \fBSoNode\fP *\fBconst\fP node, \fBconst\fP int unit, \fBconst\fP int32_t numCoords, \fBconst\fP \fBSbVec3f\fP *\fBconst\fP coords)\fC [static]\fP" FIXME: write doc\&. .SS "SoMultiTextureCoordinateElement::CoordType SoMultiTextureCoordinateElement::getType (\fBSoState\fP *\fBconst\fP state, \fBconst\fP int unit = \fC0\fP)\fC [static]\fP" This method is used by shapes\&. Three return values are possible\&. .PP DEFAULT means that the shapes should generate their own texture coordinates\&. .PP EXPLICIT means that discrete texture coordinates are stored, and should be fetched with \fBget2()\fP, \fBget3()\fP or \fBget4()\fP\&. .PP FUNCTION means that get(point, normal) must be used to generate texture coordinates\&. .SS "SoMultiTextureCoordinateElement::CoordType SoMultiTextureCoordinateElement::getType (\fBconst\fP int unit = \fC0\fP) const\fC [virtual]\fP" .PP FIXME: write doc\&. .PP Reimplemented in \fBSoGLMultiTextureCoordinateElement\fP\&. .SS "\fBconst\fP \fBSbVec4f\fP & SoMultiTextureCoordinateElement::get (\fBconst\fP int unit, \fBconst\fP \fBSbVec3f\fP & point, \fBconst\fP \fBSbVec3f\fP & normal) const" This method returns texture coordinate for the given point and normal\&. The coordinate is returned as a 4D vector where the r and q coordinates may be set to 0 and 1 respectively depending on what texture coordinate dimension we're using\&. .PP This method should only be used if the CoordType is FUNCTION\&. .SS "int32_t SoMultiTextureCoordinateElement::getDimension (\fBconst\fP int unit = \fC0\fP) const" FIXME: write doc\&. .SS "\fBconst\fP \fBSbVec3f\fP & SoMultiTextureCoordinateElement::get3 (\fBconst\fP int unit, \fBconst\fP int index) const" FIXME: write doc\&. .SS "\fBconst\fP \fBSbVec2f\fP * SoMultiTextureCoordinateElement::getArrayPtr2 (\fBconst\fP int unit = \fC0\fP) const" Returns a pointer to the 2D texture coordinate array\&. This method is not part of the OIV API\&. .SS "\fBconst\fP \fBSbVec3f\fP * SoMultiTextureCoordinateElement::getArrayPtr3 (\fBconst\fP int unit = \fC0\fP) const" Returns a pointer to the 3D texture coordinate array\&. .SS "\fBconst\fP \fBSbVec4f\fP * SoMultiTextureCoordinateElement::getArrayPtr4 (\fBconst\fP int unit = \fC0\fP) const" Returns a pointer to the 4D texture coordinate array\&. This method is not part of the OIV API\&. .SS "\fBvoid\fP SoMultiTextureCoordinateElement::push (\fBSoState\fP * state)\fC [virtual]\fP" 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 \fBSoState::getElement()\fP or indirectly \fBSoElement::getElement()\fP, and the depth of the current element is less than the state depth\&. .PP Override this method if your element needs to copy data from the previous top of stack\&. The \fBpush()\fP method is called on the new element, and the previous element can be found using \fBSoElement::getNextInStack()\fP\&. .PP Reimplemented from \fBSoElement\fP\&. .PP Reimplemented in \fBSoGLMultiTextureCoordinateElement\fP\&. .SS "SbBool SoMultiTextureCoordinateElement::matches (\fBconst\fP \fBSoElement\fP * element) const\fC [virtual]\fP" This function returns \fCTRUE\fP is the element matches another element (of the same class), with respect to cache validity\&. .PP If the application programmer's extension element has a \fBmatches()\fP function, it should also have a \fBcopyMatchInfo()\fP function\&. .PP Implements \fBSoElement\fP\&. .SS "\fBSoElement\fP * SoMultiTextureCoordinateElement::copyMatchInfo (\fBvoid\fP) const\fC [virtual]\fP" This function creates a copy of the element that contains enough information to enable the \fBmatches()\fP function to work\&. .PP Used to help with scene graph traversal caching operations\&. .PP Implements \fBSoElement\fP\&. .SS "\fBSoMultiTextureCoordinateElement::UnitData\fP & SoMultiTextureCoordinateElement::getUnitData (\fBconst\fP int unit)\fC [protected]\fP" Returns the per-unit data for this element\&. .SH "Author" .PP Generated automatically by Doxygen for Coin from the source code\&.