3076dccb4b
- introdotto uso ObjUser per gruppi di macchina - prima versione prototipo delle forature - migliorie al calolo angoli e posizioni macchina.
146 lines
4.7 KiB
C++
146 lines
4.7 KiB
C++
//----------------------------------------------------------------------------
|
|
// EgalTech 2015-2015
|
|
//----------------------------------------------------------------------------
|
|
// File : Drilling.cpp Data : 21.05.15 Versione : 1.6e7
|
|
// Contenuto : Implementazione gestione forature.
|
|
//
|
|
//
|
|
//
|
|
// Modifiche : 21.05.15 DS Creazione modulo.
|
|
//
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
//--------------------------- Include ----------------------------------------
|
|
#include "stdafx.h"
|
|
#include "MachMgr.h"
|
|
#include "DllMain.h"
|
|
#include "Drilling.h"
|
|
#include "/EgtDev/Include/EGkObjUserFactory.h"
|
|
#include "/EgtDev/Include/EGnStringKeyVal.h"
|
|
|
|
using namespace std ;
|
|
|
|
//----------------------------------------------------------------------------
|
|
OBJUSER_REGISTER( "EMkDrilling", Drilling) ;
|
|
|
|
//----------------------------------------------------------------------------
|
|
const string&
|
|
Drilling::GetClassName( void) const
|
|
{
|
|
return OBJUSER_GETNAME( Drilling) ;
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
Drilling*
|
|
Drilling::Clone( void) const
|
|
{
|
|
// alloco oggetto
|
|
Drilling* pDri = new(nothrow) Drilling ;
|
|
// eseguo copia dei dati
|
|
if ( pDri != nullptr) {
|
|
try { pDri->m_nOwnerId = GDB_ID_NULL ;
|
|
pDri->m_Params = m_Params ;
|
|
pDri->m_TParams = m_TParams ;
|
|
}
|
|
catch( ...) {
|
|
delete pDri ;
|
|
return nullptr ;
|
|
}
|
|
}
|
|
// ritorno l'oggetto
|
|
return pDri ;
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
bool
|
|
Drilling::Dump( string& sOut, const char* szNewLine) const
|
|
{
|
|
sOut += GetClassName() + szNewLine ;
|
|
sOut += DRI_IDS + EQUAL + ToString( m_Params.m_vId) + szNewLine ;
|
|
sOut += DRI_INV + EQUAL + ToString( m_Params.m_bInvert) + szNewLine ;
|
|
sOut += DRI_SPS + EQUAL + ToString( m_Params.m_dStartPos) + szNewLine ;
|
|
sOut += DRI_SSL + EQUAL + ToString( m_Params.m_dStartSlowLen) + szNewLine ;
|
|
sOut += DRI_ESL + EQUAL + ToString( m_Params.m_dEndSlowLen) + szNewLine ;
|
|
sOut += DRI_TAL + EQUAL + ToString( m_Params.m_dThroughAddLen) + szNewLine ;
|
|
sOut += DRI_STP + EQUAL + ToString( m_Params.m_dStep) + szNewLine ;
|
|
sOut += DRI_RPS + EQUAL + ToString( m_Params.m_dReturnPos) + szNewLine ;
|
|
|
|
return true ;
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
bool
|
|
Drilling::Save( STRVECTOR& vString) const
|
|
{
|
|
try {
|
|
vString.insert( vString.begin(), 8, "") ;
|
|
if ( ! SetVal( DRI_IDS, m_Params.m_vId, vString[0]) ||
|
|
! SetVal( DRI_INV, m_Params.m_bInvert, vString[1]) ||
|
|
! SetVal( DRI_SPS, m_Params.m_dStartPos, vString[2]) ||
|
|
! SetVal( DRI_SSL, m_Params.m_dStartSlowLen, vString[3]) ||
|
|
! SetVal( DRI_ESL, m_Params.m_dEndSlowLen, vString[4]) ||
|
|
! SetVal( DRI_TAL, m_Params.m_dThroughAddLen, vString[5]) ||
|
|
! SetVal( DRI_STP, m_Params.m_dStep, vString[6]) ||
|
|
! SetVal( DRI_RPS, m_Params.m_dReturnPos, vString[7]))
|
|
return false ;
|
|
}
|
|
catch( ...) { return false ;}
|
|
return true ;
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
bool
|
|
Drilling::Load( const STRVECTOR& vString)
|
|
{
|
|
if ( vString.size() < 8)
|
|
return false ;
|
|
if ( ! GetVal( vString[0], DRI_IDS, m_Params.m_vId) ||
|
|
! GetVal( vString[1], DRI_INV, m_Params.m_bInvert) ||
|
|
! GetVal( vString[2], DRI_SPS, m_Params.m_dStartPos) ||
|
|
! GetVal( vString[3], DRI_SSL, m_Params.m_dStartSlowLen) ||
|
|
! GetVal( vString[4], DRI_ESL, m_Params.m_dEndSlowLen) ||
|
|
! GetVal( vString[5], DRI_TAL, m_Params.m_dThroughAddLen) ||
|
|
! GetVal( vString[6], DRI_STP, m_Params.m_dStep) ||
|
|
! GetVal( vString[7], DRI_RPS, m_Params.m_dReturnPos))
|
|
return false ;
|
|
return true ;
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
bool
|
|
Drilling::SetOwner( int nId)
|
|
{
|
|
m_nOwnerId = nId ;
|
|
return true ;
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
int
|
|
Drilling::GetOwner( void) const
|
|
{
|
|
return m_nOwnerId ;
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
//----------------------------------------------------------------------------
|
|
Drilling::Drilling( void)
|
|
{
|
|
m_nOwnerId = GDB_ID_NULL ;
|
|
m_Params.m_bInvert = false ;
|
|
m_Params.m_dStartPos = 5 ;
|
|
m_Params.m_dStartSlowLen = 0 ;
|
|
m_Params.m_dEndSlowLen = 0 ;
|
|
m_Params.m_dThroughAddLen = 2 ;
|
|
m_Params.m_dStep = 0 ;
|
|
m_Params.m_dReturnPos= 0 ;
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
bool
|
|
Drilling::Add( const string& sName)
|
|
{
|
|
|
|
return true ;
|
|
}
|