#include #include #include #include #include // ------------------------------------------------------------------------- cpPlugins::Plugins::MeshWriter:: MeshWriter( ) : Superclass( ), m_Writer( NULL ) { this->m_ClassName = "cpPlugins::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; } // ------------------------------------------------------------------------- cpPlugins::Plugins::MeshWriter:: ~MeshWriter( ) { if( this->m_Writer != NULL ) this->m_Writer->Delete( ); } // ------------------------------------------------------------------------- std::string cpPlugins::Plugins::MeshWriter:: _GenerateData( ) { cpPlugins::Interface::Mesh* mesh = this->GetInput< cpPlugins::Interface::Mesh >( 0 ); if( mesh == NULL ) return( "MeshWriter: No input mesh." ); vtkPolyData* i = mesh->GetVTKMesh( ); if( i == NULL ) return( "MeshWriter: No suitable input." ); std::string fname = this->m_Parameters.GetValueAsString( "FileName" ); if( this->m_Writer != NULL ) this->m_Writer->Delete( ); vtkPolyDataWriter* pdw = vtkPolyDataWriter::New( ); this->m_Writer = pdw; pdw->SetInputData( i ); pdw->SetFileName( fname.c_str( ) ); pdw->Update( ); if( pdw->GetErrorCode( ) != 0 ) return( "MeshWriter: someting wrong happened." ); return( "" ); } // eof - $RCSfile$