50#ifndef _SO_MATERIAL_BINDING_ELEMENT
51#define _SO_MATERIAL_BINDING_ELEMENT
53#include <Inventor/SbVertexAttributeBinding.h>
54#include <Inventor/elements/SoInt32Element.h>
118 { SoInt32Element::set(
getClassTypeId(), classStackIndex, state, (int32_t)binding); }
124 {
set(state, binding); }
145 virtual void init(
SoState *state);
149 static void initClass();
150 static void exitClass();
@ PER_FACE
One attribute for each face of object.
@ PER_FACE_INDEXED
One attribute for each face, indexed.
@ PER_PART_INDEXED
One attribute for each part, indexed.
@ PER_VERTEX_INDEXED
One attribute for each vertex, indexed.
@ OVERALL
Whole object has same attribute.
@ PER_PART
One attribute for each part of object.
@ PER_VERTEX
One attribute for each vertex.
Stores a single int32_t, int, or enum value.
Stores the current material binding.
static SoType getClassTypeId()
Returns the type identifier for this class.
static Binding get(SoState *state)
Returns current material binding from the state.
Binding
The choice of values is for compatibility with Open Inventor 2.0 binary format files.
@ PER_VERTEX_INDEXED
One material for each vertex, indexed.
@ OVERALL
Whole object has same material.
@ PER_PART_INDEXED
One material for each part, indexed.
@ PER_VERTEX
One material for each vertex.
@ PER_FACE_INDEXED
One material for each face, indexed.
@ PER_FACE
One material for each face of object.
@ PER_PART
One material for each part of object.
static Binding getDefault()
Returns the default material binding.
static void set(SoState *state, Binding binding)
Sets the current material binding in the state.
static void set(SoState *state, SoNode *, Binding binding)
Sets the current material binding in the state.
virtual void print(FILE *fp) const
Prints element (for debugging).
Abstract base class for all database nodes.