digiKam
|
Public Member Functions | |
LensDistortionPixelAccess (DImg *srcImage) | |
void | pixelAccessGetCubic (double srcX, double srcY, double brighten, uchar *dst) |
~LensDistortionPixelAccess () | |
Protected Member Functions | |
void | cubicInterpolate (uchar *src, int rowStride, uchar *dst, bool sixteenBit, double dx, double dy, double brighten) |
uchar * | pixelAccessAddress (int i, int j) |
void | pixelAccessDoEdge (int i, int j) |
void | pixelAccessReposition (int xInt, int yInt) |
void | pixelAccessSelectRegion (int n) |
LensDistortionPixelAccess class: solving the eternal problem: random, cubic-interpolated, sub-pixel coordinate access to an image. Assuming that accesses are at least slightly coherent, LensDistortionPixelAccess keeps LensDistortionPixelAccessRegions buffers, each containing a LensDistortionPixelAccessWidth x LensDistortionPixelAccessHeight region of pixels. Buffer[0] is always checked first, so move the last accessed region into that position. When a request arrives which is outside all the regions, get a new region. The new region is placed so that the requested pixel is positioned at [LensDistortionPixelAccessXOffset, LensDistortionPixelAccessYOffset] in the region.
|
explicit |
References Digikam::DImg::copy(), and LensDistortionPixelAccessRegions.
Digikam::LensDistortionPixelAccess::~LensDistortionPixelAccess | ( | ) |
References LensDistortionPixelAccessRegions.
|
protected |
Referenced by pixelAccessGetCubic().
|
inlineprotected |
Referenced by pixelAccessDoEdge(), and pixelAccessGetCubic().
|
protected |
References pixelAccessAddress(), and Digikam::DImg::scanLine().
Referenced by pixelAccessReposition().
void Digikam::LensDistortionPixelAccess::pixelAccessGetCubic | ( | double | srcX, |
double | srcY, | ||
double | brighten, | ||
uchar * | dst | ||
) |
|
protected |
References Digikam::DImg::bitBltImage(), Digikam::DImg::fill(), LensDistortionPixelAccessXOffset, LensDistortionPixelAccessYOffset, and pixelAccessDoEdge().
Referenced by pixelAccessGetCubic().
|
protected |
Referenced by pixelAccessGetCubic().