Modifiche ad asportazioni volumi avanzate
This commit is contained in:
@@ -446,6 +446,11 @@ Tool::SetGenTool( const string& sToolName, const ICurveComposite* pToolOutline,
|
||||
const ICurve* pCurve = m_Outline.GetFirstCurve() ;
|
||||
while ( pCurve != nullptr) {
|
||||
|
||||
int nCutTempProp = pCurve->GetTempProp( 1) ;
|
||||
if ( nCutTempProp == 0) {
|
||||
m_bAllPartCut = false ;
|
||||
}
|
||||
|
||||
// Se la curva è un arco ed è richiesto la verifica per l'approssimazione,
|
||||
// verifico se approssimarlo
|
||||
if ( m_bApproxWithLines && pCurve->GetType() == CRV_ARC) {
|
||||
@@ -493,6 +498,7 @@ Tool::SetGenTool( const string& sToolName, const ICurveComposite* pToolOutline,
|
||||
m_vArcNormals.emplace_back( vtExtN) ;
|
||||
int nCvCount = m_ArcLineApprox.GetCurveCount() ;
|
||||
m_ArcLineApprox.SetCurveTempProp( nCvCount - 1, int( m_vArcNormals.size()) - 1) ;
|
||||
m_ArcLineApprox.SetCurveTempProp( nCvCount - 1, nCutTempProp, 1) ;
|
||||
}
|
||||
}
|
||||
// altrimenti lo aggiungo semplicemente
|
||||
@@ -500,11 +506,15 @@ Tool::SetGenTool( const string& sToolName, const ICurveComposite* pToolOutline,
|
||||
m_ArcLineApprox.AddCurve( *pCurve, true) ;
|
||||
int nCvCount = m_ArcLineApprox.GetCurveCount() ;
|
||||
m_ArcLineApprox.SetCurveTempProp( nCvCount - 1, - 1) ;
|
||||
m_ArcLineApprox.SetCurveTempProp( nCvCount - 1, nCutTempProp, 1) ;
|
||||
}
|
||||
}
|
||||
// altrimenti è segmento e lo aggiungo semplicemente
|
||||
else
|
||||
else {
|
||||
m_ArcLineApprox.AddCurve( *pCurve, true) ;
|
||||
int nCvCount = m_ArcLineApprox.GetCurveCount() ;
|
||||
m_ArcLineApprox.SetCurveTempProp( nCvCount - 1, nCutTempProp, 1) ;
|
||||
}
|
||||
|
||||
pCurve = m_Outline.GetNextCurve() ;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user