// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _GeomFill_Profiler_HeaderFile #define _GeomFill_Profiler_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _TColGeom_SequenceOfCurve_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Handle_Geom_Curve_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif class StdFail_NotDone; class Standard_DomainError; class Geom_Curve; class TColgp_Array1OfPnt; class TColStd_Array1OfReal; class TColStd_Array1OfInteger; //! Evaluation of the common BSplineProfile of a group
//! of curves from Geom. All the curves will have the
//! same degree, the same knot-vector, so the same
//! number of poles.
class GeomFill_Profiler { public: void* operator new(size_t,void* anAddress) { return anAddress; } void* operator new(size_t size) { return Standard::Allocate(size); } void operator delete(void *anAddress) { if (anAddress) Standard::Free((Standard_Address&)anAddress); } Standard_EXPORT GeomFill_Profiler(); Standard_EXPORT virtual void Delete() ; Standard_EXPORT virtual ~GeomFill_Profiler(){Delete() ; } Standard_EXPORT void AddCurve(const Handle(Geom_Curve)& Curve) ; //! Converts all curves to BSplineCurves.
//! Set them to the common profile.
//! is used to compare 2 knots.
Standard_EXPORT virtual void Perform(const Standard_Real PTol) ; //! Raises if not yet perform
Standard_EXPORT Standard_Integer Degree() const; Standard_Boolean IsPeriodic() const; //! Raises if not yet perform
Standard_EXPORT Standard_Integer NbPoles() const; //! returns in the poles of the BSplineCurve
//! from index adjusting to the current profile.
//! Raises if not yet perform
//! Raises if not in the range [1,NbCurves]
//! if the length of is not equal to
//! NbPoles().
Standard_EXPORT void Poles(const Standard_Integer Index,TColgp_Array1OfPnt& Poles) const; //! returns in the weights of the BSplineCurve
//! from index adjusting to the current profile.
//! Raises if not yet perform
//! Raises if not in the range [1,NbCurves] or
//! if the length of is not equal to
//! NbPoles().
Standard_EXPORT void Weights(const Standard_Integer Index,TColStd_Array1OfReal& Weights) const; //! Raises if not yet perform
Standard_EXPORT Standard_Integer NbKnots() const; //! Raises if not yet perform
//! Raises if the lengthes of and are
//! not equal to NbKnots().
Standard_EXPORT void KnotsAndMults(TColStd_Array1OfReal& Knots,TColStd_Array1OfInteger& Mults) const; const Handle_Geom_Curve& Curve(const Standard_Integer Index) const; protected: TColGeom_SequenceOfCurve mySequence; Standard_Boolean myIsDone; Standard_Boolean myIsPeriodic; private: }; #include // other Inline functions and methods (like "C++: function call" methods) #endif