EgtMachKernel 2.2c2 :
- corretto errore in fresatura con attacco o uscita a scivolo più lunghi del percorso chiuso e sovrapposizione.
This commit is contained in:
+11
-14
@@ -3480,29 +3480,29 @@ Milling::AddLeadIn( const Point3d& ptP1, const Point3d& ptStart, const Vector3d&
|
||||
pCompo->GetDomain( dParS, dParE) ;
|
||||
if ( ! pCrv.Set( CreateCurveComposite()) || ! pCrv->AddCurve( pCompo->CopyParamRange( dU, dParE)))
|
||||
return false ;
|
||||
if ( m_dAddedOverlap > EPS_SMALL) {
|
||||
pCrv->Invert() ;
|
||||
pCrv->TrimStartAtLen( m_dAddedOverlap) ;
|
||||
pCrv->Invert() ;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if ( ! pCrv.Set( pCompo->Clone()))
|
||||
return false ;
|
||||
}
|
||||
if ( m_dAddedOverlap > EPS_SMALL) {
|
||||
pCrv->Invert() ;
|
||||
pCrv->TrimStartAtLen( m_dAddedOverlap) ;
|
||||
pCrv->Invert() ;
|
||||
}
|
||||
}
|
||||
else {
|
||||
double dU ;
|
||||
if ( pCompo->GetParamAtLength( m_dAddedOverlap + dTang, dU)) {
|
||||
if ( ! pCrv.Set( CreateCurveComposite()) || ! pCrv->AddCurve( pCompo->CopyParamRange( 0, dU)))
|
||||
return false ;
|
||||
if ( m_dAddedOverlap > EPS_SMALL)
|
||||
pCrv->TrimStartAtLen( m_dAddedOverlap) ;
|
||||
}
|
||||
else {
|
||||
if ( ! pCrv.Set( pCompo->Clone()))
|
||||
return false ;
|
||||
}
|
||||
if ( m_dAddedOverlap > EPS_SMALL)
|
||||
pCrv->TrimStartAtLen( m_dAddedOverlap) ;
|
||||
pCrv->Invert() ;
|
||||
}
|
||||
pCrv->SetExtrusion( vtN) ;
|
||||
@@ -3655,13 +3655,13 @@ Milling::AddLeadOut( const Point3d& ptEnd, const Vector3d& vtEnd, const Vector3d
|
||||
if ( pCompo->GetParamAtLength( m_dAddedOverlap + dTang, dU)) {
|
||||
if ( ! pCrv.Set( CreateCurveComposite()) || ! pCrv->AddCurve( pCompo->CopyParamRange( 0, dU)))
|
||||
return false ;
|
||||
if ( m_dAddedOverlap > EPS_SMALL)
|
||||
pCrv->TrimStartAtLen( m_dAddedOverlap) ;
|
||||
}
|
||||
else {
|
||||
if ( ! pCrv.Set( pCompo->Clone()))
|
||||
return false ;
|
||||
}
|
||||
if ( m_dAddedOverlap > EPS_SMALL)
|
||||
pCrv->TrimStartAtLen( m_dAddedOverlap) ;
|
||||
}
|
||||
else {
|
||||
double dLen, dU ;
|
||||
@@ -3670,17 +3670,14 @@ Milling::AddLeadOut( const Point3d& ptEnd, const Vector3d& vtEnd, const Vector3d
|
||||
pCompo->GetDomain( dParS, dParE) ;
|
||||
if ( ! pCrv.Set( CreateCurveComposite()) || ! pCrv->AddCurve( pCompo->CopyParamRange( dU, dParE)))
|
||||
return false ;
|
||||
if ( m_dAddedOverlap > EPS_SMALL) {
|
||||
pCrv->Invert() ;
|
||||
pCrv->TrimStartAtLen( m_dAddedOverlap) ;
|
||||
pCrv->Invert() ;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if ( ! pCrv.Set( pCompo->Clone()))
|
||||
return false ;
|
||||
}
|
||||
pCrv->Invert() ;
|
||||
if ( m_dAddedOverlap > EPS_SMALL)
|
||||
pCrv->TrimStartAtLen( m_dAddedOverlap) ;
|
||||
}
|
||||
pCrv->SetExtrusion( vtN) ;
|
||||
// la porto alla giusta quota
|
||||
|
||||
Reference in New Issue
Block a user