Class that brigde to VTK, override double click... More...
#include <vtk2DQuantSliceWidget.h>
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 |
Class that brigde to VTK, override double click...
Definition at line 32 of file vtk2DQuantSliceWidget.h.
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 | ( | ) |
Definition at line 53 of file vtk2DQuantSliceWidget.cxx.
References _cntActor, _cntMapper, _diameterMaxvtkActor, _diameterMaxvtkDataSetMapper, _diameterMaxvtkPolyLine, _diameterMaxvtkUnstructuredGrid, _diameterMinvtkActor, _diameterMinvtkDataSetMapper, _diameterMinvtkPolyLine, and _diameterMinvtkUnstructuredGrid.
00054 { 00055 // Contour 00056 if( _cntActor ) _cntActor->Delete(); 00057 if( _cntMapper ) _cntMapper->Delete(); 00058 00059 // Diameter Min 00060 if( _diameterMinvtkActor ) _diameterMinvtkActor->Delete(); 00061 if( _diameterMinvtkPolyLine ) _diameterMinvtkPolyLine->Delete(); 00062 if( _diameterMinvtkDataSetMapper ) _diameterMinvtkDataSetMapper->Delete(); 00063 if( _diameterMinvtkUnstructuredGrid ) _diameterMinvtkUnstructuredGrid->Delete(); 00064 00065 // Diameter Max 00066 if( _diameterMaxvtkActor ) _diameterMaxvtkActor->Delete(); 00067 if( _diameterMaxvtkPolyLine ) _diameterMaxvtkPolyLine->Delete(); 00068 if( _diameterMaxvtkDataSetMapper ) _diameterMaxvtkDataSetMapper->Delete(); 00069 if( _diameterMaxvtkUnstructuredGrid ) _diameterMaxvtkUnstructuredGrid->Delete(); 00070 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
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 }
void wxImageViewerWidget::SetStateManualContour | ( | int | state | ) | [inherited] |
Definition at line 232 of file wxImageViewerWidget.cxx.
References wxImageViewerWidget::_manContControl, and manualContourBaseControler::SetState().
Referenced by wxQuantificationWidget::SetManualContour_AddPoint_2DWorld(), wxQuantificationWidget::SetManualContour_ErasePoint_2DWorld(), wxQuantificationWidget::SetManualContour_InsertPoint_2DWorld(), and wxQuantificationWidget::SetManualContour_MovePoint_2DWorld().
00232 { 00233 _manContControl->SetState(state); 00234 }
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 }
vtkPolyData* vtk2DQuantSliceWidget::_cnt [private] |
Definition at line 57 of file vtk2DQuantSliceWidget.h.
Referenced by SetContour().
vtkActor* vtk2DQuantSliceWidget::_cntActor [private] |
Definition at line 59 of file vtk2DQuantSliceWidget.h.
Referenced by Hide2DContourDiameters(), SetContour(), Show2DContourDiameters(), vtk2DQuantSliceWidget(), and ~vtk2DQuantSliceWidget().
vtkPolyDataMapper* vtk2DQuantSliceWidget::_cntMapper [private] |
Definition at line 58 of file vtk2DQuantSliceWidget.h.
Referenced by SetContour(), vtk2DQuantSliceWidget(), and ~vtk2DQuantSliceWidget().
vtkActor* vtk2DQuantSliceWidget::_diameterMaxvtkActor [private] |
Definition at line 68 of file vtk2DQuantSliceWidget.h.
Referenced by Hide2DContourDiameters(), SetDiameterMax(), Show2DContourDiameters(), vtk2DQuantSliceWidget(), and ~vtk2DQuantSliceWidget().
vtkDataSetMapper* vtk2DQuantSliceWidget::_diameterMaxvtkDataSetMapper [private] |
Definition at line 70 of file vtk2DQuantSliceWidget.h.
Referenced by SetDiameterMax(), vtk2DQuantSliceWidget(), and ~vtk2DQuantSliceWidget().
vtkPolyLine* vtk2DQuantSliceWidget::_diameterMaxvtkPolyLine [private] |
Definition at line 69 of file vtk2DQuantSliceWidget.h.
Referenced by SetDiameterMax(), vtk2DQuantSliceWidget(), and ~vtk2DQuantSliceWidget().
vtkUnstructuredGrid* vtk2DQuantSliceWidget::_diameterMaxvtkUnstructuredGrid [private] |
Definition at line 71 of file vtk2DQuantSliceWidget.h.
Referenced by SetDiameterMax(), vtk2DQuantSliceWidget(), and ~vtk2DQuantSliceWidget().
vtkActor* vtk2DQuantSliceWidget::_diameterMinvtkActor [private] |
Definition at line 62 of file vtk2DQuantSliceWidget.h.
Referenced by Hide2DContourDiameters(), SetDiameterMin(), Show2DContourDiameters(), vtk2DQuantSliceWidget(), and ~vtk2DQuantSliceWidget().
vtkDataSetMapper* vtk2DQuantSliceWidget::_diameterMinvtkDataSetMapper [private] |
Definition at line 64 of file vtk2DQuantSliceWidget.h.
Referenced by SetDiameterMin(), vtk2DQuantSliceWidget(), and ~vtk2DQuantSliceWidget().
vtkPolyLine* vtk2DQuantSliceWidget::_diameterMinvtkPolyLine [private] |
Definition at line 63 of file vtk2DQuantSliceWidget.h.
Referenced by SetDiameterMin(), vtk2DQuantSliceWidget(), and ~vtk2DQuantSliceWidget().
vtkUnstructuredGrid* vtk2DQuantSliceWidget::_diameterMinvtkUnstructuredGrid [private] |
Definition at line 65 of file vtk2DQuantSliceWidget.h.
Referenced by SetDiameterMin(), vtk2DQuantSliceWidget(), and ~vtk2DQuantSliceWidget().
vtkImageViewer2* wxImageViewerWidget::_imageViewer [protected, inherited] |
Definition at line 99 of file wxImageViewerWidget.h.
Referenced by wxImageViewerWidgetRoi::ConstructVTK(), wxImageViewerWidget::ConstructVTK(), wxImageViewerWidgetRoi::ExecuteEvent(), wxImageViewerWidgetRoi::GetROI(), wxImageViewerWidget::GetZSlice(), Hide2DContourDiameters(), wxImageViewerWidget::Render(), SetContour(), SetDiameterMax(), SetDiameterMin(), wxImageViewerWidget::SetImage(), wxImageViewerWidget::SetZSlice(), Show2DContourDiameters(), wxImageViewerWidgetRoi::TransfromeCoordViewWorld(), wxImageViewerWidget::wxImageViewerWidget(), and wxImageViewerWidget::~wxImageViewerWidget().
vtkInteractorStyle2DMaracas* wxImageViewerWidget::_interactorStyle2DMaracas [protected, inherited] |
Definition at line 98 of file wxImageViewerWidget.h.
Referenced by wxImageViewerWidgetRoi::ConstructVTK(), and wxImageViewerWidget::ConstructVTK().
InterfaceVtkPanelWidgets* wxImageViewerWidget::_intVtkPanWid [protected, inherited] |
Definition at line 100 of file wxImageViewerWidget.h.
Referenced by wxImageViewerWidgetRoi::ExecuteEvent(), wxImageViewerWidget::ExecuteEvent1(), wxImageViewerWidget::SetInterfaceVtkPanelWidgets(), and wxImageViewerWidget::wxImageViewerWidget().
marZoomROIObserver* wxImageViewerWidget::_Observer [protected, inherited] |
Definition at line 97 of file wxImageViewerWidget.h.
Referenced by wxImageViewerWidget::AddObserver_1(), wxImageViewerWidgetRoi::ConstructVTK(), wxImageViewerWidget::ConstructVTK(), wxImageViewerWidget::wxImageViewerWidget(), and wxImageViewerWidget::~wxImageViewerWidget().
int wxImageViewerWidget::_state [protected, inherited] |
Definition at line 96 of file wxImageViewerWidget.h.
Referenced by wxImageViewerWidget::ExecuteEvent(), wxImageViewerWidget::SetState(), and wxImageViewerWidget::wxImageViewerWidget().
wxVTKRenderWindowInteractorEditContour* wxImageViewerWidget::_wxVTKiren [protected, inherited] |
Definition at line 101 of file wxImageViewerWidget.h.
Referenced by wxImageViewerWidget::AddObserver_1(), wxImageViewerWidget::ConstructVTK(), wxImageViewerWidgetRoi::ExecuteEvent(), wxImageViewerWidget::ExecuteEvent2(), wxImageViewerWidget::SetState(), wxImageViewerWidget::wxImageViewerWidget(), and wxImageViewerWidget::~wxImageViewerWidget().