#include <cpExtensions/Interaction/SeedWidget.h>
// Forward definitions
+class vtkCommand;
class vtkImageActor;
namespace cpExtensions
// Widgets
struct TSeedWidget
{
- vtkSmartPointer< vtkImageActorPointPlacer > Placer;
- vtkSmartPointer< vtkPointHandleRepresentation3D > Handle;
- vtkSmartPointer< vtkSeedRepresentation > Representation;
- vtkSmartPointer< TSeedWidget > Widget;
-
- TSeedWidget( vtkRenderWindowInteractor* interactor, vtkImageActor* actor )
- {
- this->Placer = vtkSmartPointer< vtkImageActorPointPlacer >::New( );
- this->Handle = vtkSmartPointer< vtkPointHandleRepresentation3D >::New( );
- this->Representation = vtkSmartPointer< vtkSeedRepresentation >::New( );
- this->Widget = vtkSmartPointer< TSeedWidget >::New( );
-
- this->Placer->SetImageActor( actor );
- this->Handle->GetProperty( )->SetColor( 1, 0, 0 );
- this->Handle->SetPointPlacer( this->Placer );
- this->Representation->SetHandleRepresentation( this->Handle );
- this->Widget->SetRepresentation( this->Representation );
- this->Widget->SetInteractor( interactor );
- }
-
- void On( )
- {
- this->Widget->On( );
- }
-
- void Off( )
- {
- this->Widget->Off( );
- }
-#error ACA VOY
+ vtkSmartPointer< vtkImageActorPointPlacer > Placer;
+ vtkSmartPointer< vtkPointHandleRepresentation3D > Handle;
+ vtkSmartPointer< vtkSeedRepresentation > Representation;
+ vtkSmartPointer< SeedWidget > Widget;
+
+ TSeedWidget(
+ vtkRenderWindowInteractor* interactor, vtkImageActor* actor
+ );
+ void On( );
+ void Off( );
};
public:
// Data for local picker
virtual void AssociateImageActor( vtkImageActor* actor );
+ // Widgets
+ void SeedWidgetOn( );
+ void SeedWidgetOff( );
+ void SetSeedWidgetCommand( vtkCommand* cmd );
+
protected:
ImageInteractorStyle( );
virtual ~ImageInteractorStyle( );
protected:
vtkSmartPointer< vtkPropPicker > m_PropPicker;
+
+ TSeedWidget* m_SeedWidget;
};
} // ecapseman