bool CmdWriteIfcFile::doCmd() { if( m_file_path.length() == 0 ) { return false; } shared_ptr<GeometryConverter> geom_converter = m_system->getGeometryConverter(); shared_ptr<IfcPPModel>& model = geom_converter->getIfcPPModel(); model->initFileHeader( m_file_path ); std::stringstream stream; m_system->getIfcPPWriter()->writeModelToStream( stream, model ); QFile file_out( m_file_path.c_str() ); if( !file_out.open(QIODevice::WriteOnly | QIODevice::Text) ) { return false; } QTextStream file_out_stream( &file_out ); file_out_stream << stream.str().c_str(); file_out.close(); return true; }
bool CmdWriteIfcFile::doCmd() { if( m_file_path.length() == 0 ) { return false; } m_system->getIfcModel()->initFileHeader( m_file_path ); std::stringstream stream; m_reader_writer->getIfcPPWriter()->writeStream( stream, m_system->getIfcModel() ); QFile file_out( m_file_path.c_str() ); if( !file_out.open(QIODevice::WriteOnly | QIODevice::Text) ) { return false; } QTextStream file_out_stream( &file_out ); file_out_stream << stream.str().c_str(); file_out.close(); return true; }