Commit Graph

94 Commits

Author SHA1 Message Date
b8a71efeba style cleanup: follow style guide for/with/if spacing 2012-03-24 07:52:14 +00:00
69e6894b15 style cleanup: follow style guide for formatting of if/for/while loops, and else if's 2012-03-24 06:18:31 +00:00
c9d0de49b9 mesh_validate code for bmesh (i.e. polys/loops).
Everything seems to work well (many tests making random changes over various meshes went good), but the code is a bit complex and hard to follow, due to the various possibilities of invalid poly/loop combinations… Code also makes more operations than previous tri/quad faces version (hence is a bit slower), but I don’t think we can do otherwise, it’s just the price for bmesh flexibility. ;)

Note: added the py script I used to make the tests, under source/tests/...
2012-03-15 20:10:07 +00:00
95670e03a0 style cleanup / comment formatting for bli/bke/bmesh 2012-03-03 20:19:11 +00:00
47c373c7a9 style cleanup (mostly whitespace) 2012-02-27 10:35:39 +00:00
53fece44cf style cleanup for blenkernel, no functional changes. 2012-02-23 02:17:50 +00:00
2da527b017 un-inline edgehash functions, BLI_edgehash_insert was far too big to inline.
and have edge hash use unsigned ints since edge verts are unsigned ints for MEdge's
2011-12-28 10:06:10 +00:00
2cd5436a81 svn merge ^/trunk/blender -r42839:42871 2011-12-25 21:31:19 +00:00
ddcf56366d change customdata mask from an 'unsigned int' to an 'u_int64_t', since BMesh branch has run out of bits 2011-12-23 20:30:23 +00:00
65f3b93f14 svn merge ^/trunk/blender -r42521:42550 2011-12-10 05:38:00 +00:00
71ea408c73 check for weights outside of 0-1 range when validating weights 2011-12-09 20:29:21 +00:00
a80a5c4034 BKE_mesh_validate_arrays was correcting non-finite verts and zero normals even when do_fixes was false, also return true if any bad vertex weights were found.` 2011-12-09 07:23:17 +00:00
980e68175b svn merge ^/trunk/blender -r42495:42516 2011-12-08 17:32:37 +00:00
0feb2acd8a regarding [#29521] Invalid Vertex Weights
added checks to mesh.validate() so it checks for nan weights and negative groups which can crash blender.

the file in the report looks to be corrupt, but this at least can make it load.

also noticed validate was using isnan() and finite() were both used to check valid vertex locations, only finite is needed.
2011-12-08 04:51:03 +00:00
15ad39e684 svn merge ^/trunk/blender -r42303:42329 2011-12-02 01:01:07 +00:00
d6d6ffd770 Check for mvert coords and normals when doing mesh.validate() and set invalid
coordinates to zero and zero-length normals to Z-up direction.
2011-12-01 19:21:58 +00:00
e6e265b2b5 svn merge -r41779:41847 ^/trunk/blender 2011-11-15 02:58:06 +00:00
49ccf975f2 minor cleanup
- use NULL rather then 0 for pointers
- use static functions where possible
- add own includes to ensure func's and their declarations don't get out of sync.
2011-11-14 16:05:44 +00:00
94f8e3198d svn merge -r41266:41287 ^/trunk/blender 2011-10-26 03:26:52 +00:00
15e6d6cd75 svn merge ^/trunk/blender -r41226:41227 . 2011-10-24 12:43:08 +00:00
4a04f72069 remove $Id: tags after discussion on the mailign list: http://markmail.org/message/fp7ozcywxum3ar7n 2011-10-23 17:52:20 +00:00
69732dbe21 Miscellaneous cleanup, comment changes, and asserts. Should be no functional changes. 2011-10-10 14:56:09 +00:00
d62338578b Fix 28493: Meshes added with many addons revert to only verts on entry to edit mode 2011-10-09 16:59:48 +00:00
1ff373ef5b svn merge -r40166:40279 ^/trunk/blender 2011-09-17 04:59:14 +00:00
1741269d30 resolve bad level calls from blenkenel/ into editors/ & remove editors from the include path from CMake & SCons.
* ED_curve_editnurbs --> curve_editnurbs
* ED_sculpt_modifiers_changed --> object_sculpt_modifiers_changed
2011-09-14 00:37:27 +00:00
e74e245030 svn merge -r39890:39951 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-06 03:16:12 +00:00
451136e7c0 warning fixes 2011-09-03 15:36:36 +00:00
1db6d629a0 BKE_mesh_calc_edges() now uses polygons when available. 2011-09-01 08:27:35 +00:00
5065d4c744 svn merge -r39664:39762 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-08-29 00:46:56 +00:00
c96f28a718 - use %u rather tham %d for unsigned ints in string formatting funcs.
- replace (strlen(str) == 0) with str[0]=='\0'
2011-08-27 03:25:02 +00:00
6ef77cf95a =bmesh= merge from trunk at r36529 2011-05-08 23:43:18 +00:00
bd80f19c22 fix [#27140] Negative Subdiv level in the operator panel.
when relative option is disabled, don't allow setting the subdiv value to a negative number.
2011-04-25 06:44:43 +00:00
c98148a963 =bmesh= merge from trunk at r36153 2011-04-15 01:19:13 +00:00
Nathan Letwory
0ff06e21cd doxygen: blender/blenkernel tagged. 2011-02-27 20:40:57 +00:00
2e5eb41522 pedantic warning cleanup, also remove texspace_edit() since its been added using a different method. 2011-02-27 08:31:10 +00:00
f01261d040 merge with/from trunk at r35190 2011-02-27 06:19:40 +00:00
Nathan Letwory
5b607701a7 doxygen: prevent GPL license block from being parsed as doxygen comment. 2011-02-23 10:52:22 +00:00
1817a045b4 mesh validation remove duplicate faces didn't always work, now it _should_ all work correctly. 2011-02-10 14:13:13 +00:00
7daabec534 mesh validation: bugfix for removing doubles, another fix coming... 2011-02-10 12:34:52 +00:00
264c8c2162 mesh.validate() now returns True if any corrections were made.
tested that correcting invalid meshes works by generating random meshes and checking that only the first call to mesh.validate() makes changes.

found 2 bugs in mesh validation.
- face sorting array wasn't assigned correct indices.
- removing invalid edges used wrong comparison.
2011-02-10 09:29:31 +00:00
30ada8fdd3 fix [#26003] Twice applied modifier with Convert to mesh with several multi-user objects
convert_exec could do with a re-write, getting quite confusing.

update md5's for ctest results and some renaming in mesh_validate code.
2011-02-10 04:48:49 +00:00
5aa72b8726 BKE_mesh_validate() now corrects invalid meshes (optionally), added access for python so it can correct for bad imported geometry - mesh.validate(). 2011-02-09 15:13:20 +00:00
5e1eb9b4d3 SVN maintenance. 2011-02-09 03:48:40 +00:00
3e8ddef8e5 move validation into blender kernel so it can be called by internal modifier funcs more easily. 2011-02-09 02:28:11 +00:00