Include :

- aggiornamento prototipi.
This commit is contained in:
Dario Sassi
2019-09-12 07:44:01 +00:00
parent e9ab0057d7
commit 966f2bb9eb
+25 -12
View File
@@ -1,19 +1,20 @@
//----------------------------------------------------------------------------
// EgalTech 2014-2014
// EgalTech 2014-2019
//----------------------------------------------------------------------------
// File : EGkChainCurves.h Data : 20.07.14 Versione : 1.5g3
// File : EGkChainCurves.h Data : 10.09.19 Versione : 2.1i1
// Contenuto : Dichiarazione funzione per concatenamento curve.
//
//
//
// Modifiche : 20.07.14 DS Creazione modulo.
//
// 10.09.19 DS Aggiunto m_vPtFork (vettore punti di fork).
//
//----------------------------------------------------------------------------
#pragma once
#include "/EgtDev/Include/EGkPointGrid3d.h"
#include "/EgtDev/Include/EGkGeoCollection.h"
#include <unordered_set>
class IGeomDB ;
@@ -69,20 +70,32 @@ class ChainCurves
: nId( nI), ptStart( ptS), vtStart( vtS), ptEnd( ptE), vtEnd( vtE) {}
} ;
typedef std::vector<CrvData> CRVDATAVECTOR ;
struct ForkData {
Point3d ptFork ;
INTVECTOR vnFork ;
ForkData( void) : ptFork(), vnFork() {}
ForkData( const Point3d& ptP, const INTVECTOR& vF)
: ptFork( ptP), vnFork( vF) {}
} ;
typedef std::vector<ForkData> FORKDATAVECTOR ;
typedef FORKDATAVECTOR::iterator FDV_CONST_ITER ;
private :
bool AddToChain( int nId, bool bEquiv, INTVECTOR& vIds) ;
bool RemoveEntityFromGrid( int nInd) ;
bool ChooseStart( const Point3d& ptStart, const INTVECTOR& vStart, int& nStart) ;
bool ChooseNext( const Vector3d& vtCurr, const INTVECTOR& vNext, bool bHaltOnFork, int& nNext) ;
bool ChoosePrev( const Vector3d& vtCurr, const INTVECTOR& vPrev, bool bHaltOnFork, int& nPrev) ;
bool ChooseNext( const Point3d& ptCurr, const Vector3d& vtCurr, const INTVECTOR& vNext, bool bHaltOnFork, int& nNext) ;
bool ChoosePrev( const Point3d& ptCurr, const Vector3d& vtCurr, const INTVECTOR& vPrev, bool bHaltOnFork, int& nPrev) ;
FDV_CONST_ITER GetForkPoint( const Point3d& ptP) ;
private :
bool m_bAllowInvert ;
double m_dToler ;
INTUSET m_sCrvId ;
CRVDATAVECTOR m_vCrvData ;
PointGrid3d m_PointGrid ;
bool m_bIsFork ;
INTVECTOR m_vFork ;
bool m_bAllowInvert ;
double m_dToler ;
INTUSET m_sCrvId ;
CRVDATAVECTOR m_vCrvData ;
PointGrid3d m_PointGrid ;
bool m_bFromNear ;
FORKDATAVECTOR m_vForkData ;
bool m_bIsFork ;
INTVECTOR m_vFork ;
} ;