# Proper use of vtkImageReslice?

**URL:** https://discourse.vtk.org/t/proper-use-of-vtkimagereslice/7797
**Category:** Support
**Created:** [February 8, 2022, 10:24pm UTC](https://discourse.vtk.org/t/proper-use-of-vtkimagereslice/7797 "2022-02-08T22:24:19Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![MJJ](https://discourse.vtk.org/letter_avatar_proxy/v4/letter/m/b487fb/32.png) [@MJJ](https://discourse.vtk.org/u/MJJ)
#### Post date: [February 8, 2022, 10:24pm UTC](https://discourse.vtk.org/t/proper-use-of-vtkimagereslice/7797/1 "2022-02-08T22:24:19Z")

</div>

I have a `vtkImageData` called `img` that I want to use the `vtkImageReslice` algorithm on.

I want to reslice this image data to create a subimage that has its voxels aligned to a different coordinate system.

To do this i am using the following code:

```auto
reslice = vtk.vtkImageReslice()
reslice.SetInterpolationModeToLinear()
reslice.SetResliceAxes(get_subimg_rotation_matrix4x4())
reslice.SetOutputOrigin(get_subimg_origin())
dims = get_subimg_dimensions()
reslice.SetOutputExtent(0, dims[0]-1, 0, dims[1]-1, 0, dims[2]-1)
reslice.SetOutputSpacing(get_subimg_spacing())
transform = vtk.vtkTransform()
transform .SetMatrix(get_subimg_rotation_matrix4x4())
reslice.SetResliceTransform(transform.GetInverse())
reslice.SetInputData(img)
reslice.Update()
subimg = reslice.GetOutput()

```

Here, get\_subimg\_rotation\_matrix4x4() just returns a rotation + translation matrix that defines the reslice axes, like:

```auto
[
  [cos(theta), -sin(theta), 0.0, origin_x],
  [sin(theta), cos(theta), 0.0, origin_y],
  [0.0, 0.0, 1.0, origin_z],
  [0.0, 0.0, 0.0, 1.0]
]

```

I’m confused because the `subimg` output does not have a direction matrix aligned with the `ResliceAxes`. And so when I visualize these images, they look as if their axes are aligned, even though `ResliceAxes` have been set to be rotated.

Can anyone post a working example of what I’m trying to accomplish?
