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

This cache contains an organized version of the geometry in vertex array form. More...

#include <Inventor/caches/SoPrimitiveVertexCache.h>

Inheritance diagram for SoPrimitiveVertexCache:
SoCache

Public Types

enum  Arrays { NORMAL = 0x01 , TEXCOORD = 0x02 , COLOR = 0x04 , ALL = (NORMAL|TEXCOORD|COLOR) }
 

Public Member Functions

 SoPrimitiveVertexCache (SoState *state)
 
virtual ~SoPrimitiveVertexCache ()
 
virtual SbBool isValid (const SoState *state) const
 
void close (SoState *state)
 
void renderTriangles (SoState *state, const int arrays=ALL) const
 
void renderLines (SoState *state, const int arrays=ALL) const
 
void renderPoints (SoState *state, const int array=ALL) const
 
void addTriangle (const SoPrimitiveVertex *v0, const SoPrimitiveVertex *v1, const SoPrimitiveVertex *v2, const int *pointdetailidx=NULL)
 
void addLine (const SoPrimitiveVertex *v0, const SoPrimitiveVertex *v1)
 
void addPoint (const SoPrimitiveVertex *v)
 
int getNumVertices (void) const
 
const SbVec3fgetVertexArray (void) const
 
const SbVec3fgetNormalArray (void) const
 
const SbVec4fgetTexCoordArray (void) const
 
const SbVec2fgetBumpCoordArray (void) const
 
const uint8_t * getColorArray (void) const
 
int getNumTriangleIndices (void) const
 
const GLintgetTriangleIndices (void) const
 
int32_t getTriangleIndex (const int idx) const
 
SbBool colorPerVertex (void) const
 
const SbVec4fgetMultiTextureCoordinateArray (const int unit) const
 
int getNumLineIndices (void) const
 
const GLintgetLineIndices (void) const
 
int getNumPointIndices (void) const
 
const GLintgetPointIndices (void) const
 
void fit (void)
 
void depthSortTriangles (SoState *state)
 
- 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)
 
const SoElementgetInvalidElement (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

This cache contains an organized version of the geometry in vertex array form.

The SoPrimitiveVertexClass is used to cache generated triangles.

Since
Coin 3.0

Constructor & Destructor Documentation

◆ SoPrimitiveVertexCache()

SoPrimitiveVertexCache::SoPrimitiveVertexCache ( SoState state)

Constructor.

◆ ~SoPrimitiveVertexCache()

SoPrimitiveVertexCache::~SoPrimitiveVertexCache ( )
virtual

Destructor.

Member Function Documentation

◆ isValid()

SbBool SoPrimitiveVertexCache::isValid ( const SoState state) const
virtual

Return TRUE if this cache is valid, FALSE otherwise.

Reimplemented from SoCache.

◆ close()

void SoPrimitiveVertexCache::close ( SoState state)

Closes the cache after it is created. Takes care of SoGLLazyElement synchronization.


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