Ejemplo n.º 1
0
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;
}
Ejemplo n.º 2
0
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;
}