EgtMachKernel :
- in PocketingNT aggiunto controllo per evitare di Trimmare con il grezzo le superfici di svuotatura riferite a percorsi Ottimizzati per Fori.
This commit is contained in:
+7
-1
@@ -3974,11 +3974,17 @@ PocketingNT::ProcessPath( int nPathId, int nPvId, int nClId)
|
||||
}
|
||||
if ( pSfrTrim->IsValid() && pSfrTrim->GetChunkCount() > 0) {
|
||||
// se valida, limito la superficie di svuotatura alla proiezione del grezzo
|
||||
// NB. Se la svuotatura è un foro chiuso il cui il raggio della circonferenza non è superiore a 3 volte il diamentro della
|
||||
// tasca corrente, evito di fare intersezioni
|
||||
const double DIAM_RATIO = 3. ;
|
||||
bool bSkipIntersection = ( IsPocketingHole( pSfrPock, m_TParams.m_dDiam / 2., GetOffsR(), GetSideStep(), m_Params.m_nSubType,
|
||||
GetLeadInType(), m_Params.m_dLiTang, DIAM_RATIO)) ;
|
||||
#if DEBUG_SFR_RAW
|
||||
int _nSfr = m_pGeomDB->AddGeoObj( GDB_ID_NULL, nLaySR, pSfrTrim->Clone()) ;
|
||||
m_pGeomDB->SetMaterial( _nSfr, Color( 0., 1., 0., .75)) ;
|
||||
#endif
|
||||
pSfrPock->Intersect( *pSfrTrim) ;
|
||||
if ( ! bSkipIntersection)
|
||||
pSfrPock->Intersect( *pSfrTrim) ;
|
||||
}
|
||||
else
|
||||
continue ; // svuotatura fuori dalla proiezione del grezzo, passo al prossimo step
|
||||
|
||||
Reference in New Issue
Block a user