EgtGeomKernel 2.3g1 :
- versione x64 compilata con Clang-cl/LLVM - modifiche varie per eliminare warning più gravi di questo compilatore.
This commit is contained in:
+5
-17
@@ -594,9 +594,6 @@ SurfTriMesh::GeneralizedCut( const ICurve& cvCurve, bool bSaveOnEq)
|
||||
Vector3d vtVecProva = cvOpenChain[nLastOpenLoopN][0].vtOuter ;
|
||||
vtVecProva.Normalize( EPS_ZERO) ;
|
||||
for ( int nLoop = 0 ; nLoop < int( cvBoundClosedLoopVec.size()) ; ++ nLoop) {
|
||||
// Estremi del loop aperto
|
||||
Point3d ptOpenLoopStP = cvOpenChain[nLastOpenLoopN][0].ptSt ;
|
||||
Point3d ptOpenLoopEnP = cvOpenChain[nLastOpenLoopN][0].ptEn ;
|
||||
// Cerco se esistono dei tratti del loop chiuso corrente che sono
|
||||
// toccati dagli estremi del loop aperto corrente
|
||||
int nCvFirst = -1 ;
|
||||
@@ -797,9 +794,6 @@ SurfTriMesh::DecomposeLoop( CHAINVECTOR& cvOpenChain, INTVECTOR& vnDegVec, PNTMA
|
||||
Vector3d vtVecProva = cvOpenChain[nLastOpenLoopN][0].vtOuter ;
|
||||
vtVecProva.Normalize( EPS_ZERO) ;
|
||||
for ( int nLoop = 0 ; nLoop < int( cvBoundClosedLoopVec.size()) ; ++ nLoop) {
|
||||
// Estremi del loop aperto
|
||||
Point3d ptOpenLoopStP = cvOpenChain[nLastOpenLoopN][0].ptSt ;
|
||||
Point3d ptOpenLoopEnP = cvOpenChain[nLastOpenLoopN][0].ptEn ;
|
||||
// Cerco se esistono dei tratti del loop chiuso corrente che sono
|
||||
// toccati dagli estremi del loop aperto corrente
|
||||
int nCvFirst = - 1 ;
|
||||
@@ -1961,7 +1955,6 @@ SurfTriMesh::IntersectTriMeshTriangle( SurfTriMesh& Other)
|
||||
m_vTria[nTA].nTempPart = nInOutNum ;
|
||||
}
|
||||
nVertNum = 0 ;
|
||||
ptFirstV ;
|
||||
nCurVert = SurfB.GetFirstVertex( ptFirstV) ;
|
||||
nInOutNum = 0 ;
|
||||
while ( nInOutNum == 0 && nCurVert != SVT_NULL) {
|
||||
@@ -3383,7 +3376,6 @@ SurfTriMesh::SplitFacet( const INTERSCHAINMAP& IntersLineMap, PieceMap& NewFacet
|
||||
NewLoop2.IsClosedAndFlat(plLoopPlane2, dArea2);
|
||||
vNewPieces[nPart].vPieceLoop[0].IsClosedAndFlat(plContLoopPlane, dAreaCont);
|
||||
Vector3d vtLoopPlaneNorm1 = plLoopPlane1.GetVersN();
|
||||
Vector3d vtLoopPlaneNorm2 = plLoopPlane2.GetVersN();
|
||||
Vector3d vtContLoopPlaneNorm = plContLoopPlane.GetVersN();
|
||||
PolyLine NewLoopCCW, NewLoopCW;
|
||||
bool bFirstLoopIsCounter = vtLoopPlaneNorm1 * vtContLoopPlaneNorm > EPS_SMALL;
|
||||
@@ -3569,7 +3561,6 @@ SurfTriMesh::SplitFacet( const INTERSCHAINMAP& IntersLineMap, PieceMap& NewFacet
|
||||
NewLoop2.IsClosedAndFlat( plLoopPlane2, dArea2) ;
|
||||
vNewPieces[nPart].vPieceLoop[0].IsClosedAndFlat( plContLoopPlane, dAreaCont) ;
|
||||
Vector3d vtLoopPlaneNorm1 = plLoopPlane1.GetVersN();
|
||||
Vector3d vtLoopPlaneNorm2 = plLoopPlane2.GetVersN();
|
||||
Vector3d vtContLoopPlaneNorm = plContLoopPlane.GetVersN();
|
||||
PolyLine NewLoopCCW, NewLoopCW;
|
||||
bool bFirstLoopIsCounter = vtLoopPlaneNorm1 * vtContLoopPlaneNorm > EPS_SMALL;
|
||||
@@ -4078,7 +4069,6 @@ SurfTriMesh::RetriangulateFacetPieces( const PieceMap& NewFacet,
|
||||
for ( int& nT : vFacetTria)
|
||||
RemoveTriangle( nT) ;
|
||||
}
|
||||
int nIndexPosInVec = 0 ;
|
||||
for ( auto it = NewFacet.begin() ; it != NewFacet.end() ; ++ it) {
|
||||
const vector<FacetPiece>& PiecesVector = it->second ;
|
||||
// Ciclo sui nuovi pezzi di faccia.
|
||||
@@ -4179,11 +4169,10 @@ SurfTriMesh::RetriangulateFacetPieces( const PieceMap& NewFacet,
|
||||
//----------------------------------------------------------------------------
|
||||
bool
|
||||
SurfTriMesh::ItersectTriMeshFacets( SurfTriMesh& Other)
|
||||
{ ////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
static int nTime = 0;
|
||||
nTime++;
|
||||
if (nTime == 32)
|
||||
int mimi = 0;
|
||||
{
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
static int nTime = 0 ;
|
||||
nTime ++ ;
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
SurfTriMesh& SurfB = Other ;
|
||||
// Le superfici devono essere valide
|
||||
@@ -4210,7 +4199,6 @@ SurfTriMesh::ItersectTriMeshFacets( SurfTriMesh& Other)
|
||||
}
|
||||
// Ciclo sulle facce delle mesh
|
||||
int nFacetNumA = GetFacetCount() ;
|
||||
int nFacetNumB = SurfB.GetFacetCount() ;
|
||||
for ( int nFA = 0 ; nFA < nFacetNumA ; ++ nFA) {
|
||||
// Dati della faccia
|
||||
POLYLINEVECTOR LoopVecA ;
|
||||
@@ -4462,7 +4450,7 @@ SurfTriMesh::ItersectTriMeshFacets( SurfTriMesh& Other)
|
||||
}
|
||||
// Se la posizione della superficie A rispetto alla B non è definita e
|
||||
// B è esterna ad A, allora assumiamo che siano reciprocamente esterne.
|
||||
if ( nInOutNumA == 0 && nInOutNumA == - 1)
|
||||
if ( nInOutNumA == 0 && nInOutNumB == - 1)
|
||||
nInOutNumA = - 1 ;
|
||||
// Assegno gli indici interni/esterni.
|
||||
for ( int nTA = 0 ; nTA < nTriaNumA ; ++ nTA) {
|
||||
|
||||
Reference in New Issue
Block a user