diff --git a/EGkSurfTriMesh.h b/EGkSurfTriMesh.h index c3c998b..55e009e 100644 --- a/EGkSurfTriMesh.h +++ b/EGkSurfTriMesh.h @@ -35,8 +35,6 @@ class __declspec( novtable) ISurfTriMesh : public ISurf enum RuledType { RLT_ISOPAR = 0, // con parametrizzazione simile tra le due curve RLT_MINDIST = 1, // con distanza minima tra le due curve RLT_ISOPAR_SMOOTH = 2} ; // con parametrizzazione simile tra le due curve e lisciatura delle parti torte - enum OffType { OFF_FILLET = 0, - OFF_EXTEND = 2 } ; public : // IGeoObj ISurfTriMesh* Clone( void) const override = 0 ; public : @@ -166,11 +164,3 @@ typedef std::vector CISURFTMPVECTOR ; // vettore di pu typedef std::vector ISURFTMPVECTOR ; // vettore di puntatori a ISurfTriMesh typedef std::list ISURFTMPLIST ; // lista di puntatori a ISurfTriMesh typedef std::vector> ISURFTMPOVECTOR ; // vettore di puntatori esclusivi a ISurfTriMesh - -//---------------------------------------------------------------------------- -// Funzioni per Offset -EGK_EXPORT ISurfTriMesh* CreateSurfTriMeshOffset( const ISurfTriMesh* pStm, double dOffs, double dLinTol, int nType = ISurfTriMesh::OFF_FILLET) ; -EGK_EXPORT ISurfTriMesh* CreateSurfTriMeshThickeningOffset( const ISurfTriMesh* pStm, double dOffs, double dLinTol, int nType = ISurfTriMesh::OFF_FILLET) ; -// Funzioni per Fat Offset -EGK_EXPORT ISurfTriMesh* CreateSurfTriMeshesOffset( const CISURFTMPVECTOR& vStm, double dOffs, double dLinTol, int nType = ISurfTriMesh::OFF_FILLET) ; -EGK_EXPORT ISurfTriMesh* CreateSurfTriMeshesThickeningOffset( const CISURFTMPVECTOR& vStm, double dOffs, double dLinTol, int nType = ISurfTriMesh::OFF_FILLET) ; \ No newline at end of file diff --git a/EGkSurfTriMeshAux.h b/EGkSurfTriMeshAux.h new file mode 100644 index 0000000..faa92a8 --- /dev/null +++ b/EGkSurfTriMeshAux.h @@ -0,0 +1,29 @@ +//---------------------------------------------------------------------------- +// EgalTech 2025-2025 +//---------------------------------------------------------------------------- +// File : EGkSurfTriMeshAux.h Data : 07.07.25 Versione : 2.7g1 +// Contenuto : Funzioni ausiliarie per ISurfTriMesh. +// +// +// +// Modifiche : 07.07.25 DS Creazione modulo. +// +// +//---------------------------------------------------------------------------- + +#pragma once + +#include "/EgtDev/Include/EGkSurfTriMesh.h" + +//---------------------------------------------------------------------------- +// Costanti per offset +static int STMOFF_FILLET = 0 ; +static int STMOFF_EXTEND = 2 ; + +//---------------------------------------------------------------------------- +// Funzioni per Offset di singola superficie +EGK_EXPORT ISurfTriMesh* CreateSurfTriMeshOffset( const ISurfTriMesh* pStm, double dOffs, double dPrec, int nType = STMOFF_FILLET) ; +EGK_EXPORT ISurfTriMesh* CreateSurfTriMeshThickeningOffset( const ISurfTriMesh* pStm, double dOffs, double dPrec, int nType = STMOFF_FILLET) ; +// Funzioni per Offset di pił superfici +EGK_EXPORT ISurfTriMesh* CreateSurfTriMeshesOffset( const CISURFTMPVECTOR& vStm, double dOffs, double dPrec, int nType = STMOFF_FILLET) ; +EGK_EXPORT ISurfTriMesh* CreateSurfTriMeshesThickeningOffset( const CISURFTMPVECTOR& vStm, double dOffs, double dPrec, int nType = STMOFF_FILLET) ; diff --git a/EGkVolZmap.h b/EGkVolZmap.h index 0f5eac2..08dcc9a 100644 --- a/EGkVolZmap.h +++ b/EGkVolZmap.h @@ -19,7 +19,7 @@ #include "/EgtDev/Include/EGkGeoObj.h" #include "/EgtDev/Include/EGkCurveComposite.h" #include "/EgtDev/Include/EGkSurfFlatRegion.h" -#include "/EgtDev/Include/EGkSurfTriMesh.h" +#include "/EgtDev/Include/EGkSurfTriMeshAux.h" //---------------------------------------------------------------------------- class __declspec( novtable) IVolZmap : public IGeoObj @@ -33,8 +33,8 @@ class __declspec( novtable) IVolZmap : public IGeoObj virtual bool CreateEmpty( const Point3d& ptO, double dDimX, double dDimY, double dDimZ, double dStep, bool bTriDex) = 0 ; virtual bool CreateFromFlatRegion( const ISurfFlatRegion& Surf, double dDimZ, double dStep, bool bTriDex) = 0 ; virtual bool CreateFromTriMesh( const ISurfTriMesh& Surf, double dStep, bool bTriDex, double dExtraBox = 0.) = 0 ; - virtual bool CreateFromTriMeshOffset( const CISURFTMPVECTOR& vSurf, double dOffs, double dTol, int nType = ISurfTriMesh::OFF_FILLET) = 0 ; - virtual bool CreateFromTriMeshThickeningOffset( const CISURFTMPVECTOR& vSurf, double dOffs, double dTol, int nType = ISurfTriMesh::OFF_FILLET) = 0 ; + virtual bool CreateFromTriMeshOffset( const CISURFTMPVECTOR& vSurf, double dOffs, double dTol, int nType = STMOFF_FILLET) = 0 ; + virtual bool CreateFromTriMeshThickeningOffset( const CISURFTMPVECTOR& vSurf, double dOffs, double dTol, int nType = STMOFF_FILLET) = 0 ; virtual int GetBlockCount( void) const = 0 ; virtual int GetBlockUpdatingCounter( int nBlock) const = 0 ; virtual bool GetBlockTriangles( int nBlock, TRIA3DEXVECTOR& vTria) const = 0 ; diff --git a/EXeExecutor.h b/EXeExecutor.h index b75095b..202b303 100644 --- a/EXeExecutor.h +++ b/EXeExecutor.h @@ -429,10 +429,6 @@ EXE_EXPORT int ExeCreateVolZmapEmpty( int nParentId, const Point3d& ptIni, doub double dDimY, double dDimZ, double dPrec, bool bTriDex, int nRefType) ; EXE_EXPORT int ExeCreateVolZmapByRegionExtrusion( int nParentId, int nSfrId, double dDimZ, double dPrec, bool bTriDex) ; EXE_EXPORT int ExeCreateVolZmapFromSurfTm( int nParentId, int nStmId, double dPrec, bool bTriDex) ; -EXE_EXPORT int ExeCreateVolZmapFromSurfTmOffset( int nParentId, const INTVECTOR& vStmId, double dOffs, double dPrec, int nType) ; -EXE_EXPORT int ExeCreateVolZmapFromSurfTmThickeningOffset( int nParentId, const INTVECTOR& vStmId, double dOffs, double dPrec, int nType) ; -EXE_EXPORT bool ExeUpdateVolZmapByAddingSurfTm( int nVolZmapId, int nStmId) ; -EXE_EXPORT bool ExeUniformVolZmap( int nVolZmapId, double dToler) ; // GeomDB PartLayer EXE_EXPORT bool ExeIsPart( int nPartId) ; @@ -735,6 +731,8 @@ EXE_EXPORT bool ExeVolZmapMillingStep( int nId, const Point3d& ptPs, const Vecto EXE_EXPORT bool ExeVolZmapMillingStep( int nId, const Point3d& ptPs, const Vector3d& vtDs, const Vector3d& vtAs, const Point3d& ptPe, const Vector3d& vtDe, const Vector3d& vtAe, int nRefType) ; EXE_EXPORT bool ExeCutVolZmapPlane( int nId, const Point3d& ptOn, const Vector3d& vtN, int nRefType) ; +EXE_EXPORT bool ExeUpdateVolZmapByAddingSurfTm( int nVolZmapId, int nStmId) ; +EXE_EXPORT bool ExeUniformVolZmap( int nVolZmapId, double dToler) ; // GeomDB Get EXE_EXPORT bool ExeTextNormVersor( int nId, int nRefId, Vector3d& vtNorm) ; @@ -745,7 +743,7 @@ EXE_EXPORT bool ExeTextGetItalic( int nId, bool& bItl) ; // GeomDb Get Pocketing EXE_EXPORT bool ExePocketing( const int nId, double dRad, double dStep, double dAngle, int nType, bool bSmooth, int nDestGrpId, int& nFirstId, int& nCrvCount) ; -EXE_EXPORT int ExeSurfFrGetZigZagInfill( int nId, int nDestGrpId, double dStep, double dAng, bool bSmooth, bool bRemoveOverlapLink,int* pnCount) ; +EXE_EXPORT int ExeSurfFrGetZigZagInfill( int nId, int nDestGrpId, double dStep, double dAng, bool bSmooth, bool bRemoveOverlapLink,int* pnCount) ; // GeomDb Curve Get EXE_EXPORT bool ExeCurveDomain( int nId, double* pdStart, double* pdEnd) ;