From 851b1be627ff0a73dcec2a92eca185d6d94643ec Mon Sep 17 00:00:00 2001 From: Noah Trebesch Date: Thu, 5 Nov 2015 19:01:15 -0600 Subject: [PATCH] Fixed correct_mesh_orientation for when spacing!=(1,1,1). --- skimage/measure/_marching_cubes.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/skimage/measure/_marching_cubes.py b/skimage/measure/_marching_cubes.py index a334fbbd..96fb1102 100644 --- a/skimage/measure/_marching_cubes.py +++ b/skimage/measure/_marching_cubes.py @@ -228,10 +228,14 @@ def correct_mesh_orientation(volume, verts, faces, spacing=(1., 1., 1.), import scipy.ndimage as ndi # Calculate gradient of `volume`, then interpolate to vertices in `verts` - grad_x, grad_y, grad_z = np.gradient(volume, *spacing) + grad_x, grad_y, grad_z = np.gradient(volume) # Fancy indexing to define two vector arrays from triangle vertices actual_verts = verts[faces] + actual_verts[:, 0] /= spacing[0] + actual_verts[:, 1] /= spacing[1] + actual_verts[:, 2] /= spacing[2] + a = actual_verts[:, 0, :] - actual_verts[:, 1, :] b = actual_verts[:, 0, :] - actual_verts[:, 2, :]