aboutsummaryrefslogtreecommitdiff
path: root/tool_src/QvLib/QvShapeHints.h
blob: e816239fee0dcac1a036fde71b56d030c302597e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#ifndef  _QV_SHAPE_HINTS_
#define  _QV_SHAPE_HINTS_

#include <QvSFEnum.h>
#include <QvSFFloat.h>
#include <QvSubNode.h>

class QvShapeHints : public QvNode {

    QV_NODE_HEADER(QvShapeHints);

  public:
    enum VertexOrdering {
	UNKNOWN_ORDERING,
	CLOCKWISE,
	COUNTERCLOCKWISE,
    };

    enum ShapeType {
	UNKNOWN_SHAPE_TYPE,
	SOLID,
    };

    enum FaceType {
	UNKNOWN_FACE_TYPE,
	CONVEX,
    };

    // Fields
    QvSFEnum		vertexOrdering;	// Ordering of face vertices
    QvSFEnum		shapeType;	// Info about shape geometry
    QvSFEnum		faceType;	// Info about face geometry
    QvSFFloat		creaseAngle;	// Smallest angle for sharp edge
};

#endif /* _QV_SHAPE_HINTS_ */