EgtExecutor 2.7g3 :

- le funzioni lua EgtCurveCompoGetTempProp e EgtCurveCompoGetTempParam ora accettano l'indice del dato richiesto (0 o 1).
This commit is contained in:
Dario Sassi
2025-07-28 08:41:57 +02:00
parent 54c761d722
commit 8d7fdeb0c2
4 changed files with 16 additions and 11 deletions
+2 -1
View File
@@ -237,7 +237,8 @@ ExeApproxCurve( int nId, int nApprType, double dLinTol, double dMaxSegmLen)
if ( IsCmdLog()) {
string sLua = "EgtApproxCurve(" + ToString( nId) + "," +
ApproxTypeToString( nApprType) + "," +
ToString( dLinTol) + ")" +
ToString( dLinTol) + "," +
ToString( dMaxSegmLen) + ")" +
" -- Ok=" + ToString( bOk) ;
LOG_INFO( GetCmdLogger(), sLua.c_str()) ;
}
BIN
View File
Binary file not shown.
+11 -7
View File
@@ -558,7 +558,7 @@ LuaCurveCompoNormVersor( lua_State* L)
int nRefId = nId ;
LuaGetParam( L, 3, nRefId) ;
LuaClearStack( L) ;
// recupero l'angolo al centro della curva semplice indicizzata
// recupero il versore normale della curva semplice indicizzata (non nullo solo se arco)
Vector3d vtNorm ;
if ( ExeCurveCompoNormVersor( nId, nCrv, nRefId, vtNorm))
LuaSetParam( L, vtNorm) ;
@@ -571,13 +571,15 @@ LuaCurveCompoNormVersor( lua_State* L)
static int
LuaCurveCompoGetTempProp( lua_State* L)
{
// 1 parametro : Id
// 1 o 2 parametri : Id [, nPropInd]
int nId ;
LuaCheckParam( L, 1, nId)
int nPropInd = 0 ;
LuaGetParam( L, 2, nPropInd) ;
LuaClearStack( L) ;
// recupero l'angolo al centro della curva semplice indicizzata
// recupero il vettore delle proprietà temporanee di indice dato
INTVECTOR vProp ;
if ( ExeCurveCompoGetTempProp( nId, vProp, 0))
if ( ExeCurveCompoGetTempProp( nId, vProp, nPropInd))
LuaSetParam( L, vProp) ;
else
LuaSetParam( L) ;
@@ -588,13 +590,15 @@ LuaCurveCompoGetTempProp( lua_State* L)
static int
LuaCurveCompoGetTempParam( lua_State* L)
{
// 1 parametro : Id
// 1 o 2 parametri : Id [, nParamInd]
int nId ;
LuaCheckParam( L, 1, nId)
int nParamInd = 0 ;
LuaGetParam( L, 2, nParamInd) ;
LuaClearStack( L) ;
// recupero l'angolo al centro della curva semplice indicizzata
// recupero il vettore dei parametri temporanei di indice dato
DBLVECTOR vParam ;
if ( ExeCurveCompoGetTempParam( nId, vParam, 0))
if ( ExeCurveCompoGetTempParam( nId, vParam, nParamInd))
LuaSetParam( L, vParam) ;
else
LuaSetParam( L) ;
+3 -3
View File
@@ -3708,7 +3708,7 @@ LuaGetCalcPositions( lua_State* L)
static int
LuaGetCalcTipFromPositions( lua_State* L)
{
// da 4 a 10 parametri : dX, dY, dZ, dAngR1[, dAngR2][, dAngR3][, dAngR4][, dAngR5][, dAngR6][, bBottom]
// da 3 a 10 parametri : dX, dY, dZ [, dAngR1] [, dAngR2] [, dAngR3] [, dAngR4] [, dAngR5] [, dAngR6] [, bBottom]
double dX ;
LuaCheckParam( L, 1, dX)
double dY ;
@@ -3742,7 +3742,7 @@ LuaGetCalcTipFromPositions( lua_State* L)
static int
LuaGetCalcToolDirFromAngles( lua_State* L)
{
// da 1 a 6 parametri : dAngR1, dAngR2, dAngR3, dAngR4, dAngR5, dAngR6
// da 0 a 6 parametri : [dAngR1] [, dAngR2] [, dAngR3] [, dAngR4] [, dAngR5] [, dAngR6]
DBLVECTOR vAng ;
for ( int i = 1 ; i <= 6 ; ++ i) {
double dAng ;
@@ -3767,7 +3767,7 @@ LuaGetCalcToolDirFromAngles( lua_State* L)
static int
LuaGetCalcAuxDirFromAngles( lua_State* L)
{
// da 1 a 6 parametri : dAngR1, dAngR2, dAngR3, dAngR4, dAngR5, dAngR6
// da 0 a 6 parametri : [dAngR1] [, dAngR2] [, dAngR3] [, dAngR4] [, dAngR5] [, dAngR6]
DBLVECTOR vAng ;
for ( int i = 1 ; i <= 6 ; ++ i) {
double dAng ;