diff --git a/EXE_GdbModifySurf.cpp b/EXE_GdbModifySurf.cpp index f6df9d2..41265a3 100644 --- a/EXE_GdbModifySurf.cpp +++ b/EXE_GdbModifySurf.cpp @@ -1214,3 +1214,24 @@ ExeSurfBzTrim( int nId, int nCutterId) } return bOk ; } + +//---------------------------------------------------------------------------- +bool +ExeSurfTmSetSmoothAng( int nId, double dAngDeg) +{ + IGeomDB* pGeomDB = GetCurrGeomDB() ; + VERIFY_GEOMDB( pGeomDB, false) + // recupero la superficie trimseh da trimmare + ISurfTriMesh* pSrfTm = GetSurfTriMesh( pGeomDB->GetGeoObj( nId)) ; + if ( pSrfTm == nullptr) + return false ; + pSrfTm->SetSmoothAngle( dAngDeg) ; + ExeSetModified() ; + // se richiesto, salvo il comando Lua equivalente + if ( IsCmdLog()) { + string sLua = "EgtSurfTmSetSmoothAng(" + ToString( nId) + "," + + ToString( dAngDeg) ; + LOG_INFO( GetCmdLogger(), sLua.c_str()) ; + } + return true ; +} diff --git a/LUA_GdbModifySurf.cpp b/LUA_GdbModifySurf.cpp index 58e046d..1a5ac46 100644 --- a/LUA_GdbModifySurf.cpp +++ b/LUA_GdbModifySurf.cpp @@ -582,6 +582,22 @@ LuaSurfBzTrim( lua_State* L) return 1 ; } +//------------------------------------------------------------------------------- +static int +LuaSurfTmSetSmoothAng( lua_State* L) +{ + // 2 parametri : nId, nCutterId + int nId ; + LuaCheckParam( L, 1, nId) + double dAngDeg ; + LuaCheckParam( L, 2, dAngDeg) + LuaClearStack( L) ; + // taglio la prima superficie in base alla seconda + bool bOk = ExeSurfTmSetSmoothAng( nId, dAngDeg) ; + LuaSetParam( L, bOk) ; + return 1 ; +} + //------------------------------------------------------------------------------- bool LuaInstallGdbModifySurf( LuaMgr& luaMgr) @@ -616,5 +632,6 @@ LuaInstallGdbModifySurf( LuaMgr& luaMgr) bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmSetShowEdges", LuaSurfTmSetShowEdges) ; bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmGetShowEdges", LuaSurfTmGetShowEdges) ; bOk = bOk && luaMgr.RegisterFunction( "EgtSurfBzTrim", LuaSurfBzTrim) ; + bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmSetSmoothAng", LuaSurfTmSetSmoothAng) ; return bOk ; }