Inheritance diagram for DiScaleTemplate< T >:

Public Member Functions | |
| DiScaleTemplate (const int planes, const Uint16 columns, const Uint16 rows, const signed long left_pos, const signed long top_pos, const Uint16 src_cols, const Uint16 src_rows, const Uint16 dest_cols, const Uint16 dest_rows, const Uint32 frames, const int bits=0) | |
| constructor, scale clipping area. | |
| DiScaleTemplate (const int planes, const Uint16 src_cols, const Uint16 src_rows, const Uint16 dest_cols, const Uint16 dest_rows, const Uint32 frames, const int bits=0) | |
| constructor, scale whole image. | |
| virtual | ~DiScaleTemplate () |
| destructor | |
| void | scaleData (const T *src[], T *dest[], const int interpolate, const T value=0) |
| choose scaling/clipping algorithm depending on specified parameters. | |
Protected Attributes | |
| const signed long | Left |
| left coordinate of clipping area | |
| const signed long | Top |
| top coordinate of clipping area | |
| const Uint16 | Columns |
| width of source image | |
| const Uint16 | Rows |
| height of source image | |
Private Member Functions | |
| void | clipPixel (const T *src[], T *dest[]) |
| clip image to specified area (only inside image boundaries). | |
| void | clipBorderPixel (const T *src[], T *dest[], const T value) |
| clip image to specified area and add a border if necessary. | |
| void | replicatePixel (const T *src[], T *dest[]) |
| enlarge image by an integer factor. | |
| void | suppressPixel (const T *src[], T *dest[]) |
| shrink image by an integer divisor Pixels are suppressed independently in both directions. | |
| void | scalePixel (const T *src[], T *dest[]) |
| free scaling method without interpolation. | |
| void | interpolatePixel (const T *src[], T *dest[]) |
| free scaling method with interpolation. | |
| void | expandPixel (const T *src[], T *dest[]) |
| free scaling method with interpolation (only for expansion). | |
| void | reducePixel (const T *src[], T *dest[]) |
| free scaling method with interpolation (only for reduction). | |
with and without interpolation
Definition at line 100 of file discalet.h.
| DiScaleTemplate< T >::DiScaleTemplate | ( | const int | planes, | |
| const Uint16 | columns, | |||
| const Uint16 | rows, | |||
| const signed long | left_pos, | |||
| const signed long | top_pos, | |||
| const Uint16 | src_cols, | |||
| const Uint16 | src_rows, | |||
| const Uint16 | dest_cols, | |||
| const Uint16 | dest_rows, | |||
| const Uint32 | frames, | |||
| const int | bits = 0 | |||
| ) | [inline] |
constructor, scale clipping area.
| planes | number of planes (1 or 3) | |
| columns | width of source image | |
| rows | height of source image | |
| left_pos | left coordinate of clipping area | |
| top_pos | top coordinate of clipping area | |
| src_cols | width of clipping area | |
| src_rows | height of clipping area | |
| dest_cols | width of destination image (scaled image) | |
| dest_rows | height of destination image | |
| frames | number of frames | |
| bits | number of bits per plane/pixel |
Definition at line 120 of file discalet.h.
| DiScaleTemplate< T >::DiScaleTemplate | ( | const int | planes, | |
| const Uint16 | src_cols, | |||
| const Uint16 | src_rows, | |||
| const Uint16 | dest_cols, | |||
| const Uint16 | dest_rows, | |||
| const Uint32 | frames, | |||
| const int | bits = 0 | |||
| ) | [inline] |
constructor, scale whole image.
| planes | number of planes (1 or 3) | |
| src_cols | width of source image | |
| src_rows | height of source image | |
| dest_cols | width of destination image (scaled image) | |
| dest_rows | height of destination image | |
| frames | number of frames | |
| bits | number of bits per plane/pixel |
Definition at line 149 of file discalet.h.
| void DiScaleTemplate< T >::scaleData | ( | const T * | src[], | |
| T * | dest[], | |||
| const int | interpolate, | |||
| const T | value = 0 | |||
| ) | [inline] |
choose scaling/clipping algorithm depending on specified parameters.
| src | array of pointers to source image pixels | |
| dest | array of pointers to destination image pixels | |
| interpolate | interpolation algorithm (0 = no interpolation, 1 = pbmplus algorithm, 2 = c't algorithm) | |
| value | value to be set outside the image boundaries (used for clipping, default: 0) |
Definition at line 177 of file discalet.h.
References DicomImageClass::checkDebugLevel(), DiScaleTemplate< T >::clipBorderPixel(), DiScaleTemplate< T >::clipPixel(), DiScaleTemplate< T >::Columns, DiTransTemplate< T >::copyPixel(), DiTransTemplate< T >::Dest_X, DiTransTemplate< T >::Dest_Y, DicomImageClass::DL_DebugMessages, DicomImageClass::DL_Informationals, DiScaleTemplate< T >::expandPixel(), DiTransTemplate< T >::fillPixel(), DiScaleTemplate< T >::interpolatePixel(), DiScaleTemplate< T >::Left, DiScaleTemplate< T >::reducePixel(), DiScaleTemplate< T >::replicatePixel(), DiScaleTemplate< T >::Rows, DiScaleTemplate< T >::scalePixel(), DiTransTemplate< T >::Src_X, DiTransTemplate< T >::Src_Y, DiScaleTemplate< T >::suppressPixel(), and DiScaleTemplate< T >::Top.
Referenced by DiMonoScaleTemplate< T >::scale(), and DiColorScaleTemplate< T >::scale().
| void DiScaleTemplate< T >::clipPixel | ( | const T * | src[], | |
| T * | dest[] | |||
| ) | [inline, private] |
clip image to specified area (only inside image boundaries).
This is an optimization of the more general method clipBorderPixel().
| src | array of pointers to source image pixels | |
| dest | array of pointers to destination image pixels |
Definition at line 251 of file discalet.h.
References DiScaleTemplate< T >::Columns, DiScaleTemplate< T >::Left, DiTransTemplate< T >::Planes, DiScaleTemplate< T >::Rows, DiTransTemplate< T >::Src_X, and DiScaleTemplate< T >::Top.
Referenced by DiScaleTemplate< T >::scaleData().
| void DiScaleTemplate< T >::clipBorderPixel | ( | const T * | src[], | |
| T * | dest[], | |||
| const T | value | |||
| ) | [inline, private] |
clip image to specified area and add a border if necessary.
NOT fully tested - UNTESTED for multi-frame and multi-plane images !!
| src | array of pointers to source image pixels | |
| dest | array of pointers to destination image pixels | |
| value | value to be set outside the image boundaries |
Definition at line 284 of file discalet.h.
Referenced by DiScaleTemplate< T >::scaleData().
| void DiScaleTemplate< T >::replicatePixel | ( | const T * | src[], | |
| T * | dest[] | |||
| ) | [inline, private] |
enlarge image by an integer factor.
Pixels are replicated independently in both directions.
| src | array of pointers to source image pixels | |
| dest | array of pointers to destination image pixels |
Definition at line 359 of file discalet.h.
Referenced by DiScaleTemplate< T >::scaleData().
| void DiScaleTemplate< T >::suppressPixel | ( | const T * | src[], | |
| T * | dest[] | |||
| ) | [inline, private] |
shrink image by an integer divisor Pixels are suppressed independently in both directions.
| src | array of pointers to source image pixels | |
| dest | array of pointers to destination image pixels |
Definition at line 404 of file discalet.h.
Referenced by DiScaleTemplate< T >::scaleData().
| void DiScaleTemplate< T >::scalePixel | ( | const T * | src[], | |
| T * | dest[] | |||
| ) | [inline, private] |
free scaling method without interpolation.
This algorithm is necessary for overlays (1 bpp).
| src | array of pointers to source image pixels | |
| dest | array of pointers to destination image pixels |
Definition at line 440 of file discalet.h.
References OFBitmanipTemplate< T >::setMem().
Referenced by DiScaleTemplate< T >::scaleData().
| void DiScaleTemplate< T >::interpolatePixel | ( | const T * | src[], | |
| T * | dest[] | |||
| ) | [inline, private] |
free scaling method with interpolation.
| src | array of pointers to source image pixels | |
| dest | array of pointers to destination image pixels |
Definition at line 518 of file discalet.h.
References DicomImageClass::checkDebugLevel(), DicomImageClass::DL_Errors, DiPixelRepresentationTemplate< T >::isSigned(), and DicomImageClass::maxval().
Referenced by DiScaleTemplate< T >::scaleData().
| void DiScaleTemplate< T >::expandPixel | ( | const T * | src[], | |
| T * | dest[] | |||
| ) | [inline, private] |
free scaling method with interpolation (only for expansion).
| src | array of pointers to source image pixels | |
| dest | array of pointers to destination image pixels |
Definition at line 692 of file discalet.h.
References DicomImageClass::checkDebugLevel(), and DicomImageClass::DL_Informationals.
Referenced by DiScaleTemplate< T >::scaleData().
| void DiScaleTemplate< T >::reducePixel | ( | const T * | src[], | |
| T * | dest[] | |||
| ) | [inline, private] |
free scaling method with interpolation (only for reduction).
| src | array of pointers to source image pixels | |
| dest | array of pointers to destination image pixels |
Definition at line 795 of file discalet.h.
References DicomImageClass::checkDebugLevel(), DicomImageClass::DL_Informationals, and DicomImageClass::DL_Warnings.
Referenced by DiScaleTemplate< T >::scaleData().