account for pixelsize=2 in ImagingExpand()

This commit is contained in:
Yay295 2022-08-25 19:55:21 -05:00
parent 25df706e67
commit 875d59122a

View File

@ -53,38 +53,40 @@ ImagingExpand(Imaging imIn, int xmargin, int ymargin, int mode) {
return NULL; return NULL;
} }
#define EXPAND_LINE(type, image, yin, yout) \ #define EXPAND_LINE(type, yin, yout) \
{ \ { \
for (x = 0; x < xmargin; x++) { \ for (x = 0; x < xmargin; x++) { \
imOut->image[yout][x] = imIn->image[yin][0]; \ ((type *)imOut->image[yout])[x] = ((type *)imIn->image[yin])[0]; \
} \ } \
for (x = 0; x < imIn->xsize; x++) { \ for (x = 0; x < imIn->xsize; x++) { \
imOut->image[yout][x + xmargin] = imIn->image[yin][x]; \ ((type *)imOut->image[yout])[x + xmargin] = ((type *)imIn->image[yin])[x]; \
} \ } \
for (x = 0; x < xmargin; x++) { \ for (x = 0; x < xmargin; x++) { \
imOut->image[yout][xmargin + imIn->xsize + x] = \ ((type *)imOut->image[yout])[xmargin + imIn->xsize + x] = \
imIn->image[yin][imIn->xsize - 1]; \ ((type *)imIn->image[yin])[imIn->xsize - 1]; \
} \ } \
} }
#define EXPAND(type, image) \ #define EXPAND(type) \
{ \ { \
for (y = 0; y < ymargin; y++) { \ for (y = 0; y < ymargin; y++) { \
EXPAND_LINE(type, image, 0, y); \ EXPAND_LINE(type, 0, y); \
} \ } \
for (y = 0; y < imIn->ysize; y++) { \ for (y = 0; y < imIn->ysize; y++) { \
EXPAND_LINE(type, image, y, y + ymargin); \ EXPAND_LINE(type, y, y + ymargin); \
} \ } \
for (y = 0; y < ymargin; y++) { \ for (y = 0; y < ymargin; y++) { \
EXPAND_LINE(type, image, imIn->ysize - 1, ymargin + imIn->ysize + y); \ EXPAND_LINE(type, imIn->ysize - 1, ymargin + imIn->ysize + y); \
} \ } \
} }
ImagingSectionEnter(&cookie); ImagingSectionEnter(&cookie);
if (imIn->image8) { if (imIn->pixelsize == 1) {
EXPAND(UINT8, image8); EXPAND(UINT8);
} else { } else if (imIn->pixelsize == 2) {
EXPAND(INT32, image32); EXPAND(UINT16);
} else if (imIn->pixelsize == 4) {
EXPAND(INT32);
} }
ImagingSectionLeave(&cookie); ImagingSectionLeave(&cookie);