605a2c8490
Cleanup: warning, style
2015-09-21 06:59:50 +10:00
0d4cca6593
Fix edge/vert slide UV-correct & zero length edges
...
When calculating loop angle weighting, skip overlapping vertices.
2015-06-24 09:54:23 +10:00
dc1586063b
BMesh: correct flag check (own mistake)
2015-05-28 12:11:35 +10:00
f01c6e185f
Cleanup: typos
2015-05-23 22:38:47 +10:00
d3cc7419a3
BMesh: add BM_edge_pair_share_face_by_len
2015-05-19 23:51:57 +10:00
3aa4a0e787
BMesh: add UV delimit for select-linked, dissolve
2015-05-16 12:21:31 +10:00
4d7b0e4fe3
Correct own error: is_manifold_region on wire vert
2015-05-07 05:23:07 +10:00
22bbd1c512
BMesh: improve rip tool /w mon-manifold verts
...
Can now rip from multiple fans (mixed single faces or larger regions)
Also add BM_vert_is_manifold_region which only checks if a vert has disconnected fans.
2015-05-05 07:22:35 +10:00
33cc5ed495
Cleanup: redundant vars
2015-05-03 06:16:59 +10:00
bd5e578804
BMesh: rework BM_vert_is_manifold (simplify logic)
...
- simplify boundary handling (walk from boundary - no need to reset walking)
- early exit when the vert has >2 boundaries
- use BM_vert_step_fan_loop to walk the fan
2015-05-03 04:46:24 +10:00
de031b7c89
BMesh: replace radial count with simple checks
2015-05-03 04:41:39 +10:00
c2f7cffd56
Add inverse-square falloff to bmesh, mask & compo.
2015-04-26 18:31:54 +10:00
d33314393e
BMesh: use const for API calls
2015-04-26 17:19:51 +10:00
89f5a09ab4
Cleanup: use 8 space indent for multi-line args
2015-04-25 20:15:20 +10:00
6fb0563aee
BMesh: optimize BM_face_exists
...
Avoid flagging/clearing flags,
just walk over the face until a mismatch is found.
2015-04-14 15:27:08 +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
4c58cb8bd9
Correct assert
2015-03-16 13:39:27 +11:00
7df60becb9
BMesh: Add extended BM_vert_calc_edge_angle that takes a fallback value
2015-03-06 18:45:00 +11:00
8c6073db11
BMesh: BM_loop/edge_point_side_of_loop_test
...
change behavior to use a negative number when outside,
and return the signed, squared distance.
2015-03-03 00:26:13 +11:00
ced19783fd
Fix mismatch (missing 'const' to mactch funcs declarations).
...
Was breaking windows compile, reported by bdancer over IRC, thanks.
Also, quite some annoying 'unused vars' warnings (debug-only vars).
2015-02-23 13:57:02 +01:00
fd75796afe
cleanup: use const
2015-02-02 01:23:08 +11:00
bd00770715
Cleanup: consistent arg order in bmesh
2015-01-14 01:36:03 +11:00
aab4f2b762
cleanup: redundant casts & const cast correctness
2015-01-01 23:42:28 +11:00
591eb27efa
BMesh: check for loop side-of-loop & side-of-edge
2014-11-21 14:16:35 +01:00
46e2d5ee41
Cleanup: typo
2014-11-21 14:16:35 +01:00
1ddfe6676d
BMesh: shrink/fatten faces-normals in face mode
...
nice for solid-modeling, gives better results for partial selections.
2014-11-13 16:41:56 +01:00
b7174c9320
Fix connect-vertices failing for concave ngons
...
Also add:
- generic callback for bmesh elements.
- ability to pass an existing array to a bmesh operator.
2014-11-02 00:09:14 +01:00
133f79e449
Cleanup: warnings, typos
2014-10-29 14:15:21 +01:00
9cfcddc8f4
Dyntopo: minor speedup collapsing edges
2014-10-06 12:16:06 +02:00
58659fc207
BMesh: Add BM_vert_pair_share_face_check
...
Use to assert if BM_vert_splice is used incorrectly
2014-07-17 08:20:04 +10:00
f32079d4b9
BLI_stackdefines
...
Bounds check the stack while debugging, also add STACK_PEEK
2014-06-29 05:57:48 +10:00
e947dd8cd7
BMesh: add BM_vert_is_edge_pair(), faster then checking (BM_vert_edge_count(v) == 2)
2014-06-27 20:28:32 +10:00
c5ccbacdaa
move STACK_* macros into BLI_stackdefines.h
2014-06-25 00:01:33 +10:00
bdf477d19a
BMesh: add check to BM_vert_pair_share_face to allow adjacent loops
...
Add BM_vert_pair_share_face_by_angle to avoid selecting concave splits.
2014-05-13 16:49:57 +10:00
a51a0ca772
Math Lib: add shell_v3v3_normalized_to_dist and v2 version
...
bypass angle calculation to avoids (asin, sqrt, cos).
2014-04-19 22:17:10 +10:00
caf8684b50
EditMesh: Support contracting the selection as well as extending
...
This allows for holding ctrl while switching from face->edge modes to
select an edge-ring.
2014-03-17 00:25:34 +11:00
4ae6c5cd77
BMesh: minor optimization, step over own loop in BM_face_exists
2014-03-12 18:30:38 +11:00
fed1b8b16d
Code cleanup: suffix vars to make obvious they are squared
2014-02-03 02:46:45 +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
133bc4b991
BMesh API: optimize BM_edge_exists().
2013-12-23 16:57:39 +11:00
63a2cc2ab7
BMesh API: make simple, low level functions inline
2013-12-23 16:03:07 +11:00
ab9fabdfc6
BMesh API: optionally pass fallback to BM_edge_calc_face_angle functions
2013-12-14 23:25:28 +11:00
5da703e915
BMesh/Mesh: replace scanfill with polyfill
2013-11-30 22:13:52 +11:00
6bdff7e2ad
fix [ #36481 ] When "Rip Edge" cannot be completed, Blender crashes weirdly
2013-08-19 10:00:17 +00:00
47c23750e8
style cleanup: indent/whitespace
2013-08-19 01:48:44 +00:00
763bce4d64
bmesh api internal changes
...
- optimize BM_face_exists_overlap_subset(), dont check faces smaller then the vert array, don't initialize overlap flag unless its needed.
- BM_face_exists_overlap had incorrect check (currently function is unused so no harm done)
2013-08-17 13:32:56 +00:00
1677758e45
new bmesh queries BM_face_exists_overlap, BM_face_exists_overlap_subset
...
the subset version of the function checks if any faces has all its verts in the given array.
also made some additions to linklist functions (arena and pool versions of append).
2013-08-16 13:02:34 +00:00
723eaa36ce
fix own error in BM_mesh_calc_edge_groups() was clearning wrong dirty-index flag.
...
also remove unused transform defines.
2013-08-14 08:14:50 +00:00
4770848871
code cleanup: bmesh use 'const' for query functions.
2013-08-03 16:37:23 +00:00
31761f5e5b
code cleanup: replace bmesh_radial_face_find -> BM_edge_in_face
2013-08-03 15:30:57 +00:00