EgtMachKernel :
- aggiustamenti in Taglio Con Lama per tipo ToAndFrom (se impostato ora è forzato e i parametri di affondamento sono opportunamente aggiustati).
This commit is contained in:
+14
-6
@@ -2138,12 +2138,14 @@ Sawing::GenerateLineCl( const ICurveLine* pLine, const Vector3d& vtTool, const V
|
||||
}
|
||||
if ( dActBstep < EPS_SMALL)
|
||||
dActBstep = dActStep ;
|
||||
double dActLstep = GetStepLast() ;
|
||||
// direzione della linea
|
||||
Vector3d vtDir ; pLine->GetStartDir( vtDir) ;
|
||||
|
||||
// Se una sola passata
|
||||
if ( dActStep < EPS_SMALL || ( dElev - dExtraCut) <= dActStep ||
|
||||
( ! bSideAng && m_Params.m_dStepLast > EPS_SMALL && ( dElev - dExtraCut) <= m_Params.m_dStepLast)) {
|
||||
if ( m_Params.m_nStepType != SAW_ST_TOANDFROM &&
|
||||
( dActStep < EPS_SMALL || ( dElev - dExtraCut) <= dActStep ||
|
||||
( ! bSideAng && dActLstep > EPS_SMALL && ( dElev - dExtraCut) <= dActLstep))) {
|
||||
// 1 -> approccio
|
||||
Point3d ptP1 = pLine->GetStart() - vtDir * m_Params.m_dLiTang ;
|
||||
if ( ! AddApproach( ptP1, vtCorr, dSafeZ, dElev, dAppr))
|
||||
@@ -2240,11 +2242,17 @@ Sawing::GenerateLineCl( const ICurveLine* pLine, const Vector3d& vtTool, const V
|
||||
int nStep = 2 ;
|
||||
if ( m_Params.m_nStepType == SAW_ST_ZIGZAG)
|
||||
nStep = 2 * static_cast<int>( ceil( dCutH / ( dActStep + dActBstep + EPS_SMALL))) ;
|
||||
else {
|
||||
if ( dActStep < EPS_SMALL)
|
||||
dActStep = dCutH / nStep ;
|
||||
if ( dActBstep < EPS_SMALL)
|
||||
dActBstep = dCutH / nStep ;
|
||||
}
|
||||
double dMeanStep = dCutH / nStep ;
|
||||
double dBstep = dActBstep * 2 * dMeanStep / ( dActStep + dActBstep) ;
|
||||
double dLastStep = dBstep ;
|
||||
if ( ! bSideAng && m_Params.m_dStepLast > EPS_SMALL) {
|
||||
dLastStep = m_Params.m_dStepLast ;
|
||||
if ( ! bSideAng && dActLstep > EPS_SMALL) {
|
||||
dLastStep = dActLstep ;
|
||||
double dCoeff = ( dCutH - dLastStep) / ( nStep / 2 * dActStep + ( nStep / 2 - 1) * dActBstep) ;
|
||||
dMeanStep = dCoeff * ( dActStep + dActBstep) / 2 ;
|
||||
dBstep = dCoeff * dActBstep ;
|
||||
@@ -2286,8 +2294,8 @@ Sawing::GenerateLineCl( const ICurveLine* pLine, const Vector3d& vtTool, const V
|
||||
int nStep = static_cast<int>( ceil( dCutH / ( dActStep + EPS_SMALL))) ;
|
||||
double dStep = dCutH / nStep ;
|
||||
double dLastStep = dStep ;
|
||||
if ( ! bSideAng && m_Params.m_dStepLast > EPS_SMALL) {
|
||||
dLastStep = m_Params.m_dStepLast ;
|
||||
if ( ! bSideAng && dActLstep > EPS_SMALL) {
|
||||
dLastStep = dActLstep ;
|
||||
nStep = static_cast<int>( ceil( ( dCutH - dLastStep) / ( dActStep + EPS_SMALL))) + 1 ;
|
||||
dStep = ( dCutH - dLastStep) / ( nStep - 1) ;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user