EgtExecutor 1.6g2 :

- ExeSplitCurve ora mette le curve risultato in Id contigui
- aggiunta ExeSplitCurveAtSelfInters
- aggiunta ExeGetNewId
- aggiunta ExeCurveSelfIntersNbr
- ExeIntersectionPoint funziona anche con auto-intersezioni
- il tutto anche per le funzioni lua equivalenti.
This commit is contained in:
Dario Sassi
2015-07-07 18:30:47 +00:00
parent 57d69257f1
commit d070901ce0
7 changed files with 195 additions and 10 deletions
+20
View File
@@ -286,6 +286,25 @@ LuaSplitCurveAtPoint( lua_State* L)
return 1 ;
}
//----------------------------------------------------------------------------
static int
LuaSplitCurveAtSelfInters( lua_State* L)
{
// 1 parametro : Id
int nId ;
LuaCheckParam( L, 1, nId)
LuaClearStack( L) ;
// divido la curva negli eventuali punti di autointersezione
int nCount ;
int nNewId = ExeSplitCurveAtSelfInters( nId, &nCount) ;
if ( nNewId != GDB_ID_NULL)
LuaSetReturn( L, nNewId) ;
else
LuaSetReturn( L) ;
LuaSetReturn( L, nCount) ;
return 2 ;
}
//-------------------------------------------------------------------------------
static int
LuaApproxCurve( lua_State* L)
@@ -378,6 +397,7 @@ LuaInstallGdbModifyCurve( LuaMgr& luaMgr)
bOk = bOk && luaMgr.RegisterFunction( "EgtTrimExtendCurveByLen", LuaTrimExtendCurveByLen) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtSplitCurve", LuaSplitCurve) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtSplitCurveAtPoint", LuaSplitCurveAtPoint) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtSplitCurveAtSelfInters", LuaSplitCurveAtSelfInters) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtApproxCurve", LuaApproxCurve) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtModifyCurveArcRadius", LuaModifyCurveArcRadius) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtExplodeCurveCompo", LuaExplodeCurveCompo) ;