a33a5880f7
Fix bmesh.utils.face_join arg parsing
2018-01-12 14:51:15 +11:00
b29e37ed81
Docs: add note for bmesh face_split_edgenet
2017-10-12 23:36:42 +11:00
22ec7b17d2
BMesh: raise exception face-split w/ adjacent loops
...
Was raising "internal error".
2015-11-25 12:08:50 +11:00
cff288cf3a
Use PyC_ParseBool to parse bools
...
This could cause problems since they could be any int,
then passed directly to internal functions that assume bools.
2015-08-04 18:49:42 +10:00
f283b959e7
BMesh: BM_vert_separate double edge fix
...
Splitting edges could give duplicates.
2015-05-02 16:24:35 +10:00
a5869945c6
Cleanup: bmesh src/dst order in API args
2015-05-02 15:46:03 +10:00
f553aba69f
Correct docstring
2015-04-30 09:55:54 +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
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
9fd569a654
PyAPI: add utilities PyTuple_SET_ITEMS, Py_INCREF_RET
...
Setting all values of a tuple is such a common operation that it deserves its own macro.
Also added Py_INCREF_RET to avoid confusing use of comma operator.
2015-01-06 19:09:11 +11:00
26e476b7e1
Fix T41788: bmesh.utils.loop_separate, face_vert_separate() always return None
2014-09-12 10:16:50 +10:00
cbde56572f
bmesh py api: face_split_edgenet missed NULL check
2014-07-21 12:42:00 +10:00
49a5115497
bmesh py api: add bmesh.utils.vert_splice(...)
2014-07-17 12:25:40 +10:00
7f4735ab3b
bmesh py api: BPY_BM_CHECK_SOURCE_* macro now accepts multiple args
2014-07-17 11:56:08 +10:00
28940d79b1
bmesh py api: add typed tuple-from-array functions
2014-07-16 11:50:34 +10:00
8a04bed724
Error in last commit
2014-07-14 21:34:51 +10:00
a8e338cee5
Py/API: add bmesh.utils.face_split_edgenet
2014-07-14 21:32:37 +10:00
c3deb16c16
BMesh: add ability not to delete vertex when collapsing
2014-06-27 20:28:02 +10: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
880a86230f
bmesh_vert_separate: remove unused return value
2013-08-12 23:49:56 +00:00
be71c46b24
code cleanup: minor BMESH_TODO's, some were left in even though they were done/invalid.
2013-04-15 04:34:14 +00:00
858ff6b696
Fix for [ #34898 ] Typo in error message of mathutils.Vector
...
* Also fixed some more cases of "more then" -> "more than".
2013-04-07 15:09:06 +00:00
b27854bd47
use booleans for bmesh api.
2013-01-14 16:42:43 +00:00
56bfd3235c
fix [ #33616 ] Documentation not matching the behaviour of bmesh.utils
...
incorrect api docs
2012-12-19 11:18:08 +00:00
c86045d7a2
bmesh py api: use generic checking macros to see if an object if from the same bmesh.
...
- was such a common operation so this saves having exceptions set inline all over the place.
2012-11-29 03:25:37 +00:00
ee96cde864
style cleanup: whitespace
2012-08-26 11:35:43 +00:00
3e305c1018
bmesh.ops module for bmesh operator access, only remove_doubles and convex_hull at the moment.
2012-06-26 21:40:01 +00:00
200584e5c6
fix for a handful of memory leaks relating to parsing and allocating arbitrary sized vectors from python args.
...
Vector.dot() was always leaking memory, and would crash if args sizes didnt match.
These errors were introduced with n-dimensional vector support.
also fixed an error with bmesh py api allocation.
2012-06-26 16:58:58 +00:00
54156e2b82
option to disable feather, since its so slow - for interactively editing masks its useful to be able to disable.
...
also rename RNA to 'use_antialiasing'
2012-06-21 12:27:57 +00:00
56c5c63f57
code cleanup: doxy comment filename corrections
2012-06-08 23:43:11 +00:00
49ff0eeec4
bmesh py api: expose BM_face_split_n() to the python api;
...
face_fill(..., coords=(v1, v2, ...))
This is the same function the knife tool uses. should be handy for dicing up geometry in py.
2012-04-22 10:19:24 +00:00
1635d8e873
add option not to delete edges/verts when joining faces, needed so we can loop over edges and join them without having to check if they have been removed.
2012-04-04 14:48:10 +00:00
3c11379e26
code cleanup: move bmesh inline funcs to headers (avoids compiling the C files).
2012-03-24 01:24:58 +00:00
f15c15e992
bmesh py api: finished todo - editable select_history
...
eg:
bm.select_history = vert, face, edge
bm.select_history.add(edge)
2012-03-14 04:46:12 +00:00
050439fd9d
bmesh py api - correct class references in docs and rename mesh conversion funcs to ne less confusing.
2012-03-11 04:07:22 +00:00
27d43f3fd3
added API function to C and python
...
* C: BM_vert_separate(...)
* py: bmesh.utils.vert_separate(vert, edges)
This splits off regions around the vertex, splitting on connected edges passed in a sequence.
also made minor changes
- rename python api functions _rip to _separate
- fixed bmesh iterator being iterable its self (some parts of python expect this)
- fix memory leak in bmesh python api.
2012-03-09 00:01:38 +00:00
c82c456247
bmesh py api, new functions:
...
* bmesh.utils.face_vert_rip(f, v)
* bmesh.utils.loop_rip(l)
2012-03-08 20:00:37 +00:00
d1937de1d2
fix for own error in edge-rotate keeping edge customdata - this was crashing when rotating multiple edges.
...
Now create the rotate edge in advance and copy its customdata (before joining the faces).
This commit also fixes an annoyance where tryangulating faces could create duplicate edges.
2012-03-06 19:29:05 +00:00
4b940364a1
edge rotate now keeps edge properties (like seam, crease, bevel weight.. etc)
2012-03-05 01:53:30 +00:00
4d84e869a0
Improvements to bmesh edge rotate
...
On a user level, edge rotate now works better with multiple edges selected, it wont make zero area faces or rotate edges into existing ones.
With a single edge selected - rotate is less strict and will allow ugly resulting faces but still checks on duplicate edges.
API:
* BM_edge_rotate now takes a flag, to optionally...
** check for existing edge
** splice edge (rotate and merge)
** check for degenerate resulting faces (overlapping geometry, zero area)
** beauty - only rotate to a better fit.
... this allows it to still be used as a low level API function since all checks can be skipped.
* BM_edge_rotate() now works a bit different, it find the new edge rotation before joining the faces - exposed by BM_edge_rotate_calc().
* Added api call bmesh_radial_faceloop_find_vert() - Radial Find a Vertex Loop in Face
2012-03-05 00:50:18 +00:00
1004b03578
bmesh - remove faces with <3 sides after dissolve/collapse (most tools already did this).
2012-02-26 05:48:12 +00:00
69cf6adb84
fix for own regression in r44361 (broke BM_vert_in_face)
...
also fix py api: bmesh.utils.face_split(face, v1, v2)
2012-02-25 14:56:37 +00:00
f7c9485605
bmesh python api:
...
bm.verts.get(verts) / bm.faces.get(verts)
- use to find an edge or face from a vertex list passed.
2012-02-24 12:57:05 +00:00
c839ff3acb
bmesh py api - bmesh.utils.face_flip
2012-02-24 11:04:09 +00:00
1fbd91b8a1
typo cleanup, no functional changes.
2012-02-24 06:44:04 +00:00
b9b0c3dfb4
bmesh python api - add/improve rst docstrings.
2012-02-24 04:59:13 +00:00
310af7d73f
bmesh py api
...
bmesh.utils.face_join(faces)
added a utility function for converting a list of python BMesh elements into a C array.
use for this face_join as well as BMesh.faces.new()
2012-02-23 17:14:53 +00:00
2fd226abe7
bmesh py api, added: bmesh.utils.edge_rotate(edge, ccw=False)
...
also improved docstrings.
2012-02-23 14:15:26 +00:00
7bc306c947
bmesh py api, new elements now take optional 'example' arguments, so the new data copies from the existing.
2012-02-23 11:27:22 +00:00
3034971520
bmesh py api functions:
...
bmesh.utils.vert_collapse_edge, vert_collapse_faces, vert_dissolve, face_split
2012-02-23 10:29:04 +00:00