35 #ifndef IECORE_NURBSPRIMITIVE_H
36 #define IECORE_NURBSPRIMITIVE_H
38 #include "IECore/Export.h"
39 #include "IECore/Primitive.h"
40 #include "IECore/VectorTypedData.h"
57 NURBSPrimitive(
int uOrder, ConstFloatVectorDataPtr uKnot,
float uMin,
float uMax,
58 int vOrder, ConstFloatVectorDataPtr vKnot,
float vMin,
float vMax, ConstV3fVectorDataPtr p =
nullptr );
65 const FloatVectorData *uKnot()
const;
68 int uVertices()
const;
69 int uSegments()
const;
71 const FloatVectorData *vKnot()
const;
74 int vVertices()
const;
75 int vSegments()
const;
77 virtual void setTopology(
int uOrder, ConstFloatVectorDataPtr uKnot,
float uMin,
float uMax,
78 int vOrder, ConstFloatVectorDataPtr vKnot,
float vMin,
float vMax );
83 void render(
Renderer *renderer )
const override;
85 void topologyHash(
MurmurHash &h )
const override;
89 static const unsigned int m_ioVersion;
92 FloatVectorDataPtr m_uKnot;
95 FloatVectorDataPtr m_vKnot;
104 #endif // IECORE_NURBSPRIMITIVE_H
Definition: MurmurHash.h:64
Definition: NURBSPrimitive.h:48
Definition: Renderer.h:93
Interpolation
Definition: PrimitiveVariable.h:53
Definition: Primitive.h:54
This namespace contains all components of the core library.
Definition: AddSmoothSkinningInfluencesOp.h:43