ae8327dbf3
Mask: add option to detect self intersections
2014-02-13 19:12:28 +11:00
b3afbcab8f
ListBase API: add utility api funcs for clearing and checking empty
2014-02-08 06:24:05 +11:00
37026b12ec
Code cleanup: use bool for static methods
2014-02-05 22:36:15 +11:00
8b1731e13d
Scanfill: skip checks for loose edges when they can't occur
...
Only editmesh needs this, text, curves, masks - can all skip this check
2014-02-04 02:57:27 +11:00
fed1b8b16d
Code cleanup: suffix vars to make obvious they are squared
2014-02-03 02:46:45 +11:00
b4ae05e4db
BMesh: optimize lookups for triangle fill
2014-02-02 17:09:38 +11:00
c4345a808c
Smallhash: add reserve option to avoid resizing when size is known
2014-02-02 17:08:26 +11:00
933c2b0521
BMesh: collapse_uvs - avoid clearing and flagging for every cd-layer
2014-01-22 17:16:38 +11:00
63ccb26303
Code Cleanup: spelling
2014-01-17 17:35:03 +11:00
477a84a738
BMesh: minor optimization for remove doubles
...
- replace heap allocation with stack for small arrays.
- remove edge-lookup when its already known.
2014-01-17 17:21:41 +11:00
7df8452d1a
BMesh: add bmesh delete functions that dont depend on operator flags
2014-01-17 14:55:06 +11:00
38e683cbb1
Fix T38217: Fix glitch adding Monkey with view align
...
added an option so view-align can default to a different axis.
2014-01-16 23:54:04 +11:00
af93ebcb50
Code Cleanup: style and redundant casts
2014-01-16 19:15:53 +11:00
5611fb6a32
Fix T38186: mesh inset didn't follow edge directions for flat surfaces
...
also improve evenness when the inset direction wasn't exactly between both edges,
2014-01-14 09:48:59 +11:00
49aa701645
Add profile control parameter to Bevel.
...
Parameter controls concavity / convexity.
<.25 means: concave inward
.25 means: straight slanted
>.25 means: concave outward
.5 means: circular (the default)
1 means: straight along original sides
For now, there is a hard lower limit of .15
because more work is needed to get decent
results in the range below that.
The profile is actually a superellipse, and the
parameter is 1/4 of the exponent in the implicit equation
for a superellipse, except at the extreme values of 0 and 1.
2014-01-08 07:40:01 -05:00
3ffba79ac6
Fix for own recent commit
2013-12-24 18:56:07 +11:00
04a902965e
BMesh optimize face splitting by taking loops rather then verts
...
- add BM_vert_pair_share_face
- add BM_loop_is_adjacent
- remove BM_verts_connect
2013-12-24 11:13:58 +11:00
01acc2a7dc
EditMesh: wireframe tool, add offset and vgroup support (not used yet)
2013-12-22 06:54:37 +11:00
6ea13cf217
Editmesh: skip allocating a face array for recalc-normals
2013-12-16 01:28:07 +11:00
c33fb00c28
Fix for triangulate and beauty-fill
...
- could crash if triangulate attempted to create an existing face.
- tagging edges to rotate was unreliable, don't do this anymore.
now check if edge is in the array passed to the beauty function.
2013-12-02 11:49:18 +11:00
aa3933b411
Fix own regression - adding a grid had rotated face.
...
some scripts depended on uv's default values
2013-11-29 10:15:26 +11:00
46cc02c5cd
Correct fix for T37617, (own recent regression)
2013-11-26 07:13:34 +11:00
1768bd2c33
Fix T37617: "Add plane" was adding a 2*2 grid
...
Was a regression from rBaa3c06b41ca9, hope this time all things are OK again (note the X/Y subdivision values still are different than before (-1 for same result), but imho they make more sense this way).
2013-11-25 21:01:22 +01:00
63caaa2b12
Code Cleanup: rename vars for detecting change to be more consistent
...
rename change/is_change/is_changed/modified -> changed
also use bools over int/short/char and once accidental float.
2013-11-26 06:39:14 +11:00
aa3c06b41c
Fix T37573: Adding grid primitive slow for many subdivisions
2013-11-25 20:35:56 +11:00
2b4c68b902
CMake Build: option to compile without opennl/superlu.
2013-11-25 15:36:19 +11:00
1decd824f3
Code Cleanup: use math functions and reduce View3d axis drawing into a loop
2013-11-24 21:26:16 +11:00
283f43d31a
Fix T37559: Crash dissolving vertices in some situations
2013-11-22 19:42:14 +11:00
4c42e73a9d
Fix T37399: Crash with wireframe (wasn't clearing edge tag)
2013-11-19 16:45:21 +11:00
7fc1088164
Fix [ #37388 ] Grid fill crashes blender in specific situation.
...
With some geometries, we can have a valid first path, without being able to find a valid second one, added needed check.
2013-11-11 14:29:01 +00:00
bfb9cefccb
Added options for how bevel amount is measured.
...
Now there is an 'Offset Type' dropdown on tool
shelf with types:
Offset - current method, offset of new edge
from old along sliding face
Width - width of new bevel face (if segments=1)
Depth - amount a chamfering plane moves down
from original edge
Percent - percent of way sliding edges move
along their adjacent edges
The different options mainly are useful when
beveling more than one edge at once.
Leaving as a TODO to put these in the modifier,
as doing that has more permanent effects so
want to let users shake out problems with this
first.
2013-11-10 12:31:57 +00:00
ec32964194
code cleanup: warnings
2013-11-03 05:19:55 +00:00
Dalai Felinto
a7b44c82e5
Triangulate Modifier: using different ngon and quad methods
...
Quads: Beauty, Fixed, Fixed Alternate, Shortest Diagonal
Ngons: Beauty, Scanfill
* Shortest Diagonal is the default method in the modifier (popular
elsewhere), but beauty is the default in Ctrl+T).
* Remove the need for output slot and beauty operator to be called
after Clt+T
Patch with collaborations and reviewed by Campbell Barton
2013-10-29 02:42:51 +00:00
7c8c49a34a
style cleanup
2013-10-21 23:35:08 +00:00
f12ac5b23f
fix [ #37100 ] Segfault when I rotate an edge
2013-10-16 05:24:55 +00:00
Dalai Felinto
859dfccb58
beautify: passing edge/face flags as arguments
...
no functional change, just preparing the ground for the beautify in
triangulate modifier changes.
2013-10-16 03:24:50 +00:00
Dalai Felinto
fe93d4a3d8
split operators/bmo_beautify.c into tools/bmesh_beautify.c
...
This is a proper design if we want to use the beautify routine elsewhere
(e.g., in the triangulate modifier)
2013-10-16 03:24:38 +00:00
Dalai Felinto
54be5f2cf5
fix [ #37058 ] 2.69 RC1: Symmetrize directions are all reverse
2013-10-13 05:45:29 +00:00
afab39b9d6
code cleanup: use const's for static arrays
2013-10-10 20:22:17 +00:00
590f58d455
code cleanup: redundant includes and add minor comments.
2013-10-08 20:18:38 +00:00
51f7f82a42
fix crash in editmesh edge-dissolve, when 2 faces shared multiple edges, freed edges would be checked.
2013-10-03 15:29:08 +00:00
6b2e563924
yet another instance dissolve deletes verts it loops over.
2013-10-03 10:50:03 +00:00
6d1dba7c37
overlapping faces made join-triangles fail, check for this case and silently ignore them.
2013-10-03 10:29:53 +00:00
253e9fb041
addition to r60523 missed using BM_ITER_MESH_MUTABLE in one place.
2013-10-03 08:02:32 +00:00
5b5bc63396
fix [ #36923 ] Merge / Delete vertices crashes for some meshes
...
add BM_ITER_MESH_MUTABLE which steps before entering the for() loop body and prevents the assert from complaining about removing mesh data while iterating as well as the crash.
this was done in quite a few areas, more may turn up.
2013-10-03 07:06:56 +00:00
0959482acb
fix [ #36913 ] GHASH_FLAG_ALLOW_DUPES assert and crash in Edge Collapse
2013-10-02 04:12:06 +00:00
b21b24573d
lots of operator descriptions were incorrectly copy/pasted.
...
update some descriptions, others were removed and operators tagged as internal.
add a script to detect duplicate operator descriptions.
2013-09-30 05:50:41 +00:00
9096b3a14e
fix [ #36211 ] bridge edge loops joining vertecies that are far away
...
for bridge use a different beautify method when edge loops have non-matching loop count (simple face-angle comparison).
2013-09-17 23:23:32 +00:00
dd628ab4ed
comments and more logical var names for bm_edge_calc_rotate_beauty(), (make it easier to see whats going on)
2013-09-17 22:48:08 +00:00
ec2464ac5f
code cleanup: unnecessary shadowing and some minor pep8 edits.
2013-09-12 19:51:31 +00:00