//---------------------------------------------------------------------------- // EgalTech 2014-2014 //---------------------------------------------------------------------------- // File : Export3MF.h Data : 01.09.21 Versione : 2.3i1 // Contenuto : Dichiarazione della classe Export3MF. // // // // Modifiche : 26.08.21 DS Creazione modulo. // // //---------------------------------------------------------------------------- #pragma once #define NOMINMAX #include "/EgtDev/Extern/Lib3MF/Include/lib3mf_implicit.hpp" #include "/EgtDev/Include/EExExport3MF.h" class IGdbIterator ; //---------------------------------------------------------------------------- class Export3MF : public IExport3MF { public : virtual bool SetOptions( int nFilter) ; virtual bool Export( IGeomDB* pGDB, int nId, const std::string& sFile) ; public : Export3MF( void) : m_nFilter( EEXFLT_DEFAULT) {} private : bool ExportObject( const IGdbIterator& iIter) ; bool ScanGroup( const IGdbIterator& iIter) ; bool TestFilter( int nLev, int nMode, int nStat) ; bool ExportSFR( const std::string& sName, const IGeoObj* pGeoObj, const Frame3d& frFrame, const Color* pCol, const STRVECTOR& vInfo) ; bool ExportSTM( const std::string& sName, const IGeoObj* pGeoObj, const Frame3d& frFrame, const Color* pCol, const STRVECTOR& vInfo) ; Lib3MF_uint32 ColorHandler3MF( const Color* pCol) ; bool GetColor( Color& pCol, const IGeomDB * pGBD, const int& nId) ; private : int m_nFilter ; // filtro su livello, modo e stato Lib3MF::PWrapper m_wrapper ; // lib3mf wrapper Lib3MF::PModel m_model ; // lib3mf model } ;