Commit Graph

186 Commits

Author SHA1 Message Date
2ed69a95f4 add bmesh/python operator support for vector and matrix args.
also rename BMO_OP_SLOT_PNT to BMO_OP_SLOT_PTR (matches RNA and sounds less like 'point')
2012-07-02 20:28:43 +00:00
69a7e0af02 rename bmesh ops since they are exposed in an api now. 2012-06-30 15:27:13 +00:00
e6d55c97dd add support for passing lists of verts/edges/faces to bmesh operators 2012-06-30 12:58:04 +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
9dd981a440 style cleanup: block comments 2012-05-16 23:37:23 +00:00
3ee4be913b Fix #31139: fractal mesh subdivide was only working along normal where previously
it would displace in all directions. Now there's an operator option to control this.
2012-05-03 10:14:08 +00:00
70f1279eab Add convex hull operator (bmesh operator and wm operator.)
Image-heavy user documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/Convex_Hull

Thanks to Campbell for providing code review:
http://codereview.appspot.com/6114060
2012-04-29 16:09:40 +00:00
04d8ef3c47 wireframe option to crase edges at the hub, much nicer subsurf 2012-04-29 12:33:56 +00:00
41a5e731a2 bmesh: new wireframe tool
- makes wireframe from faces.
- options similar to inset (even offset, relative scale)
- copies face settings and loops (uvs, vcolors)
- optionally replaces the existing geometry.
2012-04-29 10:44:00 +00:00
b51590d55d code cleanup: bmesh subdivide code - BM_mesh_esubdivideflag() & "esubd" bmesh operator was passing a flag about in a fairly confusing way.
since we will eventually have python bmesh operator access better expose this as multiple booleans.

remove remaining editbutflag's
2012-04-23 03:43:02 +00:00
1c54eaecd8 fix [#31049] New Faces (F) always solid shaded 2012-04-21 13:58:29 +00:00
e387ccdb42 bmesh inset: add depth option (make use of relative and even offset options) 2012-04-19 19:03:15 +00:00
86508076d8 Fix [#30943] Crash when edge mode enabled and use the bmesh vertex slide(shift-V)
Also fixed snapping sensitivity. Gave BMOp a more consistent name "vertex_slide".
2012-04-15 18:34:13 +00:00
f5bb4635c6 fix [#30852] Wrong Material ID applied for the new faces 2012-04-09 05:17:07 +00:00
6482351ed9 Added Vertex Slide: Slides a vertex along a selected and connected edge (Shift+Ctrl+V)
-
BMop: "vertslide vert=%e edge=%hfev distance_t=%f"
2012-04-07 03:15:20 +00:00
9c5907cc79 Small code cleanups related to arrays.
* Added helpful comment on 'keepverts' slot of bmop finddoubles.
* Removed unused macro 'E' from MOD_array.
2012-03-29 23:13:44 +00:00
cd882a446a Spelling fix, sentine -> sentinel.
'sentine' apparently means "A place for dregs and dirt; a sink; a sewer" :)
2012-03-27 10:55:20 +00:00
2743f2bb3f fix [#30257] bmesh: Rip "V" don't work on end vertex
added option to edgesplit bmesh operator to take tagged vertices as well so an edge at a boundary can split without splitting off the boundary vertex.

the behavior/speed of the edge split modifier and tool remainss the same, this is only used for rip.
2012-03-26 12:02:41 +00:00
3c11379e26 code cleanup: move bmesh inline funcs to headers (avoids compiling the C files). 2012-03-24 01:24:58 +00:00
303cecf139 spelling cleanup: tesselate -> tessellate (last of these found) 2012-03-20 22:56:26 +00:00
e6834fcf85 bmesh inset: outset option 2012-03-19 21:40:17 +00:00
d91deb9e97 bmesh inset:
option to inset boundaries.
2012-03-19 21:27:24 +00:00
86796252da bmesh: inset tool, access from face menu (Ctrl+F)
- Even option (like solidify even option)
- Relative option (insets based on lengths of surrounding edges)

TODO: merge tares when 2+ face corners meet but don't form a contiguous region.
2012-03-19 05:45:15 +00:00
4f19c1a995 spelling cleanup 2012-03-18 07:38:51 +00:00
78d73eb155 BMesh: rewrite edge split code (used by edge split modifier and rip tool)
this fixes but [#30461] where the same vertex was added to some faces twice.

Previous code rebuilt all faces around the split edges, replace this with much simpler code that uses existing bmesh API for splitting.

This also gives a performance boost to the modifier (over 30x faster in the bug-report file).
2012-03-09 03:16:39 +00:00
4f7bdc59d3 style cleanup: spelling.
also remove large, duplicate comments from sunsky.h
2012-03-09 00:41:09 +00:00
17786b3b3e building without python works again, cleanup bmesh include paths (cmake and scons). 2012-03-08 03:25:53 +00:00
d99888d786 bmesh: add back feature from 2.4x Ctrl+Shift+T subdivides quads in the alternate direction. 2012-03-04 02:18:17 +00:00
7bbf4b7831 style cleanup
- spelling - turns out we had tessellation spelt wrong all over.
- use \directive for doxy (not @directive)
- remove BLI_sparsemap.h - was from bmesh merge IIRC but entire file commented and not used.
2012-03-02 16:05:54 +00:00
ea13ec1699 Spelling Cleanup 2012-03-01 12:20:18 +00:00
9baab70aaf code cleanup: make clipping enable/disable into functions (was being done inline in drawobject.c) 2012-02-28 13:03:56 +00:00
b0a09bfab3 code cleanup:
use bmo_* prefix for operator defs, was confusing with bmesh_* api functions.
2012-02-28 09:48:00 +00:00
7068fee2dd fix for a bmesh glitch when making a face (Fkey).
On a place, Ctrl+T, Fkey would create a quad overlapping the 2 Tris.

Now this case is checked for in a general way - if the bounds of the face are already filled in with faces (that _only_ use these edges-verts), then dont create the face.

This is an option for the 'edgenet_fill' operator, since creating the face isnt incorrect, just not-what-you-want mostly.

added functions
* BM_edge_share_vert - returns shared vert between 2 edges.
* BM_face_exists_multi, BM_face_exists_multi_edge - check if existing faces fill the edge bounds.
* also add BM_ELEM_INTERNAL_TAG so low level functions can tag without conflicting with higher level functions that also rely on tagging elements.
2012-02-26 21:32:20 +00:00
107795af49 bmesh split tool (Ykey), was only splitting off faces, unlike EditMesh which could also split edges.
make this behavior optional and default to off (match EditMesh).
2012-02-23 16:00:53 +00:00
1953f042e6 added boolean type for bmesh operators, will make python wrapping clearer and also makes existing calls more obvious.
also corrected some error reports.
2012-02-20 01:52:35 +00:00
afc56a0b10 copying bmesh dir on its own from bmesh branch 2012-02-19 18:31:04 +00:00