EgtMachKernel 1.6n4 :

- migliorie a gestione fasi
- migliorie a gestione spezzatura grezzi.
This commit is contained in:
Dario Sassi
2016-02-15 07:45:43 +00:00
parent a8c34397be
commit bbb25a4fec
10 changed files with 409 additions and 83 deletions
+32 -21
View File
@@ -202,33 +202,44 @@ MachMgr::SwapRawPartParts( int nRawId, bool bToRawPart)
while ( nId != GDB_ID_NULL) {
// recupero il successivo
int nNextId = m_pGeomDB->GetNextGroup( nId) ;
// se devo portare i pezzi dalla radice al grezzo
if ( bToRawPart) {
// se è un riferimento al pezzo
int nSou ;
if ( m_pGeomDB->GetInfo( nId, GDB_SI_SOURCE, nSou)) {
m_pGeomDB->GroupSwap( nSou, nId, true, true) ;
// mi assicuro sia visibile
m_pGeomDB->SetStatus( nSou, GDB_ST_ON) ;
}
}
// altrimenti dal grezzo alla radice
else {
// se è un pezzo spostato
int nBase ;
if ( m_pGeomDB->GetInfo( nId, GDB_SI_BASE, nBase)) {
m_pGeomDB->GroupSwap( nId, nBase, true, true) ;
// mi assicuro sia nascosto e di livello utente
m_pGeomDB->SetStatus( nId, GDB_ST_OFF) ;
m_pGeomDB->SetLevel( nId, GDB_LV_USER) ;
}
}
// eseguo lo swap del pezzo
SwapRawPartPart( nId, bToRawPart) ;
// passo al successivo
nId = nNextId ;
}
return true ;
}
//----------------------------------------------------------------------------
int
MachMgr::SwapRawPartPart( int nId, bool bToRawPart)
{
// se devo portare i pezzi dalla radice al grezzo
if ( bToRawPart) {
// se è un riferimento al pezzo
int nSou ;
if ( m_pGeomDB->GetInfo( nId, GDB_SI_SOURCE, nSou)) {
m_pGeomDB->GroupSwap( nSou, nId, true, true) ;
// mi assicuro sia visibile
m_pGeomDB->SetStatus( nSou, GDB_ST_ON) ;
return nSou ;
}
}
// altrimenti dal grezzo alla radice
else {
// se è un pezzo spostato
int nBase ;
if ( m_pGeomDB->GetInfo( nId, GDB_SI_BASE, nBase)) {
m_pGeomDB->GroupSwap( nId, nBase, true, true) ;
// mi assicuro sia nascosto e di livello utente
m_pGeomDB->SetStatus( nId, GDB_ST_OFF) ;
m_pGeomDB->SetLevel( nId, GDB_LV_USER) ;
return nBase ;
}
}
return GDB_ID_NULL ;
}
//----------------------------------------------------------------------------
bool
MachMgr::ShowRootParts( bool bShow)