#include #include #include #include #include #include #include // ------------------------------------------------------------------------- const unsigned int Dimension = 3; const unsigned int Order = 2; typedef float TScalar; typedef cpm::DataStructures::SimplexMesh< TScalar, Order, Dimension > TSimplex; typedef TSimplex::Superclass TMesh; // ------------------------------------------------------------------------- int main( int argc, char* argv[] ) { if( argc < 2 ) { std::cerr << "Usage: " << argv[ 0 ] << " input_mesh" << std::endl; return( 1 ); } // fi typedef cpPlugins::Extensions::MeshReader< TMesh > TReader; TReader::Pointer reader = TReader::New( ); reader->SetFileName( argv[ 1 ] ); typedef cpm::Algorithms::QuadEdge::MeshToDualFilter< TMesh, TSimplex > TDualFilter; TDualFilter::Pointer dual_filter = TDualFilter::New( ); dual_filter->SetInput( reader->GetOutput( ) ); dual_filter->Update( ); std::cout << "Simplex mesh correctly constructred: "; if( dual_filter->GetOutput( )->VerifySimplexOrder( ) ) std::cout << "YES" << std::endl; else std::cout << "NO" << std::endl; return( 0 ); } // eof - $RCSfile$