MeshWriter( )
: Superclass( )
{
- this->m_ClassName = "cpPlugins::IO::MeshWriter";
- this->m_ClassCategory = "MeshWriter";
- this->SetNumberOfInputs( 1 );
-
- using namespace cpPlugins::Interface;
- this->m_DefaultParameters.Configure( Parameters::String, "FileName" );
- this->m_Parameters = this->m_DefaultParameters;
+ this->_AddInput( "Input", true );
+ this->m_Parameters->ConfigureAsSaveFileName( "FileName" );
+ this->m_Parameters->SetAcceptedFileExtensions(
+ "FileName",
+ "Mesh files (*.vtk *.stl *.obj)"
+ );
}
// -------------------------------------------------------------------------
std::string cpPlugins::IO::MeshWriter::
_GenerateData( )
{
- cpPlugins::Interface::Mesh* mesh =
- this->GetInput< cpPlugins::Interface::Mesh >( 0 );
+ auto mesh = this->GetInputData< cpPlugins::Interface::Mesh >( "Input" );
if( mesh == NULL )
return( "MeshWriter: No input mesh." );
vtkPolyData* i = mesh->GetVTK< vtkPolyData >( );
if( i == NULL )
return( "MeshWriter: No suitable input." );
- std::string fname = this->m_Parameters.GetValueAsString( "FileName" );
+ std::string fname = this->m_Parameters->GetSaveFileName( "FileName" );
vtkPolyDataWriter* pdw = this->_CreateVTK< vtkPolyDataWriter >( );
pdw->SetInputData( i );
pdw->SetFileName( fname.c_str( ) );
+ pdw->SetFileTypeToBinary( );
pdw->Update( );
if( pdw->GetErrorCode( ) != 0 )
return( "MeshWriter: someting wrong happened." );