X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=appli%2FImageMPR%2FImageMPR.h;h=82e2e197f313d5a2509e27668121706c89ff511d;hb=a4bc3b8e36e91e45f37a3b7eecb5789c635aa5c0;hp=b0ba3c4268480963dfd1de33c239fbd4e711ab4c;hpb=2361f4f97631e09d88d8a5510a369817dcaa19db;p=cpPlugins.git diff --git a/appli/ImageMPR/ImageMPR.h b/appli/ImageMPR/ImageMPR.h index b0ba3c4..82e2e19 100644 --- a/appli/ImageMPR/ImageMPR.h +++ b/appli/ImageMPR/ImageMPR.h @@ -1,23 +1,21 @@ #ifndef __IMAGEMPR__H__ #define __IMAGEMPR__H__ -// Standard stuff -#include -#include +#include // Qt stuff -#include #include // vtk stuff #include +#include // Plugins interface #include #include #include +#include #include -#include // ------------------------------------------------------------------------- namespace Ui @@ -35,16 +33,16 @@ class ImageMPR public: // Plugins types - typedef cpPlugins::Interface::Interface TPluginsInterface; - typedef cpPlugins::Interface::Object TPluginObject; - typedef cpPlugins::Interface::DataObject TPluginData; - typedef cpPlugins::Interface::Image TPluginImage; - typedef cpPlugins::Interface::Mesh TPluginMesh; - typedef cpPlugins::Interface::ProcessObject TPluginFilter; - typedef cpPlugins::Interface::Parameters TParameters; + typedef cpPlugins::Interface::Interface TPluginsInterface; + typedef cpPlugins::Interface::Object TPluginObject; + typedef cpPlugins::Interface::DataObject TPluginData; + typedef cpPlugins::Interface::Image TPluginImage; + typedef cpPlugins::Interface::ImplicitFunction TPluginImplicitFunction; + typedef cpPlugins::Interface::Mesh TPluginMesh; + typedef cpPlugins::Interface::ProcessObject TPluginFilter; + typedef cpPlugins::Interface::Parameters TParameters; - typedef std::set< std::string > TStringContainer; - typedef cpExtensions::Visualization::MPRWithDifferentWindows TMPR; + typedef cpExtensions::Visualization::MPRObjects TMPRObjects; public: explicit ImageMPR( QWidget* parent = 0 ); @@ -52,11 +50,13 @@ public: protected: bool _LoadPlugins( const std::string& filename ); - bool _ParametersDialog( TPluginFilter* filter ); + std::string _LoadImage( TPluginImage::Pointer& image ); + std::string _ConfigureMeshActors( ); private slots: void _triggered_actionOpenPlugins( ); void _triggered_actionOpenInputImage( ); + void _triggered_actionOpenSegmentation( ); void _triggered_actionOpenInputPolyData( ); void _triggered_actionImageToImage( ); void _triggered_actionImageToMesh( ); @@ -72,19 +72,19 @@ private: std::string m_ImageWriterClass; std::string m_MeshReaderClass; std::string m_MeshWriterClass; - TStringContainer m_ImageToImageFilters; - TStringContainer m_ImageToMeshFilters; + std::string m_MeshCutterClass; // Real data - TPluginImage::Pointer m_InputImage; - TPluginMesh::Pointer m_InputMesh; + TPluginImage::Pointer m_Image; + TPluginImage::Pointer m_Segmentation; + TPluginMesh::Pointer m_Mesh; - // Visualization stuff - TMPR* m_MPR; - vtkSmartPointer< vtkPolyDataMapper > m_InputMeshMapper; - vtkSmartPointer< vtkActor > m_InputMeshActor; + // Cutters + TPluginFilter::Pointer m_Cutters[ 3 ]; + TPluginImplicitFunction::Pointer m_Planes[ 3 ]; - QDialog* m_ParametersDlg; + // Visualization stuff + vtkSmartPointer< TMPRObjects > m_MPRObjects; /* TODO vtkSmartPointer< vtkOrientationMarkerWidget > m_3DOrientationWidget;