vtk2DQuantSliceWidget Class Reference

Class that brigde to VTK, override double click... More...

#include <vtk2DQuantSliceWidget.h>

Inheritance diagram for vtk2DQuantSliceWidget:
Inheritance graph
[legend]
Collaboration diagram for vtk2DQuantSliceWidget:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 vtk2DQuantSliceWidget (wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxSUNKEN_BORDER, const wxString &name=wxPanelNameStr)
 ~vtk2DQuantSliceWidget ()
void SetContour (vtkPolyData *cnt)
void SetDiameterMin (vtkPoints *diameterMin, bool showActor)
void SetDiameterMax (vtkPoints *diameterMax, bool showActor)
void Show2DContourDiameters ()
void Hide2DContourDiameters ()
virtual void ConstructVTK (vtkImageData *imageData)
virtual void ExecuteEvent (vtkObject *wdg, unsigned long event, void *calldata)
void ExecuteEvent1 (vtkObject *wdg, unsigned long event, void *calldata)
void ExecuteEvent2 (vtkObject *wdg, unsigned long event, void *calldata)
void SetImage (vtkImageData *imagedata)
void SetInterfaceVtkPanelWidgets (InterfaceVtkPanelWidgets *intVtkPanWid)
void SetState (int state)
void SetStateManualContour (int state)
void CreateNewManualContour ()
int GetNumberOfPointsSplineManualContour ()
double * GetVectorPointsXManualContour ()
double * GetVectorPointsYManualContour ()
void EraseManualContour ()
void SetZSlice (int z)
int GetZSlice ()
void Render ()
void AddObserver_1 ()
void AddObserver_2 ()

Protected Attributes

int _state
marZoomROIObserver_Observer
vtkInteractorStyle2DMaracas_interactorStyle2DMaracas
vtkImageViewer2 * _imageViewer
InterfaceVtkPanelWidgets_intVtkPanWid
wxVTKRenderWindowInteractorEditContour_wxVTKiren

Private Attributes

vtkPolyData * _cnt
vtkPolyDataMapper * _cntMapper
vtkActor * _cntActor
vtkActor * _diameterMinvtkActor
vtkPolyLine * _diameterMinvtkPolyLine
vtkDataSetMapper * _diameterMinvtkDataSetMapper
vtkUnstructuredGrid * _diameterMinvtkUnstructuredGrid
vtkActor * _diameterMaxvtkActor
vtkPolyLine * _diameterMaxvtkPolyLine
vtkDataSetMapper * _diameterMaxvtkDataSetMapper
vtkUnstructuredGrid * _diameterMaxvtkUnstructuredGrid

Detailed Description

Class that brigde to VTK, override double click...

Definition at line 32 of file vtk2DQuantSliceWidget.h.


Constructor & Destructor Documentation

vtk2DQuantSliceWidget::vtk2DQuantSliceWidget ( wxWindow *  parent,
wxWindowID  id,
const wxPoint &  pos = wxDefaultPosition,
const wxSize &  size = wxDefaultSize,
long  style = wxSUNKEN_BORDER,
const wxString &  name = wxPanelNameStr 
)

Again wxVTK is an hybrid class, double click was done using wxWindows, simply because VTK doesn't provide such facility (as opposed to wheel support that is supposed to be merged in VTK trunk sooner or later:

http://public.kitware.com/pipermail/vtkusers/2003-August/019548.html http://www.creatis.insa-lyon.fr/~malaterre/vtk/wheel.patch

Definition at line 30 of file vtk2DQuantSliceWidget.cxx.

References _cntActor, _cntMapper, _diameterMaxvtkActor, _diameterMaxvtkDataSetMapper, _diameterMaxvtkPolyLine, _diameterMaxvtkUnstructuredGrid, _diameterMinvtkActor, _diameterMinvtkDataSetMapper, _diameterMinvtkPolyLine, and _diameterMinvtkUnstructuredGrid.

00033                                              : wxImageViewerWidget( parent, id, pos, size, style, name)
00034 {
00035         // Contour
00036         _cntActor                                               = NULL;
00037         _cntMapper                                              = NULL;
00038 
00039         // Diameter Min
00040         _diameterMinvtkActor                    = NULL;
00041         _diameterMinvtkPolyLine                 = NULL;
00042         _diameterMinvtkDataSetMapper    = NULL;
00043         _diameterMinvtkUnstructuredGrid = NULL;
00044 
00045         // Diameter Max
00046         _diameterMaxvtkActor                    = NULL;
00047         _diameterMaxvtkPolyLine                 = NULL;
00048         _diameterMaxvtkDataSetMapper    = NULL;
00049         _diameterMaxvtkUnstructuredGrid = NULL;
00050 }

vtk2DQuantSliceWidget::~vtk2DQuantSliceWidget (  ) 

Member Function Documentation

void wxImageViewerWidget::AddObserver_1 (  )  [inherited]

Definition at line 248 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_Observer, and wxImageViewerWidget::_wxVTKiren.

Referenced by wxImageViewerWidget::ConstructVTK().

00248                                        {
00249 
00250   //wxVTKiren->AddObserver(vtkCommand::MiddleButtonPressEvent, _Observer);
00251   //use interactor style to override -for real- the default behavior
00252   _wxVTKiren->GetInteractorStyle()->AddObserver( vtkCommand::MiddleButtonPressEvent , _Observer);
00253   _wxVTKiren->AddObserver(vtkCommand::MouseMoveEvent, _Observer);
00254   //wxVTKiren->AddObserver(vtkCommand::MiddleButtonReleaseEvent, _Observer);
00255    _wxVTKiren->GetInteractorStyle()->AddObserver( vtkCommand::MiddleButtonReleaseEvent , _Observer);
00256 
00257   //EED  _wxVTKiren->AddObserver(vtkCommand::MouseWheelForwardEvent, _Observer);
00258   _wxVTKiren->AddObserver( wxEVT_MOUSEWHEEL+10000 , _Observer);
00259 
00260   //EED  _wxVTKiren->AddObserver(vtkCommand::MouseWheelBackwardEvent, _Observer);
00261   _wxVTKiren->AddObserver( wxEVT_MOUSEWHEEL+10001 , _Observer);
00262 
00263 }

Here is the caller graph for this function:

void wxImageViewerWidget::AddObserver_2 (  )  [inherited]

Definition at line 268 of file wxImageViewerWidget.cxx.

00268                                        {
00269 /*
00270 //  _wxVTKiren->AddObserver(vtkCommand::LeftButtonPressEvent    , _Observer);
00271 //  _wxVTKiren->AddObserver(vtkCommand::LeftButtonReleaseEvent, _Observer);
00272 
00273   _wxVTKiren->AddObserver(vtkCommand::MiddleButtonPressEvent    , _Observer);
00274   _wxVTKiren->AddObserver(vtkCommand::MiddleButtonReleaseEvent, _Observer);
00275 
00276 //      _wxVTKiren->AddObserver(vtkCommand::RightButtonPressEvent       , _Observer);
00277   _wxVTKiren->AddObserver(vtkCommand::MouseMoveEvent            , _Observer);
00278 */
00279 }

void wxImageViewerWidget::ConstructVTK ( vtkImageData *  imageData  )  [virtual, inherited]

This doesn't seems to be straight forward to overload left button mouse evtn as vtkImageViewer2 overload window Level event / which is bind to left mouse click -> as a hack use Middle mouse, (doesn't seems to usefull)

Reimplemented in wxImageViewerWidgetRoi.

Definition at line 162 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_imageViewer, wxImageViewerWidget::_interactorStyle2DMaracas, wxImageViewerWidget::_manContControl, wxImageViewerWidget::_mContourModel, wxImageViewerWidget::_mViewContour, wxImageViewerWidget::_Observer, wxImageViewerWidget::_wxVTKiren, wxImageViewerWidget::AddObserver_1(), wxVtk2DView_TMP::Configure(), wxVtkBaseView::GetInteractorStyleBaseView(), marZoomROIObserver::ImageViewerWdg, vtkMaracasImageViewer2Callback::IV, vtkMaracasImageViewer2Callback::New(), vtkInteractorStyle2DMaracas::New(), marZoomROIObserver::New(), InteractorStyleMaracas::SetActive(), manualViewBaseContour::SetModel(), manualContourBaseControler::SetModelView(), wxVTKRenderWindowInteractorEditContour::SetObserver(), manualViewBaseContour::SetRange(), wxImageViewerWidget::SetState(), manualViewBaseContour::SetWxVtkBaseView(), wxVtk2DView_TMP::SetWxVTKRenderWindowInteractor(), and manualContourBaseControler::SetZ().

Referenced by wxQuantificationWidget::ShowMARACASData().

00163 {
00164   _imageViewer->SetInput ( imageData );
00165   _imageViewer->SetupInteractor ( _wxVTKiren );
00166   vtkCamera *camera =_imageViewer->GetRenderer()->GetActiveCamera();
00167   camera->Zoom(2.5);
00168   _imageViewer->GetRenderer()->ResetCamera ();
00169 
00170 //  int ww=2000;
00171 //  _imageViewer->GetRenderer()->ResetCameraClippingRange(-ww,ww,-ww,ww,-ww,ww);  
00172 
00173   //imageViewer->Render();  //NEVER call it explicitely !!!
00174 
00175   //Some images have a bad range, rescale it by default:
00176   imageData->UpdateInformation();
00177   imageData->SetUpdateExtent( imageData->GetWholeExtent());
00178   imageData->Update();
00179   double *range = imageData->GetScalarRange();
00180 //  _imageViewer->SetColorWindow( range[1] - range[0] );
00181 //  _imageViewer->SetColorLevel( 0.5*(range[1] + range[0]) );
00182 
00183   _Observer = marZoomROIObserver::New();
00184   _Observer->ImageViewerWdg = this;
00185  
00186   SetState(1);   // observer 1
00187   AddObserver_1();
00188         _wxVTKiren->SetObserver(_Observer);
00189 
00196 //  wxVTKiren->GetInteractorStyle()->AddObserver(vtkCommand::LeftButtonPressEvent, _Observer);
00197 
00198 
00199         _manContControl  = new manualContourControler();
00200         _mContourModel   = new manualContourModel();
00201         _mViewContour    = new manualViewContour();
00202 
00203         _manContControl->SetZ(100);
00204         _mViewContour->SetModel(_mContourModel);
00205         wxVtk2DView_TMP *wxvtkbaseview_tmp =new wxVtk2DView_TMP(_imageViewer);
00206         _mViewContour->SetWxVtkBaseView( wxvtkbaseview_tmp );
00207         _mViewContour->SetRange( 2 );
00208         _manContControl->SetActive(false);
00209         _manContControl->SetModelView(_mContourModel,_mViewContour);
00210         wxvtkbaseview_tmp->SetWxVTKRenderWindowInteractor(_wxVTKiren);
00211         wxvtkbaseview_tmp->Configure();
00212         wxvtkbaseview_tmp->GetInteractorStyleBaseView()->AddInteractorStyleMaracas( _manContControl );
00213 
00214     _interactorStyle2DMaracas = vtkInteractorStyle2DMaracas::New(); 
00215     _interactorStyle2DMaracas->SetInteractor ( _wxVTKiren );
00216     _wxVTKiren->SetInteractorStyle(_interactorStyle2DMaracas);
00217     vtkMaracasImageViewer2Callback *cbk = vtkMaracasImageViewer2Callback::New();
00218     cbk->IV = _imageViewer;
00219     _interactorStyle2DMaracas->AddObserver( vtkCommand::WindowLevelEvent, cbk);
00220     _interactorStyle2DMaracas->AddObserver( vtkCommand::StartWindowLevelEvent, cbk);
00221     _interactorStyle2DMaracas->AddObserver( vtkCommand::ResetWindowLevelEvent, cbk);
00222     cbk->Delete();
00223 
00224 }

Here is the call graph for this function:

Here is the caller graph for this function:

void wxImageViewerWidget::CreateNewManualContour (  )  [inherited]

Definition at line 236 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_manContControl, wxImageViewerWidget::_mViewContour, manualContourBaseControler::CreateNewManualContour(), manualViewBaseContour::Refresh(), and InteractorStyleMaracas::SetActive().

Referenced by wxQuantificationWidget::SetManualContour_2DWorld().

00236                                                 {
00237         _manContControl->CreateNewManualContour();
00238         _manContControl->SetActive(true);
00239         _mViewContour->Refresh();
00240         Refresh();
00241 }

Here is the call graph for this function:

Here is the caller graph for this function:

void wxImageViewerWidget::EraseManualContour (  )  [inherited]

Definition at line 243 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_manContControl, and manualContourBaseControler::DeleteContour().

Referenced by wxQuantificationWidget::SetManualContour_2DWorld().

00243                                             {
00244         _manContControl->DeleteContour();
00245 }

Here is the call graph for this function:

Here is the caller graph for this function:

void wxImageViewerWidget::ExecuteEvent ( vtkObject *  wdg,
unsigned long  event,
void *  calldata 
) [virtual, inherited]

Reimplemented in wxImageViewerWidgetRoi.

Definition at line 283 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_state, wxImageViewerWidget::ExecuteEvent1(), and wxImageViewerWidget::ExecuteEvent2().

Referenced by marZoomROIObserver::Execute().

00283                                                                                          {
00284         if (_state==1) {        ExecuteEvent1(wdg,event,calldata);      }
00285         if (_state==2) {        ExecuteEvent2(wdg,event,calldata);      }
00286 }

Here is the call graph for this function:

Here is the caller graph for this function:

void wxImageViewerWidget::ExecuteEvent1 ( vtkObject *  wdg,
unsigned long  event,
void *  calldata 
) [inherited]

Definition at line 290 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_intVtkPanWid, and InterfaceVtkPanelWidgets::CallBackOnMouseWheel().

Referenced by wxImageViewerWidget::ExecuteEvent().

00290                                                                                           {
00291 
00292         if ( event == vtkCommand::MiddleButtonPressEvent ){
00293         }else if ( event == vtkCommand::MouseMoveEvent ){
00294         }
00295 
00296         if ( event == vtkCommand::MiddleButtonReleaseEvent ){
00297                 //EED } else if ( event == vtkCommand::MouseWheelForwardEvent ){
00298         } else if ( event == wxEVT_MOUSEWHEEL+10000 ){
00299                         wxMouseEvent mouseEvent;
00300                         mouseEvent.m_wheelRotation=130;
00301                         if (_intVtkPanWid!=NULL) { _intVtkPanWid->CallBackOnMouseWheel(mouseEvent);}
00302                 //EED }else if ( event == vtkCommand::MouseWheelBackwardEvent ){
00303         }else if ( event == wxEVT_MOUSEWHEEL+10001 ){
00304                         wxMouseEvent mouseEvent;
00305                         mouseEvent.m_wheelRotation=-130;
00306                         if (_intVtkPanWid!=NULL) { _intVtkPanWid->CallBackOnMouseWheel(mouseEvent);}
00307         }
00308 }

Here is the call graph for this function:

Here is the caller graph for this function:

void wxImageViewerWidget::ExecuteEvent2 ( vtkObject *  wdg,
unsigned long  event,
void *  calldata 
) [inherited]

Definition at line 312 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_manContControl, wxImageViewerWidget::_wxVTKiren, manualContourBaseControler::DeleteActualMousePoint(), manualContourControler::MouseClickLeft(), manualContourBaseControler::MouseClickRight(), manualContourControler::MouseDLeft(), manualContourControler::MouseMove(), and manualContourBaseControler::MouseReleaseLeft().

Referenced by wxImageViewerWidget::ExecuteEvent().

00312                                                                                           {
00313         int X,Y;
00314         _wxVTKiren->GetEventPosition(X, Y);
00315         if (event==wxEVT_LEFT_DOWN ){
00316                 _manContControl->MouseClickLeft(X,Y);
00317         }
00318 
00319         if (event==wxEVT_RIGHT_DOWN ){
00320                 _manContControl->MouseClickRight(X,Y);
00321         }
00322 
00323         if (event==wxEVT_LEFT_UP){
00324                 _manContControl->MouseReleaseLeft(X,Y);
00325         }
00326 
00327         if (event==wxEVT_LEFT_DCLICK){
00328                 _manContControl->MouseDLeft(X,Y);
00329         }
00330 
00331         if (event==wxEVT_MOTION){
00332                 _manContControl->MouseMove(X,Y);
00333         }
00334 
00335         if (event==WXK_CLEAR){
00336                 _manContControl->DeleteActualMousePoint(X,Y);
00337         }
00338 }

Here is the call graph for this function:

Here is the caller graph for this function:

int wxImageViewerWidget::GetNumberOfPointsSplineManualContour (  )  [inherited]

Definition at line 348 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_manContControl, and manualContourBaseControler::GetNumberOfPointsSplineManualContour().

Referenced by wxQuantificationWidget::SetManualContour_ReplaceContour().

00348                                                              {
00349         return _manContControl->GetNumberOfPointsSplineManualContour();
00350 }

Here is the call graph for this function:

Here is the caller graph for this function:

double * wxImageViewerWidget::GetVectorPointsXManualContour (  )  [inherited]

Definition at line 352 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_manContControl, and manualContourBaseControler::GetVectorPointsXManualContour().

Referenced by wxQuantificationWidget::SetManualContour_ReplaceContour().

00352                                                           {
00353         return _manContControl->GetVectorPointsXManualContour();
00354 }

Here is the call graph for this function:

Here is the caller graph for this function:

double * wxImageViewerWidget::GetVectorPointsYManualContour (  )  [inherited]

Definition at line 356 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_manContControl, and manualContourBaseControler::GetVectorPointsYManualContour().

Referenced by wxQuantificationWidget::SetManualContour_ReplaceContour().

00356                                                           {
00357         return _manContControl->GetVectorPointsYManualContour();
00358 }

Here is the call graph for this function:

Here is the caller graph for this function:

int wxImageViewerWidget::GetZSlice (  )  [inherited]

Definition at line 369 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_imageViewer.

00369                                   {
00370         return _imageViewer->GetZSlice();
00371 }

void vtk2DQuantSliceWidget::Hide2DContourDiameters (  ) 

Definition at line 178 of file vtk2DQuantSliceWidget.cxx.

References _cntActor, _diameterMaxvtkActor, _diameterMinvtkActor, and wxImageViewerWidget::_imageViewer.

Referenced by wxQuantificationWidget::OnVisibleRing_CB(), and wxQuantificationWidget::SetManualContour_AddPoint_2DWorld().

00178                                                    {
00179         if ( _cntActor                          != NULL ) { _imageViewer->GetRenderer()->RemoveActor( _cntActor );            }
00180         if ( _diameterMinvtkActor       != NULL ) { _imageViewer->GetRenderer()->RemoveActor( _diameterMinvtkActor ); }
00181         if ( _diameterMaxvtkActor       != NULL ) { _imageViewer->GetRenderer()->RemoveActor( _diameterMaxvtkActor ); }
00182   _imageViewer->Render( );
00183 }

Here is the caller graph for this function:

void wxImageViewerWidget::Render (  )  [inherited]

Definition at line 373 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_imageViewer.

Referenced by wxQuantificationWidget::SetManualContour_2DWorld().

00373                                 {
00374         _imageViewer->Render();
00375 }

Here is the caller graph for this function:

void vtk2DQuantSliceWidget::SetContour ( vtkPolyData *  cnt  ) 

Definition at line 75 of file vtk2DQuantSliceWidget.cxx.

References _cnt, _cntActor, _cntMapper, and wxImageViewerWidget::_imageViewer.

Referenced by wxQuantificationWidget::RefreshAxis().

00076 {
00077 //  _cntMapper = vtkDataSetMapper::New( ); 
00078 //  _cntMapper = vtkDataSetMapper::New( );
00079   
00080   _cnt = cnt;
00081 
00082   if( !_cntMapper ) {
00083     _cntMapper = vtkPolyDataMapper::New( );
00084     _cntMapper->ScalarVisibilityOff( );
00085     _cntMapper->ImmediateModeRenderingOn();
00086   }
00087   _cntMapper->SetInput( _cnt );
00088 //  _cntMapper->SetInput( _cnt->GetOutput( ) );
00089 
00090   if( !_cntActor ) {
00091     _cntActor = vtkActor::New( );
00092     _cntActor->SetMapper( _cntMapper );
00093     (_cntActor->GetProperty( ))->SetColor( 0 , 1 , 0 );
00094     (_cntActor->GetProperty( ))->SetLineWidth( 2 );
00095     (_cntActor->GetProperty( ))->BackfaceCullingOff( );
00096   }
00097   else{
00098     _imageViewer->GetRenderer()->RemoveActor( _cntActor );
00099   }
00100 
00101   _cntActor->SetPosition(0,0,100);
00102   _imageViewer->GetRenderer()->AddActor( _cntActor );
00103   _imageViewer->Render( );
00104 
00105 }

Here is the caller graph for this function:

void vtk2DQuantSliceWidget::SetDiameterMax ( vtkPoints *  diameterMax,
bool  showActor 
)

Definition at line 140 of file vtk2DQuantSliceWidget.cxx.

References _diameterMaxvtkActor, _diameterMaxvtkDataSetMapper, _diameterMaxvtkPolyLine, _diameterMaxvtkUnstructuredGrid, and wxImageViewerWidget::_imageViewer.

Referenced by wxQuantificationWidget::RefreshAxis().

00140                                                                                 {
00141         if (_diameterMaxvtkActor!=NULL)                         _imageViewer->GetRenderer()->RemoveActor( _diameterMaxvtkActor );
00142         if (_diameterMaxvtkActor!=NULL)                         _diameterMaxvtkActor->Delete();
00143         if (_diameterMaxvtkPolyLine!=NULL)                      _diameterMaxvtkPolyLine->Delete();
00144         if (_diameterMaxvtkDataSetMapper!=NULL)         _diameterMaxvtkDataSetMapper->Delete();
00145         if (_diameterMaxvtkUnstructuredGrid!=NULL)      _diameterMaxvtkUnstructuredGrid->Delete();
00146 
00147         _diameterMaxvtkActor                    =       vtkActor::New();
00148         _diameterMaxvtkPolyLine                 =       vtkPolyLine::New();
00149         _diameterMaxvtkDataSetMapper    =       vtkDataSetMapper::New();
00150         _diameterMaxvtkUnstructuredGrid =       vtkUnstructuredGrid::New();
00151 
00152         // generate new actor
00153         (_diameterMaxvtkPolyLine->GetPointIds() )->SetNumberOfIds(2);
00154         ( _diameterMaxvtkPolyLine->GetPointIds() )->SetId(0,0);
00155         ( _diameterMaxvtkPolyLine->GetPointIds() )->SetId(1,1);
00156         _diameterMaxvtkUnstructuredGrid->Allocate(1,1);
00157         _diameterMaxvtkUnstructuredGrid->InsertNextCell(_diameterMaxvtkPolyLine->GetCellType() , 
00158                                                                                                                          _diameterMaxvtkPolyLine->GetPointIds() );
00159         _diameterMaxvtkUnstructuredGrid->SetPoints( diameterMax );
00160         _diameterMaxvtkDataSetMapper->SetInput(_diameterMaxvtkUnstructuredGrid);
00161         _diameterMaxvtkDataSetMapper->ImmediateModeRenderingOn();
00162         _diameterMaxvtkActor->SetMapper(_diameterMaxvtkDataSetMapper);
00163         _diameterMaxvtkActor->GetProperty()->BackfaceCullingOn();
00164         _diameterMaxvtkActor->GetProperty()->SetDiffuseColor(0,0,1);
00165         // add new actor
00166         if (showActor==true) _imageViewer->GetRenderer()->AddActor( _diameterMaxvtkActor );
00167         // Refresh Widget
00168         _imageViewer->Render( );
00169 }

Here is the caller graph for this function:

void vtk2DQuantSliceWidget::SetDiameterMin ( vtkPoints *  diameterMin,
bool  showActor 
)

Definition at line 109 of file vtk2DQuantSliceWidget.cxx.

References _diameterMinvtkActor, _diameterMinvtkDataSetMapper, _diameterMinvtkPolyLine, _diameterMinvtkUnstructuredGrid, and wxImageViewerWidget::_imageViewer.

Referenced by wxQuantificationWidget::RefreshAxis().

00109                                                                                 {
00110         if (_diameterMinvtkActor!=NULL)                         _imageViewer->GetRenderer()->RemoveActor( _diameterMinvtkActor );
00111         if (_diameterMinvtkActor!=NULL)                         _diameterMinvtkActor->Delete();
00112         if (_diameterMinvtkPolyLine!=NULL)                      _diameterMinvtkPolyLine->Delete();
00113         if (_diameterMinvtkDataSetMapper!=NULL)         _diameterMinvtkDataSetMapper->Delete();
00114         if (_diameterMinvtkUnstructuredGrid!=NULL)      _diameterMinvtkUnstructuredGrid->Delete();
00115 
00116         _diameterMinvtkActor                    =       vtkActor::New();
00117         _diameterMinvtkPolyLine                 =       vtkPolyLine::New();
00118         _diameterMinvtkDataSetMapper    =       vtkDataSetMapper::New();
00119         _diameterMinvtkUnstructuredGrid =       vtkUnstructuredGrid::New();
00120 
00121         // generate new actor
00122         (_diameterMinvtkPolyLine->GetPointIds() )->SetNumberOfIds(2);
00123         ( _diameterMinvtkPolyLine->GetPointIds() )->SetId(0,0);
00124         ( _diameterMinvtkPolyLine->GetPointIds() )->SetId(1,1);
00125         _diameterMinvtkUnstructuredGrid->Allocate(1,1);
00126         _diameterMinvtkUnstructuredGrid->InsertNextCell(_diameterMinvtkPolyLine->GetCellType() , 
00127                                                          _diameterMinvtkPolyLine->GetPointIds() );
00128         _diameterMinvtkUnstructuredGrid->SetPoints( diameterMin );
00129         _diameterMinvtkDataSetMapper->SetInput(_diameterMinvtkUnstructuredGrid);
00130         _diameterMinvtkDataSetMapper->ImmediateModeRenderingOn();
00131         _diameterMinvtkActor->SetMapper(_diameterMinvtkDataSetMapper);
00132         _diameterMinvtkActor->GetProperty()->BackfaceCullingOn();
00133         _diameterMinvtkActor->GetProperty()->SetDiffuseColor(1,0,0);
00134         // add new actor
00135         if (showActor==true) _imageViewer->GetRenderer()->AddActor( _diameterMinvtkActor );
00136         // Refresh Widget
00137         _imageViewer->Render( );
00138 }

Here is the caller graph for this function:

void wxImageViewerWidget::SetImage ( vtkImageData *  imagedata  )  [inherited]

Definition at line 342 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_imageViewer.

Referenced by wxQuantificationWidget::RefreshAxis().

00342                                                          {
00343   _imageViewer->SetInput(imagedata);
00344   _imageViewer->Render( );
00345 }

Here is the caller graph for this function:

void wxImageViewerWidget::SetInterfaceVtkPanelWidgets ( InterfaceVtkPanelWidgets intVtkPanWid  )  [inline, inherited]

Definition at line 78 of file wxImageViewerWidget.h.

References wxImageViewerWidget::_intVtkPanWid.

00078 { _intVtkPanWid = intVtkPanWid; };

void wxImageViewerWidget::SetState ( int  state  )  [inherited]

Definition at line 227 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_state, wxImageViewerWidget::_wxVTKiren, and wxVTKRenderWindowInteractorEditContour::SetState().

Referenced by wxImageViewerWidget::ConstructVTK(), and wxQuantificationWidget::SetManualContour_2DWorld().

00227                                            {
00228         _state=state;
00229         _wxVTKiren->SetState(state);
00230 }

Here is the call graph for this function:

Here is the caller graph for this function:

void wxImageViewerWidget::SetStateManualContour ( int  state  )  [inherited]
void wxImageViewerWidget::SetZSlice ( int  z  )  [inherited]

Definition at line 360 of file wxImageViewerWidget.cxx.

References wxImageViewerWidget::_imageViewer.

00360                                         {
00361 #if (VTK_MAJOR_VERSION >= 5)
00362                 _imageViewer->SetSlice( z );
00363 #else
00364                 _imageViewer->SetZSlice( z );
00365 #endif
00366 
00367 }

void vtk2DQuantSliceWidget::Show2DContourDiameters (  ) 

Definition at line 171 of file vtk2DQuantSliceWidget.cxx.

References _cntActor, _diameterMaxvtkActor, _diameterMinvtkActor, and wxImageViewerWidget::_imageViewer.

Referenced by wxQuantificationWidget::OnVisibleRing_CB().

00171                                                    {
00172   if (_cntActor!=NULL)                          _imageViewer->GetRenderer()->AddActor( _cntActor );
00173   if (_diameterMinvtkActor!=NULL)       _imageViewer->GetRenderer()->AddActor( _diameterMinvtkActor );
00174   if (_diameterMaxvtkActor!=NULL)       _imageViewer->GetRenderer()->AddActor( _diameterMaxvtkActor );
00175   _imageViewer->Render( );
00176 }

Here is the caller graph for this function:


Member Data Documentation

vtkPolyData* vtk2DQuantSliceWidget::_cnt [private]

Definition at line 57 of file vtk2DQuantSliceWidget.h.

Referenced by SetContour().

vtkActor* vtk2DQuantSliceWidget::_cntActor [private]
vtkPolyDataMapper* vtk2DQuantSliceWidget::_cntMapper [private]
vtkImageViewer2* wxImageViewerWidget::_imageViewer [protected, inherited]
int wxImageViewerWidget::_state [protected, inherited]

The documentation for this class was generated from the following files:

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1