Open Inventor Reference
|
#include <Inventor/nodes/SoVertexProperty.h>
Public Types | |
enum | { COLOR_BITS = 0x18, PART_COLOR = 0x8, FACE_COLOR = 0x10, VERTEX_COLOR = 0x18, NORMAL_BITS = 0x6, PART_NORMAL = 0x2, FACE_NORMAL = 0x4, VERTEX_NORMAL = 0x6, TEXCOORD_BIT = 0x1 } |
32 rendering cases. More... | |
enum | { TEXTURE_FUNCTION_BIT = 0x80, OVERRIDE_FROM_STATE_BIT = 0x40, COORD_FROM_STATE_BIT = 0x20, COLOR_FROM_STATE_BITS = COLOR_BITS, NORMAL_FROM_STATE_BITS = NORMAL_BITS, TEXCOORD_FROM_STATE_BIT = TEXCOORD_BIT, ALL_FROM_STATE_BITS = 0xFF } |
Bit-mask, set by ::fillInCache method Bits use same as above, plus one for coords and one for overrides (diffuse color, material binding, transparency) plus one for texture function (if tcoords in VP) More... | |
Public Member Functions | |
SbBool | mightNeedSomethingFromState (const SoShapeStyleElement *sse) const |
API used by shapes: | |
void | fillInColorAndTranspAvail (const SoVertexProperty *, SoState *state) |
void | fillInCache (const SoVertexProperty *, SoState *) |
SbBool | shouldGenerateNormals (const SoShapeStyleElement *sse) const |
SbBool | shouldGenerateTexCoords (const SoShapeStyleElement *sse) const |
int | getRenderCase (const SoShapeStyleElement *sse) const |
SbBool | haveTexCoordsInVP () |
void | sendVertex (const char *vp) const |
void | sendNormal (const char *np) const |
void | sendColor (const char *cp) const |
void | sendTexCoord (const char *tcp) const |
int | getNumVertices () const |
int | getNumNormals () const |
int | getNumColors () const |
int | getNumTexCoords () const |
const char * | getVertices (int i) const |
const char * | getNormals (int i) const |
const char * | getColors (int i) const |
const char * | getTexCoords (int i) const |
SbBool | colorIsInVtxProp () const |
SbBool | transpIsInVtxProp () const |
Indicates if non-opaque transparency is in vertex property. | |
int | getVertexStride () const |
int | getNormalStride () const |
int | getColorStride () const |
int | getTexCoordStride () const |
SoNormalBindingElement::Binding | getNormalBinding () |
SoMaterialBindingElement::Binding | getMaterialBinding () |
SoTextureCoordinateBindingElement::Binding | getTexCoordBinding () |
void | invalidate () |
SoVertexPropertyCache () | |
Constructor. Initializes everything. | |
Public Attributes | |
SoVPCacheFunc * | vertexFunc |
Tables of functions, data, and strides to increment through data. | |
const char * | vertexPtr |
int | vertexStride |
int | numVerts |
SoVPCacheFunc * | normalFunc |
const char * | normalPtr |
int | normalStride |
int | numNorms |
SoVPCacheFunc * | colorFunc |
const char * | colorPtr |
int | colorStride |
int | numColors |
SoVPCacheFunc * | texCoordFunc |
const char * | texCoordPtr |
int | texCoordStride |
int | numTexCoords |
SbBool | generateNormals |
SbBool | generateTexCoords |
unsigned char | needFromState |
Definition at line 264 of file SoVertexProperty.h.
anonymous enum |
Non-indexed shapes can get away with just looking at the low 5 bits. The bits are arranged like this: 43210 BITS ----- ---- 00... Overall color 01... Part color 10... Face color 11... Vtx color ..00. Overall/No norm ..01. Part norm ..10. Face norm ..11. Vtx norm ....? Explicit exture coordinates needed
COLOR_BITS | |
PART_COLOR | |
FACE_COLOR | |
VERTEX_COLOR | |
NORMAL_BITS | |
PART_NORMAL | |
FACE_NORMAL | |
VERTEX_NORMAL | |
TEXCOORD_BIT |
Definition at line 369 of file SoVertexProperty.h.
anonymous enum |
TEXTURE_FUNCTION_BIT | |
OVERRIDE_FROM_STATE_BIT | |
COORD_FROM_STATE_BIT | |
COLOR_FROM_STATE_BITS | |
NORMAL_FROM_STATE_BITS | |
TEXCOORD_FROM_STATE_BIT | |
ALL_FROM_STATE_BITS |
Definition at line 387 of file SoVertexProperty.h.
SoVertexPropertyCache::SoVertexPropertyCache | ( | ) |
SbBool SoVertexPropertyCache::colorIsInVtxProp | ( | ) | const [inline] |
Definition at line 310 of file SoVertexProperty.h.
void SoVertexPropertyCache::fillInCache | ( | const SoVertexProperty * | , |
SoState * | |||
) |
void SoVertexPropertyCache::fillInColorAndTranspAvail | ( | const SoVertexProperty * | , |
SoState * | state | ||
) |
const char* SoVertexPropertyCache::getColors | ( | int | i | ) | const [inline] |
Definition at line 305 of file SoVertexProperty.h.
int SoVertexPropertyCache::getColorStride | ( | ) | const [inline] |
Definition at line 317 of file SoVertexProperty.h.
SoMaterialBindingElement::Binding SoVertexPropertyCache::getMaterialBinding | ( | ) | [inline] |
Definition at line 323 of file SoVertexProperty.h.
SoNormalBindingElement::Binding SoVertexPropertyCache::getNormalBinding | ( | ) | [inline] |
Definition at line 320 of file SoVertexProperty.h.
const char* SoVertexPropertyCache::getNormals | ( | int | i | ) | const [inline] |
Definition at line 303 of file SoVertexProperty.h.
int SoVertexPropertyCache::getNormalStride | ( | ) | const [inline] |
Definition at line 316 of file SoVertexProperty.h.
int SoVertexPropertyCache::getNumColors | ( | ) | const [inline] |
Definition at line 298 of file SoVertexProperty.h.
int SoVertexPropertyCache::getNumNormals | ( | ) | const [inline] |
Definition at line 297 of file SoVertexProperty.h.
int SoVertexPropertyCache::getNumTexCoords | ( | ) | const [inline] |
Definition at line 299 of file SoVertexProperty.h.
int SoVertexPropertyCache::getNumVertices | ( | ) | const [inline] |
Definition at line 296 of file SoVertexProperty.h.
int SoVertexPropertyCache::getRenderCase | ( | const SoShapeStyleElement * | sse | ) | const [inline] |
Definition at line 281 of file SoVertexProperty.h.
References SoShapeStyleElement::getRenderCaseMask().
SoTextureCoordinateBindingElement::Binding SoVertexPropertyCache::getTexCoordBinding | ( | ) | [inline] |
Definition at line 326 of file SoVertexProperty.h.
const char* SoVertexPropertyCache::getTexCoords | ( | int | i | ) | const [inline] |
Definition at line 307 of file SoVertexProperty.h.
int SoVertexPropertyCache::getTexCoordStride | ( | ) | const [inline] |
Definition at line 318 of file SoVertexProperty.h.
int SoVertexPropertyCache::getVertexStride | ( | ) | const [inline] |
Definition at line 315 of file SoVertexProperty.h.
const char* SoVertexPropertyCache::getVertices | ( | int | i | ) | const [inline] |
Definition at line 301 of file SoVertexProperty.h.
SbBool SoVertexPropertyCache::haveTexCoordsInVP | ( | ) | [inline] |
Definition at line 284 of file SoVertexProperty.h.
void SoVertexPropertyCache::invalidate | ( | ) | [inline] |
Definition at line 329 of file SoVertexProperty.h.
SbBool SoVertexPropertyCache::mightNeedSomethingFromState | ( | const SoShapeStyleElement * | sse | ) | const [inline] |
Definition at line 269 of file SoVertexProperty.h.
References SoShapeStyleElement::getRenderCaseMask().
void SoVertexPropertyCache::sendColor | ( | const char * | cp | ) | const [inline] |
Definition at line 291 of file SoVertexProperty.h.
void SoVertexPropertyCache::sendNormal | ( | const char * | np | ) | const [inline] |
Definition at line 289 of file SoVertexProperty.h.
void SoVertexPropertyCache::sendTexCoord | ( | const char * | tcp | ) | const [inline] |
Definition at line 293 of file SoVertexProperty.h.
void SoVertexPropertyCache::sendVertex | ( | const char * | vp | ) | const [inline] |
Definition at line 287 of file SoVertexProperty.h.
SbBool SoVertexPropertyCache::shouldGenerateNormals | ( | const SoShapeStyleElement * | sse | ) | const [inline] |
Definition at line 275 of file SoVertexProperty.h.
References SoShapeStyleElement::needNormals().
SbBool SoVertexPropertyCache::shouldGenerateTexCoords | ( | const SoShapeStyleElement * | sse | ) | const [inline] |
Definition at line 278 of file SoVertexProperty.h.
References SoShapeStyleElement::needTexCoords().
SbBool SoVertexPropertyCache::transpIsInVtxProp | ( | ) | const [inline] |
Definition at line 313 of file SoVertexProperty.h.
Definition at line 343 of file SoVertexProperty.h.
const char* SoVertexPropertyCache::colorPtr |
Definition at line 344 of file SoVertexProperty.h.
Definition at line 345 of file SoVertexProperty.h.
Definition at line 350 of file SoVertexProperty.h.
Definition at line 351 of file SoVertexProperty.h.
unsigned char SoVertexPropertyCache::needFromState |
Definition at line 353 of file SoVertexProperty.h.
Definition at line 340 of file SoVertexProperty.h.
const char* SoVertexPropertyCache::normalPtr |
Definition at line 341 of file SoVertexProperty.h.
Definition at line 342 of file SoVertexProperty.h.
Definition at line 345 of file SoVertexProperty.h.
Definition at line 342 of file SoVertexProperty.h.
Definition at line 348 of file SoVertexProperty.h.
Definition at line 339 of file SoVertexProperty.h.
Definition at line 346 of file SoVertexProperty.h.
const char* SoVertexPropertyCache::texCoordPtr |
Definition at line 347 of file SoVertexProperty.h.
Definition at line 348 of file SoVertexProperty.h.
Definition at line 337 of file SoVertexProperty.h.
const char* SoVertexPropertyCache::vertexPtr |
Definition at line 338 of file SoVertexProperty.h.
Definition at line 339 of file SoVertexProperty.h.