EgtExecutor :

- sistemazioni per proiezione curve su superfici
- semplificazione parametri di alcune funzioni MachOpt.
This commit is contained in:
Dario Sassi
2025-04-23 12:19:21 +02:00
parent 025af8a9aa
commit dbc2365a68
3 changed files with 102 additions and 91 deletions
+34 -41
View File
@@ -50,28 +50,25 @@ LuaOptMachTerminate( lua_State* L)
static int
LuaOptMachAddTool( lua_State* L)
{
// Definizione 15 parametri
int nId = 0 ;
// Definizione 9 parametri (3 obbligatori)
int nId ;
LuaCheckParam( L, 1, nId) ;
double dTC_X = 0. ; double dTC_Y = 0. ; double dTC_Z = 0. ;
LuaCheckParam( L, 2, dTC_X) ;
LuaCheckParam( L, 3, dTC_Y) ;
LuaCheckParam( L, 4, dTC_Z) ;
double dTC_A = 0. ; double dTC_B = 0. ; double dTC_C = 0. ;
LuaCheckParam( L, 5, dTC_A) ;
LuaCheckParam( L, 6, dTC_B) ;
LuaCheckParam( L, 7, dTC_C) ;
bool bTC_X = false ; bool bTC_Y = false ; bool bTC_Z = false ;
LuaCheckParam( L, 8, bTC_X) ;
LuaCheckParam( L, 9, bTC_Y) ;
LuaCheckParam( L, 10, bTC_Z) ;
bool bTC_A = false ; bool bTC_B = false ; bool bTC_C = false ;
LuaCheckParam( L, 11, bTC_A) ;
LuaCheckParam( L, 12, bTC_B) ;
LuaCheckParam( L, 13, bTC_C) ;
double dTLoad = 0. ; double dTUnload = 0. ;
LuaCheckParam( L, 14, dTLoad) ;
LuaCheckParam( L, 15, dTUnload) ;
double dTLoad ;
LuaCheckParam( L, 2, dTLoad) ;
double dTUnload ;
LuaCheckParam( L, 3, dTUnload) ;
double dTC_X = 0. ;
bool bTC_X = LuaGetParam( L, 4, dTC_X) ;
double dTC_Y = 0. ;
bool bTC_Y = LuaGetParam( L, 5, dTC_Y) ;
double dTC_Z = 0. ;
bool bTC_Z = LuaGetParam( L, 6, dTC_Z) ;
double dTC_A = 0. ;
bool bTC_A = LuaGetParam( L, 7, dTC_A) ;
double dTC_B = 0. ;
bool bTC_B = LuaGetParam( L, 8, dTC_B) ;
double dTC_C = 0. ;
bool bTC_C = LuaGetParam( L, 9, dTC_C) ;
LuaClearStack( L) ;
// Aggiungo la Lavorazione
bool bOk = ExeOptMachAddTool( nId, dTC_X, dTC_Y, dTC_Z, dTC_A, dTC_B, dTC_C,
@@ -86,32 +83,27 @@ LuaOptMachAddTool( lua_State* L)
static int
LuaOptMachAddMachining( lua_State* L)
{
// Definizione 15 parametri
int nId = 0 ; int nToolId = 0 ; int nGroup = 0 ;
// Definizione 5 parametri
int nId ;
LuaCheckParam( L, 1, nId) ;
int nToolId ;
LuaCheckParam( L, 2, nToolId) ;
int nGroup ;
LuaCheckParam( L, 3, nGroup) ;
double dX_Start = 0. ; double dY_Start = 0. ; double dZ_Start = 0. ;
double dA_Start = 0. ; double dB_Start = 0. ; double dC_Start = 0. ;
LuaCheckParam( L, 4, dX_Start) ;
LuaCheckParam( L, 5, dY_Start) ;
LuaCheckParam( L, 6, dZ_Start) ;
LuaCheckParam( L, 7, dA_Start) ;
LuaCheckParam( L, 8, dB_Start) ;
LuaCheckParam( L, 9, dC_Start) ;
double dX_End = 0. ; double dY_End = 0. ; double dZ_End = 0. ;
double dA_End = 0. ; double dB_End = 0. ; double dC_End = 0. ;
LuaCheckParam( L, 10, dX_End) ;
LuaCheckParam( L, 11, dY_End) ;
LuaCheckParam( L, 12, dZ_End) ;
LuaCheckParam( L, 13, dA_End) ;
LuaCheckParam( L, 14, dB_End) ;
LuaCheckParam( L, 15, dC_End) ;
DBLVECTOR vAxStart ;
LuaCheckParam( L, 4, vAxStart) ;
DBLVECTOR vAxEnd ;
LuaCheckParam( L, 5, vAxEnd) ;
LuaClearStack( L) ;
// Completamento valori assi
while ( vAxStart.size() < 6)
vAxStart.push_back( 0) ;
while ( vAxEnd.size() < 6)
vAxEnd.push_back( 0) ;
// Aggiungo la Lavorazione
bool bOk = ExeOptMachAddMachining( nId, nToolId, nGroup,
dX_Start, dY_Start, dZ_Start, dA_Start, dB_Start, dC_Start,
dX_End, dY_End, dZ_End, dA_End, dB_End, dC_End) ;
vAxStart[0], vAxStart[1], vAxStart[2], vAxStart[3], vAxStart[4], vAxStart[5],
vAxEnd[0], vAxEnd[1], vAxEnd[2], vAxEnd[3], vAxEnd[4], vAxEnd[5]) ;
// Rstituisco il risultato
LuaSetParam( L, bOk) ;
return 1 ;
@@ -147,6 +139,7 @@ LuaOptMachSetLastMachining( lua_State* L)
return 1 ;
}
//------------------------------------------------------------------------------
static int
LuaOptMachSetFeeds( lua_State* L)
{