X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvSlicerManager.cxx;h=ccb767c908aae568ac08b164e5e8f8101a14c1d5;hb=c7ed257e825d4049138e40a28c9f815d47647efd;hp=913ede73da2f92f3cfc351467ecf001399d12b66;hpb=d42a9d6d14375ab723bc7ab0bf5b85b8fb84991e;p=clitk.git diff --git a/vv/vvSlicerManager.cxx b/vv/vvSlicerManager.cxx index 913ede7..ccb767c 100644 --- a/vv/vvSlicerManager.cxx +++ b/vv/vvSlicerManager.cxx @@ -146,7 +146,7 @@ void vvSlicerManager::ToggleContourSuperposition() //---------------------------------------------------------------------------- -bool vvSlicerManager::SetImage(std::string filename, LoadedImageType type, int n) +bool vvSlicerManager::SetImage(std::string filename, LoadedImageType type, int n, unsigned int slice) { mType = type; if (mReader == NULL) @@ -154,6 +154,7 @@ bool vvSlicerManager::SetImage(std::string filename, LoadedImageType type, int n std::vector filenames; filenames.push_back(filename); mReader->SetInputFilenames(filenames); + mReader->SetSlice(slice); // Only used for SLICED type mReader->Update(type); SetFilename(filename, n); @@ -467,6 +468,10 @@ void vvSlicerManager::ToggleInterpolation() bool interpolate=!(mSlicers[0]->GetImageActor()->GetInterpolate()); for ( unsigned int i = 0; i < mSlicers.size(); i++) { mSlicers[i]->GetImageActor()->SetInterpolate(interpolate); + if (mSlicers[i]->GetOverlayActor()) + mSlicers[i]->GetOverlayActor()->SetInterpolate(interpolate); + if (mSlicers[i]->GetFusionActor()) + mSlicers[i]->GetFusionActor()->SetInterpolate(interpolate); } } //---------------------------------------------------------------------------- @@ -1015,18 +1020,10 @@ void vvSlicerManager::SetPreset(int preset) std::string component_type=mImage->GetScalarTypeAsITKString(); switch (preset) { case 0: - if (component_type == "unsigned_char") { - window = 255; - level = 127; - } else if (component_type == "short") { - window = 2000; - level = 0; - } else { - double range[2]; - mImage->GetScalarRange(range); - window = range[1] - range[0]; - level = (range[1] + range[0])* 0.5; - } + double range[2]; + mImage->GetScalarRange(range); + window = range[1] - range[0]; + level = (range[1] + range[0])* 0.5; break; case 1: window = 2000;