Commit Graph

52 Commits

Author SHA1 Message Date
edb78d090c code cleanup:
- make view3d project names more consistent.
- remove apply_project_float() its not needed.
- update comments referencing an old function name.
- move doxygen docs into the C file, prefer they are kept here to avoid getting out of sync with code.
2012-09-20 04:56:24 +00:00
f169643d46 fix [#32604] Loop select broken with Clipped view and wireframe 2012-09-20 03:45:18 +00:00
e762797af5 fix for sharp edge selection being inverted, change default angle from 1 to 30deg. 2012-09-14 11:10:03 +00:00
a0ae47f06c add some missing NULL checks, a few parts of the code used a pointer then checked it for NULL after.
also made it more clear that some areas assume the pointer isnt null (remove redundant NULL checks).
2012-09-11 02:18:27 +00:00
2812dd92cf code cleanup: use BMEdit_FromObject() rather then me->edit_btmesh in more places. 2012-09-10 03:34:43 +00:00
04418fe8dd code cleanup: header had many incorrect sections for function/file, also rename mouse_mesh() --> EDBM_select_pick() 2012-09-07 00:22:10 +00:00
fe9b1c644f Fix #32458: changing UV image in image editor not working when the active face
was not selected. Now changed it so that the active face must also have its
UVs shown in the image editor to be used as the source of the image shown.
2012-08-31 15:01:40 +00:00
9be74a514b Fix [#32260] 'Select Sharp Edges' works vice versa
We want to select edges sharpest than the given threshold, i.e. which faces’s angle is below the limit! Looks like BMesh switched this somehow...
2012-08-05 07:50:51 +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
c8db1e832d minor edits for bmesh api 2012-07-20 09:49:54 +00:00
84bf3e48c0 style cleanup: use c style comments in C code 2012-07-06 23:56:59 +00:00
69a7e0af02 rename bmesh ops since they are exposed in an api now. 2012-06-30 15:27:13 +00:00
d68fc2b916 Fix for [#31900] Loop Selection on wireframe selects vertex behind.
Revert part of r48105 (calling mouse_mesh() in mouse_mesh_loop() is not a good idea, as it might select another element ouside the selected loop, and is anyway overkill!), added lighter code that simply checks for the nearest vertex/face of current edge.
2012-06-25 13:32:04 +00:00
fc1164c223 Fixes [#31577] Select N-th vertex/face/edge doesnt work
http://projects.blender.org/tracker/index.php?func=detail&aid=31577&group_id=9&atid=498

Also solves both TODOs in the commented code.

Loop select now calls mouse_mesh() to handle setting an active vertex/edge/face.
2012-06-20 07:31:19 +00:00
bd9192670b Added option in shift-g to select verts by number of connected edges (valence). 2012-06-15 01:43:01 +00:00
d214b14052 Add missing/incorrect selection flushes.
Added selection flush after loop cut, changed select_linked_pick's
flush to use the em selection flag.

Fixes bug [#31715] Cases where verts and edges are selected but not
relevant faces
2012-06-11 10:14:46 +00:00
19e1d05461 Modifications to the view3d.select() operator:
1. Two new boolean options have been added to the operator: "deselect"
   and "toggle".
2. The previous behavior of "extend" (toggling the selection) has
   been moved to the "toggle" option.
3. "extend" now only extends the selection, it never deselects.
4. "deselect" is pretty self-explanatory: it deselects (i.e. opposite
   of extend).
5. The built-in keymap has been changed to use "toggle" where
   "extend" was used before for this operator, to maintain the
   previous behavior in the default keymap.

In short, this works towards making "extend" and "deselect" fully
consistent across all selection tools (adding to and removing from
selection, respectively), but still preserves the old behavior
as well.

(Patch reviewed by Brecht.)
2012-05-24 21:05:27 +00:00
3896ad4cbb code cleanup: spelling 2012-05-20 21:23:26 +00:00
2d2d36fe3b code cleanup:
- style - multi-line ifs move braces onto new lines.
- iterators - convert some to macros, other split up and move brace.
2012-05-20 19:49:27 +00:00
1cb1d51db4 Various small fixes:
*i18n: panel title of current tool in 3D view & File windows are now translated, as well a redo (F3) menu.
*MESH_OT_faces_select_linked_flat & MESH_OT_edges_select_sharp: use ANGLE RNA prop for sharpness, and fix tip of the later op.
2012-05-20 13:56:42 +00:00
eb57856a19 Fix select_similar_type_itemf() enum-item-generator func to return the whole prop_similar_types when context is NULL (needed at least by i18n tools!). 2012-05-17 10:42:24 +00:00
821b231bd6 add bevel to select similar edges operator 2012-05-12 14:06:35 +00:00
3ef11693f5 Style cleanup: displist module 2012-05-07 06:58:03 +00:00
5da2135eef code cleanup: double promotion & some style cleanup 2012-05-03 21:35:04 +00:00
e2c453b5f9 style cleanup: editors / mesh & object 2012-04-28 15:42:27 +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
47b6b60e5a code cleanup: no functional change - had both EDBM_editselection_* and BM_editselection_* funcs, replace EDBM_ funcs. 2012-04-24 21:19:18 +00:00
3508bf1b83 Ctrl+RMB to select an object in editmode didnt work in edge mode (which is not great usability imho and confusing),
now pass through if no edges can be tagged and select the object.
2012-04-22 05:30:34 +00:00
6701933f5c style cleanup 2012-04-21 12:51:47 +00:00
96b024333e fix [#31047] ctrl+mouse select in edit-mode does not select external object
fix [#30535] Shortest Path Select not working well in vertex mode.

regression from after bmesh merge, Ctrl+Right mouse for selecting shortest path is meant for edge mode only.
2012-04-21 12:14:07 +00:00
b26865ba99 code cleanup: prefer BM_face/edge/vert_select_set() over BM_elem_select_set() when the type is known (saves switch statement check on the type).
Add asserts so the correct types are ensured.
2012-04-20 16:55:47 +00:00
a82eaf36ca bmesh rip: when there are selected faces call region_to_loop before ripping. gives better results then previous fix when there are selected faces as apart of an edge selection. 2012-04-19 16:57:50 +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
3ef7943910 code cleanup: first step to replace BM_ITER BM_ITER_INDEX macros. 2012-04-19 12:45:56 +00:00
75b869e428 style cleanup: BM_ITER / BM_ITER_INDEX / BMO_ITER 2012-04-19 11:44:12 +00:00
1f01d62d15 more replacement for BM_edge_face_count() use. 2012-04-18 06:57:28 +00:00
bd613739ae bmesh todo: remove unused code. 2012-04-16 10:29:59 +00:00
4ebcae7158 bmesh todos:
- dont do name based object lookup to find the object for a mesh undo state (possibly object is renamed inbetween undos which would crash)
- remove some todo comments for things that are working as they should.
2012-04-16 09:34:43 +00:00
1492754c8f bmesh todo: ctrl+l now delimits by hidden faces. 2012-04-16 08:44:11 +00:00
97538bd9ed Fix #30960: various mesh operators were missing tooltip descriptions. 2012-04-15 10:07:57 +00:00
637387b8ac Fix #30949: live unwrap when marking seams did not work with bmesh. 2012-04-15 09:20:42 +00:00
cc6b8bd3e6 fix [#30786] bmesh: select linked not ignoring hidden verts/edges/faces (part 2) 2012-04-03 07:35:50 +00:00
4458ce1aba Fix #30770: missing node editor redraw when changing active material by clicking
on face in edit mode.
2012-04-02 11:51:36 +00:00
0e972b6293 partial fix for [#30732] bmesh: loop select continues through hidden sections.
loop cut and edge ring select still need to be fixed.
2012-03-30 08:43:47 +00:00
6113c0e0b7 fix [#30725] BMesh - Select Linked ignores faces 2012-03-30 00:58:29 +00:00
f87c5b3453 fix [#30715] bmesh: select linked not ignoring hidden verts/edges/faces
add optional flag to ignore hidden elements.
also remove loop mask flag - since it wasnt used and vert/edge/face is enough.
2012-03-29 13:09:07 +00:00
09f29c0b70 style/name cleanup: have EDBM_* functions match our style guide and also match BM_ function naming conventions 2012-03-27 04:46:52 +00:00
ca05219f3e fix [#30651] bpy.ops.object.mode_set(...) editmode removes faces.
problem was that BMesh had tessellation call when undo pushes were called.

if python called an operator with no undo push, tessfaces would not be created.

fix this by making it the responsibility of each editmesh operator to re-tessellate, as it is with notifiers and depsgraph.
added EDBM_update_generic() function to add notifier, tag for depsgraph update and optionally re-tessellate.
2012-03-27 00:01:35 +00:00
48f0444760 style cleanup: editors/mesh - mostly whitespace around operators 2012-03-26 02:56:48 +00:00