EgtExecutor 2.6c2 :
- aggiunte funzioni Exe e Lua SurfTmSetShowEdges e VolZmapSetShowEdges.
This commit is contained in:
+46
-24
@@ -104,7 +104,7 @@ MyExplodeSurfTriMesh( int nId, int& nCount)
|
||||
}
|
||||
// recupero il numero di facce
|
||||
int nFacets = pStm->GetFacetCount() ;
|
||||
// se ci sono pi� facce, separo queste
|
||||
// se ci sono più facce, separo queste
|
||||
if ( nFacets > 1) {
|
||||
// copio tutte le facce
|
||||
int nFirstId = GDB_ID_NULL ;
|
||||
@@ -130,7 +130,7 @@ MyExplodeSurfTriMesh( int nId, int& nCount)
|
||||
// restituisco risultati
|
||||
return nFirstId ;
|
||||
}
|
||||
// non devo fare alcunch�
|
||||
// non devo fare alcunché
|
||||
nCount = 1 ;
|
||||
return nId ;
|
||||
}
|
||||
@@ -147,7 +147,7 @@ MyExplodeSurfFlatRegion( int nId, int& nCount)
|
||||
return GDB_ID_NULL ;
|
||||
// recupero il numero di componenti connessi (chunk)
|
||||
int nChunk = pSfr->GetChunkCount() ;
|
||||
// se c'� un solo componente, non devo fare alcunch�
|
||||
// se c'è un solo componente, non devo fare alcunché
|
||||
if ( nChunk == 1) {
|
||||
nCount = 1 ;
|
||||
return nId ;
|
||||
@@ -784,27 +784,6 @@ ExeSurfTmIntersect( int nId1, int nId2, bool bTwoColors)
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeSurfTmResetTwoColors( int nId)
|
||||
{
|
||||
IGeomDB* pGeomDB = GetCurrGeomDB() ;
|
||||
VERIFY_GEOMDB( pGeomDB, false)
|
||||
// recupero la superficie TriMesh
|
||||
ISurfTriMesh* pStm = GetSurfTriMesh( pGeomDB->GetGeoObj( nId)) ;
|
||||
bool bOk = ( pStm != nullptr) ;
|
||||
// reset dei flag sui triangoli per i due colori
|
||||
bOk = bOk && pStm->ResetTFlags() ;
|
||||
ExeSetModified() ;
|
||||
// se richiesto, salvo il comando Lua equivalente
|
||||
if ( IsCmdLog()) {
|
||||
string sLua = "EgtSurfTmResetTwoColors(" + ToString( nId) + ")" +
|
||||
" -- Ok=" + ToString( bOk) ;
|
||||
LOG_INFO( GetCmdLogger(), sLua.c_str()) ;
|
||||
}
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
static ISurfTriMesh*
|
||||
MyCreateSubSurfTm( const ISurfTriMesh* pStm, const INTVECTOR& vTria, const INTVECTOR& vTria2)
|
||||
@@ -1016,6 +995,49 @@ ExeSurfTmSubtractProjectedFacesOnFace( int nSurfId, int nFaceInd, int nDestGrpId
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeSurfTmResetTwoColors( int nId)
|
||||
{
|
||||
IGeomDB* pGeomDB = GetCurrGeomDB() ;
|
||||
VERIFY_GEOMDB( pGeomDB, false)
|
||||
// recupero la superficie TriMesh
|
||||
ISurfTriMesh* pStm = GetSurfTriMesh( pGeomDB->GetGeoObj( nId)) ;
|
||||
bool bOk = ( pStm != nullptr) ;
|
||||
// reset dei flag sui triangoli per i due colori
|
||||
bOk = bOk && pStm->ResetTFlags() ;
|
||||
ExeSetModified() ;
|
||||
// se richiesto, salvo il comando Lua equivalente
|
||||
if ( IsCmdLog()) {
|
||||
string sLua = "EgtSurfTmResetTwoColors(" + ToString( nId) + ")" +
|
||||
" -- Ok=" + ToString( bOk) ;
|
||||
LOG_INFO( GetCmdLogger(), sLua.c_str()) ;
|
||||
}
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeSurfTmSetShowEdges( int nId, bool bShow)
|
||||
{
|
||||
IGeomDB* pGeomDB = GetCurrGeomDB() ;
|
||||
VERIFY_GEOMDB( pGeomDB, false)
|
||||
// recupero la superficie trimesh
|
||||
ISurfTriMesh* pStm = GetSurfTriMesh( pGeomDB->GetGeoObj( nId)) ;
|
||||
bool bOk = ( pStm != nullptr) ;
|
||||
// imposto lo stato di visualizzazione degli spigoli vivi
|
||||
if ( bOk)
|
||||
pStm->SetShowEdges( bShow) ;
|
||||
ExeSetModified() ;
|
||||
// se richiesto, salvo il comando Lua equivalente
|
||||
if ( IsCmdLog()) {
|
||||
string sLua = "EgtSurfTmSetShowEdges(" + ToString( nId) + "," +
|
||||
ToString( bShow) + ")" +
|
||||
" -- Ok=" + ToString( bOk) ;
|
||||
LOG_INFO( GetCmdLogger(), sLua.c_str()) ;
|
||||
}
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
static bool
|
||||
|
||||
+25
-3
@@ -104,10 +104,9 @@ ExeVolZmapChangeResolution( int nId, int nNewRes)
|
||||
VERIFY_GEOMDB( pGeomDB, false)
|
||||
// recupero lo Zmap
|
||||
IVolZmap* pVZM = GetVolZmap( pGeomDB->GetGeoObj( nId)) ;
|
||||
if ( pVZM == nullptr)
|
||||
return false ;
|
||||
bool bOk = ( pVZM != nullptr) ;
|
||||
// cambio la risoluzione (rapporto Voxel/Dexel, valori ammessi 1 e 2)
|
||||
bool bOk = pVZM->ChangeResolution( nNewRes) ;
|
||||
bOk = bOk && pVZM->ChangeResolution( nNewRes) ;
|
||||
ExeSetModified() ;
|
||||
// se richiesto, salvo il comando Lua equivalente
|
||||
if ( IsCmdLog()) {
|
||||
@@ -120,6 +119,29 @@ ExeVolZmapChangeResolution( int nId, int nNewRes)
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
bool
|
||||
ExeVolZmapSetShowEdges( int nId, bool bShow)
|
||||
{
|
||||
IGeomDB* pGeomDB = GetCurrGeomDB() ;
|
||||
VERIFY_GEOMDB( pGeomDB, false)
|
||||
// recupero lo Zmap
|
||||
IVolZmap* pVZM = GetVolZmap( pGeomDB->GetGeoObj( nId)) ;
|
||||
bool bOk = ( pVZM != nullptr) ;
|
||||
// imposto lo stato di visualizzazione degli spigoli vivi
|
||||
if ( bOk)
|
||||
pVZM->SetShowEdges( bShow) ;
|
||||
ExeSetModified() ;
|
||||
// se richiesto, salvo il comando Lua equivalente
|
||||
if ( IsCmdLog()) {
|
||||
string sLua = "EgtVolZmapSetShowEdges(" + ToString( nId) + "," +
|
||||
ToString( bShow) + ")" +
|
||||
" -- Ok=" + ToString( bOk) ;
|
||||
LOG_INFO( GetCmdLogger(), sLua.c_str()) ;
|
||||
}
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
bool
|
||||
ExeRemoveVolZmapPart( int nId, int nPart)
|
||||
|
||||
Binary file not shown.
+35
-19
@@ -23,7 +23,6 @@
|
||||
|
||||
using namespace std ;
|
||||
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
static int
|
||||
LuaInvertSurf( lua_State* L)
|
||||
@@ -356,20 +355,6 @@ LuaSurfTmIntersect( lua_State* L)
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaSurfTmResetTwoColors( lua_State* L)
|
||||
{
|
||||
// 1 parametro : Id
|
||||
int nId ;
|
||||
LuaCheckParam( L, 1, nId)
|
||||
LuaClearStack( L) ;
|
||||
// eseguo reset TFlag per annullare due colori
|
||||
bool bOk = ExeSurfTmResetTwoColors( nId) ;
|
||||
LuaSetParam( L, bOk) ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaSurfTmSplit( lua_State* L)
|
||||
@@ -445,18 +430,48 @@ LuaSurfTmSubtractProjectedFacesOnFace( lua_State* L)
|
||||
return 4 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaSurfTmResetTwoColors( lua_State* L)
|
||||
{
|
||||
// 1 parametro : Id
|
||||
int nId ;
|
||||
LuaCheckParam( L, 1, nId)
|
||||
LuaClearStack( L) ;
|
||||
// eseguo reset TFlag per annullare due colori
|
||||
bool bOk = ExeSurfTmResetTwoColors( nId) ;
|
||||
LuaSetParam( L, bOk) ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaSurfTmSetShowEdges( lua_State* L)
|
||||
{
|
||||
// 2 parametri : Id, bShow
|
||||
int nId ;
|
||||
LuaCheckParam( L, 1, nId)
|
||||
bool bShow ;
|
||||
LuaCheckParam( L, 2, bShow) ;
|
||||
LuaClearStack( L) ;
|
||||
// imposto flag visualizzazione spigoli vivi
|
||||
bool bOk = ExeSurfTmSetShowEdges( nId, bShow) ;
|
||||
// restituisco il risultato
|
||||
LuaSetParam( L, bOk) ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaSurfBzTrim( lua_State* L)
|
||||
{
|
||||
// 2 parametri : nId, nCutterId
|
||||
// 2 parametri : nId, nCutterId
|
||||
int nId ;
|
||||
LuaCheckParam( L, 1, nId)
|
||||
int nCutterId ;
|
||||
LuaCheckParam( L, 2, nCutterId)
|
||||
LuaClearStack( L) ;
|
||||
// taglio la prima superficie in base alla seconda
|
||||
//bool bOk = ExeSurfTmCut( nId, nCutterId, bInVsOut, bOn) ;
|
||||
// taglio la prima superficie in base alla seconda
|
||||
bool bOk = ExeSurfBzTrim( nId, nCutterId) ;
|
||||
LuaSetParam( L, bOk) ;
|
||||
return 1 ;
|
||||
@@ -485,10 +500,11 @@ LuaInstallGdbModifySurf( LuaMgr& luaMgr)
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmAdd", LuaSurfTmAdd) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmSubtract", LuaSurfTmSubtract) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmIntersect", LuaSurfTmIntersect) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmResetTwoColors", LuaSurfTmResetTwoColors) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmSplit", LuaSurfTmSplit) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmCut", LuaSurfTmCut) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmSubtractProjectedFacesOnFace", LuaSurfTmSubtractProjectedFacesOnFace) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmResetTwoColors", LuaSurfTmResetTwoColors) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfTmSetShowEdges", LuaSurfTmSetShowEdges) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtSurfBzTrim", LuaSurfBzTrim) ;
|
||||
return bOk ;
|
||||
}
|
||||
|
||||
@@ -56,6 +56,23 @@ LuaVolZmapChangeResolution( lua_State* L)
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
static int
|
||||
LuaVolZmapSetShowEdges( lua_State* L)
|
||||
{
|
||||
// 2 parametri : Id, bShow
|
||||
int nId ;
|
||||
LuaCheckParam( L, 1, nId)
|
||||
bool bShow ;
|
||||
LuaCheckParam( L, 2, bShow) ;
|
||||
LuaClearStack( L) ;
|
||||
// imposto flag visualizzazione spigoli vivi
|
||||
bool bOk = ExeVolZmapSetShowEdges( nId, bShow) ;
|
||||
// restituisco il risultato
|
||||
LuaSetParam( L, bOk) ;
|
||||
return 1 ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
static int
|
||||
LuaRemoveVolZmapPart( lua_State* L)
|
||||
@@ -350,6 +367,7 @@ LuaInstallGdbModifyVol( LuaMgr& luaMgr)
|
||||
bool bOk = ( &luaMgr != nullptr) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtExplodeVolume", LuaExplodeVolume) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtVolZmapChangeResolution", LuaVolZmapChangeResolution) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtVolZmapSetShowEdges", LuaVolZmapSetShowEdges) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtRemoveVolZmapPart", LuaRemoveVolZmapPart) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtVolZmapSetStdTool", LuaVolZmapSetStdTool) ;
|
||||
bOk = bOk && luaMgr.RegisterFunction( "EgtVolZmapSetAdvTool", LuaVolZmapSetAdvTool) ;
|
||||
|
||||
Reference in New Issue
Block a user