Program: wxMaracas
Module: $RCSfile: wxMPRWidget.cxx,v $
Language: C++
- Date: $Date: 2009/04/23 10:15:56 $
- Version: $Revision: 1.10 $
+ Date: $Date: 2009/05/04 07:35:42 $
+ Version: $Revision: 1.11 $
Copyright: (c) 2002, 2003
License:
#include "matrix.h"
#include <string>
+#include <stdio.h>
+
#include "pPlotter/HistogramDialog.h"
int wxSphereView::GetIdOfImage(double radio)
{
int id=0;
- int dim[3];
- _imageSphere->GetDimensions(dim);
+ int dim[3];
+ _imageSphere->GetDimensions(dim);
int sizeMaxList = dim[2];
// Search in list >> alpha beta radio
int i,size=_lstId.size();
unsigned short *pOrig;
int dimRes[3],dimOrig[3];
double i,j;
+ int ext[6];
+ _imageSphere->GetExtent(ext);
_imageSphere->GetDimensions(dimRes);
- _imageSphere->SetExtent(0,dimRes[0]-1,0,dimRes[1]-1,0,dimRes[2]-1);
+ //JCP 24 - 04 -09
+ //_imageSphere->SetExtent(0,dimRes[0]-1,0,dimRes[1]-1,0,dimRes[2]-1);
+ _imageSphere->SetExtent(ext);
+ //JCP 24 - 04 -09
d2x=dimRes[0]/2;
d2y=dimRes[1]/2;
// double deltaTMP=_delta;
wxPanel *panel = this;
_wxvtkmpr3Dview = wxvtkmpr3Dview;
- int maxX = _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetMaxPositionX();
+ /*int maxX = _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetMaxPositionX();
int maxY = _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetMaxPositionY();
- int maxZ = _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetMaxPositionZ();
+ int maxZ = _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetMaxPositionZ();*/
+
+ int maxX = 1;
+ int maxY = 1;
+ int maxZ = 1;
+
wxCheckBox *ckBoxX = new wxCheckBox(panel,-1,_T("X "));
_positionX = new wxSlider(panel,-1,maxX/2,0,maxX, wxDefaultPosition, wxSize(150,40), wxSL_HORIZONTAL | wxSL_LABELS);
wxCheckBox *ckBoxY = new wxCheckBox(panel,-1,_T("Y "));
panel->SetEventHandler((wxEvtHandler*)this);
+ //this->UpdateControlPanel();
+
+}
+void wxVtkMPR3DViewCntrlPanel::UpdateControlPanel()
+{
+
+ vtkMPRBaseData* basedata = _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData();
+ if(basedata != NULL){
+
+ /*int maxX = basedata->GetMaxPositionX();
+ int maxY = basedata->GetMaxPositionY();
+ int maxZ = basedata->GetMaxPositionZ();*/
+ int x0,x1,y0,y1,z0,z1;
+
+ basedata->GetDimensionExtention(&x0,&x1,&y0,&y1,&z0,&z1);
+ /*int maxX = x1-x0;//basedata->GetMaxPositionX();
+ int maxY = y1-y0;//basedata->GetMaxPositionY();
+ int maxZ = z1-z0;//basedata->GetMaxPositionZ();*/
+
+
+
+ //std::cout<<"wxVtkMPR3DViewCntrlPanel::UpdateControlPanel() maxX="<<maxX<<" maxY="<<maxY<<" maxZ="<<maxZ<<std::endl;
+ /*_positionX->SetRange(0,maxX);
+ _positionY->SetRange(0,maxY);
+ _positionZ->SetRange(0,maxZ);*/
+ _positionX->SetRange(x0,x1);
+ _positionY->SetRange(y0,y1);
+ _positionZ->SetRange(z0,z1);
+
+ _positionX->SetValue((x0+x1)/2);
+ _positionY->SetValue((y0+y1)/2);
+ _positionZ->SetValue((z0+z1)/2);
+
+ _positionX->Update();
+ _positionY->Update();
+ _positionZ->Update();
+ this->Update();
+ }
+
}
//-------------------------------------------------------------------
wxVtkMPR3DViewCntrlPanel::~wxVtkMPR3DViewCntrlPanel()
_wxvtkmpr3Dview->Refresh();
wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh
- _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+
+ try{
+ _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
+ }catch(char* e){
+ std::cout<<e<<std::endl;
+ }
}
//-------------------------------------------------------------------
{
_wxvtk3Dbaseview = wxvtk3Dbaseview;
_vtkmpr3Ddataviewer = NULL;
- _wxvtkmpr3DviewCntrlPanel = NULL;
-}
-
-//-------------------------------------------------------------------
-wxVtkMPR3DView::~wxVtkMPR3DView()
-{
-}
-
-//-------------------------------------------------------------------
-void wxVtkMPR3DView::Refresh() // virtual
-{
- _vtkmpr3Ddataviewer -> Refresh();
- if (_wxvtkmpr3DviewCntrlPanel!=NULL)
- {
- _wxvtkmpr3DviewCntrlPanel->Refresh();
+ _wxvtkmpr3DviewCntrlPanel = NULL;
+ _myCallback=NULL;
+ _pointWidget=NULL;
+ _planeWidget=NULL;
+ _vtkplane=NULL;
+ _probe=NULL;
+ _contourMapper=NULL;
+}
+void wxVtkMPR3DView::RemoveActor(vtkActor* actor){
+
+ _wxvtk3Dbaseview->GetRenderer()->RemoveActor(actor);
+
+
+}
+void wxVtkMPR3DView::ResetCamera(int* ext, double* origin,double* spc){
+ if(ext == NULL){
+
+ _wxvtk3Dbaseview->GetRenderer()->ResetCamera ();
+ _wxvtk3Dbaseview->GetCamera()->Dolly(1.5);
+ }else{
+ /*double x = (spc[0])*(origin[0]+(((double)ext[1]-(double)ext[0])/2.0));
+ double y = (spc[1])*(origin[1]+(double)ext[3]);
+ double z = (spc[2])*(origin[2]+(((double)ext[5]-(double)ext[4])/2.0));*/
+ /*double x0=(spc[0])*((double)ext[0]+origin[0]);
+ double x1=(spc[0])*((double)ext[1]+origin[0]);
+ double y0=(spc[1])*((double)ext[2]+origin[1]);
+ double y1=(spc[1])*((double)ext[3]+origin[1]);
+ double z0=(spc[2])*((double)ext[4]+origin[2]);
+ double z1=(spc[2])*((double)ext[5]+origin[2]);*/
+ double x0=(spc[0])*((double)ext[0]);
+ double x1=(spc[0])*((double)ext[1]);
+ double y0=(spc[1])*((double)ext[2]);
+ double y1=(spc[1])*((double)ext[3]);
+ double z0=(spc[2])*((double)ext[4]);
+ double z1=(spc[2])*((double)ext[5]);
+
+ _wxvtk3Dbaseview->GetRenderer()->ResetCamera(x0,x1,y0,y1,z0,z1);
+ //_wxvtk3Dbaseview->GetCamera()->SetPosition(x,y,z);
+ _wxvtk3Dbaseview->GetCamera()->Dolly(1.5);
}
-
}
-//-------------------------------------------------------------------
-void wxVtkMPR3DView::RefreshView() // virtual
-{
- double spc[3];
- this->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetImageData()->GetSpacing(spc);
-
- //double nx=1,ny=0,nz=0; // JPRx
- Refresh();
- double x=GetVtkMPR3DDataViewer ()->GetVtkMPRBaseData()->GetX();
- double y=GetVtkMPR3DDataViewer ()->GetVtkMPRBaseData()->GetY();
- double z=GetVtkMPR3DDataViewer ()->GetVtkMPRBaseData()->GetZ();
-
- x=x*spc[0];
- y=y*spc[1];
- z=z*spc[2];
-
- _pointWidget->SetPosition( x,y,z );
-
-
- double in[3];
- double normal[3];
- vtkTransform *transform = GetVtkMPR3DDataViewer ()->GetVtkMPRBaseData()->GetTransformOrientation();
- in[0]=1; in[1]=0; in[2]=0;
- transform->TransformPoint(in,normal);
- _planeWidget->SetNormal( normal[0],normal[1],normal[2] );
+void wxVtkMPR3DView::Configure(){
- _planeWidget->SetCenter( x,y,z );
- _planeWidget->UpdatePlacement();
- _planeWidget->GetPolyData(_vtkplane);
-}
-//-------------------------------------------------------------------
-wxPanel* wxVtkMPR3DView::CreateControlPanel(wxWindow *parent)
-{
- _wxvtkmpr3DviewCntrlPanel = new wxVtkMPR3DViewCntrlPanel(parent,this);
- return _wxvtkmpr3DviewCntrlPanel;
-}
-//-------------------------------------------------------------------
-vtkMPR3DDataViewer* wxVtkMPR3DView::GetVtkMPR3DDataViewer()
-{
- return _vtkmpr3Ddataviewer;
-}
-//-------------------------------------------------------------------
-wxVtk3DBaseView* wxVtkMPR3DView::GetWxvtk3Dbaseview()
-{
- return _wxvtk3Dbaseview;
-}
-//-------------------------------------------------------------------
-void wxVtkMPR3DView::Configure(){
_wxvtk3Dbaseview->Configure();
+ _wxvtkmpr3DviewCntrlPanel->UpdateControlPanel();
+ _wxvtk3Dbaseview->GetRenderer()->Clear();
// Actors are added to the renderer.
- _wxvtk3Dbaseview->GetRenderer()->AddActor( _vtkmpr3Ddataviewer->GetOutlineActor() );
+ vtkActor* _outlineActor = _vtkmpr3Ddataviewer->GetOutlineActor();
+ _wxvtk3Dbaseview->GetRenderer()->AddActor( _outlineActor );
// _wxvtk3Dbaseview->GetRenderer()->AddActor( _vtkmpr3Ddataviewer->GetImageActor(0) ); // _saggital
// _wxvtk3Dbaseview->GetRenderer()->AddActor( _vtkmpr3Ddataviewer->GetImageActor(1) ); // _axial
// _wxvtk3Dbaseview->GetRenderer()->AddActor( _vtkmpr3Ddataviewer->GetImageActor(2) ); // _coronal
// An initial camera view is created. The Dolly() method moves
- // the camera towards the FocalPoint, thereby enlarging the image.
+ // the camera towards the FocalPoint, thereby enlarging the image.
_wxvtk3Dbaseview->GetRenderer()->SetActiveCamera(_wxvtk3Dbaseview->GetCamera());
- _wxvtk3Dbaseview->GetRenderer()->ResetCamera ();
- _wxvtk3Dbaseview->GetCamera()->Dolly(1.5);
+ this->ResetCamera();
+
// Set a background color for the renderer and set the size of the
// render window (expressed in pixels).
// vtkPointWidget
+ if(_myCallback!=NULL){
+ _myCallback->Delete();
+
+ }
_myCallback = vtkmyPWCallback_3DPointWidget::New();
_myCallback->SetWxVtkMPR3DView(this);
+ if(_pointWidget!=NULL){
+ _pointWidget->Delete();
+ }
_pointWidget = vtkPointWidget::New();
_myCallback->SetVtkPointWidget(_pointWidget);
_pointWidget->SetInteractor( GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor() );
// PlaneWidget
+ if(_planeWidget!=NULL){
+ _planeWidget->Delete();
+ }
_planeWidget = vtkPlaneWidget::New();
_myCallback->SetVtkPlaneWidget(_planeWidget);
_planeWidget->SetInput( GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetImageData() );
int pz=(dim[2]/2);
int dd=20;
_planeWidget->PlaceWidget( px-dd , px+dd , py-dd , py+dd , pz-dd , pz+dd );
- _vtkplane = vtkPolyData::New();
+
+
+ if(_vtkplane==NULL){
+ _vtkplane = vtkPolyData::New();
+
+ _probe = vtkProbeFilter::New();
+ _probe->SetInput(_vtkplane);
+
+ _contourMapper = vtkPolyDataMapper::New();
+
+ _contourMapper->SetInput( _probe->GetPolyDataOutput() );
+
+ _contourPlaneActor = vtkActor::New();
+ _contourPlaneActor->SetMapper(_contourMapper);
+
+ _contourPlaneActor->VisibilityOff();
+
+ _planeWidget->SetInteractor( GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor() );
+ _planeWidget->AddObserver(vtkCommand::InteractionEvent,_myCallback);
+
+ _planeWidget->Off();
+ _wxvtk3Dbaseview->GetRenderer()->AddActor( _contourPlaneActor );
+
+ }else{
+
+ }
_planeWidget->GetPolyData(_vtkplane);
- vtkProbeFilter *probe = vtkProbeFilter::New();
- probe->SetInput(_vtkplane);
- vtkImageData *imageData = GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetImageData();
- probe->SetSource( imageData );
+
+ vtkImageData *imageData = GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetImageData();
+ _probe->SetSource( imageData );
- vtkPolyDataMapper *contourMapper = vtkPolyDataMapper::New();
+
+ _contourMapper->SetScalarRange( imageData->GetScalarRange() );
+
+
- contourMapper->SetInput( probe->GetPolyDataOutput() );
+
+}
+//-------------------------------------------------------------------
+wxVtkMPR3DView::~wxVtkMPR3DView()
+{
+}
- contourMapper->SetScalarRange( imageData->GetScalarRange() );
- _contourPlaneActor = vtkActor::New();
- _contourPlaneActor->SetMapper(contourMapper);
+//-------------------------------------------------------------------
+void wxVtkMPR3DView::Refresh() // virtual
+{
+ _vtkmpr3Ddataviewer -> Refresh();
+ if (_wxvtkmpr3DviewCntrlPanel!=NULL)
+ {
+ _wxvtkmpr3DviewCntrlPanel->Refresh();
+ }
- _contourPlaneActor->VisibilityOff();
+}
+//-------------------------------------------------------------------
+void wxVtkMPR3DView::RefreshView() // virtual
+{
+ double spc[3];
+ this->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetImageData()->GetSpacing(spc);
- _planeWidget->SetInteractor( GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor() );
- _planeWidget->AddObserver(vtkCommand::InteractionEvent,_myCallback);
+ //double nx=1,ny=0,nz=0; // JPRx
+ Refresh();
+ double x=GetVtkMPR3DDataViewer ()->GetVtkMPRBaseData()->GetX();
+ double y=GetVtkMPR3DDataViewer ()->GetVtkMPRBaseData()->GetY();
+ double z=GetVtkMPR3DDataViewer ()->GetVtkMPRBaseData()->GetZ();
- _planeWidget->Off();
- _wxvtk3Dbaseview->GetRenderer()->AddActor( _contourPlaneActor );
+ x=x*spc[0];
+ y=y*spc[1];
+ z=z*spc[2];
+
+ _pointWidget->SetPosition( x,y,z );
+
+
+ double in[3];
+ double normal[3];
+ vtkTransform *transform = GetVtkMPR3DDataViewer ()->GetVtkMPRBaseData()->GetTransformOrientation();
+ in[0]=1; in[1]=0; in[2]=0;
+ transform->TransformPoint(in,normal);
+ _planeWidget->SetNormal( normal[0],normal[1],normal[2] );
+
+
+ _planeWidget->SetCenter( x,y,z );
+ _planeWidget->UpdatePlacement();
+ _planeWidget->GetPolyData(_vtkplane);
+}
+//-------------------------------------------------------------------
+wxPanel* wxVtkMPR3DView::CreateControlPanel(wxWindow *parent)
+{
+ _wxvtkmpr3DviewCntrlPanel = new wxVtkMPR3DViewCntrlPanel(parent,this);
+ return _wxvtkmpr3DviewCntrlPanel;
}
+//-------------------------------------------------------------------
+vtkMPR3DDataViewer* wxVtkMPR3DView::GetVtkMPR3DDataViewer()
+{
+ return _vtkmpr3Ddataviewer;
+}
+//-------------------------------------------------------------------
+wxVtk3DBaseView* wxVtkMPR3DView::GetWxvtk3Dbaseview() throw (char*)
+{
+ if(_wxvtk3Dbaseview==NULL){
+ throw "wxVtk3DBaseView* wxVtkMPR3DView::GetWxvtk3Dbaseview() _wxvtk3Dbaseview=NULL";
+ }
+ return _wxvtk3Dbaseview;
+}
+//-------------------------------------------------------------------
+
//-------------------------------------------------------------------
void wxVtkMPR3DView::VisibleImageActor(int idPosition, bool visible){
if (visible!=_vtkmpr3Ddataviewer->GetVisiblePosition(idPosition)){
}
}
//-------------------------------------------------------------------
-wxVtk3DBaseView* wxVtkClipping3DView::GetWxvtk3Dbaseview()
+wxVtk3DBaseView* wxVtkClipping3DView::GetWxvtk3Dbaseview()throw(char*)
{
+ if(_wxvtk3Dbaseview==NULL){
+ throw "wxVtk3DBaseView* wxVtkClipping3DView::GetWxvtk3Dbaseview() _wxvtk3Dbaseview=NULL";
+ }
return _wxvtk3Dbaseview;
}
//-------------------------------------------------------------------
{
_imageData=NULL;
_histogrammeVector=NULL;
+ _wxvtk3Dbaseview=NULL;
+ _wxvtkbaseView=NULL;
CreateInterface();
CreateModel();
Create3DViewObjects();
wxPanelCuttingImageData::~wxPanelCuttingImageData()
{
- delete _modelCube;
- delete _modelSphere;
- delete _modelCylinder;
- _vtkcube -> Delete();
- _vtksphere -> Delete();
- _vtkcylinder -> Delete();
- _cubeMapper -> Delete();
- _sphereMapper -> Delete();
- _cylinderMapper -> Delete();
- _cubeActor -> Delete();
- _sphereActor -> Delete();
- _cylinderActor -> Delete();
-// _xyplot->RemoveAllInputs();
- _xyplot -> Delete();
- _histogrammeVector->Delete();
+ delete _modelCube;
+ delete _modelSphere;
+ delete _modelCylinder;
+ _vtkcube -> Delete();
+ _vtksphere -> Delete();
+ _vtkcylinder -> Delete();
+ _cubeMapper -> Delete();
+ _sphereMapper -> Delete();
+ _cylinderMapper -> Delete();
+ _cubeActor -> Delete();
+ _sphereActor -> Delete();
+ _cylinderActor -> Delete();
+// _xyplot->RemoveAllInputs();
+ _xyplot -> Delete();
+ _histogrammeVector->Delete();
+ _renplotter->Delete();
+
+ if(_wxvtkbaseView!=NULL){
+ delete _wxvtkbaseView;
+ }
+ //delete _vtkclipping3Ddataviewer;
+
- delete _wxvtkbaseView;
+ //fclose(file);
}
_wxvtkbaseView = new wxVtkBaseView(this);
_wxvtkbaseView->Configure();
- vtkRenderer *ren = vtkRenderer::New();
+ _renplotter = vtkRenderer::New();
vtkRenderWindow *renWin = _wxvtkbaseView->GetRenWin();
- renWin->AddRenderer( ren );
- ren->AddActor2D( _xyplot );
+ renWin->AddRenderer( _renplotter );
+ _renplotter->AddActor2D( _xyplot );
return _wxvtkbaseView->GetWxVTKRenderWindowInteractor();
}
_infoPixHi = new wxStaticText(this,-1,_T("############"));
- wxWindow *panelPlotHistogramme = CreatePlotHistogrammeInterface();
+
_typeFig->Append(_T("Cylindre"));
_typeFig->Append(_T("Cube"));
// wxBoxSizer *sizerHor = new wxBoxSizer(wxHORIZONTAL);
wxBoxSizer *sizerHor = new wxBoxSizer(wxVERTICAL);
sizerHor -> Add( topsizer , 1 , wxALL | wxEXPAND ,0);
+
+
+ wxWindow *panelPlotHistogramme = CreatePlotHistogrammeInterface();
sizerHor -> Add( panelPlotHistogramme , 1 , wxGROW ,0);
- _framePanelCutting = NULL;
+ _framePanelCutting = NULL;
_panelCutting = NULL;
wxBoxSizer *sizer = new wxBoxSizer(wxVERTICAL );
+ _marImageData=NULL;
if(marimageData!=NULL){
_marImageData = marimageData;
_refreshBPage=0;
}
-void wxMPRWidget::setMarImage(marImageData *marimageData, double voxelsize){
- _marImageData = marimageData;
+void wxMPRWidget::setImageData(vtkImageData * img, double voxelsize){
+
+ if(_marImageData!=NULL){
+ _marImageData->removeImageData(0);
+ _marImageData->AddImageData(img);
+ }else{
+ _marImageData = new marImageData(img);
+ }
+
_voxelSize = voxelsize;
- _vtkmprbasedata = new vtkMPRBaseData();
- _vtkmprbasedata->SetMarImageData(_marImageData);
- wxSplitterWindow *pnlSplitter = new wxSplitterWindow( this , -1);
- pnlSplitter -> SetMinimumPaneSize( 2 );
+ if(_vtkmprbasedata==NULL){
+ _vtkmprbasedata = new vtkMPRBaseData();
+ _vtkmprbasedata->SetMarImageData(_marImageData);
- wxPanel *MPRPanel = CreateMPRPanel(pnlSplitter,_vtkmprbasedata);
- wxPanel *controlPanel = CreateControlPanel(pnlSplitter);
- pnlSplitter -> SplitVertically( MPRPanel, controlPanel, 550 );
+ wxSplitterWindow *pnlSplitter = new wxSplitterWindow( this , -1);
+ pnlSplitter -> SetMinimumPaneSize( 2 );
- this->GetSizer() -> Add( pnlSplitter ,1,wxGROW ,0);
+ wxPanel *MPRPanel = CreateMPRPanel(pnlSplitter,_vtkmprbasedata);
+ wxPanel *controlPanel = CreateControlPanel(pnlSplitter);
+ pnlSplitter -> SplitVertically( MPRPanel, controlPanel, 550 );
+
+ this->GetSizer() -> Add( pnlSplitter ,1,wxGROW ,0);
+ }
+
+
+
}
//----------------------------------------------------------------------------
//----------------------------------------------------------------------------
void wxMPRWidget::OnCutImagaData(wxCommandEvent &event)
{
- if (_btnCutImageData->GetValue()==true){
+ if (_btnCutImageData->GetValue()==true){
+
_framePanelCutting = new wxFrame(this,-1,_T("Cutting Module"),wxDefaultPosition,wxDefaultSize,wxCAPTION|wxSTAY_ON_TOP| wxRESIZE_BORDER );
+
_framePanelCutting->SetSize(550,400);
- _panelCutting = new wxPanelCuttingImageData(_framePanelCutting);
- _panelCutting->SetWxVtk3DBaseView( _wxvtk3Dbaseview_Clipping3D_BB );
+
+ _panelCutting = new wxPanelCuttingImageData(_framePanelCutting);
+ if(_wxvtk3Dbaseview_Clipping3D_BB!=NULL){
+ _panelCutting->SetWxVtk3DBaseView( _wxvtk3Dbaseview_Clipping3D_BB );
+ }
_panelCutting->SetVtkMPRBaseData( GetVtkMPRBaseData() );
_panelCutting->SetVtkClipping3DDataViewer( this->_wxvtkclipping3Dview_BB->GetVtkClipping3DDataViewer() );
_panelCutting->Configure( );
// _framePanelCutting->FitInside();
*/
_framePanelCutting->Show();
+
+
} else {
if (_framePanelCutting!=NULL){
- _panelCutting->RemoveActors();
- _framePanelCutting->Close();
- _framePanelCutting = NULL;
- _panelCutting = NULL;
+ _panelCutting->RemoveActors();
+ _framePanelCutting->Destroy();
+ _framePanelCutting=NULL;
+ _panelCutting=NULL;
}
}
}
if (_vtkmprbasedata!=NULL)
{
+ _vtkmprbasedata->Configure();
x=_vtkmprbasedata -> GetMaxPositionX()/2;
y=_vtkmprbasedata -> GetMaxPositionY()/2;
- z=_vtkmprbasedata -> GetMaxPositionZ()/2;
+ z=_vtkmprbasedata -> GetMaxPositionZ()/2;
+ _vtkmprbasedata->SetX( x );
+ _vtkmprbasedata->SetY( y );
+ _vtkmprbasedata->SetZ( z );
+
}
if(_vtkmpr2Dview[0]!=NULL) {_vtkmpr2Dview[0] -> Configure();}
if (_vtkmpr2Dview_B[2]!=NULL) { _vtkmpr2Dview_B[2] -> Configure(); }
- if (_vtkmprbasedata!=NULL)
- {
- _vtkmprbasedata->SetX( x );
- _vtkmprbasedata->SetY( y );
- _vtkmprbasedata->SetZ( z );
- }
+
if (_vtkplane2Dview!=NULL){_vtkplane2Dview -> Configure();}
if (_widgetMesure!=NULL){_widgetMesure -> ConfigureA(_vtkplane2Dview);}
}
//----------------------------------------------------------------------------
-vtkMPRBaseData *wxMPRWidget::GetVtkMPRBaseData(){
+vtkMPRBaseData *wxMPRWidget::GetVtkMPRBaseData(){
return _vtkmprbasedata;
}
//----------------------------------------------------------------------------