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 GLint * getTriangleIndices (void) const
 
int32_t getTriangleIndex (const int idx) const
 
SbBool colorPerVertex (void) const
 
const SbVec4fgetMultiTextureCoordinateArray (const int unit) const
 
int getNumLineIndices (void) const
 
const GLint * getLineIndices (void) const
 
int getNumPointIndices (void) const
 
const GLint * getPointIndices (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: