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:
authorMaxime Curioni <maxime.curioni@gmail.com>2008-07-30 05:51:40 +0400
committerMaxime Curioni <maxime.curioni@gmail.com>2008-07-30 05:51:40 +0400
commita482f644242456ad6ddf0306e1b37d8855342103 (patch)
tree4d89fe22969b7970ce09f195d82261ac47544157 /source/blender/freestyle/intern/python/Director.h
parent7d5eaa674b70b13af3c67b2209fdfe32b6168e45 (diff)
soc-2008-mxcurioni: Tested SWIG-less environment more and understood why the former predicate methods were not working. As Stéphane had mentioned a few months ago, Freestyle uses SWIG directors to provide cross-language polymorphism. The API and the system I had provided did not support that feature and only implementations in C++ were supported. To correct the problem, after researching how directors are implemented in SWIG, I provided the same functionality. So far, I only provided the code for the UnaryPredicate1D class and it works. The implementation is in intern/python/Director.cpp and Operators.cpp. I will port the remaining directors tonight and continue to test it.
To prevent strokes from piling up after each render, I clear the canvas at each render now (as it should have been all along)
Diffstat (limited to 'source/blender/freestyle/intern/python/Director.h')
-rw-r--r--source/blender/freestyle/intern/python/Director.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/source/blender/freestyle/intern/python/Director.h b/source/blender/freestyle/intern/python/Director.h
new file mode 100644
index 00000000000..7114b124ffb
--- /dev/null
+++ b/source/blender/freestyle/intern/python/Director.h
@@ -0,0 +1,34 @@
+#ifndef FREESTYLE_PYTHON_DIRECTOR
+# define FREESTYLE_PYTHON_DIRECTOR
+
+#include "../view_map/Interface1D.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+///////////////////////////////////////////////////////////////////////////////////////////
+
+#include <Python.h>
+
+// SWIG directors
+// ----------------------------
+// ViewEdgeInternal::ViewEdgeIterator;
+// ChainingIterator;
+// ChainSilhouetteIterator;
+// ChainPredicateIterator;
+// UnaryPredicate0D;
+// UnaryPredicate1D;
+// BinaryPredicate1D;
+// StrokeShader;
+
+bool director_BPy_UnaryPredicate1D___call__( PyObject *py_up1D, Interface1D& if1D);
+
+///////////////////////////////////////////////////////////////////////////////////////////
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#endif // FREESTYLE_PYTHON_DIRECTOR