Commit Graph

748 Commits

Author SHA1 Message Date
Campbell Barton
2005f7c6c0 style cleanup: also some typos 2013-02-11 00:49:00 +00:00
Campbell Barton
555bcc3298 add beauty option for triangle fill since you might want to use the initial scanfill result. 2013-02-09 15:49:20 +00:00
Campbell Barton
5e05d67436 improve beauty-fill tool for non-flat triangles.
Project the triangle pair into 2d coords before measuring.

before/after - http://www.graphicall.org/ftp/ideasman42/beauty_fill_fix.png
2013-02-09 08:16:13 +00:00
Campbell Barton
d03befd0db fix for is_quad_convex_v3(), getting the dominant axis wasn't accurate enough in some cases and would make beauty fill fail.
now rotate the coords before calculation.
2013-02-09 07:59:56 +00:00
Campbell Barton
c30fb009cc problem with own changes to triabgulate: calling beauty fill directly would re-allocate the faces which mean't triangulates output slots pointers became invalid. (noticed when using from py api) 2013-02-06 15:57:12 +00:00
Campbell Barton
296444e1dc style cleanup: some warnigs & spelling. 2013-02-06 14:02:19 +00:00
Campbell Barton
e7cead0994 own recent change to triangulate bmesh operator stopped filling in mapping slot 'face_map.out', not used by blender its self but useful for scripts, enable this again. 2013-02-05 11:30:50 +00:00
Campbell Barton
9d713688ba code cleanup: warnings 2013-02-04 16:20:39 +00:00
Campbell Barton
4528405597 add BM_edge_is_contiguous(), check for python api. 2013-02-04 10:14:31 +00:00
Campbell Barton
89bda7899d style cleanup & some spelling 2013-02-03 10:28:28 +00:00
Campbell Barton
0510735f4e fix BM_loop_calc_face_tangent for concave face corners, caused a bug in wire-frame operator. 2013-02-03 09:44:37 +00:00
Campbell Barton
4e94fca896 fix for error in own recent change, sculpt triangulate was done on a bmesh with uninitialized faces normals,
add warning that BM_mesh_bm_from_me() dosn't calculate face normals.
2013-02-03 08:13:15 +00:00
Campbell Barton
c649107499 when triangulating ngons, use beauty option to rotate edges. gives much nicer results and means you can preserve original edges without triangulating ngons one at a time 2013-02-03 08:07:14 +00:00
Campbell Barton
1f21efdeac fix [#34073] Combined EdgeLoop slides weirdly on even try
concave check on co-linear edges could fail, avoid by using the loop-direction + face normal.
2013-02-03 06:09:29 +00:00
Campbell Barton
f0d4b85fef improve BMesh api use from r54265, no need to do edge lookups from the faces verts since the face stores these already.
also remove ScrArea.cursor, historic runtime variable.
2013-02-03 02:54:24 +00:00
Nicholas Bishop
ad2b4c6e54 Remove loose edges created during undo in dynamic-topology sculpt mode
Fixes [#34043] "Dyntopo: noise appear during sculpting (parasite edges)"
projects.blender.org/tracker/index.php?func=detail&aid=34043&group_id=9&atid=498
2013-02-02 16:54:18 +00:00
Campbell Barton
58ba7f7cf4 triangulate was checking existance of edges unnecessarily, splitting face already does this. 2013-02-02 06:06:34 +00:00
Campbell Barton
518bfbb1c9 style cleanup 2013-02-02 04:58:03 +00:00
Howard Trickey
7d3c6b2760 Fix bevel bug #33906, unwanted distortion with skewed meshes.
The code for making a rounded profile edge at a vertex needed
a special case for when that profile is on the third face
(the one not touched by the beveled edge) when only one edge
is beveled and the three faces are not orthogonal.
2013-01-31 12:54:06 +00:00
Campbell Barton
4e7b18876c style cleanup 2013-01-30 21:17:38 +00:00
Campbell Barton
2f53741cfe bridge tool could make bow-tie quads when given 2 isolated edges. 2013-01-30 03:12:19 +00:00
Campbell Barton
f02f491ed0 correction to r54188, also don't attempt to triangulate triangles. 2013-01-29 20:49:40 +00:00
Campbell Barton
2b875a947f skip calculating the normal for each face when triangulating, all callers make sure its valid. also remove some commented code (more then one generation of bmesh old). 2013-01-29 15:05:23 +00:00
Campbell Barton
37489d71c7 Triangulate modifier no longer uses bmesh operator api call, instead add a BM_mesh_triangulate() function. Gives ~2x speedup in my tests on an optimized build. 2013-01-29 10:31:05 +00:00
Campbell Barton
69585591d6 Correct fix for r54164, the testcase I was using worked but different edge slide examples didn't.
Edge slide needed to check for concave ngons too.

add BM_loop_is_convex() and expose to python too.
2013-01-29 03:25:47 +00:00
Campbell Barton
c37bc8fa76 minor optimization - don't do double lookups on vertex mask layer for vert_mask_get(), vert_mask_set().
add an assert because if the mesh is in an invalid state the mask layer can exist but the mask pointer still be NULL (noticed this while looking into a different bug).
2013-01-28 04:10:47 +00:00
Campbell Barton
774ff1c246 style cleanup: also remove unneeded NULL check. 2013-01-28 01:59:59 +00:00
Campbell Barton
c411cde415 header cleanup, include BLI before BKE, also use bool for ntreeShaderExecTree 2013-01-24 21:57:13 +00:00
Campbell Barton
d760a86927 code cleanup: minor changes, replace len_v3 with len_squared_v3 for comparison. 2013-01-21 18:45:31 +00:00
Howard Trickey
698aeec8b8 Vertex bevel: adjust vertex positions to make a more rounded pattern.
Also fixed debug quad drawing code to not join successive quads.
2013-01-21 18:19:34 +00:00
Campbell Barton
78405a89c8 fix [#33937] Planar decimate + triangulate operator leaves non-triangle faces
triangulate operation will now always triangulate, even on degenerate faces.
2013-01-21 17:25:08 +00:00
Howard Trickey
7d286d9a80 Bevel vertex: fix rebuild of faces so they are connected when seg > 1. 2013-01-21 13:31:16 +00:00
Campbell Barton
38cee985bb code cleanup: style & warnings. 2013-01-21 02:30:40 +00:00
Howard Trickey
add25e43ad Bevel vertex only (shortcut: control-shift-B) initial commit. 2013-01-21 01:52:23 +00:00
Campbell Barton
00ef8896fd fix for own error in recent BLI_array commit 2013-01-20 16:58:14 +00:00
Campbell Barton
f414d2980a code cleanup: remove some paranoid checks which would have crashed anyway earlier on.
Also some minor formatting.
2013-01-20 14:50:50 +00:00
Campbell Barton
bc44e81dff fix own bug with uninitialized arrays in subdivide (from recent BLI_array.h update)
also quiet warning.
2013-01-20 08:05:23 +00:00
Campbell Barton
38825f891e use openmp for building bmesh arrays, also replace calloc with malloc. 2013-01-19 02:21:53 +00:00
Campbell Barton
f251eb3f0c minor dyntopo speedup: was doing 2x ghash lookups for BM_log_face_removed(), BM_log_vert_removed(), only one needed. 2013-01-19 00:53:33 +00:00
Campbell Barton
5ddc7d64a8 optimize bmesh operations that use triangle BMFace's (dyn-topo and mesh conversion). 2013-01-16 21:09:54 +00:00
Campbell Barton
8496a5a501 replace vertex slide with the transform operator. (MESH_OT_vert_slide -> TRANSFORM_OT_vert_slide) 2013-01-15 03:48:13 +00:00
Campbell Barton
ef0ed228ec remove NULL checks for BM_iter_new() element iterators. replace checks with assert(). 2013-01-14 19:46:30 +00:00
Campbell Barton
2b7db66edf optimize BM_face_exists(), was doing a lot of redundant checks. 2013-01-14 18:37:58 +00:00
Campbell Barton
b27854bd47 use booleans for bmesh api. 2013-01-14 16:42:43 +00:00
Campbell Barton
fae67b6fb3 fix own bug, edge crease and bevel weights lost on undo. 2013-01-14 12:14:08 +00:00
Campbell Barton
9f2e845181 code cleanup: use BMW_begin insode for loops body. 2013-01-14 09:53:56 +00:00
Campbell Barton
e0388a881b fix for own error with unwrap selection checking uvedit_have_selection() failed with no UV layer.
also add some safety checks for BM_ELEM_CD_GET_* macros.
2013-01-14 08:02:06 +00:00
Campbell Barton
983e5fe5f1 fix for own mistake in recent changes to scanfill, bmo_triangle_fill_exec() (alt+f), was missing BLI_SCANFILL_CALC_HOLES argument.
reported as [#33819]
2013-01-10 14:28:06 +00:00
Campbell Barton
7c64109bce bmesh todo: uv stretch area draw mode wasn't calculating ngon area - added area_poly_v2(). 2013-01-10 08:16:19 +00:00
Campbell Barton
ceb9701507 don't store bevel weights or edge crease customdata layers in editmode unless they are needed.
configurable in 'Geometry Data' panel, will be added when running crease edges transform for example.
2013-01-10 04:43:31 +00:00