Skip to content
Snippets Groups Projects
Commit dc32c7ca authored by Robert K's avatar Robert K
Browse files

Copied from dune-grid.

parent 82b7d272
No related branches found
No related tags found
No related merge requests found
// -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
// vi: set et ts=4 sw=2 sts=2:
/** \file
* \author Matrin Nolte
* \brief a small program converting a gmsh file into a DGF file
*
* gmsh2dgf is a small example program for the DGFWriter. It reads a gmsh file
* into any grid (selected by gridtype.hh) and writes it back as a DGF file.
*
* The program's usage is as follows:
\code
./gmsh2dgf <gmshfile>
\endcode
*/
#include <config.h>
#include <iostream>
#include <dune/common/parallel/mpihelper.hh>
#include <dune/grid/io/file/gmshreader.hh>
#include <dune/grid/io/file/dgfparser/dgfwriter.hh>
using namespace Dune;
int main ( int argc, char *argv[] )
try
{
Dune::MPIHelper::instance( argc, argv );
typedef Dune::GridSelector::GridType Grid;
if( argc < 2 )
{
std::cerr << "Usage: " << argv[ 0 ] << " <gmshfile>" << std::endl;
return 1;
}
const std::string gmshFileName( argv[ 1 ] );
std::string dgfFileName( gmshFileName );
dgfFileName.resize( dgfFileName.find_last_of( "." ) );
dgfFileName += ".dgf";
Grid *grid = GmshReader< Grid >::read( gmshFileName );
typedef Grid::LeafGridView GridView;
GridView gridView = grid->leafGridView();
DGFWriter< GridView > dgfWriter( gridView );
dgfWriter.write( dgfFileName );
const GridView::IndexSet &indexSet = gridView.indexSet();
std::cerr << "Grid successfully written: "
<< indexSet.size( Grid::dimension ) << " vertices, "
<< indexSet.size( 0 ) << " elements."
<< std::endl;
return 0;
}
catch( const Exception &exception )
{
std::cerr << exception << std::endl;
return 1;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment