---
name: "SoConvexDataCache"
section: "3"
platform: "linux"
package: "coin"
version: "1:4.0.10-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/SoConvexDataCache"
---

# SoConvexDataCache(3)

The SoConvexDataCache class is used to cache convexified polygons.

## NAME

SoConvexDataCache - The **SoConvexDataCache** class is used to cache convexified polygons.

## 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.

### 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.

**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.

This class is not part of the original SGI Open Inventor v2.1 API, but is a Coin extension.

## Member Enumeration Documentation

### enum SoConvexDataCache::Binding

The **Binding** enum is used to specify bindings. **Binding** applies to normals, materials and texture coordinates.

## Constructor & Destructor Documentation

### SoConvexDataCache::SoConvexDataCache (SoState \*const state)

Constructor with *state* being the current state.

### SoConvexDataCache::~SoConvexDataCache () \[virtual\]

Destructor.

## 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

### 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.
