Commit Graph

1033 Commits

Author SHA1 Message Date
48fd740096 edit-mesh improvements to select shortest path
- Ctrl+RMB only worked for edges & faces
- Menu item 'Select Shortest Path' only worked for vertices.

Now Ctrl+RMB works for vertices and the menu item works for verts/edges/faces (depending on the current selection).
2013-06-04 01:23:51 +00:00
790e9d9fa0 fix [#35311] Planar Decimate / Limited Dissolve fails to merge some adjacent faces
optionally limit by face flipping, also added support to delimit by material and edge crease.
2013-06-03 05:07:16 +00:00
dfad9b0c09 fix [#35555] Collada: export destroys mesh in some cases
add arguments to calculate normals when converting to bmesh:
  BM_mesh_bm_from_me, DM_to_bmesh

This gives some speedup to undo (which didnt need to re-calculate vertex normals), and array modifier which doesnt need to calculate face normals at all
2013-06-02 23:20:49 +00:00
cfd0438d3c fix for crash in edgering subd when 3+ disconnected edge rings were found. 2013-06-02 17:02:56 +00:00
b577f0c16e previous fix for #35578 didnt work right, check direction of the open edge loop too. 2013-05-31 18:58:32 +00:00
db42a596aa fix [#35578] New bridge tool; bowtie crossing when destination edges form one half of an 'X' 2013-05-31 15:48:42 +00:00
54e8cacdcf improve edgering subdivide curvature calculations (calculate length projected onto the normal plane).
also correct recely added asserts.
2013-05-31 06:28:11 +00:00
58a748431e correct cast to uintptr_t for smallhash use. 2013-05-31 00:19:38 +00:00
d73529b296 scene render dimension panal: avoid re-creating the framerate string on every redraw, cache the string for reuse.
also remove redundant returns from my last commit.
2013-05-29 14:55:06 +00:00
39f0fbef95 fix for own regression in bridge tool since rewrite, UV's were not correctly copied over. 2013-05-29 13:41:35 +00:00
fc7c0506b8 bmo_subdivide_edgering.c now builds with release+debuginfo, also remove unused defines and correct include guards. 2013-05-28 16:35:47 +00:00
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
083115c5e7 bmesh optimization: use offsets for deform-vert lookups to avoid customdata layer lookups within loops. 2013-05-27 12:42:48 +00:00
1014dbaea1 bmesh: replace BLI_array reallocs with alloca, also don't check all faces for connecting verts. 2013-05-25 23:34:25 +00:00
0ff22044cd Support for bridge tool subdivisions, smoothing and shape along the profile.
also added the underlying subdivision as a standalone operator in the edge menu, named: subdivide edge-ring.
http://www.graphicall.org/ftp/ideasman42/bridge_subd.png
2013-05-23 06:19:04 +00:00
7781312346 code cleanup: rename bmesh operator files to be more consistent 2013-05-20 07:38:11 +00:00
43748eca2d ignore hidden edges for bmesh grid-fill. 2013-05-17 12:26:14 +00:00
f79e190307 fix for error in bridge tool, using freed faces from bmo input. 2013-05-17 12:05:07 +00:00
fbf890200c fix for crash in grid-fill where it was possible for rail edges to overlap. 2013-05-16 15:28:57 +00:00
b881dd9e7f grid-fill: fix error in detecting face flipping. 2013-05-16 13:58:21 +00:00
cd34945792 Fix compile error on VS2012.
Unused variables (for debug only) give an error.
2013-05-16 11:04:01 +00:00
d4dc67d318 bmesh grid fill: interpolate vertex customdata (useful for vertex weights and shapekeys) 2013-05-16 07:21:34 +00:00
1df12416ca bmesh, grid fill tool.
This uses 2 edge loops and fills them with a grid, taking into account curvature of surrounding edges.
Access from face menu: Ctrl+F,G

http://www.graphicall.org/ftp/ideasman42/grid_fill.png
2013-05-15 20:34:40 +00:00
be409d446c fix for own recent change with normal calculation (with no faces it wasn't freeing 0 byte allocation). 2013-05-15 05:56:49 +00:00
bbea18f8c1 bridge tool: fix for error in recent commit. missed NULL check for example face. 2013-05-14 10:56:18 +00:00
b48deabf4e new bevel: fix for crash in merge, could result in collapsing faces being invalid. rather then splice each edge, use weld_verts operator which handles removing degenerate geometry. 2013-05-13 14:31:45 +00:00
281c1565b9 remove BLI_array use in bmesh mirror, add BMO_iter_as_arrayN() function. 2013-05-13 13:44:20 +00:00
51c615e1bc new bridge tool: fix for cases with it would crash when existing faces matched the newly created ones. 2013-05-13 12:58:25 +00:00
f03a165a35 fix [#35308] Edge Split operator splits unselected edges 2013-05-13 12:09:21 +00:00
e40d403e43 fix for bridge flipping, loops pointing away from eachother (over 90d difference) would flip
now check the loops are facing eachother, taking their relative positions into account.
2013-05-13 11:21:33 +00:00
c961c56c64 add missing STACK_INIT, also quiet float <> double conversion warnings. 2013-05-13 02:10:59 +00:00
4e4eff3937 remove BLI_array allocations from uv/color reverse, rotate. 2013-05-12 14:45:09 +00:00
40535f5ef3 bmesh recalculate normals - remove BLI_array reallocation, the max size of the array is known.
replace with STACK_* macros (moved to BLI_utildefines.h).
2013-05-12 12:23:44 +00:00
85145db47b remove wanton use of array reallocation for mesh smoothing. 2013-05-12 12:06:08 +00:00
f87464392c bridge option to bridge loop pairs,
change the operator option to an enum: Connect Loops - open/closed/pairs
because it was getting confusing having all as bools.
2013-05-12 10:00:15 +00:00
b6345616a7 fix for 2 crashes in bridge tool mixing open/closed loops with different vertex counts. 2013-05-12 04:08:45 +00:00
9cd0c5f7fb bridge tool: support for bridging loops with different numbers of vertices. 2013-05-12 03:36:41 +00:00
dc1a36534d add support for bridging multiple edge loops at once. 2013-05-11 16:20:29 +00:00
55f929ab3d - add generic edge-loop utility functions for bmesh.
- rewrite bridge tool to use the new functions (using edge & vertex arrays was quite cumbersome).
2013-05-11 14:40:03 +00:00
6f8c29ab0b fix for 2 errors introduced since release
- shape key NULL pointer dereference.
- use uninitialized variable for bmesh free.

also update credits and merge dissolve flag assignment.
2013-05-09 07:02:51 +00:00
3d95873cf6 fix [#35257] Brige > Merge sometimes flips result 2013-05-08 23:14:27 +00:00
7bd7da7cc6 code cleanup: dissolve - use iterator macros, remove unused function. 2013-05-08 14:08:37 +00:00
7dbf6d513e mesh dissolve vertices: option to split off corners of surrounding faces, makes the result more localized to the area around the vertex. 2013-05-08 14:01:38 +00:00
e4aff35020 smooth falloff options for loopcut. 2013-05-08 12:58:28 +00:00
f433f011cf add option to only beauty fill between vertices with non-matching tags,
useful for beauty filling the result of a bridge between 2 edge-loops.
2013-05-08 12:56:41 +00:00
0ffde4fae3 expose bmesh volume calculation to python api (use for print toolbox addon). 2013-05-07 00:00:32 +00:00
b7c931416c fix for out of bounds memory read when running wire-frame tool on empty mesh. 2013-04-27 22:10:06 +00:00
dfc406fc2c fix/feature [#35085] Loop cut slide
Loop cut slide now works with multicut.

issue is that since edge slide now supports more configurations, cases where loop-cut-slide silently failed before,
now slide (albeit in an awkward way at times).

Fix this my adjusting the selection of after loopcut so edge slide can properly operate on it.
2013-04-26 15:05:19 +00:00
faeeb4b3aa individual inset was missing relative option. 2013-04-25 16:14:04 +00:00
3c67cf9594 from bug report [#34984] bmesh.ops.recalc_face_normals() ignores use_flip=True
the name `use_flip` is misleading, option in fact tags faces that have been flipped, rename to `use_face_tag`
2013-04-22 20:15:42 +00:00