EgtGeomKernel :

- in Tool aggiunta distinzione tra Outline e ApproxOutline
- le GetOutline di VolZmap e CAvToolSurfTm accettano un parametro per indicare se standard o approssimata.
This commit is contained in:
Dario Sassi
2018-12-31 09:23:56 +00:00
parent 64c954ad4b
commit 6a716b84e4
7 changed files with 31 additions and 27 deletions
+16 -16
View File
@@ -1683,8 +1683,8 @@ VolZmap::GenTool_ZDrilling( unsigned int nGrid, const Point3d& ptS, const Point3
Vector3d vtMove = ptE - ptS ;
// Ciclo sulle curve
const CurveComposite* pToolProfile = m_Tool.GetOutline() ;
const ICurve* pCurve = pToolProfile->GetFirstCurve() ;
const CurveComposite& ToolProfile = m_Tool.GetApproxOutline() ;
const ICurve* pCurve = ToolProfile.GetFirstCurve() ;
while ( pCurve != nullptr) {
double dHeight ;
@@ -1742,7 +1742,7 @@ VolZmap::GenTool_ZDrilling( unsigned int nGrid, const Point3d& ptS, const Point3
ptF = ptI + vtMove ;
// Passo alla curva successiva del profilo
pCurve = pToolProfile->GetNextCurve() ;
pCurve = ToolProfile.GetNextCurve() ;
}
return true ;
@@ -1760,8 +1760,8 @@ VolZmap::GenTool_ZMilling( unsigned int nGrid, const Point3d& ptS, const Point3d
Vector3d vtMove = ptE - ptS ;
// Ciclo sulle curve del profilo utensile
const CurveComposite* pToolProfile = m_Tool.GetOutline() ;
const ICurve* pCurve = pToolProfile->GetFirstCurve() ;
const CurveComposite& ToolProfile = m_Tool.GetApproxOutline() ;
const ICurve* pCurve = ToolProfile.GetFirstCurve() ;
while ( pCurve != nullptr) {
double dHeight ;
@@ -1819,7 +1819,7 @@ VolZmap::GenTool_ZMilling( unsigned int nGrid, const Point3d& ptS, const Point3d
ptF = ptI + vtMove ;
// Passo alla curva successiva del profilo
pCurve = pToolProfile->GetNextCurve() ;
pCurve = ToolProfile.GetNextCurve() ;
}
return true ;
@@ -2879,9 +2879,9 @@ VolZmap::GenTool_Drilling( unsigned int nGrid, const Point3d& ptS, const Point3d
Vector3d vtMove = ptE - ptS ;
// Ciclo sulle curve del profilo
const CurveComposite* pToolProfile = m_Tool.GetOutline() ;
const CurveComposite& ToolProfile = m_Tool.GetApproxOutline() ;
const ICurve* pPrevCurve = nullptr ;
const ICurve* pCurve = pToolProfile->GetFirstCurve() ;
const ICurve* pCurve = ToolProfile.GetFirstCurve() ;
while ( pCurve != nullptr) {
double dHeight ;
@@ -2906,7 +2906,7 @@ VolZmap::GenTool_Drilling( unsigned int nGrid, const Point3d& ptS, const Point3d
}
// Verifiche curva successiva per eventuale tappo sotto
bool bTapB = false ;
const ICurve* pNextCurve = pToolProfile->GetNextCurve() ;
const ICurve* pNextCurve = ToolProfile.GetNextCurve() ;
if ( pNextCurve != nullptr && pNextCurve->GetType() == CRV_LINE) {
const ICurveLine* pOthLine = GetCurveLine( pNextCurve) ;
Point3d ptOthStart = pOthLine->GetStart() ;
@@ -2940,7 +2940,7 @@ VolZmap::GenTool_Drilling( unsigned int nGrid, const Point3d& ptS, const Point3d
else {
// Passo alla curva successiva
pPrevCurve = pCurve ;
pCurve = pToolProfile->GetNextCurve() ;
pCurve = ToolProfile.GetNextCurve() ;
}
}
@@ -2961,7 +2961,7 @@ VolZmap::GenTool_Drilling( unsigned int nGrid, const Point3d& ptS, const Point3d
dHeight = abs( ptStart.y - ptEnd.y) ;
// Passo alla curva successiva
pPrevCurve = pCurve ;
pCurve = pToolProfile->GetNextCurve() ;
pCurve = ToolProfile.GetNextCurve() ;
}
// Determino le posizioni iniziale e finale del componente successivo
@@ -2982,9 +2982,9 @@ VolZmap::GenTool_Milling( unsigned int nGrid, const Point3d& ptS, const Point3d&
Vector3d vtMove = ptE - ptS ;
// Ciclo sulle curve del profilo
const CurveComposite* pToolProfile = m_Tool.GetOutline() ;
const CurveComposite& ToolProfile = m_Tool.GetApproxOutline() ;
const ICurve* pPrevCurve = nullptr ;
const ICurve* pCurve = pToolProfile->GetFirstCurve() ;
const ICurve* pCurve = ToolProfile.GetFirstCurve() ;
while ( pCurve != nullptr) {
double dHeight ;
@@ -3009,7 +3009,7 @@ VolZmap::GenTool_Milling( unsigned int nGrid, const Point3d& ptS, const Point3d&
}
// verifiche curva successiva per eventuale tappo sotto
bool bTapB = false ;
const ICurve* pNextCurve = pToolProfile->GetNextCurve() ;
const ICurve* pNextCurve = ToolProfile.GetNextCurve() ;
if ( pNextCurve != nullptr && pNextCurve->GetType() == CRV_LINE) {
const ICurveLine* pOthLine = GetCurveLine( pNextCurve) ;
Point3d ptOthStart = pOthLine->GetStart() ;
@@ -3043,7 +3043,7 @@ VolZmap::GenTool_Milling( unsigned int nGrid, const Point3d& ptS, const Point3d&
else {
// Passo alla curva successiva
pPrevCurve = pCurve ;
pCurve = pToolProfile->GetNextCurve() ;
pCurve = ToolProfile.GetNextCurve() ;
}
}
@@ -3064,7 +3064,7 @@ VolZmap::GenTool_Milling( unsigned int nGrid, const Point3d& ptS, const Point3d&
dHeight = abs( ptStart.y - ptEnd.y) ;
// Passo alla curva successiva
pPrevCurve = pCurve ;
pCurve = pToolProfile->GetNextCurve() ;
pCurve = ToolProfile.GetNextCurve() ;
}
// Determino le posizioni iniziale e finale del componente successivo