EgtMachKernel :
- modifiche per gestione aggregato da sotto in foratura e fresatura - modifiche per nuovi tipi di uscite lame allungate.
This commit is contained in:
+22
-22
@@ -2968,26 +2968,9 @@ Sawing::AdjustLineForEdges( ICurveLine* pLine, double dElev, const Vector3d& vtC
|
||||
else if ( m_Params.m_nLeadInType == SAW_LI_OUT)
|
||||
// all'esterno
|
||||
dDeltaI = dDeltaT ;
|
||||
else if ( m_Params.m_nLeadInType == SAW_LI_EXT_CENT) {
|
||||
// porto il centro lama sul bordo del grezzo
|
||||
// calcolo punto di inizio e direzione (sono in globale)
|
||||
Point3d ptP ;
|
||||
pLine->GetStartPoint( ptP) ;
|
||||
Vector3d vtDir ;
|
||||
pLine->GetStartDir( vtDir) ;
|
||||
// determino la distanza dal bordo del grezzo
|
||||
double dDist[4] = {0, 0, 0, 0} ;
|
||||
if ( ! GetDistanceFromRawSide( m_nPhase, ptP, - vtDir, dDist[0]) ||
|
||||
! GetDistanceFromRawSide( m_nPhase, ptP + vtThick, - vtDir, dDist[1]) ||
|
||||
! GetDistanceFromRawSide( m_nPhase, ptP + vtCorr * dElev, - vtDir, dDist[2]) ||
|
||||
! GetDistanceFromRawSide( m_nPhase, ptP + vtCorr * dElev + vtThick, - vtDir, dDist[3]))
|
||||
return false ;
|
||||
dDeltaI = 0 ;
|
||||
for ( int i = 0 ; i < 4 ; ++i)
|
||||
dDeltaI = max( dDeltaI, dDist[i]) ;
|
||||
}
|
||||
else if ( m_Params.m_nLeadInType == SAW_LI_EXT_OUT) {
|
||||
// estendo all'esterno del bordo del grezzo
|
||||
else if ( m_Params.m_nLeadInType == SAW_LI_EXT_CENT ||
|
||||
m_Params.m_nLeadInType == SAW_LI_EXT_OUT) {
|
||||
// porto il centro lama sul bordo del grezzo o all'esterno
|
||||
// calcolo punto di inizio e direzione (sono in globale)
|
||||
Point3d ptP ;
|
||||
pLine->GetStartPoint( ptP) ;
|
||||
@@ -3003,6 +2986,8 @@ Sawing::AdjustLineForEdges( ICurveLine* pLine, double dElev, const Vector3d& vtC
|
||||
dDeltaI = 0 ;
|
||||
for ( int i = 0 ; i < 4 ; ++i)
|
||||
dDeltaI = max( dDeltaI, dDist[i]) ;
|
||||
if ( m_Params.m_nLeadInType == SAW_LI_EXT_OUT)
|
||||
dDeltaI += dDeltaT ;
|
||||
}
|
||||
}
|
||||
else {
|
||||
@@ -3035,9 +3020,14 @@ Sawing::AdjustLineForEdges( ICurveLine* pLine, double dElev, const Vector3d& vtC
|
||||
dDeltaF = - dDeltaT ;
|
||||
else if ( bIsLast) {
|
||||
if ( m_Params.m_nLeadOutType == SAW_LO_STRICT)
|
||||
// all'interno
|
||||
dDeltaF = - dDeltaT ;
|
||||
else if ( m_Params.m_nLeadOutType == SAW_LO_EXT) {
|
||||
// estendo al bordo del grezzo
|
||||
else if ( m_Params.m_nLeadOutType == SAW_LO_OUT)
|
||||
// all'esterno
|
||||
dDeltaF = dDeltaT ;
|
||||
else if ( m_Params.m_nLeadOutType == SAW_LO_EXT_CENT ||
|
||||
m_Params.m_nLeadOutType == SAW_LO_EXT_OUT) {
|
||||
// estendo al bordo del grezzo o al suo esterno
|
||||
// calcolo punto di fine e direzione (sono in globale)
|
||||
Point3d ptP ;
|
||||
pLine->GetEndPoint( ptP) ;
|
||||
@@ -3053,6 +3043,8 @@ Sawing::AdjustLineForEdges( ICurveLine* pLine, double dElev, const Vector3d& vtC
|
||||
dDeltaF = 0 ;
|
||||
for ( int i = 0 ; i < 4 ; ++i)
|
||||
dDeltaF = max( dDeltaF, dDist[i]) ;
|
||||
if ( m_Params.m_nLeadOutType == SAW_LO_EXT_OUT)
|
||||
dDeltaF += dDeltaT ;
|
||||
}
|
||||
}
|
||||
else {
|
||||
@@ -3074,6 +3066,9 @@ Sawing::AdjustLineForEdges( ICurveLine* pLine, double dElev, const Vector3d& vtC
|
||||
dDeltaF = 0 ;
|
||||
for ( int i = 0 ; i < 4 ; ++i)
|
||||
dDeltaF = max( dDeltaF, dDist[i]) ;
|
||||
// se LeadOut EXT_OUT vado all'esterno
|
||||
if ( m_Params.m_nLeadOutType == SAW_LO_EXT_OUT)
|
||||
dDeltaF += dDeltaT ;
|
||||
}
|
||||
}
|
||||
// controllo se lunghezza entità accettabile
|
||||
@@ -3125,7 +3120,12 @@ Sawing::AdjustArcForEdges( ICurveArc* pArc, double dElev, double dLenCoeff,
|
||||
dDeltaF = - dDeltaT ;
|
||||
else if ( bIsLast) {
|
||||
if ( m_Params.m_nLeadOutType == SAW_LO_STRICT)
|
||||
// all'interno
|
||||
dDeltaF = - dDeltaT ;
|
||||
else if ( m_Params.m_nLeadOutType == SAW_LO_OUT ||
|
||||
m_Params.m_nLeadOutType == SAW_LO_EXT_OUT)
|
||||
// all'esterno
|
||||
dDeltaF = dDeltaT ;
|
||||
}
|
||||
dDeltaF *= dLenCoeff ;
|
||||
// controllo se lunghezza entità accettabile
|
||||
|
||||
Reference in New Issue
Block a user