EgtMachKernel 1.6v2 :

- gestiti attacchi con elevazione
- corretti calcoli con archi di elica (deltaN <> 0).
This commit is contained in:
Dario Sassi
2016-10-07 10:37:49 +00:00
parent 3b4f83be19
commit c11878617c
6 changed files with 127 additions and 70 deletions
+25 -1
View File
@@ -43,7 +43,9 @@ static std::string CAM_AXAC = "AxAC" ;
static int CAM_PARAM_V3 = 18 ;
static std::string CAM_NDIR = "NDir" ;
static std::string CAM_AXND = "AxND" ;
static int CAM_TOTPARAM =CAM_PARAM_V3 ;
static int CAM_PARAM_V4 = 19 ;
static std::string CAM_NDLT = "NDlt" ;
static int CAM_TOTPARAM =CAM_PARAM_V4 ;
//----------------------------------------------------------------------------
USEROBJ_REGISTER( "EMkCamData", CamData) ;
@@ -75,6 +77,7 @@ CamData::Clone( void) const
pCam->m_ptCen = m_ptCen ;
pCam->m_dAngCen = m_dAngCen ;
pCam->m_vtN = m_vtN ;
pCam->m_dDeltaN = m_dDeltaN ;
pCam->m_dFeed = m_dFeed ;
pCam->m_nFlag = m_nFlag ;
pCam->m_nAxesStatus = m_nAxesStatus ;
@@ -117,6 +120,7 @@ CamData::Dump( string& sOut, bool bMM, const char* szNewLine) const
sOut += CAM_AXMR + "=" + ToString( m_dMachRad) + szNewLine ;
sOut += CAM_AXAC + "=" + ToString( m_dMachAngCen) + szNewLine ;
sOut += CAM_AXND + "=" + ToString( m_vtMachN) + szNewLine ;
sOut += CAM_NDLT + "=" + ToString( m_dDeltaN) + szNewLine ;
return true ;
}
@@ -171,6 +175,8 @@ CamData::Save( STRVECTOR& vString) const
// parametri aggiunti V3
vString[++k] = CAM_NDIR + "=" + ToString( m_vtN) ;
vString[++k] = CAM_AXND + "=" + ToString( m_vtMachN) ;
// parametri aggiunti V4
vString[++k] = CAM_NDLT + "=" + ToString( m_dDeltaN) ;
}
catch( ...) {
return false ;
@@ -223,6 +229,14 @@ CamData::Load( const STRVECTOR& vString, int nBaseGdbId)
m_vtN = Z_AX ;
m_vtMachN = Z_AX ;
}
// parametri aggiunti V4
if ( int( vString.size()) >= CAM_PARAM_V4) {
if ( ! GetVal( vString[++k], CAM_NDLT, m_dDeltaN))
return false ;
}
else {
m_dDeltaN = 0 ;
}
return true ;
}
@@ -475,6 +489,7 @@ CamData::CamData( void)
m_nMove = 0 ;
m_nCorre = 0 ;
m_dAngCen = 0 ;
m_dDeltaN = 0 ;
m_dFeed = 0 ;
m_nFlag = 0 ;
m_nAxesStatus = AS_NONE ;
@@ -556,6 +571,15 @@ CamData::SetNormDir( const Vector3d& vtDir)
return true ;
}
//----------------------------------------------------------------------------
bool
CamData::SetDeltaN( double dDeltaN)
{
m_dDeltaN = dDeltaN ;
ResetObjGraphics() ;
return true ;
}
//----------------------------------------------------------------------------
bool
CamData::SetFeed( double dFeed)