Blender Git Loki
Git Commits -> Revision 7259156
Revision 7259156 by Maxime Curioni (master) July 29, 2008, 10:42 (GMT) |
soc-2008-mxcurioni: SWIG replacement is effective and the native Freestyle API renders a correct result for the test style module 'contour.py'. More testing needs to be done to make sure my work was correct. To make it work, I had to: - update Operators to include all of its methods in the Python API - redefine the Freestyle modules as local classes, allowing predicates to support the __call__ method (I found out that Python does not allow modules to be callable). The API is defined in the new freestyle_init.py file. - remove all references to former Python Freestyle API (located in source/blender/freestyle/python/, under the Freestyle.py file) and replace it with the new API file. - normalize all constants related to the Nature class - redefine the logical_operators.py file so that AndUP1D, OrUP1D and NotUP1D would be subclasses of a UnaryPredicate1D subclass having a operator() implementation. Using UnaryPredicate1D as a superclass would somehow prevent calls to the operator(). For the time being, I chose ContourUP1D (even though it does not really matter which subclass it is, since the __call__ method is redefined in all of these classes). I will implement this classes in C++ to get rid of the problem altogether. - turn off a few classes that somehow are not well recognized (Noise, Curve...). I will reenable them later once I understand what's going on. |
Commit Details:
Full Hash: 725915615a0044962f1f3b3971d942e70bf2eb6f
SVN Revision: 15860
Parent Commit: db6388e
Lines Changed: +24, -1
1 Modified Path:
/source/blender/freestyle/intern/python/BPy_Operators.cpp (+24, -1) (Diff)