diff --git a/EGkSurfBezier.h b/EGkSurfBezier.h index 0ef4418..dcba8a0 100644 --- a/EGkSurfBezier.h +++ b/EGkSurfBezier.h @@ -63,12 +63,15 @@ class __declspec( novtable) ISurfBezier : public ISurf virtual bool GetTriangles2D( std::vector>& vTria2D) const = 0 ; virtual bool UnprojectPointFromStm( int nT, const Point3d& ptI, Point3d& ptSP, int nIL) const = 0 ; virtual bool UnprojectPointFromStm( int nT, const Point3d& ptI, Point3d& ptSP, int nIL, const Point3d& ptIPrev, bool* bTroughEdge = nullptr) const = 0 ; - virtual bool UnprojectPoint( const Point3d& pt3D, Point3d& ptParam, const Point3d& ptIPrev, bool* bTroughEdge = nullptr) const = 0 ; - virtual bool UnprojectCurveFromStm( const ICurveComposite* pCC, ICRVCOMPOPVECTOR& vpCC) const = 0 ; - virtual bool Cut( const Plane3d& plPlane, bool bSaveOnEq) = 0 ; // taglio la parte della superficie dalla parte positiva del versore del piano. - // Il booleano indica se tenere eventuali triangoli della trimesh ausiliaria che sono coplanari ed equiversi al piano di taglio - virtual bool CalcPoles( void) ; // funzione da chiamare per calcolare i poli della superficie. NECESSARIO se si vuole tagliare la superficie con un piano - virtual bool IncreaseUV( double& dU, double dx, bool bUOrV) const = 0 ; + virtual bool UnprojectPoint( const Point3d& pt3D, Point3d& ptParam, const Point3d& ptIPrev, bool* bTroughEdge = nullptr, const Plane3d* plCut = nullptr) const = 0 ; + virtual bool UnprojectCurveFromStm( const ICurveComposite* pCC, ICRVCOMPOPVECTOR& vpCC, const Plane3d* pPlCut) const = 0 ; + // taglio la parte della superficie dalla parte positiva del versore del piano. + // Il booleano indica se tenere eventuali triangoli della trimesh ausiliaria che sono coplanari ed equiversi al piano di taglio + virtual bool Cut( const Plane3d& plPlane, bool bSaveOnEq) = 0 ; + // funzione da chiamare per calcolare i poli della superficie. NECESSARIO se si vuole tagliare la superficie con un piano + virtual bool CalcPoles( void) ; + virtual bool IncreaseUV( double& dU, double dx, bool bUOrV, double* dUVCopy = nullptr, bool bModifyOrig = true) const = 0 ; + virtual bool IncreaseUV( Point3d& ptUV, Vector3d vtH , Point3d* ptUVCopy, bool bModifyOrig) const = 0 ; } ; //-----------------------------------------------------------------------------