From ac38b6a073d9cdf684358c2a0fd6a69f1709110e Mon Sep 17 00:00:00 2001
From: Alvaro Sanchez <alvaro.sanchez@kitware.com>
Date: Wed, 29 Mar 2017 12:06:08 -0400
Subject: [PATCH] Using opacityTablesMap for consistency.

This instead of hand-crafting the variable names again in the shader
replacement, given that they are cached already in the map.
---
 .../VolumeOpenGL2/vtkVolumeShaderComposer.h   | 30 +++++++++----------
 1 file changed, 15 insertions(+), 15 deletions(-)

diff --git a/Rendering/VolumeOpenGL2/vtkVolumeShaderComposer.h b/Rendering/VolumeOpenGL2/vtkVolumeShaderComposer.h
index 6bb1d6a1ad..988b1033aa 100644
--- a/Rendering/VolumeOpenGL2/vtkVolumeShaderComposer.h
+++ b/Rendering/VolumeOpenGL2/vtkVolumeShaderComposer.h
@@ -930,7 +930,7 @@ namespace vtkvolume
 
         shaderStr += std::string("\
           \nfloat computeOpacity(vec4 scalar, int component)\
-          \n  {");
+          \n{");
 
         for (int i = 0; i < noOfComponents; ++i)
         {
@@ -939,37 +939,37 @@ namespace vtkvolume
             \n  if (component == " + toString.str() + ")");
 
           shaderStr += std::string("\
-            \n    {\
-            \n    return texture2D(in_opacityTransferFunc");
-          shaderStr += (i == 0 ? "" : toString.str());
-          shaderStr += std::string(",vec2(scalar[" + toString.str() + "],0)).r;\
-            \n    }");
+            \n  {\
+            \n    return texture2D(" + opacityTableMap[i]);
+
+          shaderStr += std::string(",vec2(scalar[" + toString.str() + "], 0)).r;\
+            \n  }");
 
            // Reset
            toString.str("");
            toString.clear();
         }
 
-        shaderStr += std::string("\n  }");
+        shaderStr += std::string("\n}");
         return shaderStr;
     }
     else if (noOfComponents == 2 && !independentComponents)
     {
       return std::string("\
-        \nuniform sampler2D in_opacityTransferFunc;\
+        \nuniform sampler2D " + opacityTableMap[0] + ";\
         \nfloat computeOpacity(vec4 scalar)\
-        \n  {\
-        \n  return texture2D(in_opacityTransferFunc, vec2(scalar.y, 0)).r;\
-        \n  }");
+        \n{\
+        \n  return texture2D(" + opacityTableMap[0] + ", vec2(scalar.y, 0)).r;\
+        \n}");
     }
     else
     {
       return std::string("\
-        \nuniform sampler2D in_opacityTransferFunc;\
+        \nuniform sampler2D " + opacityTableMap[0] + ";\
         \nfloat computeOpacity(vec4 scalar)\
-        \n  {\
-        \n  return texture2D(in_opacityTransferFunc, vec2(scalar.w, 0)).r;\
-        \n  }");
+        \n{\
+        \n  return texture2D(" + opacityTableMap[0] + ", vec2(scalar.w, 0)).r;\
+        \n}");
     }
   }
 
-- 
GitLab