EgtMachKernel 1.9d3 :
- ordine grezzi sempre ripristinato dopo Link/Unlink con parti di macchina - in KeepRawPart reset posizione grezzo se non definita fase di origine - aumentato massimo angolo di fianco per lama a 75 gradi.
This commit is contained in:
Binary file not shown.
@@ -563,6 +563,11 @@ MachMgr::KeepRawPart( int nRawId, int nSouPhase)
|
||||
vPhase.emplace_back( m_nCurrPhase) ;
|
||||
if ( ! m_pGeomDB->SetInfo( nRawId, MACH_RAW_PHASE, vPhase))
|
||||
return false ;
|
||||
// annullo eventuali movimenti del grezzo (riferimento riportato a globale)
|
||||
Frame3d* pfrRaw = m_pGeomDB->GetGroupFrame( nRawId) ;
|
||||
if ( pfrRaw == nullptr)
|
||||
return false ;
|
||||
pfrRaw->Reset() ;
|
||||
// visualizzo il grezzo e ne attivo i pezzi
|
||||
if ( ! m_pGeomDB->SetStatus( nRawId, GDB_ST_ON))
|
||||
return false ;
|
||||
|
||||
+12
-4
@@ -967,10 +967,18 @@ Machine::UnlinkRawPartFromGroup( int nRawPartId)
|
||||
auto iIter = find( m_vLinkedRawParts.begin(), m_vLinkedRawParts.end(), nRawPartId) ;
|
||||
if ( iIter == m_vLinkedRawParts.end())
|
||||
return false ;
|
||||
// riporto il grezzo nel gruppo dei grezzi (se appartiene alla prima fase in testa)
|
||||
int nInsPos = ( m_pMchMgr->VerifyRawPartPhase( nRawPartId, 1) ? GDB_FIRST_SON : GDB_LAST_SON) ;
|
||||
if ( ! m_pGeomDB->RelocateGlob( nRawPartId, nRawGrpId, nInsPos))
|
||||
return false ;
|
||||
// riporto il grezzo nel gruppo dei grezzi (conservando l'ordine di definizione quindi Id crescenti)
|
||||
int nCurrId = m_pGeomDB->GetFirstInGroup( nRawGrpId) ;
|
||||
while ( nCurrId != GDB_ID_NULL && nCurrId < nRawPartId)
|
||||
nCurrId = m_pGeomDB->GetNext( nCurrId) ;
|
||||
if ( nCurrId == GDB_ID_NULL) {
|
||||
if ( ! m_pGeomDB->RelocateGlob( nRawPartId, nRawGrpId, GDB_LAST_SON))
|
||||
return false ;
|
||||
}
|
||||
else {
|
||||
if ( ! m_pGeomDB->RelocateGlob( nRawPartId, nCurrId, GDB_BEFORE))
|
||||
return false ;
|
||||
}
|
||||
// tolgo il grezzo dall'elenco dei linkati
|
||||
m_vLinkedRawParts.erase( iIter) ;
|
||||
return true ;
|
||||
|
||||
+1
-1
@@ -479,7 +479,7 @@ SawingData::VerifyCurveUse( int nVal) const
|
||||
bool
|
||||
SawingData::VerifySideAngle( double dVal) const
|
||||
{
|
||||
const double MAX_SIDE_ANG = 67.5 + EPS_ANG_SMALL ;
|
||||
const double MAX_SIDE_ANG = 75.0 + EPS_ANG_SMALL ;
|
||||
const double AUTO_SIDE_ANG = 99 ;
|
||||
return ( ( dVal > - MAX_SIDE_ANG && dVal < MAX_SIDE_ANG) || fabs( dVal - AUTO_SIDE_ANG) < EPS_ANG_SMALL) ;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user