]> Creatis software - creaMaracasVisu.git/commitdiff
external mvtkmprbasedata, to get the point
authorJuan Prieto <Juan.Prieto@creatis.insa-lyon.fr>
Fri, 26 Mar 2010 14:52:24 +0000 (14:52 +0000)
committerJuan Prieto <Juan.Prieto@creatis.insa-lyon.fr>
Fri, 26 Mar 2010 14:52:24 +0000 (14:52 +0000)
lib/maracasVisuLib/src/interface/wxWindows/widgets/OpenImageDialog.cxx
lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracas_N_ViewersWidget.cxx

index 354c473c91fe6c538d7ec661432193ab9d6f37ae..6b635e1388d06f958bc2485e69eead78f4ba6fc1 100644 (file)
@@ -70,7 +70,8 @@ namespace creaMaracasVisuKernel{
                }
                
                if(!gimmickfound || !usegimmick){
-                       //int i, j, k, *extint;
+                       //int i, j, k, extint[6];
+                       //double spacing[3];
                        //unsigned short* ptr1, *ptr2;
                        wxFileDialog* FD =
                          new wxFileDialog( 0, _T("Read Image"),wxEmptyString,wxEmptyString, _T("*.mhd"));
@@ -83,13 +84,16 @@ namespace creaMaracasVisuKernel{
                                reader->Update();
                                img = vtkImageData::New();
                                img->DeepCopy(reader->GetOutput());
+                               //reader->GetOutput()->Delete();
                                reader->Delete();
-                               /*img->SetSpacing(reader->GetOutput()->GetSpacing());
-                               extint = reader->GetOutput()->GetExtent();
+                               /*std::cout<<"image reference count "<<img->GetReferenceCount()<<std::endl;
+                               reader->GetOutput()->GetSpacing(spacing);
+                               img->SetSpacing(spacing);
+                               reader->GetOutput()->GetExtent(extint);
                                img->SetExtent(extint);
-                               img->SetScalarType(reader->GetOutput()->GetScalarType());
-                               img->SetDimensions(reader->GetOutput()->GetDimensions());
+                               img->SetScalarType(reader->GetOutput()->GetScalarType());                               
                                img->AllocateScalars();
+                               std::cout<<"image reference count "<<img->GetReferenceCount()<<std::endl;
                                for (i=extint[0];i <= extint[1];i++){
                                        for (j=extint[2];j<=extint[3];j++){
                                                for (k=extint[4];k<=extint[5];k++){
@@ -99,7 +103,9 @@ namespace creaMaracasVisuKernel{
                                                                *ptr2 = *ptr1;
                                                }
                                        }
-                               }*/                             
+                               }*/
+                               
+                               std::cout<<"image reference count "<<img->GetReferenceCount()<<std::endl;
                        }
                        //delete FD;
                }
@@ -108,7 +114,7 @@ namespace creaMaracasVisuKernel{
        //-------------------------------------------------------------------
        OpenImageDialog::~OpenImageDialog()
        {
-               img = NULL;             
+               img = NULL;
        }
 
        vtkImageData* OpenImageDialog::getImageData(){          
index ee3c4e07b2083f6a8e1d6c75920bf465fa74c4e1..59716654f322010789873f7a2fe87665f0ce2eb4 100644 (file)
@@ -3,8 +3,8 @@
   Program:   wxMaracas
   Module:    $RCSfile: wxMaracas_N_ViewersWidget.cxx,v $
   Language:  C++
-  Date:      $Date: 2010/03/25 08:50:32 $
-  Version:   $Revision: 1.15 $
+  Date:      $Date: 2010/03/26 14:52:24 $
+  Version:   $Revision: 1.16 $
 
   Copyright: (c) 2002, 2003
   License:
                        delete mvtkmprbasedata;
                }
                
-               /*marImageData  *marimagedata   = new marImageData( imagedata );                        
+               marImageData    *marimagedata   = new marImageData( imagedata );                        
                mvtkmprbasedata                                 = new vtkMPRBaseData(); 
-               mvtkmprbasedata->SetMarImageData(marimagedata);*/
+               mvtkmprbasedata->SetMarImageData(marimagedata);
                
                if(_currentwxw != NULL){
                        _currentwxw->Show(false);
                //std::cout<<"size "<<nTypeView->size()<<std::endl;
                if (nTypeView->size()==1)
                {
-                       wxwindow1 = new wxMaracas_ViewerWidget(this, imagedata, (*nTypeView)[0]);
+                       wxwindow1 = new wxMaracas_ViewerWidget(this, imagedata, (*nTypeView)[0], mvtkmprbasedata);
 
                        wxwindow1->ConfigureVTK();
                        wxwindow = wxwindow1;
                }else   if (nTypeView->size()==2)       {
                        wxSplitterWindow        *spliter        = new wxSplitterWindow( this , -1);
                        spliter->SetMinimumPaneSize(1);
-                       wxwindow1 = new wxMaracas_ViewerWidget(spliter, imagedata, (*nTypeView)[0]);
-                       wxwindow2 = new wxMaracas_ViewerWidget(spliter, imagedata, (*nTypeView)[1]);
+                       wxwindow1 = new wxMaracas_ViewerWidget(spliter, imagedata, (*nTypeView)[0], mvtkmprbasedata);
+                       wxwindow2 = new wxMaracas_ViewerWidget(spliter, imagedata, (*nTypeView)[1], mvtkmprbasedata);
                        wxwindow1->ConfigureVTK();
                        wxwindow2->ConfigureVTK();
                        spliter -> SplitVertically( wxwindow1 , wxwindow2  );
                        wxSplitterWindow        *spliterA       = new wxSplitterWindow( spliter , -1);
                        spliter->SetMinimumPaneSize(1);
                        spliterA->SetMinimumPaneSize(1);
-                       wxwindow1 = new wxMaracas_ViewerWidget(spliter , imagedata, (*nTypeView)[0]);
-                       wxwindow2 = new wxMaracas_ViewerWidget(spliterA, imagedata, (*nTypeView)[1]);
-                       wxwindow3 = new wxMaracas_ViewerWidget(spliterA, imagedata, (*nTypeView)[2]);
+                       wxwindow1 = new wxMaracas_ViewerWidget(spliter , imagedata, (*nTypeView)[0], mvtkmprbasedata);
+                       wxwindow2 = new wxMaracas_ViewerWidget(spliterA, imagedata, (*nTypeView)[1], mvtkmprbasedata);
+                       wxwindow3 = new wxMaracas_ViewerWidget(spliterA, imagedata, (*nTypeView)[2], mvtkmprbasedata);
                        wxwindow1->ConfigureVTK();
                        wxwindow2->ConfigureVTK();
                        wxwindow3->ConfigureVTK();
                        spliter->SetMinimumPaneSize(1);
                        spliterA->SetMinimumPaneSize(1);
                        spliterB->SetMinimumPaneSize(1);
-                       wxwindow1 = new wxMaracas_ViewerWidget(spliterA, imagedata, (*nTypeView)[0]);
-                       wxwindow2 = new wxMaracas_ViewerWidget(spliterA, imagedata, (*nTypeView)[1]);
-                       wxwindow3 = new wxMaracas_ViewerWidget(spliterB, imagedata, (*nTypeView)[2]);
-                       wxwindow4 = new wxMaracas_ViewerWidget(spliterB, imagedata, (*nTypeView)[3]);
+                       wxwindow1 = new wxMaracas_ViewerWidget(spliterA, imagedata, (*nTypeView)[0], mvtkmprbasedata);
+                       wxwindow2 = new wxMaracas_ViewerWidget(spliterA, imagedata, (*nTypeView)[1], mvtkmprbasedata);
+                       wxwindow3 = new wxMaracas_ViewerWidget(spliterB, imagedata, (*nTypeView)[2], mvtkmprbasedata);
+                       wxwindow4 = new wxMaracas_ViewerWidget(spliterB, imagedata, (*nTypeView)[3], mvtkmprbasedata);
                        wxwindow1->ConfigureVTK();
                        wxwindow2->ConfigureVTK();
                        wxwindow3->ConfigureVTK();