4439eca654
fix [ #35503 ] Bug with BMesh and Mirror Modifier (Blender 2.67)
...
regression with bmesh - extruding was creating faces where it shouldn't.
2013-05-27 20:56:33 +00:00
b1f4e2b4db
code comments: bmesh operator doxy header descriptions.
2013-03-30 08:54:50 +00:00
db77fdc6ff
fix for own mistake in using alloca in a loop, replace with BLI_buffer
2013-03-16 00:41:32 +00:00
d9c9209608
code cleanup: quiet some -Wshadow warnings, mix of obvious mistakes and harmless global/local naming conflict.
2013-03-15 22:55:10 +00:00
b27854bd47
use booleans for bmesh api.
2013-01-14 16:42:43 +00:00
84361f602a
fix [ #33651 ] Spin tool destroys unselected loose vertex
...
bmesh.ops.extrude_face_region() didn't check for isolated verts (not connected to geometry), and removed them, happened for Ctrl+LMB extrude too.
2012-12-27 01:02:32 +00:00
2cb39ea9da
use BM_face_create() over BM_face_create_ngon() in bevel and extrude individual faces to get some speedup.
2012-12-19 09:45:56 +00:00
71730f26d7
replace BLI_array_fixedstack_declare with() new macro BLI_array_alloca() which uses stack memory always and doesn't need to be freed explicitly.
2012-12-11 15:10:19 +00:00
0526fcf13f
revert part of r52720, Id rather leave these as-is, even if they give warnings under some configurations.
2012-12-03 08:11:04 +00:00
818a345be3
Silent a bunch of gcc warnings (usually dummy, but noisy!).
2012-12-02 16:01:06 +00:00
07ccd3ee3f
fix [ #33029 ] Applying modifier leaks memory
...
Thanks for Sergey for finding the bug & patching, This fix works a bit differently.
Theres no need to allocate the customdata in the first place - since its written into. So add a flag for vert/edge/face/loop creation functions so they can skip customdata creation.
2012-11-29 16:26:39 +00:00
8ecce451ab
bmesh operator naming - use clearer names for args eg: (mat -> matrix, use_singleedge -> use_single_edge)
...
also remove duplicate docs for operator arg formatting.
2012-11-28 00:16:06 +00:00
f8bc346eff
bmesh/py operator api:
...
add type checking for element buffers, there was nothing stopping python from passing any element type into an argument when in some cases only verts/edges/faces were expected.
now operator args define which types they support.
2012-11-27 00:50:59 +00:00
3d64381e4d
use more rigid type checking for bmesh slot subtypes.
2012-11-26 03:16:29 +00:00
ebaf1306b8
bmesh operator api:
...
avoid per vert/edge/face string lookups in BMO_slot_map_* functions --- used in array modifier, subdivide, remove doubles and other tools.
2012-11-20 13:29:27 +00:00
dbdc76c9d0
code cleanup: make bmesh operator names more consistant since python has access to these as input arguments and return values.
...
all output values currently have ".out" suffix, this may go in the future, but for now it makes it clear in C code what are inputs and outputs.
2012-11-20 05:50:19 +00:00
48639af5f8
use input and output slots for bmesh operators, needed for the python api to get return values.
2012-11-19 14:58:31 +00:00
0bfc92ff8e
BM_iter_as_arrayN() can now take an optional existing array argument, useful to avoid many small malloc's by passing a fixes size stack variable instead.
...
Will give some speedup to edge-split modifier and bevel.
2012-11-12 05:53:43 +00:00
656b884387
fix for extruding edges giving incorrect (swapped) loop data for new faces.
2012-10-28 16:17:20 +00:00
0d5a6dccf7
code cleanup: minor changes before committing functional changes.
2012-10-28 15:37:29 +00:00
65bc9ee8d0
revert last commit, it broke regular face extrude. need to look into it further.
2012-10-27 15:34:54 +00:00
71a0fb5dde
fix for extruding single edges from faces giving flipped loop data - UV's/VCols
2012-10-27 15:24:19 +00:00
c9dade4fe0
Big i18n commit: add "reports" from bmesh/readfile/tracking/dynapaint (and a few others), and another bunch of UI messages tweaks/fixes, as well as some BKE_report()<->BKE_reportf()...
2012-10-26 17:32:50 +00:00
c9c76a9a68
add compiler hints that failing to create a bmesh face is unlikely.
2012-10-01 11:12:49 +00:00
bd53226b5c
fix [ #32423 ] Extrude crash
...
mistake in r50086 caused the crash (killing the wrong vertex)
2012-09-03 00:30:55 +00:00
809fce9d00
Fix #32341 : extrude with a mirror modifier could lead to orphan vertices, it
...
was already removing unnecessary edges, just not vertices of those edges.
2012-08-21 14:38:03 +00:00
90d215535e
add option so operators can be called with a flag, currently the only flag is to respect hidden geometry.
...
this is useful for bmesh tools that operate in object mode or for modifiers which would previously use hidden faces in some cases.
2012-07-21 00:58:02 +00:00
8b865c01cd
style cleanup: comments
2012-06-30 22:49:33 +00:00
2932cded40
fix for own error renaming bmesh operator dupe
2012-06-30 21:19:12 +00:00
69a7e0af02
rename bmesh ops since they are exposed in an api now.
2012-06-30 15:27:13 +00:00
ec29e2620e
Clear skin root flag on new vertices created by extruding.
...
Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier
2012-05-22 15:30:05 +00:00
2a1ba8c85b
style cleanup: formatting and some float/double promotion
2012-05-03 19:57:24 +00:00
ef054e165c
style cleanup: format 'for' loop macros the same as for loops, some renaming to BLI_array macros.
2012-04-28 15:14:16 +00:00
792f536b36
code cleanup: better use of BLI_array_* (grow in larger steps where possible), include BMO_iter_new in for loops.
2012-04-23 02:17:57 +00:00
8765dfccf7
style cleanup: correct typos
2012-04-21 14:14:58 +00:00
b40476455e
code cleanup: remove unused BMesh args.
2012-04-19 14:38:09 +00:00
475ecbb0ce
remove BM_ITER, BM_ITER_INDEX macros, use ELEM or MESH variants only (the maceros had unused args in both cases).
2012-04-19 13:47:58 +00:00
75b869e428
style cleanup: BM_ITER / BM_ITER_INDEX / BMO_ITER
2012-04-19 11:44:12 +00:00
18a6282e59
improve recent commit to copy loop data on extrude
...
- in some cases the is only a face on the new edge, so check for this as a source to copy from too.
- one of the asserts wasnt correct, if there are no adjacent faces found just return.
2012-04-18 19:05:28 +00:00
580f19d949
fix [ #30994 ] Extruding faces gives bad UV's
...
this had strange logic, there was no need to loop over all face loops.
2012-04-18 09:56:19 +00:00
11a4dab32b
bmesh minor change - avoid increasing array sizes one by one and use iterator macros.
2012-04-06 11:50:16 +00:00
58064bdfc4
code cleanup: add doxygen headers to bmesh operator files, also add own include so definitions dont get out of sync.
2012-04-06 09:21:19 +00:00
56c127e721
fix - extrude could create hidden faces when the only connected face to an edge was hidden, the hidden setting would be copied to the newly created face.
2012-04-02 03:51:16 +00:00
c7aed8b2af
For BMesh functions that test flags, add enabled/disabled variants.
2012-03-30 17:30:49 +00:00
046eb6531c
fix [ #30685 ] Solidify tool behaves like Shrink/Fatten (editmesh functionality stuff)
...
solidify had a limit imposed on how far vertices could move which didnt work well, removed (the modifier doesnt do this).
also missed freeing 2 arrays.
2012-03-27 23:23:47 +00:00
ab4a2aaf4a
style cleanup: follow style guide for formatting of if/for/while loops, and else if's
2012-03-24 06:38:07 +00:00
7044d80639
code cleanup: remove BMesh * args from query functions which don't need it
2012-03-22 07:53:11 +00:00
e89642ef99
Fix #30600 : extrude in vertex select mode did not copy attributes like smooth/flat
...
flag from adjacent face. It did work for edge select mode, now uses same code.
2012-03-20 17:02:03 +00:00
be116242d4
style cleanup
2012-03-20 04:27:14 +00:00
6f104aad3a
code cleanup: bmesh api - make arg order consistent - htype before hflag or oflag.
2012-03-19 08:36:27 +00:00