EgtExecutor 2.7k2 :

- aggiunta funzione per il calcolo della Curvatura in un vertice per una Superficie TriMesh.
This commit is contained in:
Riccardo Elitropi
2025-11-04 15:52:48 +01:00
parent 14f471bbf9
commit 5a998a5d13
3 changed files with 85 additions and 0 deletions
+27
View File
@@ -977,6 +977,32 @@ LuaSurfTmGetEdges( lua_State* L)
return 2 ;
}
//----------------------------------------------------------------------------
static int
LuaSurfTmGetCurvature( lua_State* L)
{
// 3 parametri : nStmId, nIndV
int nStmId ;
LuaCheckParam( L, 1, nStmId) ;
int nIndVertex ;
LuaCheckParam( L, 2, nIndVertex) ;
int nType = STM_CURVATURE_STD ;
LuaGetParam( L, 3, nType) ;
LuaClearStack( L) ;
double dK1 = 0., dK2 = 0. ;
Vector3d vtK1 = V_NULL, vtK2 = V_NULL ;
bool bOk = ExeSurfTmGetCurvatures( nStmId, nIndVertex, nType, dK1, vtK1, dK2, vtK2) ;
LuaSetParam( L, bOk) ;
if ( bOk) {
LuaSetParam( L, dK1) ;
LuaSetParam( L, vtK1) ;
LuaSetParam( L, dK2) ;
LuaSetParam( L, vtK2) ;
return 5 ;
}
return 1 ;
}
//----------------------------------------------------------------------------
static int
LuaSurfBezierGetPoint( lua_State* L)
@@ -1282,6 +1308,7 @@ LuaInstallGdbGetSurf( LuaMgr& luaMgr)
bOk = bOk && luaMgr.RegisterFunction( "EgtExtractSurfTmTriaLoop", LuaExtractSurfTmTriaLoop) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtCopySurfTmFacet", LuaCopySurfTmFacet) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmGetEdges", LuaSurfTmGetEdges) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmGetCurvature", LuaSurfTmGetCurvature) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfBezierGetPoint", LuaSurfBezierGetPoint) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfBezierGetPointD1", LuaSurfBezierGetPointD1) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfBezierGetPointNrmD1", LuaSurfBezierGetPointNrmD1) ;