Commit Graph

97 Commits

Author SHA1 Message Date
d7b8e7e9bc Code Cleanup: use less confusing names for selection flushing. 2012-02-10 03:03:42 +00:00
7f797d9c83 fix [#30103] Select vertex groups works only in vertex select mode
add selection flushing matching whats in trunk.
2012-02-08 14:29:14 +00:00
1fd6088729 Code Cleanup:
- use 'oflag' for operator flag arguments.
- use TRUE/FALSE for some bool args
2012-02-07 13:54:16 +00:00
a36ccba3a8 uv sculpting now functional on bmesh 2012-02-06 21:00:50 +00:00
d1833a2c99 Ported UvElementMap code to bmesh, still untested but at least compiling.
Next, uv sculpting will be ported.
Also fixed "initializer element is not computable at load time" compile error caused due to bit-shifting a constant past its precision length (1L should be 1LL for 32 positions left shift).
2012-02-06 19:25:12 +00:00
0adcdbc77d Code Cleanup: comment, remove or use unused functions. 2012-02-06 09:39:47 +00:00
11d5a2d2eb Code Cleanup: style change only 2012-02-05 15:55:28 +00:00
8c6120e5ff fix for crash with mesh undo with shape keys
'undomesh' was also used in confusing way (relied on mesh being first member).
2012-01-23 23:53:21 +00:00
d9958e4f7b dissable double re-tesselation when entering editmode. 2012-01-22 22:20:20 +00:00
61a5cc28be disable re-tesselation for modifiers that use bmesh, array/bevel/edge split - were tesselating 2 times and didnt need to.
also comment array modifier from flushing selection flags.
2012-01-22 21:12:18 +00:00
0f28c1c27a svn merge ^/trunk/blender -r43461:43472 2012-01-17 21:08:25 +00:00
57e6ac47a0 use TRUE/FALSE rather then 1/0, no functional changes. 2011-12-21 03:33:32 +00:00
45b9a5a3e1 more mirror cleanup
- remove BMBVH_FindClosestVertTop
- update select mirror operator to EDBM_CacheMirrorVerts
2011-12-21 00:09:44 +00:00
deb3b7e282 replace editmode topo mirror function from the one in trunk (ED_mesh_mirrtopo_init) 2011-12-20 22:01:11 +00:00
8eab2c66a7 workaround for tessface not being recalculated when undo is disabled 2011-12-11 05:05:37 +00:00
4b09f86c32 rename iterator type from htype to itype (htype means header type for BMesh elements) 2011-12-07 20:55:28 +00:00
9089d72f06 Various typo cleanups, remove unnecessary code etc, found during recent work and separated to a cleanup change 2011-11-20 16:21:13 +00:00
9087cb91d4 quiet compiler warnings for BLI_array defines, split BLI_array_append into BLI_array_append / BLI_array_append_r, the latter returning the new array location. 2011-11-16 17:09:41 +00:00
da849bbfc0 prepare for flagging the bmesh has having invalid index values, so we can skip looping over all elements if its already valid.
- went over every BM_SetIndex call and added comments about its use, if its setting dirty values or correct ones.
- replace loops over all elements _just_ to set index values, with a new function, BM_ElemIndex_Ensure(...), this will eventually only initialize values when they are dirty.
2011-11-16 12:38:40 +00:00
aea95c7860 bmesh: fixed merge issues with navmesh (though I've not tested if it works yet).
also fixed a small crasher in bridge.
2011-11-08 00:20:50 +00:00
b0a21add8a replace bmesh specific macros with math functions, also some pedantic formatting edits. 2011-11-07 09:02:10 +00:00
85e0609c54 use char for BMHeader type and flag (saves 2 bytes per edge/loop/vertex/face)
also found mouse_mesh_shortest_path was casting edit selecton to the wrong type.
2011-11-01 14:36:23 +00:00
a1e95e2e18 replace as many uses of BM_Get/SetIndex as possible with tagging with a temp flag, some uses need index values to be set, so this will need more effort to replace (crazy space and solidify for eg). 2011-11-01 12:51:38 +00:00
b6e445a61f BMesh todo - mirror vertex groups back. 2011-11-01 05:43:35 +00:00
8408cf3dc2 fix for memory leak when switching shape keys 2011-10-30 02:15:32 +00:00
f5cf238884 the BMesh select mode wasnt being set on entering editmode, this made snap to selection fail. 2011-10-28 08:09:34 +00:00
243ef037c9 BMEditMesh.mirror_cdlayer wasnt being set anywhere, adding any other type of layer would break editmesh mirror editing. 2011-10-28 06:23:12 +00:00
74004631a1 workaround for createTransEditVerts overwriting index data to fix mirror. 2011-10-26 10:04:10 +00:00
834caf38dd - smooth tool now works for mirror.
- mirror was selecting verts from 0.4 distance which causes errors.
- utility function EDBM_ApplyMirrorCache(...)
2011-10-26 07:41:56 +00:00
2e0d838bc9 Fix bugs to get X-Mirror editing functionality working again 2011-10-25 16:17:26 +00:00
61b699bf9b remove $Id from headers 2011-10-24 23:32:24 +00:00
30141b4464 select boundary loop tool (aka region to loop) switches to edge select mode if the mode was face select 2011-10-15 14:47:37 +00:00
720f69aa9c Fixes for a few bugs in selection and the interaction between BM_SELECT and BM_HIDDEN:
- Select all was selecting hidden elements
- Select flush was also selecting hidden elements (so selecting two *visible* vertices of a *hidden* edge selected that hidden edge)
- Several places were using BM_SetHFlag(elem, BM_SELECT) directly, when they should be using BM_Select(bm, elem)
- In certain scenarios, "reveal all" could leave you with selections which aren't valid in that selection mode (e.g. lonely edges selected in face select mode)
2011-09-30 04:27:12 +00:00
1f12740a82 make error prints more helpful & correct some comments for rip code. 2011-09-24 12:13:13 +00:00
594b0298c7 A couple of trivial perf improvements:
-BMEMSET macro should cache the size of the memory block instead of reading each iteration
-Avoid tesselating the backup copy of the mesh used to restore after an error (unless there is actually an error)
2011-09-16 14:28:23 +00:00
d48ee9d035 Submit of patch [#28568] BMesh: make active element highlights work 2011-09-13 13:41:20 +00:00
8c43e785d9 revert own commit r40051, mesh and object pointers are needed for undo, this commit caused bug [#28625] Separate crash bug.
also added a safety check for the crash, even though reverting fixes.
bmesh_to_mesh_exec() could set me->mface array to NULL but leave me->totface when notellelation=1, which is likely to give trouble elsewhere.
2011-09-12 02:23:30 +00:00
0727893231 remove mesh and object arguments from bmesh operators, these are stored within the BMesh its self. 2011-09-09 02:21:57 +00:00
2448f8caa9 code cleanup - commant/remove unused vars and reduce scope. 2011-09-07 06:49:20 +00:00
3e4bf6d4ad =bmesh= knife tool applies to modifier cage now, also fixed some bugs in it 2011-08-30 01:59:33 +00:00
1d8fa52883 rename BMINDEX_GET/SET to BM_GetIndex/BM_SetIndex 2011-05-13 10:49:26 +00:00
cc2352cdd0 =bmesh=fixed shapekey mem leak 2011-05-12 18:33:10 +00:00
1e90add66c more syncing with trunk. 2011-05-11 09:31:00 +00:00
cd55aeaf6d set many vars & functions as static,
also commented invalid pin theme alpha assignment so bmesh branch builds with -Werror
2011-05-11 02:14:43 +00:00
5a2a3d7d82 more syncing with trunk, also cleared many warnings with gcc4.6 2011-05-09 04:06:48 +00:00
3462ddf17f =bmesh=
Cut out some unwanted differences with trunk
in preparation for merge.  Also fixed some
warnings, though many remain.
2011-05-07 02:48:14 +00:00
2a24370bab =bmesh= fixed a shapekey issue with undo 2011-04-17 05:08:03 +00:00
0e9ce1b40d =bmesh= odd bug, sometimes edge slide would result in invalid derivedmesh. I had to put a recalcData() call into edge slide's free function. not sure why edge slide but not other transform tools are acting up. 2011-04-17 04:12:53 +00:00
4d7de0796b =bmesh=
Knife tool now works on multires data, it's also
a tad bit faster now.
2011-04-13 00:35:48 +00:00
7d43a48993 =bmesh=
Multires interpolation is considerably better
now, though it still has a problem with occasionally
producing little random tangent spikes.  Still, it's
far better then it was.

Also fixed a bug in dissolve faces.
2011-03-29 05:48:18 +00:00