Blender Git Loki
Git Commits -> Revision 4fa17fc
Revision 4fa17fc by Maxime Curioni (master) July 29, 2008, 10:45 (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: 4fa17fc69c2680351caf6eda758a6169a143e08d
SVN Revision: 15861
Parent Commit: 7259156
Lines Changed: +549, -5066
1 Added Path:
/source/blender/freestyle/style_modules_blender/freestyle_init.py (+455, -0) (View)
1 Deleted Path:
/source/blender/freestyle/python/Freestyle.py (+0, -4972)
49 Modified Paths:
/source/blender/freestyle/intern/app_blender/api.cpp (+1, -1) (Diff)
/source/blender/freestyle/intern/app_blender/AppConfig.cpp (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/anisotropic_diffusion.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/apriori_and_causal_density.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/apriori_density.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/backbone_stretcher.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/blueprint_circles.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/blueprint_ellipses.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/blueprint_squares.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/cartoon.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/ChainingIterators.py (+17, -17) (Diff)
/source/blender/freestyle/style_modules_blender/contour.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/curvature2d.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/external_contour.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/external_contour_sketchy.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/external_contour_smooth.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/Functions0D.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/Functions1D.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/haloing.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/ignore_small_occlusions.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/invisible_lines.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/japanese_bigbrush.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/logical_operators.py (+7, -7) (Diff)
/source/blender/freestyle/style_modules_blender/long_anisotropically_dense.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/multiple_parameterization.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/nature.py (+5, -5) (Diff)
/source/blender/freestyle/style_modules_blender/near_lines.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/occluded_by_specific_object.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/polygonalize.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/PredicatesB1D.py (+3, -3) (Diff)
/source/blender/freestyle/style_modules_blender/PredicatesU0D.py (+2, -2) (Diff)
/source/blender/freestyle/style_modules_blender/PredicatesU1D.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/qi0.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/qi0_not_external_contour.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/qi1.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/qi2.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/sequentialsplit_sketchy.py (+3, -3) (Diff)
/source/blender/freestyle/style_modules_blender/shaders.py (+10, -10) (Diff)
/source/blender/freestyle/style_modules_blender/sketchy_multiple_parameterization.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/sketchy_topology_broken.py (+3, -3) (Diff)
/source/blender/freestyle/style_modules_blender/sketchy_topology_preserved.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/split_at_highest_2d_curvatures.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/split_at_tvertices.py (+2, -2) (Diff)
/source/blender/freestyle/style_modules_blender/stroke_texture.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/suggestive.py (+2, -2) (Diff)
/source/blender/freestyle/style_modules_blender/thickness_fof_depth_discontinuity.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/tipremover.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/tvertex_remover.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/uniformpruning_zsort.py (+2, -2) (Diff)
/source/blender/freestyle/intern/app_blender/AppConfig.cpp (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/anisotropic_diffusion.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/apriori_and_causal_density.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/apriori_density.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/backbone_stretcher.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/blueprint_circles.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/blueprint_ellipses.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/blueprint_squares.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/cartoon.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/ChainingIterators.py (+17, -17) (Diff)
/source/blender/freestyle/style_modules_blender/contour.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/curvature2d.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/external_contour.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/external_contour_sketchy.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/external_contour_smooth.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/Functions0D.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/Functions1D.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/haloing.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/ignore_small_occlusions.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/invisible_lines.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/japanese_bigbrush.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/logical_operators.py (+7, -7) (Diff)
/source/blender/freestyle/style_modules_blender/long_anisotropically_dense.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/multiple_parameterization.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/nature.py (+5, -5) (Diff)
/source/blender/freestyle/style_modules_blender/near_lines.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/occluded_by_specific_object.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/polygonalize.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/PredicatesB1D.py (+3, -3) (Diff)
/source/blender/freestyle/style_modules_blender/PredicatesU0D.py (+2, -2) (Diff)
/source/blender/freestyle/style_modules_blender/PredicatesU1D.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/qi0.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/qi0_not_external_contour.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/qi1.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/qi2.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/sequentialsplit_sketchy.py (+3, -3) (Diff)
/source/blender/freestyle/style_modules_blender/shaders.py (+10, -10) (Diff)
/source/blender/freestyle/style_modules_blender/sketchy_multiple_parameterization.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/sketchy_topology_broken.py (+3, -3) (Diff)
/source/blender/freestyle/style_modules_blender/sketchy_topology_preserved.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/split_at_highest_2d_curvatures.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/split_at_tvertices.py (+2, -2) (Diff)
/source/blender/freestyle/style_modules_blender/stroke_texture.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/suggestive.py (+2, -2) (Diff)
/source/blender/freestyle/style_modules_blender/thickness_fof_depth_discontinuity.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/tipremover.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/tvertex_remover.py (+1, -1) (Diff)
/source/blender/freestyle/style_modules_blender/uniformpruning_zsort.py (+2, -2) (Diff)