wxMaracas_ManualTree_MPRDlg.cxx

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   wxMaracas
00004   Module:    $RCSfile: wxMaracas_ManualTree_MPRDlg.cxx,v $
00005   Language:  C++
00006   Date:      $Date: 2009/05/14 13:54:54 $
00007   Version:   $Revision: 1.1 $
00008 
00009   Copyright: (c) 2002, 2003
00010   License:
00011 
00012      This software is distributed WITHOUT ANY WARRANTY; without even
00013      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00014      PURPOSE.  See the above copyright notice for more information.
00015 
00016 =========================================================================*/
00017 
00018 #include "wxMaracas_ManualTree_MPRDlg.h"
00019 #include <wx/splitter.h>
00020 
00021 
00022 //----------------------------------------------------------------------------
00023 //----------------------------------------------------------------------------
00024 //----------------------------------------------------------------------------
00025 
00026 wxMaracas_ManualTree_MPRDlg::wxMaracas_ManualTree_MPRDlg( wxWindow* parent, marImageData* marimagedata,double voxelSize)
00027  : wxDialog( parent, -1,_T("Manual Axis"),wxDefaultPosition,wxDefaultSize,wxCAPTION|wxRESIZE_BORDER  | wxMAXIMIZE_BOX )
00028 {       
00029 //      SetSize(700,700);
00030         Maximize(true);
00031         _parent=parent;
00032         wxSplitterWindow *splitPanel = new wxSplitterWindow(this ,-1);
00033         _manualTreeMPR = new wxMaracas_ManualTree_MPR(splitPanel,marimagedata,voxelSize);
00034         wxPanel *panel = new wxPanel (splitPanel, -1);
00035 
00036         wxButton *btnAccept = new wxButton (panel, wxID_OK, _T("Accept"));
00037         wxButton *btnCancel = new wxButton (panel, wxID_CANCEL, _T("Cancel"));
00038 
00039         wxBoxSizer* sizerH1 = new wxBoxSizer( wxHORIZONTAL );
00040         sizerH1->Add(btnAccept , 1, wxALL|wxEXPAND, 0);
00041         sizerH1->Add(btnCancel , 1, wxALL|wxEXPAND, 0);
00042         panel->SetAutoLayout(true);
00043         panel->SetSizer(sizerH1);
00044         Layout();
00045 //EEDxx2.4
00046 //      FitInside();
00047 
00048 
00049         splitPanel->SplitHorizontally(_manualTreeMPR,panel );
00050         splitPanel->SetMinimumPaneSize(50);
00051 
00052         wxBoxSizer* sizer = new wxBoxSizer( wxVERTICAL );
00053         sizer->Add(splitPanel , 1, wxALL|wxEXPAND, 0);
00054         SetAutoLayout(true);
00055         SetSizer(sizer);
00056         Layout();
00057 //EEDxx2.4
00058 //      FitInside();
00059 }
00060 
00061 //----------------------------------------------------------------------------
00062 
00063 wxMaracas_ManualTree_MPRDlg::~wxMaracas_ManualTree_MPRDlg()
00064 {
00065 }
00066 
00067 //----------------------------------------------------------------------------
00068 
00069 void wxMaracas_ManualTree_MPRDlg::ConfigureVTK()
00070 {
00071         wxBusyCursor wait;
00072         _manualTreeMPR->ConfigureVTK();
00073 }
00074 
00075 //----------------------------------------------------------------------------
00076 
00077 void wxMaracas_ManualTree_MPRDlg::SetMarAxis( marAxis *maraxis  )
00078 {
00079         _maraxis=maraxis;
00080 }
00081 
00082 //----------------------------------------------------------------------------
00083 bool wxMaracas_ManualTree_MPRDlg::ExportPoints()
00084 {
00085         bool ok=false;
00086         double t,x,y,z;
00087         manualContourModel *manualcontourmodel = _manualTreeMPR->GetManualContourModel();
00088 
00089         double spc[3];
00090         _manualTreeMPR->GetVtkMPRBaseData()->GetImageData()->GetSpacing(spc);
00091 
00092         int sizeLstPoints = manualcontourmodel->GetSizeLstPoints(); 
00093 
00094         if ( sizeLstPoints>=2 ){ 
00095                 manualcontourmodel->UpdateSpline();
00096                 int i,max=200;
00097 //JSTG 25-02-08 ---------------------------------------------------
00098                 //double delta = ((double)sizeLstPoints-1) / (double)max;
00099                 for (i=0;i<max;i++)
00100                 {       
00101                         //t=delta*(double)i;
00102                         //manualcontourmodel->GetSplinePoint(t,x,y,z);
00103                         manualcontourmodel->GetSpline_i_Point(i,&x,&y,&z);
00104 //-----------------------------------------------------------------
00105                         x=x*spc[0];
00106                         y=y*spc[1];
00107                         z=z*spc[2];
00108                         _maraxis->AddPointToList(x, y, z,100);          
00109                 }
00110                 ok=true;
00111         }
00112         return ok;
00113 }
00114 
00115 
00116 
00117 // EOF - wxMaracas_ManualTree_MPRDlg.cxx
00118 
00119 
00120 
00121 

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1