[IGSTK-Developers] igstkImageReader & ImageSpatialObject
Patrick Cheng
cheng at isis.georgetown.edu
Thu Sep 8 09:47:08 EDT 2005
Hi everyone,
I have some question about the design of these two classes.
It seems that the igstkImageReader is essentially a itkImageToVTKFilter,
and the inheritance relation is:
igstkImageReader <-- igstkDICOMImageReader <-- igstkCTImageReader
and in the igstkImageSpatialObject it uses the CTImageReader and the
GetVTKImage() method to pass the data to
ImageSpatialObjectRepresentation. the internal itkImageSpatialObject
actually is not used at all.
Here is my question:
1. If we encapsulate the Reader Class into the ImageSpatialObject, it
will be very hard to extend. (if people wants to read in other kind of
data). So I think we should separate them and use the internal
itkImageSpatialObject->SetImage() method to pass the image data from
reader to igstkImageSpatialObject
2. itkImageToVTKFilter is actually a filter, need input image, it
behaves differently from ImageReader. I think we should not make this
class to be the base class of igstkImageReader. instead, put it into the
igstkImageSpatialObjectRepresentation. then we can use this filter and
the igstkImageSpatialObject->GetImage() method to filter the data to
VTKImageData and create actor for it.
3. Also the igstkImageSpatialObjectRepresentation class may be need to
branch into two class: igstkImageSpatialObject2DRepresentation and
igstkImageSpatialObject3DRepresentation. b/z we need implement different
rendering method for 2D (slice) and for 3D (volume or surface)
4. Also some small requirements: logger need to be added to
igstkImageSpatialObject; testing program need to be added for
igstkImageSpatialObjectRepresentation
I think this way, the pipe line is more clear.
Thank you.
Patrick
--
Peng (Patrick) Cheng
Research Engineer
cheng at isis.georgetown.edu
Imaging Science and Information Systems (ISIS) Center
Department of Radiology, Georgetown University Medical Center
2115 Wisconsin Avenue, Suite 603
Washington, DC, 20007
Work phone: 202-687-2902
Work fax: 202-784-3479
Cell phone: 202-674-5626
More information about the IGSTK-Developers
mailing list