EgtExecutor :

- aggiunti argomenti alla funzione GetSurfBezierRuledGuided.
This commit is contained in:
Daniele Bariletti
2026-01-15 11:52:39 +01:00
parent 5a8d472ddf
commit 2aa7669c7b
2 changed files with 27 additions and 4 deletions
+16 -2
View File
@@ -1386,7 +1386,7 @@ LuaCreateSurfBzRuled( lua_State* L)
static int
LuaCreateSurfBzRuledGuided( lua_State* L)
{
// 4 o 5 o 6 parametri : ParentId, CrvId1, CrvId2 nLayGuides [, bCapEnds] [, dTol]
// 4 o 5 o 6 parametri : ParentId, CrvId1, CrvId2, nLayGuides, nLayNewGuides, vShown, vNewOrEdited [, bCapEnds] [, dTol]
int nParentId ;
LuaCheckParam( L, 1, nParentId)
int nCrvId1 ;
@@ -1395,6 +1395,14 @@ LuaCreateSurfBzRuledGuided( lua_State* L)
LuaCheckParam( L, 3, nCrvId2)
int nLayGuides ;
LuaCheckParam( L, 4, nLayGuides)
int nLayNewGuides ;
LuaCheckParam( L, 5, nLayNewGuides)
INTVECTOR vShown ;
LuaCheckParam( L, 6, vShown)
INTVECTOR vRespectiveOrigCrv ;
LuaCheckParam( L, 7, vRespectiveOrigCrv)
INTVECTOR vNewCrv ;
LuaCheckParam( L, 8, vNewCrv)
bool bCapEnds = false ;
int nPar = 5 ;
if ( LuaGetParam( L, nPar, bCapEnds))
@@ -1402,8 +1410,14 @@ LuaCreateSurfBzRuledGuided( lua_State* L)
double dLinTol = LIN_TOL_SRF ;
LuaGetParam( L, nPar, dLinTol) ;
LuaClearStack( L) ;
// compongo il vettore INTINTVECTOR
INTINTVECTOR vNewOrEdited ;
if( ssize(vRespectiveOrigCrv) != ssize( vNewCrv))
return 1 ;
for( int i = 0 ; i < ssize(vRespectiveOrigCrv) ; ++i)
vNewOrEdited.emplace_back( vRespectiveOrigCrv[i], vNewCrv[i]) ;
// creo una surf bezier come rigata tra le due curve passate, usando le isocurve nel layer nLayIso
int nId = ExeCreateSurfBzRuledGuided( nParentId, nCrvId1, nCrvId2, nLayGuides, bCapEnds, dLinTol) ;
int nId = ExeCreateSurfBzRuledGuided( nParentId, nCrvId1, nCrvId2, nLayGuides, nLayNewGuides, vShown, vNewOrEdited, bCapEnds, dLinTol) ;
// restituisco il risultato
if ( nId != GDB_ID_NULL)
LuaSetParam( L, nId) ;