From 41a55704663faaba6e9cb3c613c3940e7a4b9e23 Mon Sep 17 00:00:00 2001 From: Dario Sassi Date: Mon, 3 Jul 2017 18:01:45 +0000 Subject: [PATCH] EgtMachKernel 1.8f6 : - correzione arrotondamento per calcolo numero step in tagli con lama. --- EgtMachKernel.rc | Bin 11774 -> 11774 bytes Sawing.cpp | 12 ++++++------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/EgtMachKernel.rc b/EgtMachKernel.rc index d6b7a13af266af824de72d8f6111cee80adae244..4428a8697041322b5d3133a326bd467ae3e8b0f5 100644 GIT binary patch delta 97 zcmewt{V#gMFE&QA&A-`fnHkL{Ka|wnoW?bQ1uSxrY4Qod0+^@}R1`^_2jk{d(jGv4 NK<#LXK~l;gTmUTDBd7oX delta 97 zcmewt{V#gMFE&Qg&A-`fnHfzdKa|wnoW?bQ1uSxrY4Qod0+^@}R1`^_2jk{d(jGv4 NK<#LXK~l;gTmUO4BcK2P diff --git a/Sawing.cpp b/Sawing.cpp index 84bf3e2..703fd10 100644 --- a/Sawing.cpp +++ b/Sawing.cpp @@ -1592,7 +1592,7 @@ Sawing::GenerateLineCl( const ICurveLine* pLine, const Vector3d& vtTool, const V double dCutH = dElev - dExtraCut ; int nStep = 2 ; if ( m_Params.m_nStepType == SAW_ST_ZIGZAG) { - nStep = static_cast( ceil( dCutH / dActStep)) ; + nStep = static_cast( ceil( dCutH / ( dActStep + EPS_SMALL))) ; if ( ( nStep % 2) == 1) nStep += 1 ; } @@ -1629,7 +1629,7 @@ Sawing::GenerateLineCl( const ICurveLine* pLine, const Vector3d& vtTool, const V // 2-3 -> lavorazione // calcolo numero e valore degli step double dCutH = dElev - dExtraCut ; - int nStep = static_cast( ceil( dCutH / dActStep)) ; + int nStep = static_cast( ceil( dCutH / ( dActStep + EPS_SMALL))) ; double dStep = dCutH / nStep ; // esecuzione degli step for ( int i = nStep - 1 ; i >= 0 ; -- i) { @@ -2215,7 +2215,7 @@ Sawing::GenerateExtCurveCl( const ICurveComposite* pCrv, double dCutH = dElev - dExtraCut ; int nStep = 2 ; if ( m_Params.m_nStepType == SAW_ST_ZIGZAG) { - nStep = static_cast( ceil( dCutH / m_Params.m_dStepExtArc)) ; + nStep = static_cast( ceil( dCutH / ( m_Params.m_dStepExtArc + EPS_SMALL))) ; if ( ( nStep % 2) == 1) nStep += 1 ; } @@ -2308,7 +2308,7 @@ Sawing::GenerateExtCurveCl( const ICurveComposite* pCrv, // 2-3 -> lavorazione // calcolo numero e valore degli step double dCutH = dElev - dExtraCut ; - int nStep = static_cast( ceil( dCutH / m_Params.m_dStepExtArc)) ; + int nStep = static_cast( ceil( dCutH / ( m_Params.m_dStepExtArc + EPS_SMALL))) ; double dStep = dCutH / nStep ; // esecuzione degli step for ( int i = nStep - 1 ; i >= 0 ; -- i) { @@ -2898,7 +2898,7 @@ Sawing::GenerateIntArcCl( const ICurveArc* pArc, double dCutH = dElev - dExtraCut ; int nStep = 2 ; if ( m_Params.m_nStepType == SAW_ST_ZIGZAG) { - nStep = static_cast( ceil( dCutH / m_Params.m_dStepIntArc)) ; + nStep = static_cast( ceil( dCutH / ( m_Params.m_dStepIntArc + EPS_SMALL))) ; if ( ( nStep % 2) == 1) nStep += 1 ; } @@ -2993,7 +2993,7 @@ Sawing::GenerateIntArcCl( const ICurveArc* pArc, // 2-3 -> lavorazione // calcolo numero e valore degli step double dCutH = dElev - dExtraCut ; - int nStep = static_cast( ceil( dCutH / m_Params.m_dStepIntArc)) ; + int nStep = static_cast( ceil( dCutH / ( m_Params.m_dStepIntArc + EPS_SMALL))) ; double dStep = dCutH / nStep ; // esecuzione degli step for ( int i = nStep - 1 ; i >= 0 ; -- i) {