diff --git a/PocketingNT.cpp b/PocketingNT.cpp index 9e5a181..db7c6c4 100644 --- a/PocketingNT.cpp +++ b/PocketingNT.cpp @@ -5617,10 +5617,9 @@ PocketingNT::AddPocket( STEPINFOPOVECTOR& vStepInfo, const Vector3d& vtTool, dou Vector3d vtEscape ; if ( ! CalcLastElevation( ptP1, vtTool, currStep, dSafeZ, dStep, dLastElev, dEscapeElev, vtEscape)) return false ; - // -->! se lavorazione in doppio, l'approccio diventa uguale alla SafeZ !<-- - // -->! (in questo modo si evita il movimento lineare finale) !<-- + // -->! Per lavorazioni in doppio, si evita il movimento lineare finale !<-- if ( bDouble) - dAppr = dSafeZ ; + dAppr = max( dAppr, dSafeZ) ; if ( dEscapeElev > 10. * EPS_SMALL && vtEscape.Len() > 10. * EPS_SMALL) { AddLinearMove( ptP1 + vtTool * dLastElev, bSplitArcs) ; if ( ! AddRetract( ptP1 + vtTool * dLastElev, vtEscape, dSafeZ, dSafeAggrBottZ, dEscapeElev, dAppr, bSplitArcs, bDouble)) {