|
eLynx SDK
v3.3.0 C++ image processing API reference |
Defining implementation for image geometry interface methods. More...
#include <ImageGeometryImpl.h>
Public Member Functions | |
Generic virtual services | |
| virtual bool | Flip (AbstractImage &ioImage, EFlipPlane iFlipPlane, ProgressNotifier &iNotifier) const |
| Perform symmetry of an image. | |
| virtual bool | Rotate (AbstractImage &ioImage, ERightRotation iRotation, ProgressNotifier &iNotifier) const |
| Fast rotate image with right angles. | |
| virtual bool | Rotate (AbstractImage &ioImage, double iDegrees, int32 iFlags, ProgressNotifier &iNotifier) const |
| Rotate an image with finest degree angles. | |
| virtual bool | Crop (AbstractImage &ioImage, uint32 iX, uint32 iY, uint32 iWidth, uint32 iHeight, ProgressNotifier &iNotifier) const |
| Crop image. | |
| virtual bool | AutoCrop (AbstractImage &ioImage, ProgressNotifier &iNotifier) const |
| Automatic Crop image. | |
| virtual bool | Resize (AbstractImage &ioImage, uint32 iWidth, uint32 iHeight, ProgressNotifier &iNotifier) const |
| Resize image. | |
| virtual bool | Zoom (AbstractImage &ioImage, uint32 iZoom, ProgressNotifier &iNotifier) const |
| Zoom image. | |
| virtual bool | Bin (AbstractImage &ioImage, uint32 iDim, EBinningMethod iMethod, ProgressNotifier &iNotifier) const |
| Apply binning to an image. | |
| virtual bool | AddBorder (AbstractImage &ioImage, uint32 iLeft, uint32 iRight, uint32 iTop, uint32 iBottom, bool ibBlack, ProgressNotifier &iNotifier) const |
| Add border to an image. | |
| virtual bool | Shift (AbstractImage &ioImage, int32 iHorizontal, int32 iVertical, ProgressNotifier &iNotifier) const |
| Shift an image with complete pixel size. | |
| virtual bool | Shift (AbstractImage &ioImage, double iHorizontal, double iVertical, ProgressNotifier &iNotifier) const |
| Shift an image with less than pixels resolution. | |
| virtual bool | Insert (AbstractImage &ioImage, const AbstractImage &iInserted, int32 iX, int32 iY, ProgressNotifier &iNotifier) const |
| virtual bool | Resample (AbstractImage &ioImage, uint32 iWidth, uint32 iHeight, Math::EResampleFilter iFilter, ProgressNotifier &iNotifier) const |
| Resample image using filter. | |
| virtual boost::shared_ptr < AbstractImage > | CreateFlipped (const AbstractImage &iImage, EFlipPlane iFlipPlane, ProgressNotifier &iNotifier) const |
| Create a flipped image. | |
| virtual boost::shared_ptr < AbstractImage > | CreateRotated (const AbstractImage &iImage, ERightRotation iRotation, ProgressNotifier &iNotifier) const |
| Create a 90° multiple rotated image. | |
| virtual boost::shared_ptr < AbstractImage > | CreateRotated (const AbstractImage &iImage, double iDegrees, int32 iFlags, ProgressNotifier &iNotifier) const |
| Create a rotated image with finest degree angles. | |
| virtual boost::shared_ptr < AbstractImage > | CreateSubImage (const AbstractImage &iImage, uint32 iX, uint32 iY, uint32 iWidth, uint32 iHeight, ProgressNotifier &iNotifier) const |
| CreateSubImage. | |
| virtual boost::shared_ptr < AbstractImage > | CreateResized (const AbstractImage &iImage, uint32 iWidth, uint32 iHeight, ProgressNotifier &iNotifier) const |
| Create a resized image with dimension (iWidth, iHeight) using nearest point algo. | |
| virtual boost::shared_ptr < AbstractImage > | CreateZoomed (const AbstractImage &iImage, uint32 iZoom, ProgressNotifier &iNotifier) const |
| Create a zoomed image. | |
| virtual boost::shared_ptr < AbstractImage > | CreateBinned (const AbstractImage &iImage, uint32 iDim, EBinningMethod iMethod, ProgressNotifier &iNotifier) const |
| Create binning image. | |
| virtual boost::shared_ptr < AbstractImage > | CreateEnlarged (const AbstractImage &iImage, uint32 iLeft, uint32 iRight, uint32 iTop, uint32 iBottom, bool ibBlack, ProgressNotifier &iNotifier) const |
| CreateEnlarged create an image for source adding borders. | |
|
virtual boost::shared_ptr < AbstractImage > | CreateShifted (const AbstractImage &iImage, int32 iHorizontal, int32 iVertical, ProgressNotifier &iNotifier) const |
|
virtual boost::shared_ptr < AbstractImage > | CreateShifted (const AbstractImage &iImage, double iHorizontal, double iVertical, ProgressNotifier &iNotifier) const |
|
virtual boost::shared_ptr < AbstractImage > | CreateInserted (const AbstractImage &iImage, const AbstractImage &iInserted, int32 iX, int32 iY, ProgressNotifier &iNotifier) const |
|
virtual boost::shared_ptr < AbstractImage > | CreateResampled (const AbstractImage &iImage, uint32 iWidth, uint32 iHeight, Math::EResampleFilter iFilter, ProgressNotifier &iNotifier) const |
|
virtual boost::shared_ptr < AbstractImage > | CreateExpanded (const AbstractImage &iImage, uint32 iBorder, ProgressNotifier &iNotifier) const |
Static Public Member Functions | |
Specialized static services | |
| static bool | FlipVertical (ImageImpl< Pixel > &, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | FlipHorizontal (ImageImpl< Pixel > &, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Flip (ImageImpl< Pixel > &, EFlipPlane, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Rotate180 (ImageImpl< Pixel > &, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Rotate90 (ImageImpl< Pixel > &, bool ibClockwise, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Rotate (ImageImpl< Pixel > &, double iDegrees, int32 iFlags=RF_Default, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Crop (ImageImpl< Pixel > &, uint32 iX, uint32 iY, uint32 iWidth, uint32 iHeight, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | AutoCrop (ImageImpl< Pixel > &, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Resize (ImageImpl< Pixel > &, uint32 iWidth, uint32 iHeight, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Zoom (ImageImpl< Pixel > &, uint32 iZoom, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | AddBorder (ImageImpl< Pixel > &, uint32 iLeft, uint32 iRight, uint32 iTop, uint32 iBottom, bool ibBlack=true, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Bin (ImageImpl< Pixel > &, uint32 iDim, EBinningMethod, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Shift (ImageImpl< Pixel > &, int32 iHorizontal, int32 iVertical, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Shift (ImageImpl< Pixel > &, double iHorizontal, double iVertical, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Insert (ImageImpl< Pixel > &, const ImageImpl< Pixel > &iInserted, int32 iX, int32 iY, ProgressNotifier &=ProgressNotifier_NULL) |
| static bool | Resample (ImageImpl< Pixel > &, uint32 iWidth, uint32 iHeight, Math::EResampleFilter iFilter, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateFlipped (const ImageImpl< Pixel > &, EFlipPlane, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateRotated90 (const ImageImpl< Pixel > &, bool ibClockwise, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateRotated (const ImageImpl< Pixel > &, double iDegrees, int32 iFlags=RF_Default, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateSubImage (const ImageImpl< Pixel > &, uint32 iX, uint32 iY, uint32 iWidth, uint32 iHeight, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateResized (const ImageImpl< Pixel > &, uint32 iWidth, uint32 iHeight, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateZoomed (const ImageImpl< Pixel > &, uint32 iZoom, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateEnlarged (const ImageImpl< Pixel > &, uint32 iLeft, uint32 iRight, uint32 iTop, uint32 iBottom, bool ibBlack=true, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateBinned (const ImageImpl< Pixel > &iImage, uint32 iDim, EBinningMethod iMethod, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateShifted (const ImageImpl< Pixel > &iImage, int32 iHorizontal, int32 iVertical, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateShifted (const ImageImpl< Pixel > &iImage, double iHorizontal, double iVertical, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateInserted (const ImageImpl< Pixel > &iImage, const ImageImpl< Pixel > &iInserted, int32 iX, int32 iY, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateResampled (const ImageImpl< Pixel > &, uint32 iWidth, uint32 iHeight, Math::EResampleFilter iFilter, ProgressNotifier &=ProgressNotifier_NULL) |
|
static boost::shared_ptr < ImageImpl< Pixel > > | CreateExpanded (const ImageImpl< Pixel > &iImage, uint32 iBorder, ProgressNotifier &=ProgressNotifier_NULL) |
Defining implementation for image geometry interface methods.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::AddBorder | ( | AbstractImage & | ioImage, |
| uint32 | iLeft, | ||
| uint32 | iRight, | ||
| uint32 | iTop, | ||
| uint32 | iBottom, | ||
| bool | ibBlack, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Add border to an image.
AddBorder(10,20,30,40,true) |
Original |
AddBorder(40,30,20,10,false) |
| ioImage | source image. |
| iLeft | size on border to add on left in pixels. |
| iRight | size on border to add on right in pixels. |
| iTop | size on border to add on top in pixels. |
| iBottom | size on border to add on bottom in pixels. |
| ibBlack | true to have black border, false for white. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::AutoCrop | ( | AbstractImage & | ioImage, |
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Automatic Crop image.
| ioImage | image to process. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::Bin | ( | AbstractImage & | ioImage, |
| uint32 | iDim, | ||
| EBinningMethod | iMethod, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Apply binning to an image.
Original |
Bin(2,BI_AVG) |
Bin(2,BI_SUM) |
Bin(3,BI_AVG) |
Bin(3,BI_SUM) |
| ioImage | image to process. |
| iDim | Binning scale. Only 2 and 3 are supported |
| iMethod | Binning method. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual boost::shared_ptr<AbstractImage> eLynx::Image::ImageGeometryImpl< Pixel >::CreateBinned | ( | const AbstractImage & | iImage, |
| uint32 | iDim, | ||
| EBinningMethod | iMethod, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Create binning image.
| iImage | source image. |
| iDim | Binning scale. Only 2 and 3 are supported |
| iMethod | Binning method. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual boost::shared_ptr<AbstractImage> eLynx::Image::ImageGeometryImpl< Pixel >::CreateEnlarged | ( | const AbstractImage & | iImage, |
| uint32 | iLeft, | ||
| uint32 | iRight, | ||
| uint32 | iTop, | ||
| uint32 | iBottom, | ||
| bool | ibBlack, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
CreateEnlarged create an image for source adding borders.
| iImage | source image. |
| iLeft | size on border to add on left in pixels. |
| iRight | size on border to add on right in pixels. |
| iTop | size on border to add on top in pixels. |
| iBottom | size on border to add on bottom in pixels. |
| ibBlack | true to have black border, false for white. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual boost::shared_ptr<AbstractImage> eLynx::Image::ImageGeometryImpl< Pixel >::CreateFlipped | ( | const AbstractImage & | iImage, |
| EFlipPlane | iFlipPlane, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Create a flipped image.
| iImage | source image. |
| iFlipPlane | flip plane for symetry. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual boost::shared_ptr<AbstractImage> eLynx::Image::ImageGeometryImpl< Pixel >::CreateResized | ( | const AbstractImage & | iImage, |
| uint32 | iWidth, | ||
| uint32 | iHeight, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Create a resized image with dimension (iWidth, iHeight) using nearest point algo.
| iImage | source image. |
| iWidth | the width of the new image. |
| iHeight | the height of the new image. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual boost::shared_ptr<AbstractImage> eLynx::Image::ImageGeometryImpl< Pixel >::CreateRotated | ( | const AbstractImage & | iImage, |
| double | iDegrees, | ||
| int32 | iFlags, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Create a rotated image with finest degree angles.
| iImage | source image. |
| iDegrees | the rotation angle in degrees. |
| iFlags | a combinaison of RF_Expand, RF_Interpolation and RF_Antialiasing. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual boost::shared_ptr<AbstractImage> eLynx::Image::ImageGeometryImpl< Pixel >::CreateRotated | ( | const AbstractImage & | iImage, |
| ERightRotation | iRotation, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Create a 90° multiple rotated image.
| iImage | source image. |
| iRotation | the rotation of 0°, 90°, 180° or 270° |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual boost::shared_ptr<AbstractImage> eLynx::Image::ImageGeometryImpl< Pixel >::CreateSubImage | ( | const AbstractImage & | iImage, |
| uint32 | iX, | ||
| uint32 | iY, | ||
| uint32 | iWidth, | ||
| uint32 | iHeight, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
CreateSubImage.
| iImage | source image. |
| iX | x position of top left point of subimage in image. |
| iY | y position of top left point of subimage in image. |
| iWidth | width of sub-image. |
| iHeight | height of sub-image. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual boost::shared_ptr<AbstractImage> eLynx::Image::ImageGeometryImpl< Pixel >::CreateZoomed | ( | const AbstractImage & | iImage, |
| uint32 | iZoom, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Create a zoomed image.
| iImage | source image. |
| iZoom | magnifier coefficient. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::Crop | ( | AbstractImage & | ioImage, |
| uint32 | iX, | ||
| uint32 | iY, | ||
| uint32 | iWidth, | ||
| uint32 | iHeight, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Crop image.
Original |
Crop(40,20, 100,50) |
| ioImage | image to process. |
| iX | x position of top left point in image. |
| iY | y position of top left point in image. |
| iWidth | width image after crop. |
| iHeight | height image after crop. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::Flip | ( | AbstractImage & | ioImage, |
| EFlipPlane | iFlipPlane, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Perform symmetry of an image.
Flip(FP_Horizontal) |
Original |
Flip(FP_Vertical) |
| ioImage | image to process. |
| iFlipPlane | flip plane for symetry. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::Resample | ( | AbstractImage & | ioImage, |
| uint32 | iWidth, | ||
| uint32 | iHeight, | ||
| Math::EResampleFilter | iFilter, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Resample image using filter.
Original |
Resample(220,110) with RF_Mitchell |
| ioImage | image to process. |
| iWidth | the new width. |
| iHeight | the new height. |
| iFilter | the filter to use. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::Resize | ( | AbstractImage & | ioImage, |
| uint32 | iWidth, | ||
| uint32 | iHeight, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Resize image.
Original |
Resize(100, 200) |
| ioImage | image to process. |
| iWidth | the new width. |
| iHeight | the new height. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::Rotate | ( | AbstractImage & | ioImage, |
| ERightRotation | iRotation, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Fast rotate image with right angles.
Original |
Rotate(RR_90Right) |
Rotate(RR_180) |
Rotate(RR_90Left) |
| ioImage | image to process. |
| iRotation | the rotation of 0°, 90°, 180° or 270°. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::Rotate | ( | AbstractImage & | ioImage, |
| double | iDegrees, | ||
| int32 | iFlags, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Rotate an image with finest degree angles.
| ioImage | image to process. |
| iDegrees | the rotation angle in degrees. |
| iFlags | a combinaison of RF_Expand, RF_Interpolation and RF_Antialiasing. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::Shift | ( | AbstractImage & | ioImage, |
| int32 | iHorizontal, | ||
| int32 | iVertical, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Shift an image with complete pixel size.
Shift(50,10) |
Original |
Shift(-20,0) |
| ioImage | image to process. |
| iHorizontal | horizontal shift in pixels, >0 means right shift, <0 left shift. |
| iVertical | vertical shift in pixels, >0 means bottom shift, <0 top shift. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::Shift | ( | AbstractImage & | ioImage, |
| double | iHorizontal, | ||
| double | iVertical, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Shift an image with less than pixels resolution.
| ioImage | image to process. |
| iHorizontal | horizontal shift. |
| iVertical | vertical shift. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.
| virtual bool eLynx::Image::ImageGeometryImpl< Pixel >::Zoom | ( | AbstractImage & | ioImage, |
| uint32 | iZoom, | ||
| ProgressNotifier & | iNotifier | ||
| ) | const [virtual] |
Zoom image.
Original |
Zoom(2) |
| ioImage | image to process. |
| iZoom | magnifier coefficient. |
| iNotifier | a notifier for progression and cancel. |
Implements eLynx::Image::IImageGeometry.