Mechanism for rendering a vtkWidget in the foreground of a RenderWindow. More...
#include <mitkVtkWidgetRendering.h>
Public Types | |
typedef VtkWidgetRendering | Self |
typedef BaseData | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer < const Self > | ConstPointer |
Public Member Functions | |
virtual const char * | GetClassName () const |
virtual void | SetRenderWindow (vtkRenderWindow *renderWindow) |
virtual void | Enable () |
virtual void | Disable () |
virtual bool | IsEnabled () |
virtual void | SetRequestedRegionToLargestPossibleRegion () |
virtual bool | RequestedRegionIsOutsideOfTheBufferedRegion () |
virtual bool | VerifyRequestedRegion () |
virtual void | SetRequestedRegion (itk::DataObject *) |
virtual vtkRenderWindow * | GetRenderWindow () |
virtual vtkRenderer * | GetVtkRenderer () |
void | SetVtkWidget (vtkInteractorObserver *widget) |
vtkInteractorObserver * | GetVtkWidget () const |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
VtkWidgetRendering () | |
~VtkWidgetRendering () | |
Protected Attributes | |
vtkRenderWindow * | m_RenderWindow |
vtkRenderer * | m_Renderer |
vtkInteractorObserver * | m_VtkWidget |
bool | m_IsEnabled |
Mechanism for rendering a vtkWidget in the foreground of a RenderWindow.
To use this class, specify the vtkRenderWindow of the window into which the vtkWidget shall be placed, and set the vtkWidget using SetVtkWidget(). After enabling the vtkWidget and calling Enable() of this class, the widget should be rendered.
Note: this class only provides a basic mechanism for adding widget; all widget configuration such as placement, size, and en-/disabling of interaction mechanisms need to be done in the vtkWidget object.
Definition at line 44 of file mitkVtkWidgetRendering.h.
typedef itk::SmartPointer<const Self> mitk::VtkWidgetRendering::ConstPointer |
Reimplemented from mitk::BaseData.
Definition at line 48 of file mitkVtkWidgetRendering.h.
typedef itk::SmartPointer<Self> mitk::VtkWidgetRendering::Pointer |
Reimplemented from mitk::BaseData.
Definition at line 48 of file mitkVtkWidgetRendering.h.
Reimplemented from mitk::BaseData.
Definition at line 48 of file mitkVtkWidgetRendering.h.
Reimplemented from mitk::BaseData.
Definition at line 48 of file mitkVtkWidgetRendering.h.
mitk::VtkWidgetRendering::VtkWidgetRendering | ( | ) | [protected] |
Constructor
Definition at line 37 of file mitkVtkWidgetRendering.cpp.
References m_Renderer, and New().
: m_RenderWindow( NULL ), m_VtkWidget( NULL ), m_IsEnabled( false ) { m_Renderer = vtkRenderer::New(); }
mitk::VtkWidgetRendering::~VtkWidgetRendering | ( | ) | [protected] |
Destructor
Definition at line 46 of file mitkVtkWidgetRendering.cpp.
{ if ( m_RenderWindow != NULL ) if ( this->IsEnabled() ) this->Disable(); if ( m_Renderer != NULL ) m_Renderer->Delete(); }
void mitk::VtkWidgetRendering::Disable | ( | ) | [virtual] |
Disables drawing of the widget. If you want to enable it, call the Enable() function.
Definition at line 120 of file mitkVtkWidgetRendering.cpp.
References mitk::VtkLayerController::GetInstance(), and mitk::VtkLayerController::RemoveRenderer().
{ if ( this->IsEnabled() ) { mitk::VtkLayerController *layerController = mitk::VtkLayerController::GetInstance(m_RenderWindow); if ( layerController ) { layerController->RemoveRenderer(m_Renderer); } m_IsEnabled = false; } }
void mitk::VtkWidgetRendering::Enable | ( | ) | [virtual] |
Enables drawing of the widget. If you want to disable it, call the Disable() function.
Definition at line 89 of file mitkVtkWidgetRendering.cpp.
References mitk::VtkLayerController::GetInstance(), and mitk::VtkLayerController::InsertForegroundRenderer().
{ if(m_IsEnabled) return; if(m_RenderWindow != NULL) { vtkRenderWindowInteractor *interactor = m_RenderWindow->GetInteractor(); if ( m_VtkWidget != NULL ) { m_VtkWidget->SetInteractor( interactor ); mitk::VtkLayerController *layerController = mitk::VtkLayerController::GetInstance(m_RenderWindow); if ( layerController ) { layerController->InsertForegroundRenderer(m_Renderer,false); } m_IsEnabled = true; } } }
virtual const char* mitk::VtkWidgetRendering::GetClassName | ( | ) | const [virtual] |
Reimplemented from mitk::BaseData.
vtkRenderWindow * mitk::VtkWidgetRendering::GetRenderWindow | ( | ) | [virtual] |
Returns the vtkRenderWindow, which is used for displaying the widget
Definition at line 70 of file mitkVtkWidgetRendering.cpp.
{ return m_RenderWindow; }
vtkRenderer * mitk::VtkWidgetRendering::GetVtkRenderer | ( | ) | [virtual] |
Returns the renderer responsible for rendering the widget into the vtkRenderWindow
Definition at line 80 of file mitkVtkWidgetRendering.cpp.
{ return m_Renderer; }
vtkInteractorObserver * mitk::VtkWidgetRendering::GetVtkWidget | ( | ) | const |
Get the vtkWidget to be rendered
Definition at line 171 of file mitkVtkWidgetRendering.cpp.
{ return m_VtkWidget; }
bool mitk::VtkWidgetRendering::IsEnabled | ( | ) | [virtual] |
Checks, if the widget is currently enabled (visible)
Definition at line 140 of file mitkVtkWidgetRendering.cpp.
{ return m_IsEnabled; }
static Pointer mitk::VtkWidgetRendering::New | ( | ) | [static] |
Referenced by mitkPropertySerializationTest(), mitkVtkWidgetRenderingTest(), and VtkWidgetRendering().
bool mitk::VtkWidgetRendering::RequestedRegionIsOutsideOfTheBufferedRegion | ( | ) | [virtual] |
Empty implementation, since the VtkWidgetRendering doesn't support the requested region concept
Implements mitk::BaseData.
Definition at line 151 of file mitkVtkWidgetRendering.cpp.
{ return false; }
void mitk::VtkWidgetRendering::SetRenderWindow | ( | vtkRenderWindow * | renderWindow ) | [virtual] |
Sets the renderwindow, in which the widget will be shown. Make sure, you have called this function before calling Enable()
Definition at line 61 of file mitkVtkWidgetRendering.cpp.
{ m_RenderWindow = renderWindow; }
void mitk::VtkWidgetRendering::SetRequestedRegion | ( | itk::DataObject * | ) | [virtual] |
Empty implementation, since the VtkWidgetRendering doesn't support the requested region concept
Implements mitk::BaseData.
Definition at line 161 of file mitkVtkWidgetRendering.cpp.
{
//nothing to do
}
void mitk::VtkWidgetRendering::SetRequestedRegionToLargestPossibleRegion | ( | ) | [virtual] |
Empty implementation, since the VtkWidgetRendering doesn't support the requested region concept
Implements mitk::BaseData.
Definition at line 146 of file mitkVtkWidgetRendering.cpp.
{
//nothing to do
}
void mitk::VtkWidgetRendering::SetVtkWidget | ( | vtkInteractorObserver * | widget ) |
Set the vtkWidget to be rendered
Definition at line 166 of file mitkVtkWidgetRendering.cpp.
{ m_VtkWidget = widget; }
bool mitk::VtkWidgetRendering::VerifyRequestedRegion | ( | ) | [virtual] |
Empty implementation, since the VtkWidgetRendering doesn't support the requested region concept
Implements mitk::BaseData.
Definition at line 156 of file mitkVtkWidgetRendering.cpp.
{ return true; }
bool mitk::VtkWidgetRendering::m_IsEnabled [protected] |
Definition at line 139 of file mitkVtkWidgetRendering.h.
vtkRenderer* mitk::VtkWidgetRendering::m_Renderer [protected] |
Definition at line 135 of file mitkVtkWidgetRendering.h.
Referenced by VtkWidgetRendering().
vtkRenderWindow* mitk::VtkWidgetRendering::m_RenderWindow [protected] |
Definition at line 134 of file mitkVtkWidgetRendering.h.
vtkInteractorObserver* mitk::VtkWidgetRendering::m_VtkWidget [protected] |
Definition at line 137 of file mitkVtkWidgetRendering.h.