35 #ifndef IE_CORE_CURVEEXTRUDEOP_H
36 #define IE_CORE_CURVEEXTRUDEOP_H
40 #include "IECore/Export.h"
41 #include "IECore/Op.h"
42 #include "IECore/NumericParameter.h"
43 #include "IECore/SimpleTypedParameter.h"
44 #include "IECore/TypedPrimitiveParameter.h"
45 #include "IECore/CurvesPrimitive.h"
46 #include "IECore/PatchMeshPrimitive.h"
51 IE_CORE_FORWARDDECLARE( ObjectParameter )
53 class IECORE_API CurveExtrudeOp : public Op
59 IE_CORE_DECLARERUNTIMETYPED( CurveExtrudeOp, Op );
62 ~CurveExtrudeOp()
override;
64 CurvesPrimitiveParameter *curvesParameter();
65 const CurvesPrimitiveParameter *curvesParameter()
const;
67 V2iParameter *resolutionParameter();
68 const V2iParameter *resolutionParameter()
const;
72 ObjectPtr doOperation(
const CompoundObject *operands )
override;
74 void buildReferenceFrames(
const std::vector< Imath::V3f > &points, std::vector< Imath::V3f > &tangents, std::vector< Imath::M44f > &frames )
const;
76 PatchMeshPrimitivePtr buildPatchMesh(
const CurvesPrimitive * curves,
unsigned curveIndex,
unsigned vertexOffset,
unsigned varyingOffset )
const;
80 CurvesPrimitiveParameterPtr m_curvesParameter;
81 V2iParameterPtr m_resolutionParameter;
89 IE_CORE_DECLAREPTR( CurveExtrudeOp );
93 #endif // IE_CORE_CURVEEXTRUDEOP_H
This namespace contains all components of the core library.
Definition: AddSmoothSkinningInfluencesOp.h:43