diff --git a/src/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h b/src/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h
index 9d5202cd8d3dab633de3834891ac5607d1b9b85a..80dc7fa02cf40024486a6a5f3b065aad48c40e16 100644
--- a/src/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h
+++ b/src/GridGenerator/geometries/TriangularMesh/TriangularMeshStrategy.h
@@ -94,12 +94,22 @@ public:
         const real maxZ = max.z;
 
 
-        for (uint i = 0; i < grid->getSize(); i++)
-            grid->setNodeTo(i, InnerType);
+        real x, y, z;
+        for (z = minZ; z <= maxZ; z += grid->getDelta())
+        {
+            for (y = minY; y <= maxY; y += grid->getDelta())
+            {
+                for (x = minX; x <= maxX; x += grid->getDelta())
+                {
+                    grid->setNodeTo(grid->transCoordToIndex(x, y, z), InnerType);
+                }
+            }
+        }
+
+
 
         int counter = 0;
 
-        real x, y, z;
         // Test line intersection
         for (z = minZ; z <= maxZ; z += grid->getDelta())
         {