Include :

- cambiata chiamata all' offset3d.
- aggiunta funzione per l'estensione di una superficie in tangenza.
- creato enum per angoli di una curva proiettata su superficie.
This commit is contained in:
Daniele Bariletti
2026-06-24 15:16:08 +02:00
parent 015edcaed7
commit 4967285c97
4 changed files with 17 additions and 2 deletions
+2 -1
View File
@@ -17,6 +17,7 @@
#include "/EgtDev/Include/EGkPolyLine.h"
#include "/EgtDev/Include/EGkCurve.h"
#include "/EgtDev/Include/EGkCurveComposite.h"
#include "/EgtDev/Include/EGkProjectCurveSurf.h"
#include "/EgtDev/Include/EgtPointerOwner.h"
@@ -94,7 +95,7 @@ public :
public :
EGK_EXPORT bool Reset( void) ;
EGK_EXPORT bool Make( const PolyLine& PL, const VCT3DVECTOR& vOffDir, double dDist, int nType) ;
EGK_EXPORT bool Make( const PNT5AXVECTOR& vPnt5Ax, double dDist, int nType) ;
EGK_EXPORT int GetCurveCount( void) { return int( m_CrvLst.size()) ; }
EGK_EXPORT ICurve* GetCurve( void) ;
EGK_EXPORT ICurve* GetLongerCurve( void) ;
+12 -1
View File
@@ -25,6 +25,17 @@
#define EGK_EXPORT __declspec( dllimport)
#endif
enum P5AxAng { // Tipologia di punto
P5AX_TO_DELETE = -1 , // da cancellare
P5AX_OUT = 0 , // aggiunto prima di inizio o dopo fine
P5AX_STD = 1 , // standard
P5AX_CVEX = 2 , // su angolo convesso
P5AX_CONC = 3 , // in angolo concavo
P5AX_BEFORE_CONC = 4 , // adiacente ad angolo concavo
P5AX_AFTER_CONC = 5 , // adiacente ad angolo concavo
P5AX_SMOOTH_CONC = 6 // zona concava curva, senza spigolo netto
};
//----------------------------------------------------------------------------
// Definizione di Punto 5assi e sue raccolte
struct Point5ax {
@@ -49,7 +60,7 @@ typedef std::vector<Point5ax> PNT5AXVECTOR ; // vettore di Punti 5assi
//----------------------------------------------------------------------------
// Proiezione di una curva su una o più superfici a distanza minima
EGK_EXPORT bool ProjectCurveOnSurf( const ICurve& crCrv, const CISURFPVECTOR& vpSurf,
double dLinTol, double dMaxSegmLen, bool bSharpEdges, PNT5AXVECTOR& vPt5ax) ;
double dLinTol, double dMaxSegmLen, bool bSharpEdges, PNT5AXVECTOR& vPt5ax, bool bNormOrTang = true) ;
// Proiezione di una curva su una o più superfici lungo la direzione data (da o verso)
EGK_EXPORT bool ProjectCurveOnSurf( const ICurve& crCrv, const CISURFPVECTOR& vpSurf, const Vector3d& vtDir,
double dLinTol, double dMaxSegmLen, bool bSharpEdges, bool bFromVsTo, PNT5AXVECTOR& vPt5ax) ;
+1
View File
@@ -48,3 +48,4 @@ EGK_EXPORT ISurfTriMesh* GetSurfTriMeshSwept( const ISurfFlatRegion* pSfrSect, c
EGK_EXPORT ISurfTriMesh* GetSurfTriMeshTransSwept( const ICurve* pSect, const ICurve* pGuide, bool bCapEnds, double dLinTol = 10 * EPS_SMALL) ;
EGK_EXPORT ISurfTriMesh* GetSurfTriMeshRuled( const Point3d& ptP, const ICurve* pCurve, double dLinTol = 10 * EPS_SMALL) ;
EGK_EXPORT ISurfTriMesh* GetSurfTriMeshRuled( const ICurve* pCurve1, const ICurve* pCurve2, int nType, double dLinTol = 10 * EPS_SMALL) ;
EGK_EXPORT ISurfTriMesh* GetSurfExtension( const ISurfTriMesh* pSrfTM, double dExtLen, int nLoop, int nSubCrv, int nType, double dLinTol) ;
+2
View File
@@ -432,6 +432,8 @@ EXE_EXPORT int ExeCreateSurfBzRuledGuided( int nParentId, int nCrvId1, int nCrv
EXE_EXPORT int ExeCreateSurfBzSkinned( int nParentId, const INTVECTOR& nCrvId1, bool bCapEnds, double dLinTol) ;
EXE_EXPORT int ExeCreateSurfBzSwept( int nParentId, int nSectId, int nGuideId, const Vector3d& vtAx,
bool bCapEnds, double dLinTol, int nRefType) ;
EXE_EXPORT int ExeCreateSurfExtension( int nParentId, int nSurfId, double dExtLen, int nCrv, int nSubCrv,
int nType, double dLinTol) ;
// GeomDB Create Volume
EXE_EXPORT int ExeCreateVolZmap( int nParentId, const Point3d& ptIni, double dDimX,