SoConvexDataCache(3)

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

πŸ’– SoConvexDataCache(3) πŸ’–

okay bestie, so this is a page from the Coin library's manual, section 3 (library functions). It's called SoConvexDataCache and honestly? it's giving "I do one thing and I do it well". Let's get into it 🫢


✨ NAME ✨

SoConvexDataCache β€” the class that's literally just here to cache convexified polygons. no cap. πŸ’…


🌸 SYNOPSIS 🌸

#include <Inventor/caches/SoConvexDataCache.h>

It inherits from SoCache, bestie. Family tree matters πŸ‘‘

πŸŽ€ Public Types

  • enum Binding { NONE = 0, PER_FACE, PER_FACE_INDEXED, PER_VERTEX, PER_VERTEX_INDEXED } β€” the Binding enum is used to specify bindings.

πŸ¦‹ 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. periodt. ✨

So SoConvexDataCache is used to speed up rendering of concave polygons by tessellating all polygons into triangles and storing the newly generated primitives in an internal cache. It's basically a glow-up station for your geometry β€” chop it up once, reuse it forever 😌πŸ”₯

This class is not part of the original SGI Open Inventor v2.1 API, but is a Coin extension. So it's the bonus track, the deluxe edition, the surprise drop πŸ’ΏπŸ‘‘

🧚 Member Enumeration Documentation 🧚

enum SoConvexDataCache::Binding

The Binding enum is used to specify bindings. Binding applies to normals, materials and texture coordinates. All three of them, bestie, they all get the binding treatment πŸ’…


πŸ“ Constructor & Destructor Documentation πŸ“

SoConvexDataCache::SoConvexDataCache (SoState *const state)

Constructor, with state being the current state. hi hello welcome to the function πŸ’–

SoConvexDataCache::~SoConvexDataCache () [virtual]

Destructor. say bye 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 they left a little note for future them. relatable honestly 😭

const int32_t * SoConvexDataCache::getCoordIndices (void ) const

Returns a pointer to the convexified coordinate indices. a whole pointer, to you πŸ’œ

See also: SoConvexDataCache::getNumCoordIndices()

int SoConvexDataCache::getNumCoordIndices (void ) const

Returns the number of coordinate indices. just the count, nothing more, nothing less πŸ”’

See also: SoConvexDataCache::getCoordIndices()

const int32_t * SoConvexDataCache::getMaterialIndices (void ) const

Returns the convexified material indices. serving looks πŸ’…

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. the normals are normal, don't worry 🌸

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. texture queen behavior πŸŽ€

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. not a human author, just a robot doing its thing πŸ€–βœ¨


and that's the whole page, bestie! this one's from Coin, Version 3.1.3 β€” stay convex, stay cached, slay πŸ’–πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from