X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=packages%2Fwxvtk%2Fsrc%2FwxvtkImageViewer2.cxx;h=0e96065b9a840aacc6934a110fbc50b21cc105e2;hb=5529db4fdab74bdb508c71ea3c2b8298a1f14a74;hp=45ab995f3b55af353ac565e89b45bf1de3836cd6;hpb=bf1bdd88621c0556024de37768c2d17d12f2a265;p=bbtk.git diff --git a/packages/wxvtk/src/wxvtkImageViewer2.cxx b/packages/wxvtk/src/wxvtkImageViewer2.cxx index 45ab995..0e96065 100644 --- a/packages/wxvtk/src/wxvtkImageViewer2.cxx +++ b/packages/wxvtk/src/wxvtkImageViewer2.cxx @@ -1,3 +1,30 @@ +/* + # --------------------------------------------------------------------- + # + # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image + # pour la SantÈ) + # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton + # Previous Authors : Laurent Guigues, Jean-Pierre Roux + # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil + # + # This software is governed by the CeCILL-B license under French law and + # abiding by the rules of distribution of free software. You can use, + # modify and/ or redistribute the software under the terms of the CeCILL-B + # license as circulated by CEA, CNRS and INRIA at the following URL + # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html + # or in the file LICENSE.txt. + # + # As a counterpart to the access to the source code and rights to copy, + # modify and redistribute granted by the license, users are provided only + # with a limited warranty and the software's author, the holder of the + # economic rights, and the successive licensors have only limited + # liability. + # + # The fact that you are presently reading this means that you have had + # knowledge of the CeCILL-B license and that you accept its terms. + # ------------------------------------------------------------------------ */ + + /*========================================================================= Program: Visualization Toolkit @@ -26,7 +53,13 @@ #include "vtkRenderWindowInteractor.h" #include "vtkRenderer.h" -vtkCxxRevisionMacro(wxvtkImageViewer2, "$Revision: 1.6 $"); +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 +vtkCxxRevisionMacro(wxvtkImageViewer2, "$Revision: 1.8 $"); +#else + //... +#endif + vtkStandardNewMacro(wxvtkImageViewer2); //---------------------------------------------------------------------------- @@ -195,8 +228,15 @@ void wxvtkImageViewer2::GetSliceRange(int &min, int &max) vtkImageData *input = this->GetInput(); if (input) { + +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 input->UpdateInformation(); int *w_ext = input->GetWholeExtent(); +#else + int *w_ext = input->GetExtent(); +#endif + min = w_ext[this->SliceOrientation * 2]; max = w_ext[this->SliceOrientation * 2 + 1]; } @@ -208,8 +248,15 @@ int* wxvtkImageViewer2::GetSliceRange() vtkImageData *input = this->GetInput(); if (input) { +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 input->UpdateInformation(); +printf("EED Warning wxvtkImageViewer2::GetSliceRange GetWholeExtent()[2] ??? /n"); return input->GetWholeExtent() + this->SliceOrientation * 2; +#else +printf("EED Warning wxvtkImageViewer2::GetSliceRange GetExtent()[2] ??? /n"); + return input->GetExtent() + this->SliceOrientation * 2; +#endif } return NULL; } @@ -315,8 +362,8 @@ void wxvtkImageViewer2::UpdateOrientation() switch (this->SliceOrientation) { case wxvtkImageViewer2::SLICE_ORIENTATION_YZ: - cam->SetViewUp(0,0,-1); - cam->SetPosition(-1,0,0); // -1 if medical ? + cam->SetViewUp(0,0,1); + cam->SetPosition(1,0,0); // -1 if medical ? cam->SetFocalPoint(0,0,0); break; @@ -332,7 +379,7 @@ void wxvtkImageViewer2::UpdateOrientation() cam->SetFocalPoint(0,0,0); break; } - + /* switch (this->SliceOrientation) { @@ -371,8 +418,13 @@ void wxvtkImageViewer2::UpdateDisplayExtent() } // std::cout << "--- wxvtkImageViewer2::UpdateDisplayExtent()"<UpdateInformation(); int *w_ext = input->GetWholeExtent(); +#else + int *w_ext = input->GetExtent(); +#endif // std::cout << "ext = " // <InteractorStyle->GetAutoAdjustCameraClippingRange()) { this->Renderer->ResetCameraClippingRange(); - } - else - { + } else { vtkCamera *cam = this->Renderer->GetActiveCamera(); if (cam) { @@ -433,9 +483,9 @@ void wxvtkImageViewer2::UpdateDisplayExtent() spacing[2]; // JPR?? cam->SetClippingRange( range - avg_spacing * 3.0, range + avg_spacing * 3.0); - } - } - } + } // if cam + } // if InteractorStyle + } // if Renderer } //---------------------------------------------------------------------------- @@ -511,10 +561,17 @@ public: if (event == vtkCommand::ResetWindowLevelEvent) { + +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 this->IV->GetInput()->UpdateInformation(); this->IV->GetInput()->SetUpdateExtent (this->IV->GetInput()->GetWholeExtent()); this->IV->GetInput()->Update(); +#else + //... +#endif + double *range = this->IV->GetInput()->GetScalarRange(); this->IV->SetColorWindow(range[1] - range[0]); this->IV->SetColorLevel(0.5 * (range[1] + range[0])); @@ -641,7 +698,13 @@ void wxvtkImageViewer2::InstallPipeline() if (this->ImageActor && this->WindowLevel) { +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 this->ImageActor->SetInput(this->WindowLevel->GetOutput()); +#else + this->WindowLevel->Update(); + this->ImageActor->SetInputData(this->WindowLevel->GetOutput()); +#endif } } @@ -650,7 +713,12 @@ void wxvtkImageViewer2::UnInstallPipeline() { if (this->ImageActor) { +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 this->ImageActor->SetInput(NULL); +#else + this->ImageActor->SetInputData(NULL); +#endif } if (this->Renderer && this->ImageActor) @@ -682,8 +750,15 @@ void wxvtkImageViewer2::Render() input) { + +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 input->UpdateInformation(); int *w_ext = input->GetWholeExtent(); +#else + int *w_ext = input->GetExtent(); +#endif + int xs = 0, ys = 0; // std::cout << "wxvtkImageViewer2::Render ext = " @@ -757,7 +832,13 @@ int wxvtkImageViewer2::GetOffScreenRendering() void wxvtkImageViewer2::SetInput(vtkImageData *in) { // std::cout << "### wxvtkImageViewer2::SetInput"<WindowLevel->SetInput(in); +#else + this->WindowLevel->SetInputData(in); +#endif + this->UpdateDisplayExtent(); // LG 03/12/08 // FirstRender = 1;