//---------------------------------------------------------------------------- // EgalTech 2014-2014 //---------------------------------------------------------------------------- // File : ImportStl.h Data : 16.05.14 Versione : 1.5e3 // Contenuto : Dichiarazione della classe ImportStl. // // // // Modifiche : 04.04.14 DS Creazione modulo. // // //---------------------------------------------------------------------------- #pragma once #include "/EgtDev/Include/EExImportStl.h" #include "/EgtDev/Include/EgkPoint3d.h" class Scanner ; class Triangle3d ; //---------------------------------------------------------------------------- //---------------------------------------------------------------------------- class ImportStl : public IImportStl { public : virtual bool Import( const std::string& sFile, IGeomDB* pGDB, int nIdGroup, double dScaleFactor = 1) ; private : int StlType( const std::string& sFile) ; bool ImportASCII( const std::string& sFile) ; bool LoadSolid( Scanner& TheScanner, bool& bEnd) ; bool LoadTriangle( Scanner& TheScanner, Triangle3d& Tria, bool& bEnd) ; bool ImportBinary( const std::string& sFile) ; private : enum { STL_ERROR = 0, STL_ASCII = 1, STL_BINARY = 2 } ; private : IGeomDB* m_pGDB ; int m_nIdGroup ; double m_dScaleFactor ; } ;