X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcpPlugins%2FPlugins%2FBasicFilters%2FSphereMeshSource.cxx;h=c7c671b6e3e3a6871bc4ef1421ab12e3d330ab91;hb=d6f15d4cb764982e2b09060a9c0f38636891590c;hp=61a330e1c218598331578ed6c28d85fd7281b6ae;hpb=2da3b422ceb0b6abfd336200a4ede6efe982ebe2;p=cpPlugins.git diff --git a/lib/cpPlugins/Plugins/BasicFilters/SphereMeshSource.cxx b/lib/cpPlugins/Plugins/BasicFilters/SphereMeshSource.cxx index 61a330e..c7c671b 100644 --- a/lib/cpPlugins/Plugins/BasicFilters/SphereMeshSource.cxx +++ b/lib/cpPlugins/Plugins/BasicFilters/SphereMeshSource.cxx @@ -10,23 +10,13 @@ cpPlugins::BasicFilters::SphereMeshSource:: SphereMeshSource( ) : Superclass( ) { - this->m_ClassName = "cpPlugins::BasicFilters::SphereMeshSource"; - this->m_ClassCategory = "MeshSource"; - - this->SetNumberOfInputs( 0 ); - this->SetNumberOfOutputs( 1 ); - this->_MakeOutput< cpPlugins::Interface::Mesh >( 0 ); - - using namespace cpPlugins::Interface; - this->m_DefaultParameters.Configure( Parameters::Point, "Center" ); - this->m_DefaultParameters.Configure( Parameters::Real, "Radius" ); - this->m_DefaultParameters.Configure( Parameters::Uint, "PhiResolution" ); - this->m_DefaultParameters.Configure( Parameters::Uint, "ThetaResolution" ); - this->m_DefaultParameters.SetValueAsPoint( "Center", 3, 0, 0, 0 ); - this->m_DefaultParameters.SetValueAsReal( "Radius", 1 ); - this->m_DefaultParameters.SetValueAsUint( "PhiResolution", 10 ); - this->m_DefaultParameters.SetValueAsUint( "ThetaResolution", 10 ); - this->m_Parameters = this->m_DefaultParameters; + this->_MakeOutput< cpPlugins::Interface::Mesh >( "Output" ); + + double point[ 3 ] = { double( 0 ) }; + this->m_Parameters->ConfigureAsPoint( "Center", 3, point ); + this->m_Parameters->ConfigureAsReal( "Radius", 1 ); + this->m_Parameters->ConfigureAsUint( "PhiResolution", 8 ); + this->m_Parameters->ConfigureAsUint( "ThetaResolution", 8 ); } // ------------------------------------------------------------------------- @@ -40,11 +30,11 @@ std::string cpPlugins::BasicFilters::SphereMeshSource:: _GenerateData( ) { itk::Point< double, 3 > center = - this->m_Parameters.GetValueAsPoint< itk::Point< double, 3 > >( "Center" ); - center.Fill( double( 0 ) ); // TODO - double radius = this->m_Parameters.GetValueAsReal( "Radius" ); - unsigned int phi = this->m_Parameters.GetValueAsUint( "PhiResolution" ); - unsigned int theta = this->m_Parameters.GetValueAsUint( "ThetaResolution" ); + this->m_Parameters->GetPoint< itk::Point< double, 3 > >( "Center", 3 ); + // TODO: center.Fill( double( 0 ) ); // TODO + double radius = this->m_Parameters->GetReal( "Radius" ); + unsigned int phi = this->m_Parameters->GetUint( "PhiResolution" ); + unsigned int theta = this->m_Parameters->GetUint( "ThetaResolution" ); vtkSphereSource* src = this->_CreateVTK< vtkSphereSource >( ); src->SetCenter( center[ 0 ], center[ 1 ], center[ 2 ] ); @@ -55,7 +45,7 @@ _GenerateData( ) // Execute filter cpPlugins::Interface::Mesh* out = - this->GetOutput< cpPlugins::Interface::Mesh >( 0 ); + this->GetOutput< cpPlugins::Interface::Mesh >( "Output" ); out->SetVTK( src->GetOutput( ) ); return( "" ); }