Coin: SoConvexDataCache Class Reference

| Coin3D is Free Software, published under the BSD 3-clause license. | https://coin3d.github.io https://www.kongsberg.com/en/kogt/

Public Types | Public Member Functions | List of all members
SoConvexDataCache Class Reference
Cache Classes

The SoConvexDataCache class is used to cache convexified polygons. More...

`#include <Inventor/caches/SoConvexDataCache.h>`

Inheritance diagram for SoConvexDataCache:

## Public Types
enum | Binding { NONE = 0 , PER_FACE , PER_FACE_INDEXED , PER_VERTEX , PER_VERTEX_INDEXED }
| The Binding enum is used to specify bindings. More...

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

## ◆ Binding

enum SoConvexDataCache::Binding

The Binding enum is used to specify bindings.

Binding applies to normals, materials and texture coordinates.

## Constructor & Destructor Documentation

## ◆ SoConvexDataCache()

SoConvexDataCache::SoConvexDataCache | ( | SoState *const | state | ) |

Constructor with state being the current state.

## ◆ ~SoConvexDataCache()

SoConvexDataCache::~SoConvexDataCache | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

## ◆ generate()

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

## ◆ getCoordIndices()

const int32_t * SoConvexDataCache::getCoordIndices | ( | void |  | ) | const

Returns a pointer to the convexified coordinate indices.

See also
  SoConvexDataCache::getNumCoordIndices()

## ◆ getNumCoordIndices()

int SoConvexDataCache::getNumCoordIndices | ( | void |  | ) | const

Returns the number of coordinate indices.

See also
  SoConvexDataCache::getCoordIndices()

## ◆ getMaterialIndices()

const int32_t * SoConvexDataCache::getMaterialIndices | ( | void |  | ) | const

Returns the convexified material indices.

See also
  SoConvexDataCache::getNumMaterialIndices()

## ◆ getNumMaterialIndices()

int SoConvexDataCache::getNumMaterialIndices | ( | void |  | ) | const

Returns the number of material indices.

See also
  SoConvexDataCache::getMaterialIndices()

## ◆ getNormalIndices()

const int32_t * SoConvexDataCache::getNormalIndices | ( | void |  | ) | const

Returns the convexified normal indices.

See also
  SoConvexDataCache::getNumNormalIndices()

## ◆ getNumNormalIndices()

int SoConvexDataCache::getNumNormalIndices | ( | void |  | ) | const

Returns the number of normal indices.

See also
  SoConvexDataCache::getNormalIndices()

## ◆ getTexIndices()

const int32_t * SoConvexDataCache::getTexIndices | ( | void |  | ) | const

Returns the convexified texture coordinate indices.

See also
  SoConvexDataCache::getNumTexIndices()

## ◆ getNumTexIndices()

int SoConvexDataCache::getNumTexIndices | ( | void |  | ) | const

Returns the number of texture coordinate indices.

See also
  SoConvexDataCache::getTexIndices()

The documentation for this class was generated from the following files:

- SoConvexDataCache.h
- SoConvexDataCache.cpp