diff --git a/EGkSurfTriMesh.h b/EGkSurfTriMesh.h index a112e46..a10569c 100644 --- a/EGkSurfTriMesh.h +++ b/EGkSurfTriMesh.h @@ -16,6 +16,7 @@ #include "/EgtDev/Include/EGkSurf.h" #include "/EgtDev/Include/EGkTriangle3d.h" #include "/EgtDev/Include/EGkPolyLine.h" +#include "/EgtDev/Include/EGkCurve.h" //---------------------------------------------------------------------------- const int SVT_NULL = - 1 ; // vertice o triangolo nullo @@ -90,6 +91,7 @@ class __declspec( novtable) ISurfTriMesh : public ISurf virtual bool GetFacetsContact( int nF1, int nF2, bool& bAdjac, Point3d& ptP1, Point3d& ptP2, double& dAng) const = 0 ; virtual ISurfTriMesh* CloneFacet( int nF) const = 0 ; virtual bool Cut( const Plane3d& plPlane, bool bSaveOnEq) = 0 ; + virtual bool GeneralizedCut( const ICurve& cvCurve, bool bSaveOnEq) = 0 ; virtual bool GetAllTriaOverlapBox( const BBox3d& b3Box, INTVECTOR& vT) const = 0 ; virtual const BBox3d& GetAllTriaBox( void) const = 0 ; virtual int GetPartCount( void) const = 0 ; diff --git a/EXeExecutor.h b/EXeExecutor.h index d9b51d2..519e39c 100644 --- a/EXeExecutor.h +++ b/EXeExecutor.h @@ -487,6 +487,7 @@ EXE_EXPORT int ExeGetSurfTmSilhouette( int nId, const Vector3d& vtDir, int nDes EXE_EXPORT int ExeExtractSurfTmFacetLoops( int nId, int nFacet, int nDestGrpId, int* pnCount) ; EXE_EXPORT int ExeCopySurfTmFacet( int nId, int nFacet, int nDestGrpId) ; EXE_EXPORT bool ExeCutSurfTmPlane( int nId, const Point3d& ptOn, const Vector3d& vtN, bool bSaveOnEq, int nRefType) ; +EXE_EXPORT bool ExeCutSurfTmClosedCurve( int nSurfId, int nCurveId, bool bSaveOnEq) ; // GeomDb Volume Modify EXE_EXPORT int ExeExplodeVolume( int nId, int* pnCount) ;