]> Creatis software - cpPlugins.git/blobdiff - lib/cpPlugins/Plugins/IO/MeshWriter.cxx
...
[cpPlugins.git] / lib / cpPlugins / Plugins / IO / MeshWriter.cxx
index feb05ad5e40f5064ef09224f59fcc612be05efa3..ac20473985e79ed484a45924ef30c9d515bffc86 100644 (file)
@@ -5,46 +5,6 @@
 #include <vtkPolyData.h>
 #include <vtkPolyDataWriter.h>
 
-/* TODO
-   #ifdef cpPlugins_Interface_QT4
-   #include <QFileDialog>
-   #endif // cpPlugins_Interface_QT4
-
-   // -------------------------------------------------------------------------
-   cpPlugins::IO::MeshWriter::
-   DialogResult cpPlugins::IO::MeshWriter::
-   ExecConfigurationDialog( QWidget* parent )
-   {
-   DialogResult r = Self::DialogResult_Cancel;
-
-   #ifdef cpPlugins_Interface_QT4
-
-   std::string name = this->m_Parameters->GetString( "FileName" );
-   if( name == "" )
-   name = "save.vtk";
-   
-   // Show dialog and check if it was accepted
-   QString qname =
-   QFileDialog::getSaveFileName(
-   parent,
-   QFileDialog::tr( "Save File" ),
-   QFileDialog::tr( name.c_str( ) ),
-   QFileDialog::tr( "Mesh files (*.vtk *.stl *.obj);;Any file (*)")
-   );
-   name = qname.toStdString( );
-   if( name != "" )
-   {
-   this->m_Parameters->SetString( "FileName", name );
-   r = Self::DialogResult_NoModal;
-   
-   } // fi
-   
-   #endif // cpPlugins_Interface_QT4
-   
-   return( r );
-   }
-*/
-
 // -------------------------------------------------------------------------
 cpPlugins::IO::MeshWriter::
 MeshWriter( )
@@ -52,6 +12,10 @@ MeshWriter( )
 {
   this->_AddInput( "Input" );
   this->m_Parameters->ConfigureAsSaveFileName( "FileName" );
+  this->m_Parameters->SetAcceptedFileExtensions(
+    "FileName",
+    "Mesh files (*.vtk *.stl *.obj)"
+    );
 }
 
 // -------------------------------------------------------------------------
@@ -64,10 +28,7 @@ cpPlugins::IO::MeshWriter::
 std::string cpPlugins::IO::MeshWriter::
 _GenerateData( )
 {
-  cpPlugins::Interface::Mesh* mesh =
-    this->GetInput< cpPlugins::Interface::Mesh >( "Input" );
-  if( mesh == NULL )
-    return( "MeshWriter: No input mesh." );
+  auto mesh = this->GetInputData< cpPlugins::Interface::Mesh >( "Input" );
   vtkPolyData* i = mesh->GetVTK< vtkPolyData >( );
   if( i == NULL )
     return( "MeshWriter: No suitable input." );
@@ -76,6 +37,7 @@ _GenerateData( )
   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." );