diff --git a/Drilling.cpp b/Drilling.cpp index 5ed34b3..2ab4e21 100644 --- a/Drilling.cpp +++ b/Drilling.cpp @@ -1674,7 +1674,7 @@ Drilling::MultiHeadVerifyHole( Hole& hole, const ToolData* Tool, double dDiamTol // imposto elevazione da lunghezza foro con possibilità di sovrascrittura da info double dElev = hole.dLen ; double dMaxElev ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "MaxElev="), dMaxElev) && dElev > dMaxElev) { + if ( GetValInNotes( m_Params.m_sUserNotes, "MaxElev", dMaxElev) && dElev > dMaxElev) { dElev = dMaxElev ; hole.ptIni += hole.vtDir * ( dElev - hole.dLen) ; hole.dLen = dElev ; @@ -2033,7 +2033,7 @@ Drilling::GenerateHoleCl( int nInd, const SelData& nCircId, const string& sPName // imposto elevazione da lunghezza foro con possibilità di sovrascrittura da info double dElev = hole.dLen ; double dMaxElev ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "MaxElev="), dMaxElev) && dElev > dMaxElev) { + if ( GetValInNotes( m_Params.m_sUserNotes, "MaxElev", dMaxElev) && dElev > dMaxElev) { dElev = dMaxElev ; hole.ptIni += hole.vtDir * ( dElev - hole.dLen) ; hole.dLen = ( hole.dLen > 10 * EPS_SMALL ? max( dElev, 10 * EPS_SMALL) : dElev) ; @@ -2451,7 +2451,7 @@ Drilling::GetHoleData( SelData Id, Hole& hole) hole.bBlind = true ; // se dichiarato passante o no (1/0) int nOpen ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "Open="), nOpen)) + if ( GetValInNotes( m_Params.m_sUserNotes, "Open", nOpen)) hole.bBlind = ( nOpen == 0) ; // se verticale ed arriva fino al fondo grezzo, allora passante else if ( hole.vtDir.IsZplus() && hole.dThick > dRbDist - EPS_SMALL) diff --git a/Milling.cpp b/Milling.cpp index 91a4fe9..710966e 100644 --- a/Milling.cpp +++ b/Milling.cpp @@ -1376,7 +1376,7 @@ Milling::GetCurves( SelData Id, ICURVEPLIST& lstPC) nToolDir = TOOL_PARAL ; int nFaceUse = ( m_Params.m_nFaceUse & 31) ; Vector3d vtFaceUse ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "VtFaceUse="), vtFaceUse) && ! vtFaceUse.IsSmall()) + if ( GetValInNotes( m_Params.m_sUserNotes, "VtFaceUse", vtFaceUse) && ! vtFaceUse.IsSmall()) nFaceUse = FACE_VERSOR ; double dSawThick = ( ( m_TParams.m_nType & TF_SAWBLADE) != 0 ? m_TParams.m_dThick : 0) ; AdjustCurveFromSurf( pCrvCompo, nToolDir, nFaceUse, vtFaceUse, dSawThick) ; @@ -1404,7 +1404,7 @@ Milling::GetCurves( SelData Id, ICURVEPLIST& lstPC) nToolDir = TOOL_PARAL ; int nFaceUse = ( m_Params.m_nFaceUse & 31) ; Vector3d vtFaceUse ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "VtFaceUse="), vtFaceUse) && ! vtFaceUse.IsSmall()) + if ( GetValInNotes( m_Params.m_sUserNotes, "VtFaceUse", vtFaceUse) && ! vtFaceUse.IsSmall()) nFaceUse = FACE_VERSOR ; double dSawThick = ( ( m_TParams.m_nType & TF_SAWBLADE) != 0 ? m_TParams.m_dThick : 0) ; // determino intervallo di chunk @@ -1834,13 +1834,13 @@ Milling::ProcessPath( int nPathId, int nPvId, int nClId) return false ; // eventuale imposizione massima elevazione da note utente double dMaxElev ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "MaxElev="), dMaxElev) && dElev > dMaxElev) + if ( GetValInNotes( m_Params.m_sUserNotes, "MaxElev", dMaxElev) && dElev > dMaxElev) dElev = dMaxElev ; // eventuale aggiuntivo all'elevazione per l'oscillazione double dAddElev = ( bPathOscEnable ? abs( m_Params.m_dOscHeight) : 0) ; // eventuale elevazione di fianco (solo per lama) double dSideElev = 0 ; - FromString( ExtractInfo( m_Params.m_sUserNotes, "SideElev="), dSideElev) ; + GetValInNotes( m_Params.m_sUserNotes, "SideElev", dSideElev) ; // verifico che lo step dell'utensile sia sensato double dOkStep = 0 ; @@ -1960,7 +1960,7 @@ Milling::ProcessPath( int nPathId, int nPvId, int nClId) // recupero eventuale flag di inizio forzato fuori dal grezzo int nStartOutRaw = 0 ; - FromString( ExtractInfo( m_Params.m_sUserNotes, "OutRaw="), nStartOutRaw) ; + GetValInNotes( m_Params.m_sUserNotes, "OutRaw", nStartOutRaw) ; m_bStartOutRaw = (( nStartOutRaw & 1) != 0) ; m_bEndOutRaw = (( nStartOutRaw & 2) != 0) ; @@ -3936,7 +3936,7 @@ Milling::AddSawZigZagMilling( const ICurveComposite* pCompo, const Vector3d& vtT // recupero eventuale superficie trimesh chiusa per trim/extend int nTriExtCstm = GDB_ID_NULL ; int nTesId ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "TrimExt="), nTesId)) { + if ( GetValInNotes( m_Params.m_sUserNotes, "TrimExt", nTesId)) { const ISurfTriMesh* pTes = GetSurfTriMesh( m_pGeomDB->GetGeoObj( nTesId)) ; if ( pTes != nullptr && pTes->IsClosed()) nTriExtCstm = nTesId ; @@ -4112,7 +4112,7 @@ Milling::AddSawOneWayMilling( const ICurveComposite* pCompo, const Vector3d& vtT // recupero eventuale superficie trimesh chiusa per trim/extend int nTriExtCstm = GDB_ID_NULL ; int nTesId ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "TrimExt="), nTesId)) { + if ( GetValInNotes( m_Params.m_sUserNotes, "TrimExt", nTesId)) { const ISurfTriMesh* pTes = GetSurfTriMesh( m_pGeomDB->GetGeoObj( nTesId)) ; if ( pTes != nullptr && pTes->IsClosed()) nTriExtCstm = nTesId ; diff --git a/Mortising.cpp b/Mortising.cpp index 4ad938a..fbd9b71 100644 --- a/Mortising.cpp +++ b/Mortising.cpp @@ -1325,7 +1325,7 @@ Mortising::ProcessPath( int nPathId, int nPvId, int nClId) return false ; // eventuale imposizione massima elevazione da note utente double dMaxElev ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "MaxElev="), dMaxElev) && dElev > dMaxElev) + if ( GetValInNotes( m_Params.m_sUserNotes, "MaxElev", dMaxElev) && dElev > dMaxElev) dElev = dMaxElev ; // ingombro aggiuntivo da larghezza sega a catena quando inclinata rispetto al movimento @@ -1336,7 +1336,7 @@ Mortising::ProcessPath( int nPathId, int nPvId, int nClId) // affondamento speciale da note utente (!!! da trasformare in parametro come gli altri !!!) int nPlunge = 0 ; - FromString( ExtractInfo( m_Params.m_sUserNotes, "Plunge="), nPlunge) ; + GetValInNotes( m_Params.m_sUserNotes, "Plunge", nPlunge) ; // verifico che lo step dell'utensile sia sensato double dOkStep = ( nPlunge == MORTISE_PLUNGE_STEP ? m_Params.m_dStep : 0) ; diff --git a/Operation.cpp b/Operation.cpp index 33b2b5e..37166cd 100644 --- a/Operation.cpp +++ b/Operation.cpp @@ -4151,13 +4151,15 @@ Operation::SpecialGetMaxZ( const DBLVECTOR& vAx1, const Vector3d& vtTool1, // eseguo bOk = bOk && pMch->LuaCallFunction( ON_SPECIAL_GETMAXZ, false) ; // recupero valori parametri obbligatori - bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_ERROR, nErr) ; - bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_MAXZ, dMaxZ) ; - // reset - bOk = bOk && pMch->LuaResetGlobVar( EMC_VAR) ; - // segnalo errori - if ( nErr != 0) { + bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_ERROR, nErr) && nErr == 0 ; + if ( bOk && ! pMch->LuaGetGlobVar( EMC_VAR + EVAR_MAXZ, dMaxZ)) { bOk = false ; + nErr = 91 ; + } + // reset + bOk = pMch->LuaResetGlobVar( EMC_VAR) && bOk ; + // segnalo errori + if ( ! bOk) { string sOut = " Error in " + ON_SPECIAL_GETMAXZ + " (" + ToString( nErr) + ")" ; LOG_ERROR( GetEMkLogger(), sOut.c_str()) } @@ -4677,6 +4679,7 @@ Operation::SpecialTestCollisionAvoid( const DBLVECTOR& vAxStart, const DBLVECTOR // avvio bool bOk = true ; int nErr = 99 ; + int nRes = SCAV_TOTEST ; // imposto valori parametri bOk = bOk && pMch->LuaCreateGlobTable( EMC_VAR) ; bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_TOOL, GetToolName()) ; @@ -4693,18 +4696,19 @@ Operation::SpecialTestCollisionAvoid( const DBLVECTOR& vAxStart, const DBLVECTOR // eseguo bOk = bOk && pMch->LuaCallFunction( ON_SPECIAL_TESTCOLLISIONAVOID, false) ; // recupero valori parametri obbligatori - bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_ERROR, nErr) ; - int nRes = SCAV_TOTEST ; - bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_RES, nRes) ; - // reset - bOk = bOk && pMch->LuaResetGlobVar( EMC_VAR) ; - // segnalo errori - if ( nErr != 0) { + bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_ERROR, nErr) && nErr == 0 ; + if ( bOk && ! pMch->LuaGetGlobVar( EMC_VAR + EVAR_RES, nRes)) { bOk = false ; + nErr = 91 ; + } + // reset + bOk = pMch->LuaResetGlobVar( EMC_VAR) && bOk ; + // segnalo errori + if ( ! bOk) { string sOut = " Error in " + ON_SPECIAL_TESTCOLLISIONAVOID + " (" + ToString( nErr) + ")" ; LOG_ERROR( GetEMkLogger(), sOut.c_str()) } - return ( nErr != 0 ? SCAV_ERROR : nRes) ; + return ( bOk ? nRes : SCAV_ERROR) ; } //---------------------------------------------------------------------------- @@ -4721,49 +4725,54 @@ Operation::SpecialMoveZup( DBLVECTOR& vAx, Vector3d& vtTool, int& nFlag, int& nF static const string EVAR_MODIF = ".MODIF" ; // OUT (bool) flag di modifica effettuata static const string ON_SPECIAL_MOVEZUP = "OnSpecialMoveZup" ; - // eseguo l'azione - if ( pMch->LuaExistsFunction( ON_SPECIAL_MOVEZUP)) { - bool bOk = true ; - int nErr = 99 ; - // imposto valori parametri - bOk = bOk && pMch->LuaCreateGlobTable( EMC_VAR) ; - bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_FLAG, nFlag) ; - bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_FLAG2, nFlag2) ; - bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_TOOL, GetToolName()) ; - bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_HEAD, GetHeadName()) ; - bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_EXIT, GetExitNbr()) ; - bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_TCPOS, GetToolTcPos()) ; - // direzione utensile - bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_TDIR, vtTool) ; - // valore degli assi - bool bIsRobot = m_pMchMgr->GetCurrIsRobot() ; - int nNumAxes = int( vAx.size()) ; - for ( int i = 1 ; i <= nNumAxes ; ++ i) - bOk = bOk && pMch->LuaSetGlobVar( GetGlobVarAxisValue( i, EMC_VAR, bIsRobot), vAx[i-1]) ; - // eseguo - bOk = bOk && pMch->LuaCallFunction( ON_SPECIAL_MOVEZUP, false) ; - // recupero valori parametri obbligatori - bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_ERROR, nErr) ; - bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_MODIF, bModif) ; - bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + GVAR_FLAG, nFlag) ; - bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + GVAR_FLAG2, nFlag2) ; - bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + GVAR_TDIR, vtTool) ; - for ( int i = 1 ; i <= nNumAxes ; ++ i) - bOk = bOk && pMch->LuaGetGlobVar( GetGlobVarAxisValue( i, EMC_VAR, bIsRobot), vAx[i-1]) ; - // reset - bOk = bOk && pMch->LuaResetGlobVar( EMC_VAR) ; - // segnalo errori - if ( nErr != 0) { - bOk = false ; - string sOut = " Error in " + ON_SPECIAL_MOVEZUP + " (" + ToString( nErr) + ")" ; - LOG_ERROR( GetEMkLogger(), sOut.c_str()) - } - return bOk ; - } - else { + // se funzione non implementata + if ( ! pMch->LuaExistsFunction( ON_SPECIAL_MOVEZUP)) { bModif = false ; return true ; } + + // eseguo l'azione + bool bOk = true ; + int nErr = 99 ; + // imposto valori parametri + bOk = bOk && pMch->LuaCreateGlobTable( EMC_VAR) ; + bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_FLAG, nFlag) ; + bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_FLAG2, nFlag2) ; + bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_TOOL, GetToolName()) ; + bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_HEAD, GetHeadName()) ; + bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_EXIT, GetExitNbr()) ; + bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_TCPOS, GetToolTcPos()) ; + // direzione utensile + bOk = bOk && pMch->LuaSetGlobVar( EMC_VAR + GVAR_TDIR, vtTool) ; + // valore degli assi + bool bIsRobot = m_pMchMgr->GetCurrIsRobot() ; + int nNumAxes = int( vAx.size()) ; + for ( int i = 1 ; i <= nNumAxes ; ++ i) + bOk = bOk && pMch->LuaSetGlobVar( GetGlobVarAxisValue( i, EMC_VAR, bIsRobot), vAx[i-1]) ; + // eseguo + bOk = bOk && pMch->LuaCallFunction( ON_SPECIAL_MOVEZUP, false) ; + // recupero valori parametri obbligatori + bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_ERROR, nErr) && nErr == 0 ; + if ( bOk) { + if ( ! pMch->LuaGetGlobVar( EMC_VAR + EVAR_MODIF, bModif) || + ! pMch->LuaGetGlobVar( EMC_VAR + GVAR_FLAG, nFlag) || + ! pMch->LuaGetGlobVar( EMC_VAR + GVAR_FLAG2, nFlag2) || + ! pMch->LuaGetGlobVar( EMC_VAR + GVAR_TDIR, vtTool)) + nErr = 91 ; + for ( int i = 1 ; i <= nNumAxes ; ++ i) { + if ( ! pMch->LuaGetGlobVar( GetGlobVarAxisValue( i, EMC_VAR, bIsRobot), vAx[i-1])) + nErr = 92 ; + } + bOk = ( nErr == 0) ; + } + // reset + bOk = pMch->LuaResetGlobVar( EMC_VAR) && bOk ; + // segnalo errori + if ( ! bOk) { + string sOut = " Error in " + ON_SPECIAL_MOVEZUP + " (" + ToString( nErr) + ")" ; + LOG_ERROR( GetEMkLogger(), sOut.c_str()) + } + return bOk ; } //---------------------------------------------------------------------------- @@ -4812,7 +4821,7 @@ Operation::SpecialMoveRapid( const DBLVECTOR& vAxStart, const DBLVECTOR& vAxEnd, // eseguo bOk = bOk && pMch->LuaCallFunction( ON_SPECIAL_MOVERAPID, false) ; // recupero valori parametri obbligatori - bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_ERROR, nErr) ; + bOk = bOk && pMch->LuaGetGlobVar( EMC_VAR + EVAR_ERROR, nErr) && nErr == 0 ; // recupero i parametri facoltativi int nPosTot ; if ( ! pMch->LuaGetGlobVar( EMC_VAR + EVAR_POSTOT, nPosTot)) @@ -4824,6 +4833,7 @@ Operation::SpecialMoveRapid( const DBLVECTOR& vAxStart, const DBLVECTOR& vAxEnd, vNewPos[0].vAxis.resize( nNumAxes) ; for ( int i = 1 ; i <= nNumAxes && bOk ; ++ i) { if ( ! pMch->LuaGetGlobVar( GetGlobVarAxisValue( i, EMC_VAR, bIsRobot), vNewPos[0].vAxis[i-1])) { + bOk = false ; nErr = 91 ; break ; } @@ -4834,12 +4844,14 @@ Operation::SpecialMoveRapid( const DBLVECTOR& vAxStart, const DBLVECTOR& vAxEnd, string sRec = EMC_VAR + EVAR_POS + "." + ToString( j) ; Position CurrPos ; if ( ! pMch->LuaGetGlobVar( sRec + EVAR_SIDE, CurrPos.nSide)) { + bOk = false ; nErr = 92 ; break ; } CurrPos.vAxis.resize( nNumAxes) ; - for ( int i = 1 ; i <= nNumAxes && bOk ; ++ i) { + for ( int i = 1 ; i <= nNumAxes ; ++ i) { if ( ! pMch->LuaGetGlobVar( GetGlobVarAxisValue( i, sRec, bIsRobot), CurrPos.vAxis[i-1])) { + bOk = false ; nErr = 93 ; break ; } @@ -4858,8 +4870,7 @@ Operation::SpecialMoveRapid( const DBLVECTOR& vAxStart, const DBLVECTOR& vAxEnd, // reset bOk = pMch->LuaResetGlobVar( EMC_VAR) && bOk ; // segnalo errori - if ( nErr != 0) { - bOk = false ; + if ( ! bOk) { string sOut = " Error in " + ON_SPECIAL_MOVERAPID + " (" + ToString( nErr) + ")" ; LOG_ERROR( GetEMkLogger(), sOut.c_str()) } diff --git a/Pocketing.cpp b/Pocketing.cpp index 545f8f1..8ce47aa 100644 --- a/Pocketing.cpp +++ b/Pocketing.cpp @@ -1608,7 +1608,7 @@ Pocketing::ProcessPath( int nPathId, int nPvId, int nClId) return false ; // eventuale imposizione massima elevazione da note utente double dMaxElev ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "MaxElev="), dMaxElev) && dElev > dMaxElev) + if ( GetValInNotes( m_Params.m_sUserNotes, "MaxElev", dMaxElev) && dElev > dMaxElev) dElev = dMaxElev ; // verifico che lo step dell'utensile sia sensato @@ -1679,11 +1679,11 @@ Pocketing::ProcessPath( int nPathId, int nPvId, int nClId) // recupero eventuale flag di lato aperto forzato fuori dal grezzo int nOpenOutRaw ; - m_bOpenOutRaw = ( FromString( ExtractInfo( m_Params.m_sUserNotes, "OpenOutRaw="), nOpenOutRaw) && nOpenOutRaw != 0) ; + m_bOpenOutRaw = ( GetValInNotes( m_Params.m_sUserNotes, "OpenOutRaw", nOpenOutRaw) && nOpenOutRaw != 0) ; // recupero eventuale minima lunghezza di attacco su lato aperto m_dOpenMinSafe = 0 ; - FromString( ExtractInfo( m_Params.m_sUserNotes, "OpenMinSafe="), m_dOpenMinSafe) ; + GetValInNotes( m_Params.m_sUserNotes, "OpenMinSafe", m_dOpenMinSafe) ; // se richiesta anteprima if ( nPvId != GDB_ID_NULL) { @@ -3881,7 +3881,7 @@ Pocketing::CalcSpiral( const ICurveComposite* pCompo, int nReg, bool bSplitArcs, Vector3d vtOrtho = OrthoCompo( vtOtherDir, vtDir) ; double dPocketSize = vtOrtho.Len() ; double dMaxOptSize = m_Params.m_dSideStep ; - FromString( ExtractInfo( m_Params.m_sUserNotes, "MaxOptSize="), dMaxOptSize) ; + GetValInNotes( m_Params.m_sUserNotes, "MaxOptSize", dMaxOptSize) ; if ( ( ( bSomeOpen && dPocketSize < m_TParams.m_dDiam + EPS_SMALL) || abs( dPocketSize - m_TParams.m_dDiam) < EPS_SMALL) && dPocketSize < dMaxOptSize + 10 * EPS_SMALL) { if ( nReg == 0) { @@ -5507,7 +5507,7 @@ bool Pocketing::GetForcedClosed( void) { int nOpen ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "Open="), nOpen) && nOpen == 0) + if ( GetValInNotes( m_Params.m_sUserNotes, "Open", nOpen) && nOpen == 0) return true ; else return false ; diff --git a/PocketingNT.cpp b/PocketingNT.cpp index c274699..8f6a0f4 100644 --- a/PocketingNT.cpp +++ b/PocketingNT.cpp @@ -2098,7 +2098,7 @@ PocketingNT::ProcessPath( int nPathId, int nPvId, int nClId) return false ; // eventuale imposizione massima elevazione da note utente double dMaxElev ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "MaxElev="), dMaxElev) && dElev > dMaxElev) + if ( GetValInNotes( m_Params.m_sUserNotes, "MaxElev", dMaxElev) && dElev > dMaxElev) dElev = dMaxElev ; // verifico che lo step dell'utensile sia sensato @@ -2168,11 +2168,11 @@ PocketingNT::ProcessPath( int nPathId, int nPvId, int nClId) // recupero eventuale flag di lato aperto forzato fuori dal grezzo int nOpenOutRaw ; - m_bOpenOutRaw = ( FromString( ExtractInfo( m_Params.m_sUserNotes, "OpenOutRaw="), nOpenOutRaw) && nOpenOutRaw != 0) ; + m_bOpenOutRaw = ( GetValInNotes( m_Params.m_sUserNotes, "OpenOutRaw", nOpenOutRaw) && nOpenOutRaw != 0) ; // recupero eventuale minima lunghezza di attacco su lato aperto m_dOpenMinSafe = 0 ; - FromString( ExtractInfo( m_Params.m_sUserNotes, "OpenMinSafe="), m_dOpenMinSafe) ; + GetValInNotes( m_Params.m_sUserNotes, "OpenMinSafe", m_dOpenMinSafe) ; // se richiesta anteprima if ( nPvId != GDB_ID_NULL) { @@ -3531,7 +3531,7 @@ bool PocketingNT::GetForcedClosed( void) { int nOpen ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "Open="), nOpen) && nOpen == 0) + if ( GetValInNotes( m_Params.m_sUserNotes, "Open", nOpen) && nOpen == 0) return true ; else return false ; diff --git a/Sawing.cpp b/Sawing.cpp index 0807972..ef957b8 100644 --- a/Sawing.cpp +++ b/Sawing.cpp @@ -694,7 +694,7 @@ Sawing::Apply( bool bRecalc, bool bPostApply) // verifiche per attacchi/uscite senza approcci e retrazioni int nDownSE = 0 ; - FromString( ExtractInfo( m_Params.m_sUserNotes, "DownSE="), nDownSE) ; + GetValInNotes( m_Params.m_sUserNotes, "DownSE", nDownSE) ; m_bDownSE = ( nDownSE != 0 && m_Params.m_nStepType == SAW_ST_TOANDFROM) ; // recupero gruppo per geometria di lavorazione (Cutter Location) @@ -1889,10 +1889,10 @@ Sawing::ProcessLine( const ICurve* pCrvP, const ICurveLine* pLineC, const ICurve // recupero eventuali estensioni dei baffi (whiskers) double dStartWhiskExt = 0 ; if ( m_Params.m_nLeadInType == SAW_LI_CENT) - FromString( ExtractInfo( m_Params.m_sUserNotes, "SWE="), dStartWhiskExt) ; + GetValInNotes( m_Params.m_sUserNotes, "SWE", dStartWhiskExt) ; double dEndWhiskExt = 0 ; if ( m_Params.m_nLeadOutType == SAW_LO_CENT) - FromString( ExtractInfo( m_Params.m_sUserNotes, "EWE="), dEndWhiskExt) ; + GetValInNotes( m_Params.m_sUserNotes, "EWE", dEndWhiskExt) ; // Se richiesto Preview if ( nPvId != GDB_ID_NULL) { diff --git a/SurfFinishing.cpp b/SurfFinishing.cpp index 8ea730d..851bece 100644 --- a/SurfFinishing.cpp +++ b/SurfFinishing.cpp @@ -3748,7 +3748,7 @@ SurfFinishing::AddOptimal( ICAvToolSurfTm* pCAvTlStm, const SURFLOCALVECTOR& vSr if ( ! IsNull( pSfrZConst) && pSfrZConst->IsValid()) { // recupero dai parametri eventuale Offset di sovrapposizione per ZConst double dZConstOverlap = m_TParams.m_dDiam / 2 ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "ZConstOverlap="), dZConstOverlap)) + if ( GetValInNotes( m_Params.m_sUserNotes, "ZConstOverlap", dZConstOverlap)) dZConstOverlap = Clamp( dZConstOverlap, 0., m_TParams.m_dDiam / 2) ; // mi assicuro di non uscire dalla superficie originale pSfrZConst->Offset( m_Params.m_dSideStep + dZConstOverlap, ICurve::OFF_FILLET) ; diff --git a/SurfRoughing.cpp b/SurfRoughing.cpp index 5178971..6009e3e 100644 --- a/SurfRoughing.cpp +++ b/SurfRoughing.cpp @@ -1398,7 +1398,7 @@ SurfRoughing::ProcessPath( int nPathId, int nPvId, int nClId) if ( dSfrMaxElev > EPS_SMALL) { // eventuale imposizione massima elevazione da note utente double dMaxElev ; - if ( FromString( ExtractInfo( m_Params.m_sUserNotes, "MaxElev="), dMaxElev) && dSfrMaxElev > dMaxElev) + if ( GetValInNotes( m_Params.m_sUserNotes, "MaxElev", dMaxElev) && dSfrMaxElev > dMaxElev) dSfrMaxElev = dMaxElev ; // la regione viene traslata dell'elevazione trovata lungo vtTool pSfrSgro->Translate( dSfrMaxElev * vtTool) ; @@ -1408,7 +1408,7 @@ SurfRoughing::ProcessPath( int nPathId, int nPvId, int nClId) // controllo se richiesto PlaneZDetection bool bPlaneZDetection = false ; - m_bDetectPlaneZ = ( FromString( ExtractInfo( m_Params.m_sUserNotes, "PlaneZ="), bPlaneZDetection) && bPlaneZDetection) ; + m_bDetectPlaneZ = ( GetValInNotes( m_Params.m_sUserNotes, "PlaneZ", bPlaneZDetection) && bPlaneZDetection) ; // creo un frame centrato sulla superficie Frame3d frSfr ;