[Insight-developers] proposed itk::Image changes

Damion Shelton dmshelto@andrew.cmu.edu
Mon, 05 Nov 2001 11:59:46 -0500


Based on our current understanding of how affine transforms are implemented 
in itk::Image, we'd like to make the following changes:

New private variables:

AffineTransformPointer m_IndexToPhysicalTransform
AffineTransformPointer m_PhysicalToIndexTransform

New public functions:

SetIndexToPhysicalTransform(AffineTransformPointer trans)
SetPhysicalToIndexTransform(AffineTransformPointer trans)
RebuildTransforms(void)

These changes accomplish the following:

1. Transforms are stored between calls to Get...Transform, rather than 
being rebuilt each time as is currently the case.

2. Non-affine transforms (derived from AffineTransform) or arbitrarily 
specified affine transforms can be inserted into the image via 
Set...Transform

3. The internal affine transform can be reconstructed by calling 
RebuildTransforms, e.g. after changing the origin or spacing of a 
rectilinear data set.

Any comments? We're planning on making these changes this afternoon if 
there aren't any problems; it shouldn't affect the interface to Image at 
all.

-Damion-