From 807bd72b37c2394a9802bf916f314f8fba775f37 Mon Sep 17 00:00:00 2001 From: Paul Yushkevich Date: Fri, 3 Jan 2025 16:23:04 -0500 Subject: [PATCH] FIX: segmentations layers should not have linear interpolation --- GUI/Renderer/GenericSliceRenderer.cxx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/GUI/Renderer/GenericSliceRenderer.cxx b/GUI/Renderer/GenericSliceRenderer.cxx index de807cd8..48149548 100644 --- a/GUI/Renderer/GenericSliceRenderer.cxx +++ b/GUI/Renderer/GenericSliceRenderer.cxx @@ -776,8 +776,11 @@ void GenericSliceRenderer::UpdateLayerApperances() // Pass the interpolation mode to the layer (for non-orthogonal slicing) const GlobalDisplaySettings *gds = m_Model->GetParentUI()->GetGlobalDisplaySettings(); - bool is_linear = gds->GetGreyInterpolationMode() == GlobalDisplaySettings::LINEAR; - it.GetLayer()->SetSlicingInterpolationMode(is_linear ? ImageWrapperBase::LINEAR : ImageWrapperBase::NEAREST); + bool is_linear = + (it.GetRole() != LABEL_ROLE) && + (gds->GetGreyInterpolationMode() == GlobalDisplaySettings::LINEAR); + it.GetLayer()->SetSlicingInterpolationMode( + is_linear ? ImageWrapperBase::LINEAR : ImageWrapperBase::NEAREST); // For orthogonal slicing, interpolation is passed to the texture assembly auto *lta = GetLayerTextureAssembly(it.GetLayer());