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
AgeCommit message (Collapse)Author
2013-03-31remove blender foundation copyright from freestyle files.Campbell Barton
this can be added back on case-by-case basis, but better not assume ownership of another projects work by default.
2013-03-26Freestyle changes:Sergey Sharybin
- Revert some stylistic changes made in branch They weren't directly related on freestyle project and better be handled in trunk. Helps reading patches ad prevents possible merge conflicts. - Solved issue introduced with recent deprecation of RenderData.maximize,
2013-03-24Removed a Freestyle-specific function call from bf_windowmanager.Tamito Kajiyama
Suggested by Sergey Sharybin through a code review of the branch.
2013-03-23A major code update for making the DNA file specification of Freestyle settingsTamito Kajiyama
and RNA for it independent of the build flag for enabling Freestyle. Suggested by Sergey Sharybin through a code review of the branch. * Many #ifdef WITH_FREESTYLE blocks were removed to always have Freestyle-specific DNA file specification and RNA for it built in Blender. This will allow Freestyle setting survive even when a non-Freestyle build is used for loading and saving files. It is noted that operations are still conditionally built through #ifdef WITH_FREESTYLE blocks. * To this end, new blenkernel files BKE_freestyle.h and intern/freestyle.c have been added. All API functions in FRS_freestyle_config.h as well as some of those in FRS_freestyle.h were moved to the new files. Now the relocated API functions have BKE_ prefix instead of FRS_.
2013-03-22Fix for default values different from the factory settings.Tamito Kajiyama
Suggested by IRIE Shinsuke through a code review of the branch.
2013-03-19quiet warnings by making undeclared vars staticCampbell Barton
2013-03-19fix for some errors.Campbell Barton
2013-03-17Fix for a crash due to a bug in the handling of singularity in stroke creation,Tamito Kajiyama
where additions of a small offset (to prevent vertices from being at the same point) were not properly done when vertices were shifted in the reverse order. A problem report by Vicente Carro through personal communications, thanks a lot!
2013-03-16Fix for a crash due to mesh faces with wire frame materials not properly ↵Tamito Kajiyama
handled. A problem report by Vicente Carro through personal communications, many thanks!
2013-03-13New implementation of Freestyle edge/face marksTamito Kajiyama
The previous implementation of Freestyle edge/face marks was refactored based on suggestions from the latest code review by Campbell. The new implementation relies on mesh CustomData to store edge/face marks, instead of introducing extra flags in the core Mesh and BMesh data structures. The CustomData-based implementation will allow further additions of new edge/face attributes because of the independence from Mesh/BMesh. This revision is work in progress, mainly intended to address the review comments and ask for further code review in view of the trunk merger in the upcoming 2.67 release.
2013-03-11Another big code clean-up patch from Bastien Montagne, thanks again!Tamito Kajiyama
2013-03-08A big code clean-up patch from Bastien Montagne, many thanks!Tamito Kajiyama
2013-03-03Fix for exceptions in converting Python float objects to C variables not ↵Tamito Kajiyama
properly handled. Based on review comment from Campbell.
2013-03-03Code clean-up: used copy_m4_m4() and unit_m4() instead of verbose loops.Tamito Kajiyama
Based on review comment from Campbell.
2013-03-03Removed redundant definitions of __min and __max macros by replacing them withTamito Kajiyama
std::min() and std::max(), respectively. Based on review comment from Campbell.
2013-03-03Moved operations on blend file data from C++ class destructor to a specific ↵Tamito Kajiyama
method for releasing resources. Based on review comment from Campbell.
2013-03-02Fix for a buffer overflow, by simply removing the unnecessary string copy.Tamito Kajiyama
Review comment from Campbell.
2013-03-02Removed paths to a browser command and help index that are no longer used in ↵Tamito Kajiyama
Freestyle for Blender. Review comment from Campbell.
2013-02-24Freestyle Python API improvements - part 8.Tamito Kajiyama
* Proper handling of keyword arguments was implemented in Operators and ContextFunctions, as well as in methods of Interface0D, Interface1D, Iterator, their subclasses, Noise and IntegrationType. * Operators' methods and functions in the ContextFunctions module were renamed from CamelCase to lower cases + underscores. Style modules were updated accordingly. * Additional code clean-up was also made.
2013-02-24Code clean-up and fix for typos in docstrings.Tamito Kajiyama
2013-02-23Code style clean-up.Tamito Kajiyama
2013-02-23Added GNU GPL header blocks.Tamito Kajiyama
2013-02-23Fix for __repr__() depending on .getName() and .getExactTypeName().Tamito Kajiyama
API users no longer need to define them in user-defined Functions, Predicates and StrokeShaders. Also removed all .getName() and .getExactTypeName() definitions in pre-defined Functions, Predicates and StrokeShaders subclasses.
2013-02-23Minor docstring fixes.Tamito Kajiyama
2013-02-23Fix for texture images left unreleased.Tamito Kajiyama
2013-02-23Freestyle Python API improvements - part 7.Tamito Kajiyama
Fix for PyGetSetDef and proper handling of keyword arguments were done in UnaryPredicate0D, UnaryPredicate1D, BinaryPredicate1D, and StrokeShader classes. Style modules were updated accordingly. Additional code clean-up was also made.
2013-02-23Fixed typoes in docstrings.Tamito Kajiyama
2013-02-22Code clean-up: removed empty PyMethodDef.Tamito Kajiyama
2013-02-22Missing code updates in the previous commit.Tamito Kajiyama
Also improved __repr__() so that the .getName() is no longer necessary in user-defined Function0D and Function1D subclasses.
2013-02-22Freestyle Python API improvements - part 6.Tamito Kajiyama
Fix for PyGetSetDef and proper handling of keyword arguments were done in Function0D and Function1D classes. Additional code clean-up was also made.
2013-02-22Code clean-up: Py_TYPE(self)->tp_name instead of ((PyObject ↵Tamito Kajiyama
*)self)->ob_type->tp_name.
2013-02-22Attribute renaming: .exact_type_name --> .name. Also did a more generic ↵Tamito Kajiyama
implementation of the attribute (meant to be a shortcut of .__class__.__name__).
2013-02-21Freestyle Python API improvements - part 5.Tamito Kajiyama
Handling of keyword arguments in Python wrapper class constructors was revised. This revision is mainly focused on Interface0D, Interface1D, Iterator, and their subclasses, as well as a few additional view map component classes. Implementation notes: Because of the extensive use of constructor overloading in the underlying C++ classes, the corresponding Python wrappers try to parse arguments through multiple calls of PyArg_ParseTupleAndKeywords() if needed. The downside of this implementation is that most argument errors result in the same error message ("invalid argument(s)") without indicating what is wrong. For now this issue is left for future work. * Now the instantiation of ViewVertex is prohibited since the underlying C++ class is an abstract class. * Removed the .cast_to_interface0diterator() method from CurvePointIterator and StrokeVertexIterator. Instead the constructor of Interface0DIterator now accepts the instances of these two iterator classes to construct a nested Interface0DIterator instance that can be passed to Function0D functor objects. Specifically, an iterator 'it' is passed to a functor 'func' as follows: func(Interface0DIterator(it)) instead of: func(it.cast_to_interface0diterator()) * Boolean arguments of class constructors only accept values of boolean type. Input values of other types are considered as error. * Additional code clean-up was made.
2013-02-16Fix for pointers to auto variables returned from Python wrapper class methods.Tamito Kajiyama
The previous implementation was a quick workaround of C++ const references. Also removed the unused 'borrowed' flag from the Python wrapper of FrsMaterial.
2013-02-16Made code style clean-up and fixed a typo in a docstring.Tamito Kajiyama
2013-02-16Freestyle Python API improvements - part 4.Tamito Kajiyama
Major API updates were made as in part 3 to address code review comments. This revision focuses on Python wrappers of C++ iterators. * Most getter/setter methods were reimplemented as attributes using PyGetSetDef. * The naming of methods and attributes was fixed to follow the naming conventions of the Blender Python API (i.e., lower case + underscores for methods and attributes, and CamelCase for classes). The only irregular naming change is the following, to better indicate the functionality: - ChainingIterator: getVertex --> next_vertex * In addition, some code clean-up was done in both C++ and Python. Also duplicated definitions of predicate classes were removed.
2013-02-16Fix for copy-and-paste bugs in Id rich comparison. Also made code style ↵Tamito Kajiyama
clean-up.
2013-02-15Fix compilation on linux (with gcc4.7).Bastien Montagne
Without const, I had the following error: /home/i7deb64/blender-2.5-svn/__work__/freestyle/source/blender/freestyle/intern/python/BPy_ViewMap.cpp: In function ‘PyObject* ViewMap_scene_bbox_get(BPy_ViewMap*, void*)’: /home/i7deb64/blender-2.5-svn/__work__/freestyle/source/blender/freestyle/intern/python/BPy_ViewMap.cpp:120:54: error: invalid initialization of non-const reference of type ‘BBox<VecMat::Vec3<double> >&’ from an rvalue of type ‘BBox<VecMat::Vec3<double> >’ In file included from /home/i7deb64/blender-2.5-svn/__work__/freestyle/source/blender/freestyle/intern/python/BPy_ViewMap.cpp:3:0: /home/i7deb64/blender-2.5-svn/__work__/freestyle/source/blender/freestyle/intern/python/BPy_Convert.h:81:12: error: in passing argument 1 of ‘PyObject* BPy_BBox_from_BBox(BBox<VecMat::Vec3<double> >&)’ /home/i7deb64/blender-2.5-svn/__work__/freestyle/source/blender/freestyle/intern/python/BPy_ViewMap.cpp:121:1: warning: control reaches end of non-void function [-Wreturn-type] make[2]: *** [source/blender/freestyle/CMakeFiles/bf_freestyle.dir/intern/python/BPy_ViewMap.cpp.o] Erreur 1
2013-02-15Minor coding style clean-up.Tamito Kajiyama
2013-02-15Freestyle Python API improvements - part 3.Tamito Kajiyama
Major API updates were made to address code review comments. This revision mostly focuses on Python wrappers of C++ 0D and 1D elements (i.e., Interface0D and Interface1D, as well as their subclasses). * Most getter/setter methods were reimplemented as attributes using PyGetSetDef. Vector attributes are now implemented based on mathutils callbacks. Boolean attributes now only accept boolean values. * The __getitem__ method was removed and the Sequence protocol was used instead. * The naming of methods and attributes was fixed to follow the naming conventions of the Blender Python API (i.e., lower case + underscores for methods and attributes, and CamelCase for classes). Some naming inconsistency within the Freestyle Python API was also addressed. * The Freestyle API had a number of method names including prefix/suffix "A" and "B", and their meanings were inconsistent (i.e., referring to different things depending on the classes). The names with these two letters were replaced with more straightforward names. Also some attribute names were changed so as to indicate the type of the value (e.g., FEdge.next_fedge instead of FEdge.next_edge) in line with other names explicitly indicating what the value is (e.g., SVertex.viewvertex). * In addition, some code clean-up was done in both C++ and Python. Notes: In summary, the following irregular naming changes were made through this revision (those resulting from regular changes of naming conventions are not listed): - CurvePoint: {A,B} --> {first,second}_svertex - FEdge: vertex{A,B} --> {first,second}_svertex - FEdge: {next,previous}Edge --> {next,previous}_fedge - FEdgeSharp: normal{A,B} --> normal_{right,left} - FEdgeSharp: {a,b}FaceMark --> face_mark_{right,left} - FEdgeSharp: {a,b}Material --> material_{right,left} - FEdgeSharp: {a,b}MaterialIndex --> material_index_{right,left} - FrsCurve: empty --> is_empty - FrsCurve: nSegments --> segments_size - TVertex: mate() --> get_mate() - ViewEdge: fedge{A,B} --> {first,last}_fedge - ViewEdge: setaShape, aShape --> occlude - ViewEdge: {A,B} --> {first,last}_viewvertex - ViewMap: getScene3dBBox --> scene_bbox
2013-02-14Fix for a static variable in BlenderStrokeRenderer::RenderStrokeRep() left afterTamito Kajiyama
quick trials of different approaches to performance improvement.
2013-02-13Fix for a crash when the Polygonization geometry modifier is used with a ↵Tamito Kajiyama
small "error" parameter value. The problem was caused by a null pointer reference in CurvePiece::error() resulting from incorrect lengths of subdivided curves calculated in CurvePiece::subdivide(). Problem report by IRIE Shinsuke with a GDB backtrace log, many thanks!
2013-02-10Merged changes in the trunk up to revision 54421.Tamito Kajiyama
Conflicts resolved: release/datafiles/startup.blend release/scripts/startup/bl_ui/properties_render.py source/blender/SConscript source/blender/blenloader/intern/readfile.c
2013-02-04* Added a generic helper function for parsing PyObject arguments as ↵Tamito Kajiyama
N-dimensional float array. * Local helpers were replaced with the generic one. This also fixed a memory leak in the setter function StrokeVertex_point_set. * Made minor code style changes.
2013-02-04* Fix for broken StrokeAttribute.visible setter function.Tamito Kajiyama
* Fix for a wrong vector element index in StrokeAttribute_mathutils_set in the case of MATHUTILS_SUBTYPE_COLOR. * Made minor code style changes.
2013-02-04Replaced PyTuple_SetItem by PyTuple_SET_ITEM when creating new tuples.Tamito Kajiyama
2013-02-03Freestyle Python API improvements - part 2.Tamito Kajiyama
The API syntax of FrsMaterial was updated by means of getter/setter properties. Python style modules (including the Parameter Editor) were updated accordingly.
2013-01-29Fix for a crash when freeing copied scenes.Tamito Kajiyama
The problem was caused by the fact that BKE_scene_copy() was simply doing "memcpy" to duplicate render layers including lineset settings without taking care of pointers in the linesets. For this reason, freeing the original scene and copied one resulted in freeing allocated memory buffers twice. Now BKE_scene_copy() properly duplicates linesets as part of render layers. Also some code clean-up was made in the modified files. Problem report by IRIE Shinsuke (with a patch to fix the crash). Many thanks!
2013-01-28Freestyle Python API improvements.Tamito Kajiyama
StrokeAttribute class methods were renamed from camel case to lower case plus underscore. Also made changes to shaders.pyTVertexOrientationShader that uses the affected methods.
2013-01-28Freestyle Python API improvements - part 1.Tamito Kajiyama
* The API syntax of StrokeVertex and StrokeAttribute was updated by means of getter/setter properties instead of class methods. Python style modules (including the Parameter Editor implementation) were updated accordingly. * Code clean-up was done for a few Python style modules, mostly by removing duplicated definitions of stroke shaders and fixing indentation.