Open Inventor Release 2024.1.0
 
Loading...
Searching...
No Matches
SoShapeHintsElement Class Reference

Stores the current shape hints. More...

#include <Inventor/elements/SoShapeHintsElement.h>

+ Inheritance diagram for SoShapeHintsElement:

Public Types

enum  VertexOrdering {
  UNKNOWN_ORDERING ,
  CLOCKWISE ,
  COUNTERCLOCKWISE ,
  ORDERING_AS_IS
}
 Hints about ordering of face vertices. More...
 
enum  ShapeType {
  UNKNOWN_SHAPE_TYPE ,
  SOLID ,
  SHAPE_TYPE_AS_IS
}
 Hints about entire shape. More...
 
enum  FaceType {
  UNKNOWN_FACE_TYPE ,
  CONVEX ,
  FACE_TYPE_AS_IS
}
 Hints about faces of shape. More...
 
enum  WindingType {
  NO_WINDING_TYPE ,
  ODD_TYPE ,
  NON_ZERO_TYPE ,
  POSITIVE_TYPE ,
  NEGATIVE_TYPE ,
  ABS_GEQ_TWO_TYPE
}
 Hints about winding type. More...
 

Public Member Functions

virtual void push (SoState *state)
 Push copies the values from the previous element, so set doesn't have to set them if they are set AS_IS.
 
virtual void print (FILE *fp) const
 Prints element (for debugging).
 
- Public Member Functions inherited from SoElement
virtual void pop (SoState *state, const SoElement *prevTopElement)
 Pops element.
 
virtual SoType getTypeId () const
 Returns type identifier for element instance.
 
- Public Member Functions inherited from SoTypedObject
SbBool isOfType (const SoType &type) const
 Returns TRUE if this object is of the type specified in type or is derived from that type.
 
template<typename TypedObjectClass >
SbBool isOfType () const
 Returns TRUE if this object is of the type of class TypedObjectClass or is derived from that class.
 

Static Public Member Functions

static SoType getClassTypeId ()
 Returns the type identifier for this class.
 
static int getClassStackIndex ()
 Returns the stack id for this element.
 
static void set (SoState *state, VertexOrdering vertexOrdering, ShapeType shapeType, FaceType faceType)
 Sets the current shape hints in the state.
 
static void set (SoState *state, WindingType windingType)
 Sets the current shape hints in the state.
 
static void set (SoState *state, SbBool useVBO)
 Sets the current shape hints in the state.
 
static void set (SoState *state, VertexOrdering vertexOrdering, ShapeType shapeType, FaceType faceType, WindingType windingType, SbBool useVBO)
 Set shape hints by defining all options.
 
static void set (SoState *state, SoNode *, VertexOrdering vertexOrdering, ShapeType shapeType, FaceType faceType)
 Sets the current shape hints in the state.
 
static void set (SoState *state, SoNode *, WindingType windingType)
 
static void set (SoState *state, SoNode *, SbBool useVBO)
 Indicates if VBO is used from the state.
 
static void get (SoState *state, VertexOrdering &vertexOrdering, ShapeType &shapeType, FaceType &faceType)
 Returns current shape hints from the state.
 
static void get (SoState *state, WindingType &windingType)
 Return current shape winding type from the state.
 
static SbBool isVBOUsed (SoState *state)
 Indicates if VBO is used from the state.
 
static VertexOrdering getDefaultVertexOrdering ()
 Returns default hint.
 
static ShapeType getDefaultShapeType ()
 Returns default hint.
 
static FaceType getDefaultFaceType ()
 Returns default hint.
 
static WindingType getDefaultWindingType ()
 Returns default hint.
 
static SbBool getDefaultVBOUsage ()
 Returns default hint.
 
- Static Public Member Functions inherited from SoElement
static SoType getClassTypeId ()
 Returns type identifier for SoElement class.
 
- Static Public Member Functions inherited from SoTypedObject
static SoType getClassTypeId ()
 Returns the type identifier for this class.
 

Detailed Description

Stores the current shape hints.

This element stores current shape hints. All hints must be set at the same time; to leave any hint as is, use the "AS_IS" enum value.

SEE ALSO

SoShapeHints

Definition at line 69 of file SoShapeHintsElement.h.

Member Enumeration Documentation

◆ FaceType

Hints about faces of shape.

Enumerator
UNKNOWN_FACE_TYPE 

Nothing is known about faces.

CONVEX 

Faces are all convex.

FACE_TYPE_AS_IS 

Indicates to set() to leave as is.

Definition at line 115 of file SoShapeHintsElement.h.

◆ ShapeType

Hints about entire shape.

Enumerator
UNKNOWN_SHAPE_TYPE 

Nothing is known about shape.

SOLID 

Shape is known to be solid.

SHAPE_TYPE_AS_IS 

Indicates to set() to leave as is.

Definition at line 98 of file SoShapeHintsElement.h.

◆ VertexOrdering

Hints about ordering of face vertices.

Enumerator
UNKNOWN_ORDERING 

No ordering info is known.

CLOCKWISE 

Vertices are ordered CW around faces.

COUNTERCLOCKWISE 

Vertices are ordered CCW around faces.

ORDERING_AS_IS 

Indicates to set() to leave as is.

Definition at line 77 of file SoShapeHintsElement.h.

◆ WindingType

Hints about winding type.

Enumerator
NO_WINDING_TYPE 

No hole.

ODD_TYPE 
NON_ZERO_TYPE 
POSITIVE_TYPE 
NEGATIVE_TYPE 
ABS_GEQ_TWO_TYPE 

Definition at line 133 of file SoShapeHintsElement.h.

Member Function Documentation

◆ get() [1/2]

static void SoShapeHintsElement::get ( SoState state,
VertexOrdering vertexOrdering,
ShapeType shapeType,
FaceType faceType 
)
static

Returns current shape hints from the state.

◆ get() [2/2]

static void SoShapeHintsElement::get ( SoState state,
WindingType windingType 
)
static

Return current shape winding type from the state.

◆ getClassStackIndex()

static int SoShapeHintsElement::getClassStackIndex ( )
static

Returns the stack id for this element.


◆ getClassTypeId()

static SoType SoShapeHintsElement::getClassTypeId ( )
static

Returns the type identifier for this class.


◆ getDefaultFaceType()

static FaceType SoShapeHintsElement::getDefaultFaceType ( )
inlinestatic

Returns default hint.

Definition at line 223 of file SoShapeHintsElement.h.

◆ getDefaultShapeType()

static ShapeType SoShapeHintsElement::getDefaultShapeType ( )
inlinestatic

Returns default hint.

Definition at line 216 of file SoShapeHintsElement.h.

◆ getDefaultVBOUsage()

static SbBool SoShapeHintsElement::getDefaultVBOUsage ( )
inlinestatic

Returns default hint.

Definition at line 237 of file SoShapeHintsElement.h.

◆ getDefaultVertexOrdering()

static VertexOrdering SoShapeHintsElement::getDefaultVertexOrdering ( )
inlinestatic

Returns default hint.

Definition at line 209 of file SoShapeHintsElement.h.

◆ getDefaultWindingType()

static WindingType SoShapeHintsElement::getDefaultWindingType ( )
inlinestatic

Returns default hint.

Definition at line 230 of file SoShapeHintsElement.h.

◆ isVBOUsed()

static SbBool SoShapeHintsElement::isVBOUsed ( SoState state)
static

Indicates if VBO is used from the state.

◆ print()

virtual void SoShapeHintsElement::print ( FILE *  fp) const
virtual

Prints element (for debugging).

Reimplemented from SoElement.

◆ push()

virtual void SoShapeHintsElement::push ( SoState state)
virtual

Push copies the values from the previous element, so set doesn't have to set them if they are set AS_IS.

Reimplemented from SoElement.

◆ set() [1/7]

static void SoShapeHintsElement::set ( SoState state,
SbBool  useVBO 
)
static

Sets the current shape hints in the state.

Only for VBO usage.

◆ set() [2/7]

static void SoShapeHintsElement::set ( SoState state,
SoNode ,
SbBool  useVBO 
)
inlinestatic

Indicates if VBO is used from the state.

Definition at line 186 of file SoShapeHintsElement.h.

◆ set() [3/7]

static void SoShapeHintsElement::set ( SoState state,
SoNode ,
VertexOrdering  vertexOrdering,
ShapeType  shapeType,
FaceType  faceType 
)
inlinestatic

Sets the current shape hints in the state.

Definition at line 172 of file SoShapeHintsElement.h.

◆ set() [4/7]

static void SoShapeHintsElement::set ( SoState state,
SoNode ,
WindingType  windingType 
)
inlinestatic

Definition at line 180 of file SoShapeHintsElement.h.

◆ set() [5/7]

static void SoShapeHintsElement::set ( SoState state,
VertexOrdering  vertexOrdering,
ShapeType  shapeType,
FaceType  faceType 
)
static

Sets the current shape hints in the state.

Calls virtual method that subclasses can override.

◆ set() [6/7]

static void SoShapeHintsElement::set ( SoState state,
VertexOrdering  vertexOrdering,
ShapeType  shapeType,
FaceType  faceType,
WindingType  windingType,
SbBool  useVBO 
)
static

Set shape hints by defining all options.

◆ set() [7/7]

static void SoShapeHintsElement::set ( SoState state,
WindingType  windingType 
)
static

Sets the current shape hints in the state.

Only for the winding type. Call virtual method that subclasses can override.


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