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:
authorJeroen Bakker <j.bakker@atmind.nl>2012-05-31 14:38:11 +0400
committerJeroen Bakker <j.bakker@atmind.nl>2012-05-31 14:38:11 +0400
commita9c4f76a6a96bcffc8d94e2da5e636d4304da345 (patch)
tree38f0d2593d5a5f704fb890cde3b8ba030bfb015d /source/blender/compositor/operations/COM_DilateErodeOperation.h
parent722ce85ff6876ab85b7e934724e89fe24241f670 (diff)
* Added new dilate/erode function
Diffstat (limited to 'source/blender/compositor/operations/COM_DilateErodeOperation.h')
-rw-r--r--source/blender/compositor/operations/COM_DilateErodeOperation.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/source/blender/compositor/operations/COM_DilateErodeOperation.h b/source/blender/compositor/operations/COM_DilateErodeOperation.h
index 7f01ea94494..71bbab74a4b 100644
--- a/source/blender/compositor/operations/COM_DilateErodeOperation.h
+++ b/source/blender/compositor/operations/COM_DilateErodeOperation.h
@@ -68,6 +68,47 @@ public:
};
+class DilateDistanceOperation : public NodeOperation {
+private:
+ /**
+ * Cached reference to the inputProgram
+ */
+ SocketReader * inputProgram;
+protected:
+ float distance;
+ int scope;
+public:
+ DilateDistanceOperation();
+
+ /**
+ * the inner loop of this program
+ */
+ void executePixel(float *color, int x, int y, MemoryBuffer *inputBuffers[], void *data);
+
+ /**
+ * Initialize the execution
+ */
+ void initExecution();
+
+ void *initializeTileData(rcti *rect, MemoryBuffer **memoryBuffers);
+ /**
+ * Deinitialize the execution
+ */
+ void deinitExecution();
+
+ void setDistance(float distance) {this->distance = distance;}
+ bool determineDependingAreaOfInterest(rcti *input, ReadBufferOperation *readOperation, rcti *output);
+};
+class ErodeDistanceOperation : public DilateDistanceOperation {
+public:
+ ErodeDistanceOperation();
+
+ /**
+ * the inner loop of this program
+ */
+ void executePixel(float *color, int x, int y, MemoryBuffer *inputBuffers[], void *data);
+};
+
class DilateStepOperation : public NodeOperation {
protected:
/**