diff --git a/EXE_GdbGetSurf.cpp b/EXE_GdbGetSurf.cpp index 97fff24..8c831db 100644 --- a/EXE_GdbGetSurf.cpp +++ b/EXE_GdbGetSurf.cpp @@ -483,7 +483,7 @@ ExeSurfTmFacetOppositeSideEx( int nId, int nFacet, const Vector3d& vtDir, int nR } // la curva gira in senso antiorario attorno al contorno faccia vista dalla normale uscente // elimino i segmenti che hanno la direzione di riferimento a destra o quasi (46deg) - const double COS_ANG_MAX = cos( 46 * DEGTORAD) ; + const double COS_ANG_MAX = cos( 46.01 * DEGTORAD) ; const double MIN_DIR_LEN = 0.999 ; // cerco primo elemento del contorno non valido e vi pongo inizio/fine della curva int i = 0 ; diff --git a/EXE_MachMgr.cpp b/EXE_MachMgr.cpp index 0f468b8..6896e57 100644 --- a/EXE_MachMgr.cpp +++ b/EXE_MachMgr.cpp @@ -3043,6 +3043,26 @@ ExeGetCalcTool( string& sTool) return pMachMgr->GetCalcTool( sTool) ; } +//----------------------------------------------------------------------------- +bool +ExeGetCalcHead( string& sHead) +{ + IMachMgr* pMachMgr = GetCurrMachMgr() ; + VERIFY_MACHMGR( pMachMgr, false) + // restituisco il nome della testa corrente per il calcolo sulla macchina della macchinata corrente + return pMachMgr->GetCalcHead( sHead) ; +} + +//----------------------------------------------------------------------------- +bool +ExeGetCalcExit( int& nExit) +{ + IMachMgr* pMachMgr = GetCurrMachMgr() ; + VERIFY_MACHMGR( pMachMgr, false) + // restituisco il numero dell'uscita corrente per il calcolo sulla macchina della macchinata corrente + return pMachMgr->GetCalcExit( nExit) ; +} + //----------------------------------------------------------------------------- bool ExeGetCalcAngles( const Vector3d& vtDirT, const Vector3d& vtDirA, diff --git a/EgtExecutor.rc b/EgtExecutor.rc index 40a874a..86e1827 100644 Binary files a/EgtExecutor.rc and b/EgtExecutor.rc differ diff --git a/LUA_MachMgr.cpp b/LUA_MachMgr.cpp index 372d4ce..f5dd269 100644 --- a/LUA_MachMgr.cpp +++ b/LUA_MachMgr.cpp @@ -3291,15 +3291,23 @@ LuaGetCalcTool( lua_State* L) { // nessun parametro LuaClearStack( L) ; - // recupero l'utensile corrente + // recupero l'utensile, la testa e l'uscita correnti string sTool ; - bool bOk = ExeGetCalcTool( sTool) ; + string sHead ; + int nExit ; + bool bOk = ExeGetCalcTool( sTool) && ExeGetCalcHead( sHead) && ExeGetCalcExit( nExit) ; // restituisco il risultato - if ( bOk) + if ( bOk) { LuaSetParam( L, sTool) ; - else + LuaSetParam( L, sHead) ; + LuaSetParam( L, nExit) ; + } + else { LuaSetParam( L) ; - return 1 ; + LuaSetParam( L) ; + LuaSetParam( L) ; + } + return 3 ; } //-------------------------------------------------------------------------------