[gegl] transform-core: align the who owns halfway between pixels convention in bounding box computation (an



commit 5a2614e1b7050ffa1509dbd7561aaeec74c28ce6
Author: Nicolas Robidoux <nrobidoux git gnome org>
Date:   Sat Dec 15 20:28:18 2012 -0500

    transform-core: align the who owns halfway between pixels convention in bounding box computation (and update test image results)

 operations/transform/transform-core.c         |    6 ++++--
 tests/compositions/reference/jp2-load.png     |  Bin 1485 -> 1532 bytes
 tests/compositions/reference/reflect.png      |  Bin 350 -> 357 bytes
 tests/compositions/reference/reflect2.png     |  Bin 399 -> 411 bytes
 tests/compositions/reference/rgb-params.gegl  |  Bin 131368 -> 131368 bytes
 tests/compositions/reference/rgbe-load.png    |  Bin 53078 -> 58748 bytes
 tests/compositions/reference/rgbe-save.hdr    |  Bin 49220 -> 50120 bytes
 tests/compositions/reference/rotate.png       |  Bin 7682 -> 7687 bytes
 tests/compositions/reference/simple-scale.png |  Bin 363 -> 388 bytes
 9 files changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/operations/transform/transform-core.c b/operations/transform/transform-core.c
index 47b0718..8c8d88c 100644
--- a/operations/transform/transform-core.c
+++ b/operations/transform/transform-core.c
@@ -393,8 +393,10 @@ gegl_transform_bounding_box (const gdouble *points,
    * (gint) 1. This often enlarges result by one pixel at the right
    * and bottom.
    */
-  output->width  = (gint) ceil ((double) max_x) - output->x;
-  output->height = (gint) ceil ((double) max_y) - output->y;
+  output->width  = (gint) floor ((double) max_x) + ((gint) 1 - output->x);
+  output->height = (gint) floor ((double) max_y) + ((gint) 1 - output->y);
+  /* output->width  = (gint) ceil ((double) max_x) - output->x; */
+  /* output->height = (gint) ceil ((double) max_y) - output->y; */
 }
 
 static gboolean
diff --git a/tests/compositions/reference/jp2-load.png b/tests/compositions/reference/jp2-load.png
index 3c3d0e9..a895f3e 100644
Binary files a/tests/compositions/reference/jp2-load.png and b/tests/compositions/reference/jp2-load.png differ
diff --git a/tests/compositions/reference/reflect.png b/tests/compositions/reference/reflect.png
index a800e66..a4f1a0c 100644
Binary files a/tests/compositions/reference/reflect.png and b/tests/compositions/reference/reflect.png differ
diff --git a/tests/compositions/reference/reflect2.png b/tests/compositions/reference/reflect2.png
index 9fce6b0..1b2fdc0 100644
Binary files a/tests/compositions/reference/reflect2.png and b/tests/compositions/reference/reflect2.png differ
diff --git a/tests/compositions/reference/rgb-params.gegl b/tests/compositions/reference/rgb-params.gegl
index 51758d4..33c5a79 100644
Binary files a/tests/compositions/reference/rgb-params.gegl and b/tests/compositions/reference/rgb-params.gegl differ
diff --git a/tests/compositions/reference/rgbe-load.png b/tests/compositions/reference/rgbe-load.png
index 9924755..f505cab 100644
Binary files a/tests/compositions/reference/rgbe-load.png and b/tests/compositions/reference/rgbe-load.png differ
diff --git a/tests/compositions/reference/rgbe-save.hdr b/tests/compositions/reference/rgbe-save.hdr
index b0a53b5..0e5454d 100644
Binary files a/tests/compositions/reference/rgbe-save.hdr and b/tests/compositions/reference/rgbe-save.hdr differ
diff --git a/tests/compositions/reference/rotate.png b/tests/compositions/reference/rotate.png
index aabaf22..624e14b 100644
Binary files a/tests/compositions/reference/rotate.png and b/tests/compositions/reference/rotate.png differ
diff --git a/tests/compositions/reference/simple-scale.png b/tests/compositions/reference/simple-scale.png
index 2d1c09f..3919e9d 100644
Binary files a/tests/compositions/reference/simple-scale.png and b/tests/compositions/reference/simple-scale.png differ



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]