EgtMachKernel 1.6v1 :

- in fresatura non si allungano estremi di percorsi chiusi (c'è già overlap)
- migliorata preview di fresatura (angoli interni ora con raggio fresa)
- migliorata gestione verifica collisioni sui collegamenti
- corretto utilizzo peso delta primo asse rotante per scelta soluzione più vicina a precedente.
This commit is contained in:
Dario Sassi
2016-10-06 10:29:57 +00:00
parent d7234d57d1
commit af60c946b7
3 changed files with 78 additions and 63 deletions
+3 -3
View File
@@ -935,7 +935,7 @@ Milling::ProcessPath( int nPathId, int nPvId, int nClId)
pCompo->GetStartPoint( ptStart) ;
// eventuale allungamento/accorciamento dell'inizio
if ( abs( m_Params.m_dStartAddLen) > EPS_SMALL) {
if ( ! pCompo->IsClosed() && abs( m_Params.m_dStartAddLen) > EPS_SMALL) {
if ( m_Params.m_dStartAddLen > 0) {
if ( ! pCompo->ExtendStartByLen( m_Params.m_dStartAddLen))
return false ;
@@ -947,7 +947,7 @@ Milling::ProcessPath( int nPathId, int nPvId, int nClId)
}
// eventuale allungamento/accorciamento della fine
if ( abs( m_Params.m_dEndAddLen) > EPS_SMALL) {
if ( ! pCompo->IsClosed() && abs( m_Params.m_dEndAddLen) > EPS_SMALL) {
if ( m_Params.m_dEndAddLen > 0) {
if ( ! pCompo->ExtendEndByLen( m_Params.m_dEndAddLen))
return false ;
@@ -1194,7 +1194,7 @@ Milling::GenerateMillingPv( int nPathId, const ICurveComposite* pCompo)
return false ;
// calcolo la regione
PtrOwner<ISurfFlatRegion> pSfr ;
pSfr.Set( GetSurfFlatRegionFromFatCurve( Release( pCrv), 0.5 * m_TParams.m_dDiam, false, true)) ;
pSfr.Set( GetSurfFlatRegionFromFatCurve( Release( pCrv), 0.5 * m_TParams.m_dDiam, false, false)) ;
if ( IsNull( pSfr))
return false ;
// ne recupero il contorno