EgtMachKernel :

- in Pocketing adattamenti per modifiche a GeomKernel ( funzione GetCurveClassification).
This commit is contained in:
SaraP
2021-11-18 10:13:14 +01:00
parent a470ffa6ce
commit 34ef5388e1
+7 -7
View File
@@ -2393,7 +2393,7 @@ Pocketing::CalcZigZag( const ISurfFlatRegion* pSrf, ICRVCOMPOPOVECTOR& vpCrvs)
// calcolo la classificazione della curva rispetto alla regione offsettata
CRVCVECTOR ccClass ;
if ( ! pSrf->GetCurveClassification( *pLine, ccClass)) {
if ( ! pSrf->GetCurveClassification( *pLine, EPS_SMALL, ccClass)) {
m_pMchMgr->SetLastError( 2413, "Error in Pocketing : Toolpath not computable") ;
return false ;
}
@@ -2797,7 +2797,7 @@ Pocketing::AddOneWay( const ISurfFlatRegion* pSrf, const Vector3d& vtTool, const
}
// calcolo la classificazione della curva rispetto alla superficie offsettata
CRVCVECTOR ccClass ;
if ( ! pSrfChunk->GetCurveClassification( *pLine, ccClass)) {
if ( ! pSrfChunk->GetCurveClassification( *pLine, EPS_SMALL, ccClass)) {
m_pMchMgr->SetLastError( 2413, "Error in Pocketing : Toolpath not computable") ;
return false ;
}
@@ -3386,7 +3386,7 @@ Pocketing::CalcSpiral( const ISurfFlatRegion * pSrf , int nReg, bool bSplitArcs,
while ( it != vOffs.end()) {
CRVCVECTOR ccClass ;
// se non riesco a classificare passo alla curva successiva
if ( ! pSrfTmp->GetCurveClassification( **it, ccClass))
if ( ! pSrfTmp->GetCurveClassification( **it, EPS_SMALL, ccClass))
continue ;
if ( ccClass.size() != 1) {
m_pMchMgr->SetLastError( 2413, "Error in Pocketing : Toolpath not computable") ;
@@ -3602,7 +3602,7 @@ Pocketing::CalcBoundedLink( const Point3d& ptStart, const Point3d& ptEnd, const
// classifico la curva di collegamento rispetto alla superficie di contenimento
CRVCVECTOR ccClass ;
pSrf->GetCurveClassification( *pLine, ccClass) ;
pSrf->GetCurveClassification( *pLine, EPS_SMALL, ccClass) ;
// se nessuno o un solo tratto e interno, la retta è il collegamento
if ( ccClass.empty() || ( ccClass.size() == 1 && ccClass[0].nClass == CRVC_IN)) {
@@ -4551,7 +4551,7 @@ Pocketing::RemoveUncutRegions( const ISurfFlatRegion * pCutRegion, ICRVCOMPOPVEC
// verifico che la curva corrisponda ad una regione non lavorata e non ad un'isola
CRVCVECTOR ccClass ;
pSrfBound->GetCurveClassification( *pResidualCrv, ccClass) ;
pSrfBound->GetCurveClassification( *pResidualCrv, EPS_SMALL, ccClass) ;
if ( ccClass[0].nClass != CRVC_IN)
continue ;
@@ -4663,7 +4663,7 @@ Pocketing::FindCurveForPathAdd( const ICurve* pResidualCrv, const ICRVCOMPOPOVEC
ISurfFlatRegion * pSrf = CreateSurfFlatRegion() ;
pSrf->AddExtLoop( vOffs[i]->Clone()) ;
CRVCVECTOR ccClass ;
pSrf->GetCurveClassification( *pResidualCrv, ccClass) ;
pSrf->GetCurveClassification( *pResidualCrv, EPS_SMALL, ccClass) ;
if ( ccClass.size() != 1)
continue ;
@@ -4803,7 +4803,7 @@ Pocketing::ComputeAdditionalPath( const Point3d ptStart, Point3d ptEnd, bool bUs
IntersCurveCurve intersCC( *pResidualCrvLoc, *pOffsCrvLoc) ;
CRVCVECTOR ccClass ;
intersCC.GetCurveClassification( 0, ccClass) ;
intersCC.GetCurveClassification( 0, EPS_SMALL, ccClass) ;
// ricorsione su eventuali aree non lavorate rimaste
size_t nFirst = 0 ;