X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=src%2FcreaImageIOWxViewer.cpp;h=ee2258aa2ea73d8b4b921e1e3dba275799a261dd;hb=refs%2Fheads%2Fvtk7itk4wx3;hp=065c686194d953556a6b220e08150187370a0505;hpb=c847ad25d22a984b4c61d4c60649c3af4422327a;p=creaImageIO.git diff --git a/src/creaImageIOWxViewer.cpp b/src/creaImageIOWxViewer.cpp index 065c686..ee2258a 100644 --- a/src/creaImageIOWxViewer.cpp +++ b/src/creaImageIOWxViewer.cpp @@ -1,11 +1,36 @@ +/* +# --------------------------------------------------------------------- +# +# 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. +# ------------------------------------------------------------------------ +*/ #include -#include + #include #include #include #include -#include #include #include #include @@ -60,7 +85,7 @@ namespace creaImageIO mLastImageShown = NULL; // previewer - mInteractor = new crea::creawxVTKRenderWindowInteractor(this,-1); + mInteractor = new crea::wxVTKRenderWindowInteractor(this,-1); mInteractor->UseCaptureMouseOn(); mViewer = vtkImageViewer2::New(); @@ -119,7 +144,7 @@ namespace creaImageIO GimmickDebugMessage(6,"WxViewer::SetImageVector"<SetMax(pointers.size()); + mslide->SetMax((int)pointers.size()); mslide->SetMin(1); // Refresh don't work, TO MODIFY mslide->Refresh(); @@ -182,20 +207,40 @@ namespace creaImageIO <SetInput(im); +#else + mViewer->SetInputData(im); +#endif mViewer->SetSlice( 0 ); int x1,x2,y1,y2,z1,z2; double spx,spy,spz; +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 im->Update(); +#else + // ... +#endif + //std::cout << "in WxViewer::ShowImage PrintSelf() ="; //im->PrintSelf(std::cout, vtkIndent(2)); im->GetSpacing(spx,spy,spz); //im->GetExtent (x1,x2,y1,y2,z1,z2); // JPR + + +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 im->GetWholeExtent (x1,x2,y1,y2,z1,z2); +#else + im->GetExtent (x1,x2,y1,y2,z1,z2); +#endif + + /* std::cout << "in WxViewer::ShowImage GetWholeExtent ext ="; std::cout << " [x1]=" << x1; @@ -232,6 +277,15 @@ std::cout << std::endl; mViewer->SetColorLevel(0.5 * (range[1] + range[0])); mViewer->GetRenderer()->ResetCamera(); + + //EED 21 mars 2012 FLIP problem ..PLOP.. + vtkCamera *camera =mViewer->GetRenderer()->GetActiveCamera(); + camera->SetViewUp ( 0 , -1 , 0 ); + camera->SetPosition ((x1+x2)/2 , (y1+y2)/2 , -10000); + camera->SetFocalPoint ((x1+x2)/2 , (y1+y2)/2 , 0 ); + camera->SetParallelScale( (x2-x1)/3.0 ); + + double bounds[6]; mViewer->GetRenderer()->ComputeVisiblePropBounds(bounds);