diff --git a/EGkSurfBezier.h b/EGkSurfBezier.h index 3ed53c8..d53d306 100644 --- a/EGkSurfBezier.h +++ b/EGkSurfBezier.h @@ -18,6 +18,7 @@ class PolyLine ; class ICurveComposite ; +class ISurfFlatRegion ; class ISurfTriMesh ; //---------------------------------------------------------------------------- @@ -35,6 +36,7 @@ class __declspec( novtable) ISurfBezier : public ISurf virtual bool SetControlPoint( int nInd, const Point3d& ptCtrl) = 0 ; virtual bool SetControlPoint( int nIndU, int nIndV, const Point3d& ptCtrl, double dW) = 0 ; virtual bool SetControlPoint( int nInd, const Point3d& ptCtrl, double dW) = 0 ; + virtual bool SetTrimRegion( const ISurfFlatRegion& sfrTrimReg) = 0 ; virtual bool GetInfo( int& nDegU, int& nDegV, int& nSpanU, int& nSpanV, bool& bIsRat, bool& bTrimmed) const = 0 ; virtual const Point3d& GetControlPoint( int nIndU, int nIndV, bool* pbOk) const = 0 ; virtual const Point3d& GetControlPoint( int nInd, bool* pbOk) const = 0 ; @@ -57,6 +59,9 @@ class __declspec( novtable) ISurfBezier : public ISurf virtual const ISurfTriMesh* GetAuxSurf( void) const = 0 ; } ; +//----------------------------------------------------------------------------- +static const double SBZ_TREG_COEFF = 1000 ; + //----------------------------------------------------------------------------- inline ISurfBezier* CreateSurfBezier( void) { return (static_cast( CreateGeoObj( SRF_BEZIER))) ; }