ae0e356de6
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
note: I committed this r54403 but it caused eternal looping so I reverted for 2.66 release.
ran extensive tests and its not giving problems so re-applying this improvement.
2013-03-26 01:49:55 +00:00
0eee4021c9
fix [ #34603 ] ALT-F fails, freezes, CPU=100%
...
The way beauty fill was working was too fragile and prone to eternal loops,
Solution used is to is to store previous states and ensure edges don't get rotated back into those.
Also added an optimization to avoid testing the same edge rotation many times - using edge tags to only re-test edge rotations around areas that have been modified.
2013-03-26 00:29:57 +00:00
f9b1494158
internal changes to beautify fill, use an array of edges that can be rotated, rather then looping over all edges each time.
2013-03-25 23:21:16 +00:00
6f9f1399a0
code cleanup: operator headers
2013-03-25 22:40:11 +00:00
be780cb4a6
code cleanup: move beautify into its own file (more changes coming)
2013-03-25 22:04:12 +00:00
1b4c9e1ad4
beautify fill: skip testing invalid cases (2 triangles that _don't_ have 4 unique verts between them).
2013-03-25 04:48:30 +00:00
385c72f5f2
Merged changes in the trunk up to revision 55546.
...
Conflicts resolved:
source/blenderplayer/bad_level_call_stubs/SConscript
Partly reverted changes to intern/cycles/blender/addon/ui.py in revision 52899
to make it easier to merge trunk changes.
2013-03-24 12:13:13 +00:00
dad7afa1af
code cleanup: remove double call to BKE_node_instance_key(), rename ruler (lots of tools are 3d :)), and redundant assignment.
2013-03-21 14:16:55 +00:00
c1ceab1281
Merged changes in the trunk up to revision 55357.
...
Resolved conflicts:
release/datafiles/startup.blend
source/blender/editors/space_nla/nla_buttons.c
Also updated source/blender/blenkernel/intern/linestyle.c as a follow-up of
recent changes for the use of bool.
2013-03-18 00:48:59 +00:00
0d0291f6e1
code cleanup: incorrect sized array args, remove some redundant code.
2013-03-17 10:26:23 +00:00
7ec47aa864
code cleanup: shadowing
2013-03-16 14:33:32 +00:00
db77fdc6ff
fix for own mistake in using alloca in a loop, replace with BLI_buffer
2013-03-16 00:41:32 +00:00
d9c9209608
code cleanup: quiet some -Wshadow warnings, mix of obvious mistakes and harmless global/local naming conflict.
2013-03-15 22:55:10 +00:00
604bdb7f45
Fix bevel modifier bug #34611 , limit bevel amount needed.
...
This is a quick fix that perhaps overestimates the point
of first geometry collision, but at least for now it should
allow models that used the old modifier and a too-big
bevel amount to not look awful.
The correct solution to this problem is much more involved
and I'll get to it later.
2013-03-13 14:08:12 +00:00
894c240f9d
New implementation of Freestyle edge/face marks
...
The previous implementation of Freestyle edge/face marks was refactored
based on suggestions from the latest code review by Campbell. The new
implementation relies on mesh CustomData to store edge/face marks, instead
of introducing extra flags in the core Mesh and BMesh data structures.
The CustomData-based implementation will allow further additions of new
edge/face attributes because of the independence from Mesh/BMesh.
This revision is work in progress, mainly intended to address the review
comments and ask for further code review in view of the trunk merger in
the upcoming 2.67 release.
2013-03-13 06:44:43 +00:00
0488af00fe
fix for crash with laplacian smooth when unselected ngons were used, volume calculation assumed unselected face were not ngons.
...
- added convenience function BM_face_calc_tessellation() to get triangles from an ngon.
- expose volume function as BM_mesh_calc_volume().
2013-03-13 06:32:08 +00:00
56771becd0
code cleanup: remove bmesh subdivide header, all definitions can be included in bmo_subdivide.c.
...
also only initialize random numbers when fractal option is set.
2013-03-13 05:33:23 +00:00
8661e820f9
bmesh: dissolve, avoid unnecessary loop in test_extra_verts(), also minor code cleanup.
2013-03-12 05:48:30 +00:00
539d7d460d
bmesh: maintain active face when dissolving.
2013-03-12 05:36:43 +00:00
660be3da39
use gcc warning -Wredundant-decls, exposes some odd/duplicate declarations which have been removed.
2013-03-11 20:27:38 +00:00
347e2b6cb0
code cleanup: make bmesh var names more consistent
2013-03-09 17:12:24 +00:00
06b3d4f7bb
code cleanup:
...
- use BM_ITER_* macros in more places.
- avoid sign int conversion when calling EDBM_backbuf_check()
2013-03-09 16:19:07 +00:00
c56b39c0e4
bmesh operator 'contextual_create' wasn't flagging single faces that were created (caused glitch in some cases with recent create-select functionality).
2013-03-09 14:42:10 +00:00
221a383366
use 'bool' for BLI_/BKE_ functions.
2013-03-09 05:35:49 +00:00
c36f20a7d2
style cleanup
2013-03-08 04:00:06 +00:00
0d5b028d43
patch [ #34103 ] use boolean in path functions and add comments.
...
path_util_1.patch from Lawrence D'Oliveiro (ldo)
2013-03-04 19:27:51 +00:00
66a2b84897
Merged changes in the trunk up to revision 54992.
...
Resolved conflicts:
release/scripts/startup/bl_ui/space_view3d.py
2013-03-03 15:07:49 +00:00
0ac07404ba
style cleanup: braces with multi-line statements, also add some comments.
2013-03-01 14:47:06 +00:00
d120ec146d
Merged changes in the trunk up to revision 54802.
2013-02-24 03:39:20 +00:00
0a6e8a41b9
Enable new bevel tool code in bevel modifier.
...
Now modifier takes a segments parameter.
Bevel edge weights will multiply the overall amount.
For vertex-only, you can give a vertex group name,
and the weights in that will multiply the overall amount.
2013-02-21 17:29:35 +00:00
92436c94d3
Merged changes in the trunk up to revision 54594.
2013-02-16 18:38:03 +00:00
b6a60fc6b8
revert own commit, caused regression - hanging on triangulation [ #34214 ].
...
Postponing further changes for now, too risky before release when unexpected cases can cause eternal loop.
2013-02-13 03:20:30 +00:00
2005f7c6c0
style cleanup: also some typos
2013-02-11 00:49:00 +00:00
ac9ec06ec1
Merged changes in the trunk up to revision 54421.
...
Conflicts resolved:
release/datafiles/startup.blend
release/scripts/startup/bl_ui/properties_render.py
source/blender/SConscript
source/blender/blenloader/intern/readfile.c
2013-02-10 10:17:59 +00:00
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
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
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
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
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
2f53741cfe
bridge tool could make bow-tie quads when given 2 isolated edges.
2013-01-30 03:12:19 +00:00
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
556912792a
Merged changes in the trunk up to revision 54110.
...
Conflicts resolved:
source/blender/blenfont/SConscript
source/blender/blenkernel/intern/subsurf_ccg.c
source/blender/makesdna/intern/makesdna.c
source/blender/makesrna/intern/rna_scene.c
2013-01-26 23:49:13 +00:00
c411cde415
header cleanup, include BLI before BKE, also use bool for ntreeShaderExecTree
2013-01-24 21:57:13 +00:00
00ef8896fd
fix for own error in recent BLI_array commit
2013-01-20 16:58:14 +00:00
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
8496a5a501
replace vertex slide with the transform operator. (MESH_OT_vert_slide -> TRANSFORM_OT_vert_slide)
2013-01-15 03:48:13 +00:00
b27854bd47
use booleans for bmesh api.
2013-01-14 16:42:43 +00:00
9f2e845181
code cleanup: use BMW_begin insode for loops body.
2013-01-14 09:53:56 +00:00
94ae0232b0
Merged changes in the trunk up to revision 53729.
...
Conflicts resolved:
release/datafiles/startup.blend
source/blender/blenloader/intern/readfile.c
2013-01-12 02:02:53 +00:00
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