EgtMachKernel :

- in finiture Optimal di tipo ZigZag aggiunta la possibilità di scelta del SideAngle.
This commit is contained in:
Riccardo Elitropi
2025-09-08 08:21:13 +02:00
parent ff143a7fc5
commit c2fc8dabf5
+2 -12
View File
@@ -5445,20 +5445,10 @@ SurfFinishing::CalcOptimalZigZagCurves( const ISurfFlatRegion* pSfrLoc, const Fr
if ( ! frXY.Set( ptC, pSfrChunk->GetNormVersor()))
return false ;
PL.ToLoc( frXY) ;
// --- ricavo il rettangolo ad area minima di contenimento
Point3d ptRectC ;
Vector3d vtRectDir ;
double dBaseLen = 0. ;
double dHeightLen = 0. ;
PL.GetMinAreaRectangleXY( ptRectC, vtRectDir, dBaseLen, dHeightLen) ;
// calcolo l'angolo rispetto all'asse X
bool bDet = false ;
double dSideAng = 0. ;
X_AX.GetRotation( vtRectDir, Z_AX, dSideAng, bDet) ;
// eseguo il calcolo della lavorazione ZigZag
pSfrChunk->ToGlob( frSurf) ;
// eseguo il calcolo della lavorazione ZigZag
ICRVCOMPOPOVECTOR vpCrvs ;
if ( ! CalcPocketing( pSfrChunk, m_TParams.m_dDiam / 2., 0., m_Params.m_dSideStep, dSideAng, 5.,
if ( ! CalcPocketing( pSfrChunk, m_TParams.m_dDiam / 2., 0., m_Params.m_dSideStep, m_Params.m_dSideAngle, 5.,
nSubType, false, false, false, true, false, false, P_INVALID, nullptr, true, m_Params.m_dSideStep,
m_Params.m_dLiTang, GetLeadInType(), vpCrvs)) {
m_pMchMgr->SetLastError( 3125, "Error in SurfFinishing : CalcPocketing failed") ;