3076dccb4b
- introdotto uso ObjUser per gruppi di macchina - prima versione prototipo delle forature - migliorie al calolo angoli e posizioni macchina.
48 lines
1.7 KiB
C++
48 lines
1.7 KiB
C++
//----------------------------------------------------------------------------
|
|
// EgalTech 2015-2015
|
|
//----------------------------------------------------------------------------
|
|
// File : MachMgrFixtures.cpp Data : 13.05.15 Versione : 1.6e6
|
|
// Contenuto : Implementazione gestione ventose e morse della classe MachMgr.
|
|
//
|
|
//
|
|
//
|
|
// Modifiche : 13.05.15 DS Creazione modulo.
|
|
//
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
//--------------------------- Include ----------------------------------------
|
|
#include "stdafx.h"
|
|
#include "DllMain.h"
|
|
#include "MachMgr.h"
|
|
#include "MachConst.h"
|
|
#include "/EgtDev/Include/EGkGdbIterator.h"
|
|
#include "/EgtDev/Include/EGnFileUtils.h"
|
|
#include "/EgtDev/Include/EgtPointerOwner.h"
|
|
|
|
using namespace std ;
|
|
|
|
//----------------------------------------------------------------------------
|
|
int
|
|
MachMgr::AddSubPiece( const string& sName, const Point3d& ptPos)
|
|
{
|
|
// recupero il gruppo delle fixtures nella macchinata corrente
|
|
int nFixtGrpId = GetCurrFixtGroupId() ;
|
|
if ( nFixtGrpId == GDB_ID_NULL)
|
|
return GDB_ID_NULL ;
|
|
// verifico esistenza file sottopezzo
|
|
string sFixtFile = m_sMachinesDir + "\\" + GetCurrMGeoName() + "\\" + FIXTURES_DIR + "\\" + sName + ".Nge" ;
|
|
if ( ! ExistsFile( sFixtFile))
|
|
return GDB_ID_NULL ;
|
|
// inserisco il sottopezzo nel gruppo
|
|
if ( ! m_pGeomDB->Load( sFixtFile, nFixtGrpId))
|
|
return GDB_ID_NULL ;
|
|
int nFixtId = m_pGeomDB->GetLastGroupInGroup( nFixtGrpId) ;
|
|
if ( nFixtId == GDB_ID_NULL)
|
|
return GDB_ID_NULL ;
|
|
// la muovo nella posizione voluta
|
|
Vector3d vtMove = ptPos - ORIG ;
|
|
m_pGeomDB->TranslateGlob( nFixtId, vtMove) ;
|
|
return nFixtId ;
|
|
}
|