aaa56782d3
BMesh: move BM_face_split_edgenet to its own file
...
Isolate edge-net splitting in preparation for other functions to be added here.
2015-12-09 16:24:52 +11:00
9c044b4773
BMesh: new API call to collapse an edge
...
Existing collapse functions were strict regarding the number of verts sharing an edge.
BM_edge_collapse allows any edge to be passed in without first having to manipulate geometry.
2015-11-19 22:52:17 +11:00
93fb07fbd5
BMesh: bmesh_jekv check for degenerate faces
...
Move check for degenerate faces from BM_vert_collapse_faces into bmesh_jekv.
2015-11-19 22:52:17 +11:00
bed91b623f
Edge/Vert slide: improve multires interpolation
...
Need to re-interpolate the entire face, not just the connected loop.
Also add BM_face_interp_multires()
2015-11-03 20:38:23 +11:00
f75d6c4a8f
BMesh: add BM_loop_interp_multires_ex which takes cached vars
...
Avoid recalculating face centers (for each loop) when interpolating multires.
2015-11-03 18:28:13 +11:00
5d30c23c35
doxygen: corrections/updates
...
Also add depsgraph & physics
2015-05-20 14:12:22 +10:00
3ef27ec807
BMesh: add BM_face_loop_separate_multi
...
New utility function to handle splitting off multiple loops from a face at once.
2015-04-30 06:24:33 +10:00
89f5a09ab4
Cleanup: use 8 space indent for multi-line args
2015-04-25 20:15:20 +10:00
690b90f1e2
BMesh: minor optimization counting adjacent data
...
add BM_***_count_is_over(), _count_is_equal()
Useful if we only want to know if the count is a smaller value.
2015-04-12 17:38:14 +10:00
d580c90469
CustomData: const correctness for interp()
2015-02-23 13:54:33 +11:00
133f79e449
Cleanup: warnings, typos
2014-10-29 14:15:21 +01:00
07d161bb38
Comments: update for changed args
2014-09-28 19:19:58 +10:00
90e1746d89
BMesh: correct flag use
...
Allowed fill to make duplicate faces
2014-08-21 13:08:13 +10:00
7bca8be24d
BMesh: improve docs for BM_edge_split
2014-08-20 12:44:11 +10:00
4795b61c1b
Cleanup: assert / warn
2014-08-18 16:05:06 +10:00
a04a8039f0
Code cleanup
2014-07-18 11:55:59 +10:00
ebd04f581d
Correct error in recelty added BM_face_split_edgenet
...
Was copying UV's to unrelated faces
2014-07-17 17:12:32 +10:00
cfbc495b8d
BMesh: minor speedup to BM_face_split_edgenet
2014-07-13 13:53:08 +10:00
9327816593
Correct error in BM_face_split_edgenet when no faces are split
2014-07-12 08:44:19 +10:00
48abc65c39
BMesh: new face splitting function BM_face_split_edgenet
...
This takes a face and an edge-net, splitting the face into regions
defined by the edge-net.
2014-07-11 10:29:53 +10:00
c3deb16c16
BMesh: add ability not to delete vertex when collapsing
2014-06-27 20:28:02 +10:00
4ca67869cc
Code cleanup: remove unused includes
...
Opted to keep includes if they are used indirectly (even if removing is possible).
2014-05-01 04:47:51 +10:00
668250deb8
BMesh: minor change to looping
2014-04-12 13:06:08 +10:00
4614c63d5d
BMesh: bmesh_sfme now initializes the copy
2014-04-08 12:58:57 +10:00
7bb84912ef
Code cleanup: ifdef debug only checks and simplify manifold test
2014-03-25 07:54:41 +11:00
b69809c820
Fix T39331: Dissolve vertex crash
2014-03-24 16:37:10 +11:00
702f374972
Fix for possible (unlikely) uninitialized var use in BM_face_split
2014-03-13 18:41:44 +11:00
a0f25f2301
Fix own mistake with zealous check for face splitting
...
Was disallowing adjacent loops to be split which is correct for a single
split across a face, but not fore BM_face_split_n
2014-01-21 12:27:38 +11:00
04a902965e
BMesh optimize face splitting by taking loops rather then verts
...
- add BM_vert_pair_share_face
- add BM_loop_is_adjacent
- remove BM_verts_connect
2013-12-24 11:13:58 +11:00
63a2cc2ab7
BMesh API: make simple, low level functions inline
2013-12-23 16:03:07 +11:00
3c1dce0d9b
fix for BM_faces_join_pair() making the assumption that only the 2 faces use an edge, face winding could be flipped incorrectly.
...
also remove search for shared edges - all callers pass the edge in.
2013-10-26 05:05:37 +00:00
55201ce48b
Fix [ #37160 ] Rotate edge direction changed between 2.64 and 2.65 (low priority)
...
Easy to fix, but do not really understand *why* this is needed...
2013-10-21 11:13:39 +00:00
d6b9fb36d8
fix leak in BM_face_split() with multires if the split failed.
...
also remove redundant normal copy.
only triangulate the mesh if its needed when enabling dyntopo.
2013-08-23 13:00:43 +00:00
8937a8b839
use BM_CREATE_NOP arg rather then zero, with pointer and bool args in either side in some cases it gets a bit confusing.
...
also correct edge-rotate where bool->flag conversion worked by accident.
2013-08-21 05:39:46 +00:00
72f2917032
bmesh: skip error checks when building in release mode (minor speedup),
...
also more strict use of BLI_array_declare(), only allow after array is declared.
2013-07-28 09:05:27 +00:00
d68917cb86
code cleanup: typos
2013-07-27 07:02:27 +00:00
7fec23ae0a
fix for problem with edge slide where it would stop shapekey modifier from being applied (because of added vertices),
...
now, instead of making hidden copies of faces, the faces are copied into a temp bmesh.
also remove a hash that was being created and not used (old code).
2013-07-11 04:24:36 +00:00
aa0caa448e
utility bmesh functions, for edge loop creation, optionally pass array BM_edge_split_n() to get verts created.
2013-05-22 06:00:26 +00:00
347e2b6cb0
code cleanup: make bmesh var names more consistent
2013-03-09 17:12:24 +00:00
b27854bd47
use booleans for bmesh api.
2013-01-14 16:42:43 +00:00
f6c14d430f
minor speedup - replace use of smallhash with api_flags for BM_edge_split()
2012-12-11 14:30:12 +00:00
e2f0a1e4db
own cleanup commit in bmesh branch - removed last letters from ends of some comments.
2012-12-11 14:24:27 +00:00
d72a6c3018
fix for another error in my own recent commit, beauty fill crashed.
2012-11-30 16:15:49 +00:00
6cdb555e6e
bmesh refactor - rename some of the BM_****_share_****_count() functions to BM_***_share_check()
...
some of these were only returning a boolean, others returned a count even though only a boolean was needed.
split some of the functions in two as well where check/count are both needed.
2012-11-09 14:52:05 +00:00
95ddd19d13
fix for build error in own commit with non gcc compilers. (and remove invalid comment)
2012-10-25 07:53:11 +00:00
1767b65846
style cleanup: also rename bmesh_decimate.c --> bmesh_decimate_collapse.c
2012-10-23 03:38:26 +00:00
aacdd76c06
fix for 2 cases BM_disk_dissolve() could fail/assert.
...
- when there was a vertex with 2 boundary edges and one manifold edge (vert at the boundary between 2 quads) it could assert.
- when there is a vertex with 2 boundary verts connected that both use the same face, it would do nothing.
2012-10-16 09:11:07 +00:00
0d5d2146eb
code cleanup: make shape key api names consistent with our new convention.
2012-09-19 10:12:07 +00:00
32e4e0f873
add conjugate_qt_qt(), also some code cleanup and use const for 'rotOrders' var in math_rotation.c
2012-08-25 17:42:15 +00:00
e9caa21830
fix own error in recent smoothview cleanup, also correct some cross references in bmesh docs.
2012-08-17 14:43:20 +00:00