summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlbrecht Schlosser <albrechts.fltk@online.de>2016-08-09 15:20:54 +0000
committerAlbrecht Schlosser <albrechts.fltk@online.de>2016-08-09 15:20:54 +0000
commite7b9e77ba5ab877eb5f8b56da7fe1bf7b0aac3aa (patch)
tree1878338752665890d19922fd711639a4aafe00ca
parent78d853891c145776e19e412b4956fed87a33bf60 (diff)
Fix typos, separate local variables of image scaling algorithms.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11869 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
-rw-r--r--src/Fl_Bitmap.cxx2
-rw-r--r--src/Fl_Image.cxx35
-rw-r--r--src/Fl_Pixmap.cxx2
3 files changed, 20 insertions, 19 deletions
diff --git a/src/Fl_Bitmap.cxx b/src/Fl_Bitmap.cxx
index 4d637548a..c2f5e22c2 100644
--- a/src/Fl_Bitmap.cxx
+++ b/src/Fl_Bitmap.cxx
@@ -189,7 +189,7 @@ Fl_Image *Fl_Bitmap::copy(int W, int H) {
xstep, ystep; // X & Y step increments
- // Figure out Bresenheim step/modulus values...
+ // Figure out Bresenham step/modulus values...
xmod = w() % W;
xstep = w() / W;
ymod = h() % H;
diff --git a/src/Fl_Image.cxx b/src/Fl_Image.cxx
index c048d57c3..2fc389c86 100644
--- a/src/Fl_Image.cxx
+++ b/src/Fl_Image.cxx
@@ -63,7 +63,6 @@ void Fl_Image::draw(int XP, int YP, int, int, int, int) {
draw_empty(XP, YP);
}
-
/**
The protected method draw_empty() draws a box with
an X in it. It can be used to draw any image that lacks image
@@ -324,31 +323,33 @@ Fl_Image *Fl_RGB_Image::copy(int W, int H) {
}
if (W <= 0 || H <= 0) return 0;
- // OK, need to resize the image data; allocate memory and
+ // OK, need to resize the image data; allocate memory and create new image
uchar *new_ptr; // Pointer into new array
const uchar *old_ptr; // Pointer into old array
- int c, // Channel number
- sy, // Source coordinate
- dx, dy, // Destination coordinates
- xerr, yerr, // X & Y errors
- xmod, ymod, // X & Y moduli
- xstep, ystep, // X & Y step increments
- line_d; // stride from line to line
-
-
- // Figure out Bresenheim step/modulus values...
- xmod = w() % W;
- xstep = (w() / W) * d();
- ymod = h() % H;
- ystep = h() / H;
- line_d = ld() ? ld() : w() * d();
+ int dx, dy, // Destination coordinates
+ line_d; // stride from line to line
// Allocate memory for the new image...
new_array = new uchar [W * H * d()];
new_image = new Fl_RGB_Image(new_array, W, H, d());
new_image->alloc_array = 1;
+ line_d = ld() ? ld() : w() * d();
+
if (Fl_Image::RGB_scaling() == FL_RGB_SCALING_NEAREST) {
+
+ int c, // Channel number
+ sy, // Source coordinate
+ xerr, yerr, // X & Y errors
+ xmod, ymod, // X & Y moduli
+ xstep, ystep; // X & Y step increments
+
+ // Figure out Bresenham step/modulus values...
+ xmod = w() % W;
+ xstep = (w() / W) * d();
+ ymod = h() % H;
+ ystep = h() / H;
+
// Scale the image using a nearest-neighbor algorithm...
for (dy = H, sy = 0, yerr = H, new_ptr = new_array; dy > 0; dy --) {
for (dx = W, xerr = W, old_ptr = array + sy * line_d; dx > 0; dx --) {
diff --git a/src/Fl_Pixmap.cxx b/src/Fl_Pixmap.cxx
index 1b17aa9f4..68a70f50c 100644
--- a/src/Fl_Pixmap.cxx
+++ b/src/Fl_Pixmap.cxx
@@ -204,7 +204,7 @@ Fl_Image *Fl_Pixmap::copy(int W, int H) {
sprintf(new_info, "%d %d %d %d", W, H, ncolors, chars_per_pixel);
- // Figure out Bresenheim step/modulus values...
+ // Figure out Bresenham step/modulus values...
xmod = w() % W;
xstep = (w() / W) * chars_per_pixel;
ymod = h() % H;