6 #include <cpm/DataStructures/QuadEdgeMesh.h>
7 #include <cpm/DataStructures/SimplexMesh.h>
8 #include <cpm/Algorithms/QuadEdge/MeshToDualFilter.h>
9 #include <cpm/IO/MeshReader.h>
11 // -------------------------------------------------------------------------
12 const unsigned int Dimension = 3;
13 const unsigned int Order = 2;
15 typedef float TScalar;
16 typedef cpm::DataStructures::QuadEdgeMesh< TScalar, Dimension > TMesh;
17 typedef cpm::DataStructures::SimplexMesh< TScalar, Order, Dimension > TSimplex;
19 // -------------------------------------------------------------------------
20 int main( int argc, char* argv[] )
25 << "Usage: " << argv[ 0 ]
32 typedef cpm::IO::MeshReader< TMesh > TReader;
33 TReader::Pointer reader = TReader::New( );
34 reader->SetFileName( argv[ 1 ] );
37 cpm::Algorithms::QuadEdge::MeshToDualFilter< TMesh, TSimplex >
39 TDualFilter::Pointer dual_filter = TDualFilter::New( );
40 dual_filter->SetInput( reader->GetOutput( ) );
41 dual_filter->Update( );
43 std::cout << "Simplex mesh correctly constructred: ";
44 if( dual_filter->GetOutput( )->VerifySimplexOrder( ) )
45 std::cout << "YES" << std::endl;
47 std::cout << "NO" << std::endl;