SoConvexDataCache(3)
π NAME π
SoConvexDataCache β bestie, this is the class that caches your convexified polygons. That's the whole job. She's a cache. She holds the triangles. Iconic behaviour, honestly.
Also hi, this is the SoConvexDataCache(3) page, from the Coin manual. Grab a snack, we're going in π
β¨ SYNOPSIS β¨
#include <Inventor/caches/SoConvexDataCache.h>
Inherits SoCache.
π Public Types π
enum Binding { NONE = 0, PER_FACE, PER_FACE_INDEXED, PER_VERTEX,
PER_VERTEX_INDEXED }
The Binding enum is used to specify bindings. That's literally what it's for, no cap.
π Public Member Functions π
SoConvexDataCache (SoState *const state)
virtual ~SoConvexDataCache ()
void generate (const SoCoordinateElement *const coords, const SbMatrix
&matrix, const int32_t *coordindices, const int numcoordindices,
const int32_t *matindices, const int32_t *normindices, const int32_t
*texindices, const Binding matbinding, const Binding normbinding,
const Binding texbinding)
const int32_t * getCoordIndices (void) const
int getNumCoordIndices (void) const
const int32_t * getMaterialIndices (void) const
int getNumMaterialIndices (void) const
const int32_t * getNormalIndices (void) const
int getNumNormalIndices (void) const
const int32_t * getTexIndices (void) const
int getNumTexIndices (void) const
π¦ Public Member Functions inherited from SoCache π¦
SoCache (SoState *const state)
void ref (void)
void unref (SoState *state=NULL)
void addElement (const SoElement *const elem)
virtual void addCacheDependency (const SoState *state, SoCache *cache)
virtual SbBool isValid (const SoState *state) const
const SoElement * getInvalidElement (const SoState *const state) const
void invalidate (void)
πΈ Additional Inherited Members πΈ
π Protected Member Functions inherited from SoCache π
virtual void destroy (SoState *state)
virtual ~SoCache ()
π₯ DETAILED DESCRIPTION π₯
The SoConvexDataCache class is used to cache convexified polygons.
Okay so real talk: SoConvexDataCache is here to make rendering concave polygons fast. How? She tessellates every polygon into triangles and stashes all those freshly generated primitives in an internal cache. Boom. That's the glow-up. β¨
Heads up bestie β this class is not part of the original SGI Open Inventor v2.1 API. She's a Coin extension. So don't go looking for her in the O.G. docs, she's not there. π
π MEMBER ENUMERATION DOCUMENTATION π
π enum SoConvexDataCache::Binding π
The Binding enum is used to specify bindings. Binding applies to normals, materials and texture coordinates. She's versatile like that πββοΈ
The values are:
NONE = 0PER_FACEPER_FACE_INDEXEDPER_VERTEXPER_VERTEX_INDEXED
π CONSTRUCTOR & DESTRUCTOR DOCUMENTATION π
πΈ SoConvexDataCache::SoConvexDataCache (SoState *const state) πΈ
Constructor, with state being the current state. That's it, that's the sentence π
π¦ SoConvexDataCache::~SoConvexDataCache () [virtual] π¦
Destructor. She's leaving, say bye π
β MEMBER FUNCTION DOCUMENTATION β
π« void SoConvexDataCache::generate (const SoCoordinateElement *const coords, const SbMatrix & matrix, const int32_t * vind, const int numv, const int32_t * mind, const int32_t * nind, const int32_t * tind, const Binding matbind, const Binding normbind, const Binding texbind) π«
Generates the convexified data. FIXME: doc π β yeah the original really says that, I'm not making it up, we keep it exactly as-is.
π const int32_t * SoConvexDataCache::getCoordIndices (void ) const π
Returns a pointer to the convexified coordinate indices.
See also: SoConvexDataCache::getNumCoordIndices()
π int SoConvexDataCache::getNumCoordIndices (void ) const π
Returns the number of coordinate indices.
See also: SoConvexDataCache::getCoordIndices()
π§ const int32_t * SoConvexDataCache::getMaterialIndices (void ) const π§
Returns the convexified material indices.
See also: SoConvexDataCache::getNumMaterialIndices()
π§ int SoConvexDataCache::getNumMaterialIndices (void ) const π§
Returns the number of material indices.
See also: SoConvexDataCache::getMaterialIndices()
π const int32_t * SoConvexDataCache::getNormalIndices (void ) const π
Returns the convexified normal indices.
See also: SoConvexDataCache::getNumNormalIndices()
π int SoConvexDataCache::getNumNormalIndices (void ) const π
Returns the number of normal indices.
See also: SoConvexDataCache::getNormalIndices()
π const int32_t * SoConvexDataCache::getTexIndices (void ) const π
Returns the convexified texture coordinate indices.
See also: SoConvexDataCache::getNumTexIndices()
π int SoConvexDataCache::getNumTexIndices (void ) const π
Returns the number of texture coordinate indices.
See also: SoConvexDataCache::getTexIndices()
π AUTHOR π
Generated automatically by Doxygen for Coin from the source code. The robot did it, not me π€π
And that's the whole page, bestie! This was Version 4.0.10, dated Thu Jun 25 2026 00:00:00, filed under SoConvexDataCache(3). Go tessellate something gorgeous π¦β¨
π¦ where this page comes from
- fedora 43: Coin4-devel 4.0.10-1.fc43 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 43: Coin4-devel 4.0.10-1.fc43 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 44: Coin4-devel 4.0.10-1.fc44 Β· BSD-3-Clause AND GPL-3.0-or-later
- fedora 44: Coin4-devel 4.0.10-1.fc44 Β· BSD-3-Clause AND GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms