X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvSlicerManager.cxx;h=2622c6b9b7459c70c80da89383568216682b0388;hb=95c9ed39f813cd2a90d5dfbee394b50425627e8e;hp=4aa48cf562d8d92e36ec2aacbce888062bb0a6dd;hpb=708c3b7aed9185a46428310d113fe59562a8d642;p=clitk.git diff --git a/vv/vvSlicerManager.cxx b/vv/vvSlicerManager.cxx index 4aa48cf..2622c6b 100644 --- a/vv/vvSlicerManager.cxx +++ b/vv/vvSlicerManager.cxx @@ -338,8 +338,9 @@ void vvSlicerManager::SetSlicerWindow(int i, vtkRenderWindow* RW) void vvSlicerManager::SetInteractorStyleNavigator(int i, vtkInteractorStyle* style) { - vvSlicerManagerCallback *smc = vvSlicerManagerCallback::New(); + vvSlicerManagerCommand *smc = vvSlicerManagerCommand::New(); smc->SM = this; + smc->SetSlicerNumber(i); mSlicers[i]->GetRenderWindow()->GetInteractor()->SetInteractorStyle(style); mSlicers[i]->GetRenderWindow()->GetInteractor()-> @@ -806,8 +807,6 @@ void vvSlicerManager::UpdateSliceRange(int slicer) void vvSlicerManager::SetPreset(int preset) { - double range[2]; - mImage->GetScalarRange(range); //vtkLookupTable* LUT = static_cast(mSlicers[0]->GetWindowLevel()->GetLookupTable()); double window = mSlicers[0]->GetColorWindow(); double level = mSlicers[0]->GetColorLevel(); @@ -828,6 +827,8 @@ void vvSlicerManager::SetPreset(int preset) } else { + double range[2]; + mImage->GetScalarRange(range); window = range[1] - range[0]; level = (range[1] + range[0])* 0.5; } @@ -868,6 +869,16 @@ void vvSlicerManager::SetPreset(int preset) // SetColorMap(-1); //} } + +void vvSlicerManager::SetLocalColorWindowing(const int slicer) +{ + double min, max; + this->mSlicers[slicer]->GetExtremasAroundMousePointer(min, max); + this->SetColorWindow(max-min); + this->SetColorLevel(0.5*(min+max)); + this->Render(); +} + void vvSlicerManager::SetColorMap() { SetColorMap(mColorMap);