X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=appli%2Fexamples%2Fexample_QuadEdgeDecimation.cxx;fp=appli%2Fexamples%2Fexample_QuadEdgeDecimation.cxx;h=0000000000000000000000000000000000000000;hb=6d6bf5d5e3b9318a507216f2f231c32299d1a941;hp=d04e240209a2f17ea41777e25e5a8f99af104b05;hpb=de28025e5f1835fba69cb0a6666d02f0b7daec0d;p=cpMesh.git diff --git a/appli/examples/example_QuadEdgeDecimation.cxx b/appli/examples/example_QuadEdgeDecimation.cxx deleted file mode 100644 index d04e240..0000000 --- a/appli/examples/example_QuadEdgeDecimation.cxx +++ /dev/null @@ -1,104 +0,0 @@ -#include -#include -#include -#include - -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - - -// ------------------------------------------------------------------------- -const unsigned int Dimension = 3; -typedef float TScalar; -typedef cpm::DataStructures::QuadEdgeMesh< TScalar, Dimension > TMesh; -typedef cpm::VTK::MeshMapper< TMesh > TMeshMapper; - -typedef cpm::Algorithms::QuadEdge::NumberOfPointsCriterion< TMesh > TCriterion; -/* - typedef cpm::Algorithms::QuadEdge::NumberOfFacesCriterion< TMesh > TCriterion; - typedef cpm::Algorithms::QuadEdge::MaxMeasureBoundCriterion< TMesh > TCriterion; - typedef cpm::Algorithms::QuadEdge::MinMeasureBoundCriterion< TMesh > TCriterion; -*/ -typedef cpm::Algorithms::QuadEdge::SquaredEdgeLengthDecimationFilter< TMesh, TMesh, TCriterion > TDecimator; - -// ------------------------------------------------------------------------- -int main( int argc, char* argv[] ) -{ - if( argc < 2 ) - { - std::cerr - << "Usage: " << argv[ 0 ] - << " input_mesh" - << std::endl; - return( 1 ); - - } // fi - - typedef cpm::IO::MeshReader< TMesh > TReader; - TReader::Pointer reader = TReader::New( ); - reader->SetFileName( argv[ 1 ] ); - reader->Update( ); - TMesh::Pointer mesh = reader->GetOutput( ); - - TCriterion::Pointer criterion = TCriterion::New( ); - criterion->TopologicalChangeOn( ); - criterion->SetNumberOfElements( mesh->GetNumberOfPoints( ) / 10 ); - criterion->SetMeasureBound( 1 ); - - TDecimator::Pointer decimator = TDecimator::New( ); - decimator->SetInput( mesh ); - decimator->SetCriterion( criterion ); - decimator->Update( ); - - // Map mesh - vtkSmartPointer< TMeshMapper > mapper = - vtkSmartPointer< TMeshMapper >::New( ); - mapper->SetInputData( decimator->GetOutput( ) ); - - // Create actor - vtkSmartPointer< vtkActor > actor = - vtkSmartPointer< vtkActor >::New( ); - actor->SetMapper( mapper ); - actor->GetProperty( )->SetColor( 1, 1, 0 ); - actor->GetProperty( )->SetOpacity( 1 ); - - // Configure visualization objects - vtkSmartPointer< vtkRenderer > renderer = - vtkSmartPointer< vtkRenderer >::New( ); - renderer->SetBackground( 0.1, 0.3, 0.5 ); - - vtkSmartPointer< vtkRenderWindow > window = - vtkSmartPointer< vtkRenderWindow >::New( ); - window->AddRenderer( renderer ); - window->SetSize( 800, 800 ); - - // Set up the interaction - vtkSmartPointer< vtkRenderWindowInteractor > interactor = - vtkSmartPointer< vtkRenderWindowInteractor >::New( ); - window->SetInteractor( interactor ); - - // Associate actors - renderer->AddActor( actor ); - - // Begin interaction - window->Render( ); - interactor->Start( ); - - return( 0 ); -} - -// eof - $RCSfile$