Volume rendering 'clipping?' with ImageData.setSpacing([1, 1, 10]) and zoom/dolly-in

Hello VTK Folks,

I’ve got 512 by 512 images of around ~200 frames I’ve put into a vtkImageData. The frame are spaced apart in physical space so I’d like to scale the rendered volume along the Z axis. Use imageData.setSpacing([1, 1, 10]) yeah?

But when I use the mouse wheel to zoom in with the default trackball interactor and look along the Z axis, the volume render appears “clipped.” I get the same effect with Examples\Volume\VolumeMapperParallelProjection when I add the setSpacing or scale the volume actor like so:

vtk-js\Examples\Volume\VolumeMapperParallelProjection

reader
  .setUrl('https://kitware.github.io/vtk-js/data/volume/LIDC2.vti')
  .then(() => {
  reader.loadData().then(() => {
  const imageData = reader.getOutputData();
  
  // imageData.setSpacing([1, 1, 7.5]); // small clip volume when zoomed 
  actor.setScale([1, 1, 7.5]); // same

Normal actors (non-volume) render just fine. How should I non-uniformly scale ImageData for volume rendering?

Update: When toggling ON parallel projection, the clipping goes away.

Much thanks for any advice,
Paul

Seems the volume clipping happens when the view forward vector is within 45 degrees of the volume’s long axis. So when I’m predominantly facing down the + or - z axis. Hmmm.