Commit 9f389a79 authored by Øyvind Kolås's avatar Øyvind Kolås

do not intersect with the incoming rectangle with the bounding box of the

* gegl/process/gegl-processor.c: (gegl_processor_set_rectangle): do
not intersect with the incoming rectangle with the bounding box of the
composition (computing the bounding box is expensive and not yet cache, the
rectangle can be frequently reset).

svn path=/trunk/; revision=2693
parent e9483422
2008-11-03 Øyvind Kolås <pippin@gimp.org>
* gegl/process/gegl-processor.c: (gegl_processor_set_rectangle): do
not intersect with the incoming rectangle with the bounding box of the
composition (computing the bounding box is expensive and not yet cache, the
rectangle can be frequently reset).
2008-11-03 Øyvind Kolås <pippin@gimp.org>
* gegl/operation/gegl-operation-point-composer.c:
......
......@@ -266,7 +266,6 @@ gegl_processor_set_rectangle (GeglProcessor *processor,
const GeglRectangle *rectangle)
{
GSList *iter;
GeglRectangle bounds;
GeglRectangle input_bounding_box;
if (! rectangle)
......@@ -277,9 +276,17 @@ gegl_processor_set_rectangle (GeglProcessor *processor,
if (! gegl_rectangle_equal (&processor->rectangle, rectangle))
{
bounds = gegl_node_get_bounding_box (processor->input);
#if 0
/* XXX: this is a large penalty hit, so we assume the rectangle
* we're getting is part of the bounding box we're hitting */
GeglRectangle bounds;
bounds = processor->bounds;/*gegl_node_get_bounding_box (processor->input);*/
#endif
processor->rectangle = *rectangle;
#if 0
gegl_rectangle_intersect (&processor->rectangle, &processor->rectangle, &bounds);
#endif
/* remove already queued dirty rectangles */
for (iter = processor->dirty_rectangles; iter; iter = g_slist_next (iter))
......@@ -368,12 +375,7 @@ render_rectangle (GeglProcessor *processor)
*/
band_size = dr->width / 2;
#if 1
if (band_size <= 128)
{
band_size = MIN(band_size, 64); /* prefer a band_size of 128,
hoping to hit tiles */
}
else if (band_size <= 256)
if (band_size <= 256)
{
band_size = MIN(band_size, 128); /* prefer a band_size of 128,
hoping to hit tiles */
......@@ -405,12 +407,7 @@ render_rectangle (GeglProcessor *processor)
band_size = dr->height / 2;
if (band_size <= 128)
{
band_size = MIN(band_size, 64); /* prefer a band_size of 128,
hoping to hit tiles */
}
else if (band_size <= 256)
if (band_size <= 256)
{
band_size = MIN(band_size, 128); /* prefer a band_size of 128,
hoping to hit tiles */
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment