EgtGeomKernel 2.6f2 :

- in CAvToolSurfTm tolleranza negativa in Path vuol dire non controllare punto intermedio.
This commit is contained in:
Dario Sassi
2024-06-07 13:02:07 +02:00
parent b4820ff255
commit 6dfc50e630
2 changed files with 10 additions and 5 deletions
+10 -5
View File
@@ -1,13 +1,13 @@
//----------------------------------------------------------------------------
// EgalTech 2018-2018
// EgalTech 2018-2024
//----------------------------------------------------------------------------
// File : CAvToolSurfTm.cpp Data : 08.05.18 Versione : 1.9e2
// File : CAvToolSurfTm.cpp Data : 07.06.24 Versione : 2.6f2
// Contenuto : Implementazione della classe CAvToolSurfTm.
//
//
//
// Modifiche : 27.04.18 DS Creazione modulo.
//
// 07.06.24 DS Con tolleranza lineare negativa non si controlla il punto medio.
//
//----------------------------------------------------------------------------
@@ -131,6 +131,11 @@ CAvToolSurfTm::TestPath( PNTULIST& lPntM, const Vector3d& vtDir, const Vector3d&
// Se lista vuota, non devo fare alcunché
if ( lPntM.empty())
return true ;
// Controllo la tolleranza lineare (se negativa non vanno fatti controlli sui punti medi)
if ( dLinTol > -EPS_ZERO)
dLinTol = max( dLinTol, EPS_SMALL) ;
else
dLinTol = -1 ;
// Imposto il riferimento di movimento
if ( ! AreSameOrOppositeVectorApprox( vtDir, vtMove))
m_frMove.Set( ORIG, vtMove, vtDir) ;
@@ -217,8 +222,8 @@ CAvToolSurfTm::TestSubPath( int nId, PNTULIST& lPntM, const Vector3d& vtDir, dou
itPntMCurr->second = - dMove ;
if ( dMove < - EPS_SMALL)
return false ;
// se esiste il punto precedente devo verificare il medio
if ( itPntMPrev != lPntM.end()) {
// se esiste il punto precedente e richiesto devo verificare il medio
if ( itPntMPrev != lPntM.end() && dLinTol > 0) {
MyTestMidPointHG( lPntM, itPntMPrev, itPntMCurr, ptPrev, ptCurr, vtDir, dLinTol, 1) ;
}
// passo al successivo
BIN
View File
Binary file not shown.