EgtGeomKernel 2.6j4 :
- in Vmill velocizzato taglio dexel con cilindri di grande diametro (come le lame).
This commit is contained in:
+21
-3
@@ -55,13 +55,13 @@ VolZmap::SubtractIntervals( int nGrid, int nI, int nJ,
|
||||
}
|
||||
|
||||
// Riporto le coordinate cicliche delle normali nell'ordine di partenza (da griglia a sistema intrinseco)
|
||||
if ( !bSkipSwap && nGrid == 1) {
|
||||
if ( ! bSkipSwap && nGrid == 1) {
|
||||
swap( vtNmi.x, vtNmi.z) ;
|
||||
swap( vtNmi.y, vtNmi.z) ;
|
||||
swap( vtNma.x, vtNma.z) ;
|
||||
swap( vtNma.y, vtNma.z) ;
|
||||
}
|
||||
else if ( !bSkipSwap && nGrid == 2) {
|
||||
else if ( ! bSkipSwap && nGrid == 2) {
|
||||
swap( vtNmi.y, vtNmi.z) ;
|
||||
swap( vtNmi.x, vtNmi.z) ;
|
||||
swap( vtNma.y, vtNma.z) ;
|
||||
@@ -4544,11 +4544,25 @@ VolZmap::CompCyl_Milling( int nGrid, const Point3d& ptS, const Point3d& ptE,
|
||||
double dLongLen = vtMoveLong.Len() ;
|
||||
double dOrtLen = vtMoveOrt.Len() ;
|
||||
|
||||
int nSkip = 0 ;
|
||||
|
||||
for ( int i = nStartI ; i <= nEndI ; ++ i) {
|
||||
for ( int j = nStartJ ; j <= nEndJ ; ++ j) {
|
||||
|
||||
Point3d ptC( ( i + 0.5) * m_dStep, ( j + 0.5) * m_dStep, 0) ;
|
||||
|
||||
|
||||
// salto il controllo degli spilloni sotto il piano limite in basso o sopra il piano limite in alto
|
||||
if ( ( ptC - ptITip) * vtToolDir < -EPS_SMALL &&
|
||||
( ptC + Z_AX * m_dMaxZ[nGrid] - ptITip) * vtToolDir < -EPS_SMALL) {
|
||||
++ nSkip ;
|
||||
continue ;
|
||||
}
|
||||
if ( ( ptC - ptI - vtMoveLong) * vtToolDir > EPS_SMALL &&
|
||||
( ptC + Z_AX * m_dMaxZ[nGrid] - ptI - vtMoveLong) * vtToolDir > EPS_SMALL) {
|
||||
++ nSkip ;
|
||||
continue ;
|
||||
}
|
||||
|
||||
Point3d ptInt1, ptInt2 ;
|
||||
Vector3d vtN1, vtN2 ;
|
||||
|
||||
@@ -4592,6 +4606,10 @@ VolZmap::CompCyl_Milling( int nGrid, const Point3d& ptS, const Point3d& ptE,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//string sLog = "Skipped dexel = " + ToString( nSkip) + " / " + ToString( ( nEndI - nStartI + 1) * ( nEndJ - nStartJ + 1)) ;
|
||||
//LOG_DBG_INFO( GetEGkLogger(), sLog.c_str())
|
||||
|
||||
return true ;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user