#include <cpExtensions/QT/RendererWidget.h>
-#ifdef cpExtensions_QT4
-
+// -------------------------------------------------------------------------
class vtkDataSet;
+// -------------------------------------------------------------------------
namespace cpExtensions
{
namespace Visualization
{
- class ImageSliceActors;
- class ImageViewerActors;
+ class OutlineSource;
+ class LUTImageActor;
+ class WindowLevelImageActor;
+ class MeshActor;
}
namespace Interaction { class ImageSliceStyle; }
typedef ImageWidget Self;
typedef RendererWidget Superclass;
+ typedef cpExtensions::Visualization::OutlineSource TOutline;
+ typedef cpExtensions::Visualization::MeshActor TActor;
+ typedef cpExtensions::Visualization::LUTImageActor TLUTActor;
+ typedef cpExtensions::Visualization::WindowLevelImageActor TWLActor;
+ typedef cpExtensions::Interaction::ImageSliceStyle TStyle;
+
public:
explicit ImageWidget( QWidget* parent = NULL, Qt::WindowFlags f = 0 );
virtual ~ImageWidget( );
- vtkInteractorStyle* GetInteractorStyle( );
- const vtkInteractorStyle* GetInteractorStyle( ) const;
-
+ void Clear( );
void SetImage(
- vtkImageData* image, int orientation, const std::string& name
+ vtkImageData* image, const std::string& name, int orientation = 2
);
void Add( vtkDataSet* data, const std::string& name );
-
- // TODO: std::vector< vtkProp* > GetActors( const std::string& name ) const;
- int GetOrientation( ) const;
- void SetSliceNumber( int slice );
-
virtual void ResetCamera( ) cpExtensions_OVERRIDE;
- void GetScalarRange( double r[ 2 ] ) const;
- void GetWindowLevel( double wl[ 2 ] ) const;
- double GetImageOpacity( ) const;
- unsigned char GetImageInterpolation( ) const;
+ TWLActor* GetImageActor( );
+ const TWLActor* GetImageActor( ) const;
- void SetScalarRange( double r[ 2 ] );
- void SetWindowLevel( double wl[ 2 ] );
- void SetImageOpacity( double o );
- void SetImageInterpolation( unsigned char i );
+ void SetColor( const std::string& name, double r, double g, double b ) override;
+ void SetLineWidth( const std::string& name, double w ) override;
protected:
- vtkSmartPointer< cpExtensions::Visualization::ImageViewerActors >
- m_ImageViewerActors;
- vtkSmartPointer< cpExtensions::Interaction::ImageSliceStyle >
- m_ImageSliceStyle;
std::string m_ImageName;
+
+ vtkSmartPointer< TWLActor > m_WLActor;
+ vtkSmartPointer< TLUTActor > m_LUTActor;
+ vtkSmartPointer< TOutline > m_Outline;
+ TActor* m_OutlineActor;
+ std::vector< TActor* > m_Actors;
+
+ vtkSmartPointer< TStyle > m_Style;
};
} // ecapseman
} // ecapseman
-#endif // cpExtensions_QT4
-
#endif // __cpExtensions__QT__ImageWidget__h__
// eof - $RCSfile$