EgtExecutor 1.8g1 :

- aggiunta gestione immagini (inizialmente solo recupero dimensioni in pixel).
This commit is contained in:
Dario Sassi
2017-07-07 15:58:49 +00:00
parent c1c4e5a66f
commit 2f9333d29a
10 changed files with 131 additions and 6 deletions
+21 -5
View File
@@ -38,6 +38,7 @@ static const char* EGR_GETEGRVERSION = "GetEGrVersion" ;
static const char* EGR_SETEGRKEY = "SetEGrKey" ;
static const char* EGR_CREATEEGRSCENE = "CreateEGrScene" ;
static const char* EGR_CREATESCEEXECUTOR = "CreateSceExecutor" ;
static const char* EGR_CREATEEGRIMAGEMGR = "CreateEgrImageMgr" ;
//-----------------------------------------------------------------------------
@@ -90,7 +91,7 @@ IsLoadedGraphicsDll( void)
void
MySetEGrLogger( ILogger* pLogger)
{
// verifico caricamento libreria MachMgr
// verifico caricamento libreria EgtGraphics
if ( s_hEGr == nullptr)
return ;
// recupero funzione che imposta il logger
@@ -105,7 +106,7 @@ MySetEGrLogger( ILogger* pLogger)
const char*
MyGetEGrVersion( void)
{
// verifico caricamento libreria MachMgr
// verifico caricamento libreria EgtGraphics
if ( s_hEGr == nullptr)
return "" ;
// recupero funzione che restituisce la versione della libreria
@@ -120,7 +121,7 @@ MyGetEGrVersion( void)
void
MySetEGrKey( const string& sKey)
{
// verifico caricamento libreria MachMgr
// verifico caricamento libreria EgtGraphics
if ( s_hEGr == nullptr)
return ;
// recupero funzione che imposta i codici di protezione
@@ -135,7 +136,7 @@ MySetEGrKey( const string& sKey)
IEGrScene*
MyCreateEGrScene( void)
{
// verifico caricamento libreria MachMgr
// verifico caricamento libreria EgtGraphics
if ( s_hEGr == nullptr)
return nullptr ;
// recupero funzione creazione oggetto
@@ -150,7 +151,7 @@ MyCreateEGrScene( void)
ISceExecutor*
MyCreateSceExecutor( void)
{
// verifico caricamento libreria MachMgr
// verifico caricamento libreria EgtGraphics
if ( s_hEGr == nullptr)
return nullptr ;
// recupero funzione creazione oggetto
@@ -160,3 +161,18 @@ MyCreateSceExecutor( void)
return nullptr ;
return pFun() ;
}
//-----------------------------------------------------------------------------
IEgrImageMgr*
MyCreateEgrImageMgr( void)
{
// verifico caricamento libreria EgtGraphics
if ( s_hEGr == nullptr)
return nullptr ;
// recupero funzione creazione oggetto
typedef IEgrImageMgr* (* PF_CreateEgrImageMgr) ( void) ;
PF_CreateEgrImageMgr pFun = (PF_CreateEgrImageMgr)GetProcAddress( s_hEGr, EGR_CREATEEGRIMAGEMGR) ;
if ( pFun == nullptr)
return nullptr ;
return pFun() ;
}
+2
View File
@@ -18,6 +18,7 @@
class ILogger ;
class IEGrScene ;
class ISceExecutor ;
class IEgrImageMgr ;
//----------------------------------------------------------------------------
bool LoadGraphicsDll( ILogger* pLogger, const std::string& sKey) ;
@@ -28,3 +29,4 @@ void MySetEGrKey( const std::string& sKey) ;
const char* MyGetEGrVersion( void) ;
IEGrScene* MyCreateEGrScene( void) ;
ISceExecutor* MyCreateSceExecutor(void) ;
IEgrImageMgr* MyCreateEgrImageMgr( void) ;
+39
View File
@@ -0,0 +1,39 @@
//----------------------------------------------------------------------------
// EgalTech 2015-2015
//----------------------------------------------------------------------------
// File : EXE_Image.cpp Data : 05.07.17 Versione : 1.8g1
// Contenuto : Funzioni per gestione immagini.
//
//
//
// Modifiche : 05.07.17 DS Creazione modulo.
//
//
//----------------------------------------------------------------------------
//--------------------------- Include ----------------------------------------
#include "stdafx.h"
#include "DllGraphics.h"
#include "/EgtDev/Include/EXeExecutor.h"
#include "/EgtDev/Include/EXeConst.h"
#include "/EgtDev/Include/EGrImageMgr.h"
#include "/EgtDev/Include/EgtPointerOwner.h"
using namespace std ;
//----------------------------------------------------------------------------
bool
ExeGetImagePixels( const string& sFile, int& nPixelX, int& nPixelY)
{
// assegno valori di default
nPixelX = 0 ;
nPixelY = 0 ;
// preparo il gestore di immagini
PtrOwner<IEgrImageMgr> pImageMgr( MyCreateEgrImageMgr()) ;
if ( IsNull( pImageMgr))
return false ;
// eseguo
return pImageMgr->GetImagePixels( sFile, nPixelX, nPixelY) ;
}
+1 -1
View File
@@ -183,4 +183,4 @@ ExeGetPhotoPixels( int nId, int& nPixelX, int& nPixelY)
if ( ! pPhoto->GetName( sName))
return false ;
return ( pScene->GetTexturePixels( sName, nPixelX, nPixelY) && nPixelX > 0 && nPixelY > 0) ;
}
}
BIN
View File
Binary file not shown.
+2
View File
@@ -233,6 +233,7 @@ copy $(TargetPath) \EgtProg\Dll64</Command>
<ItemGroup>
<ClCompile Include="EXE_GdbCreateVol.cpp" />
<ClCompile Include="EXE_GdbModifyVol.cpp" />
<ClCompile Include="EXE_Image.cpp" />
<ClCompile Include="EXE_NstMachining.cpp" />
<ClCompile Include="EXE_NstPartNesting.cpp" />
<ClCompile Include="EXE_GdbCreateCurve.cpp" />
@@ -287,6 +288,7 @@ copy $(TargetPath) \EgtProg\Dll64</Command>
<ClCompile Include="LUA_GeomDB.cpp" />
<ClCompile Include="LUA_GeoSnap.cpp" />
<ClCompile Include="LUA_GeoTransform.cpp" />
<ClCompile Include="LUA_Image.cpp" />
<ClCompile Include="LUA_MachMgr.cpp" />
<ClCompile Include="LUA_Nesting.cpp" />
<ClCompile Include="LUA_Photo.cpp" />
+6
View File
@@ -296,6 +296,12 @@
<ClCompile Include="GenTools.cpp">
<Filter>File di origine\Global</Filter>
</ClCompile>
<ClCompile Include="EXE_Image.cpp">
<Filter>File di origine\EXE</Filter>
</ClCompile>
<ClCompile Include="LUA_Image.cpp">
<Filter>File di origine\LUA</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="EgtExecutor.rc">
+3
View File
@@ -81,6 +81,9 @@ bool LuaInstallScene( LuaMgr& luaMgr) ;
//-------------------------- Photo -------------------------------------------
bool LuaInstallPhoto( LuaMgr& luaMgr) ;
//-------------------------- Image -------------------------------------------
bool LuaInstallImage( LuaMgr& luaMgr) ;
//-------------------------- Exchange ----------------------------------------
bool LuaInstallExchange( LuaMgr& luaMgr) ;
+4
View File
@@ -114,6 +114,10 @@ LuaInstallEgtFunctions( LuaMgr& LuaMgr)
LOG_ERROR( GetLogger(), "Error in LuaInstallPhoto (" __FUNCTION__ ")")
return false ;
}
if ( ! LuaInstallImage( LuaMgr)) {
LOG_ERROR( GetLogger(), "Error in LuaInstallImage (" __FUNCTION__ ")")
return false ;
}
if ( ! LuaInstallExchange( LuaMgr)) {
LOG_ERROR( GetLogger(), "Error in LuaInstallExchange (" __FUNCTION__ ")")
return false ;
+53
View File
@@ -0,0 +1,53 @@
//----------------------------------------------------------------------------
// EgalTech 2017-2017
//----------------------------------------------------------------------------
// File : LUA_Image.cpp Data : 05.07.17 Versione : 1.8g1
// Contenuto : Funzioni sulle immagini per LUA.
//
//
//
// Modifiche : 05.07.17 DS Creazione modulo.
//
//
//----------------------------------------------------------------------------
//--------------------------- Include ----------------------------------------
#include "stdafx.h"
#include "LUA.h"
#include "/EgtDev/Include/EXeExecutor.h"
#include "/EgtDev/Include/EGkLuaAux.h"
#include "/EgtDev/Include/EgnStringUtils.h"
using namespace std ;
//-------------------------------------------------------------------------------
static int
LuaGetImagePixels( lua_State* L)
{
// 1 parametro : sFile
string sFile ;
LuaCheckParam( L, 1, sFile)
LuaClearStack( L) ;
// recupero la dimensione in pixels dell'immagine
int nPixelX, nPixelY ;
bool bOk = ExeGetImagePixels( sFile, nPixelX, nPixelY) ;
// restituisco il risultato
if ( bOk) {
LuaSetParam( L, nPixelX) ;
LuaSetParam( L, nPixelY) ;
return 2 ;
}
else {
LuaSetParam( L) ;
return 1 ;
}
}
//-------------------------------------------------------------------------------
bool
LuaInstallImage( LuaMgr& luaMgr)
{
bool bOk = ( &luaMgr != nullptr) ;
bOk = bOk && luaMgr.RegisterFunction( "EgtGetImagePixels", LuaGetImagePixels) ;
return bOk ;
}