EgtMachKernel 1.6k9 :

- aggiunti campi Rot2Stroke e SolCh a teste per limitare corse secondo asse rotante e dare criterio scelta soluzione
- utilizzo di questi dati nel calcolo assi macchina
- aggiunta GetCurrMachineName.
This commit is contained in:
Dario Sassi
2015-11-24 22:13:21 +00:00
parent 2f016585bb
commit ebccd64daa
11 changed files with 143 additions and 26 deletions
+12 -6
View File
@@ -34,6 +34,12 @@ Machine::Machine( void)
m_pGeomDB = nullptr ;
m_nGroupId = GDB_ID_NULL ;
m_nTempGroupId = GDB_ID_NULL ;
m_nCalcTabId = GDB_ID_NULL ;
m_nCalcHeadId = GDB_ID_NULL ;
m_nCalcExitId = GDB_ID_NULL ;
m_nCalcToolId = GDB_ID_NULL ;
m_dCalcRot1W = 1 ;
m_nCalcSolCh = MCH_SCC_NONE ;
}
//----------------------------------------------------------------------------
@@ -339,8 +345,8 @@ Machine::AdjustAxisVector( int nLay, const string& sPart, const string& sName,
//----------------------------------------------------------------------------
bool
Machine::LoadMachineStdHead( const string& sName, const string& sParent, const std::string& sHSet,
const Point3d& ptPos, const Vector3d& vtTDir,
const Vector3d& vtADir, double dRot1W, const string& sGeo)
const Point3d& ptPos, const Vector3d& vtTDir, const Vector3d& vtADir,
double dRot1W, const STROKE& Rot2Stroke, int nSolCh, const string& sGeo)
{
// recupero pezzo e layer della geometria originale dell'asse
string sPart, sLay ;
@@ -364,7 +370,7 @@ Machine::LoadMachineStdHead( const string& sName, const string& sParent, const s
Head* pHead = new(nothrow) Head ;
if ( pHead == nullptr)
return false ;
pHead->Set( sName, MCH_HT_STD, sHSet, vtADir, dRot1W) ;
pHead->Set( sName, MCH_HT_STD, sHSet, vtADir, dRot1W, Rot2Stroke, nSolCh) ;
m_pGeomDB->SetUserObj( nLay, pHead) ;
// aggiorno la testa capostipite
if ( ! AddHeadToSet( sHSet, sName))
@@ -381,8 +387,8 @@ Machine::LoadMachineStdHead( const string& sName, const string& sParent, const s
//----------------------------------------------------------------------------
bool
Machine::LoadMachineMultiHead( const string& sName, const string& sParent, const std::string& sHSet,
const MUEXITVECTOR& vMuExit,
const Vector3d& vtADir, double dRot1W, const string& sGeo)
const MUEXITVECTOR& vMuExit, const Vector3d& vtADir,
double dRot1W, const STROKE& Rot2Stroke, int nSolCh, const string& sGeo)
{
// recupero pezzo e layer della geometria originale dell'asse
string sPart, sLay ;
@@ -406,7 +412,7 @@ Machine::LoadMachineMultiHead( const string& sName, const string& sParent, const
Head* pHead = new(nothrow) Head ;
if ( pHead == nullptr)
return false ;
pHead->Set( sName, MCH_HT_MULTI, sHSet, vtADir, dRot1W) ;
pHead->Set( sName, MCH_HT_MULTI, sHSet, vtADir, dRot1W, Rot2Stroke, nSolCh) ;
m_pGeomDB->SetUserObj( nLay, pHead) ;
// aggiorno la testa capostipite
if ( ! AddHeadToSet( sHSet, sName))