Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2012-06-15 19:55:37 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-06-15 19:55:37 +0400
commit927fc897cf8d7e6c18571dee2b79b596b5aaffa7 (patch)
treedbe493cf8e69ec25bc6b83c43c5630cf96fc401e /source/blender/compositor/operations/COM_DilateErodeOperation.cpp
parent2ca89f7add1949295ac58de6697534d44508bca3 (diff)
minor optimizations for dilate
Diffstat (limited to 'source/blender/compositor/operations/COM_DilateErodeOperation.cpp')
-rw-r--r--source/blender/compositor/operations/COM_DilateErodeOperation.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/source/blender/compositor/operations/COM_DilateErodeOperation.cpp b/source/blender/compositor/operations/COM_DilateErodeOperation.cpp
index 17b043009ac..f6d794fe564 100644
--- a/source/blender/compositor/operations/COM_DilateErodeOperation.cpp
+++ b/source/blender/compositor/operations/COM_DilateErodeOperation.cpp
@@ -82,11 +82,11 @@ void DilateErodeThresholdOperation::executePixel(float *color, int x, int y, Mem
this->inputProgram->read(inputValue, x, y, inputBuffers, NULL);
if (inputValue[0] > sw) {
for (int yi = miny; yi < maxy; yi++) {
+ const float dy = yi - y;
offset = ((yi - rect->ymin) * bufferWidth + (minx - rect->xmin)) * 4;
for (int xi = minx; xi < maxx; xi++) {
if (buffer[offset] < sw) {
const float dx = xi - x;
- const float dy = yi - y;
const float dis = dx * dx + dy * dy;
mindist = min(mindist, dis);
}
@@ -97,11 +97,11 @@ void DilateErodeThresholdOperation::executePixel(float *color, int x, int y, Mem
}
else {
for (int yi = miny; yi < maxy; yi++) {
+ const float dy = yi - y;
offset = ((yi - rect->ymin) * bufferWidth + (minx - rect->xmin)) * 4;
for (int xi = minx; xi < maxx; xi++) {
if (buffer[offset] > sw) {
const float dx = xi - x;
- const float dy = yi - y;
const float dis = dx * dx + dy * dy;
mindist = min(mindist, dis);
}
@@ -187,7 +187,7 @@ void *DilateDistanceOperation::initializeTileData(rcti *rect, MemoryBuffer **mem
void DilateDistanceOperation::executePixel(float *color, int x, int y, MemoryBuffer *inputBuffers[], void *data)
{
const float distance = this->distance;
- float mindist = distance * distance;
+ const float mindist = distance * distance;
MemoryBuffer *inputBuffer = (MemoryBuffer *)data;
float *buffer = inputBuffer->getBuffer();
@@ -202,10 +202,10 @@ void DilateDistanceOperation::executePixel(float *color, int x, int y, MemoryBuf
float value = 0.0f;
for (int yi = miny; yi < maxy; yi++) {
+ const float dy = yi - y;
offset = ((yi - rect->ymin) * bufferWidth + (minx - rect->xmin)) * 4;
for (int xi = minx; xi < maxx; xi++) {
const float dx = xi - x;
- const float dy = yi - y;
const float dis = dx * dx + dy * dy;
if (dis <= mindist) {
value = max(buffer[offset], value);
@@ -262,7 +262,7 @@ ErodeDistanceOperation::ErodeDistanceOperation() : DilateDistanceOperation()
void ErodeDistanceOperation::executePixel(float *color, int x, int y, MemoryBuffer *inputBuffers[], void *data)
{
const float distance = this->distance;
- float mindist = distance * distance;
+ const float mindist = distance * distance;
MemoryBuffer *inputBuffer = (MemoryBuffer *)data;
float *buffer = inputBuffer->getBuffer();
@@ -277,10 +277,10 @@ void ErodeDistanceOperation::executePixel(float *color, int x, int y, MemoryBuff
float value = 1.0f;
for (int yi = miny; yi < maxy; yi++) {
+ const float dy = yi - y;
offset = ((yi - rect->ymin) * bufferWidth + (minx - rect->xmin)) * 4;
for (int xi = minx; xi < maxx; xi++) {
const float dx = xi - x;
- const float dy = yi - y;
const float dis = dx * dx + dy * dy;
if (dis <= mindist) {
value = min(buffer[offset], value);