b333a7570f
Cleanup: spelling
2015-10-07 15:02:06 +11:00
123b64f818
BMesh: improved smooth subdivision
...
Instead of offsetting along normals, smooth positions are now
calculated on a sphere defined by the vertices and their normals.
This removes visible seams along original edges, which were common previously.
2015-10-05 00:03:10 +11:00
3e63c604e3
Partial revert of warning cleanup
...
These warnings are false-positives
2015-09-04 14:40:03 +10:00
Julian Eisel
ef629e0d50
Quiet warnings
...
We had too many warnings lately... was awaiting that someone would kill them - didn't happen -> goes to my commit ratio! :P
2015-09-04 01:04:37 +02:00
e301cf3ec2
Cleanup: double-promotion warnings
2015-07-25 13:26:20 +10:00
ea5f9fee8d
Cleanup: function arg wrapping
2015-05-05 16:34:38 +10:00
3524676036
BMesh: increase subdiv smooth strength
...
Now 1.0 gives near spherical output
2015-04-26 21:26:45 +10:00
2069187a1b
Cleanup: bmesh subdivide
...
var names were a bit cryptic, set return arg last.
2015-04-26 20:34:03 +10:00
2374cb380b
BMesh: subdiv smooth, use simpler even calculation
...
Was checking all vertices adjacent faces,
now just compare the difference between normal angles.
Also default to inverse-square for loopcut-subdiv falloff.
2015-04-26 19:20:34 +10:00
e1ca127419
Cleanup: subdivide smooth vertex placement
2015-04-26 19:12:20 +10:00
d33314393e
BMesh: use const for API calls
2015-04-26 17:19:51 +10:00
36df8cc1e5
Fix T43421: bisect_edges returns insufficient data
2015-03-09 18:33:24 +11:00
bd00770715
Cleanup: consistent arg order in bmesh
2015-01-14 01:36:03 +11:00
902ba7b25c
Cleanup: use SUBD_CORNER_* prefix for Subdiv flags
2014-11-16 15:46:30 +01:00
0cf8ee1c03
BMesh: use stack for subdiv face data (no realloc)
2014-09-28 15:08:54 +10:00
f2a0062042
Use ARRAY_SIZE to replace (sizeof(a) / sizeof(*a))
2014-06-17 02:47:57 +10:00
b54793ef02
Editmesh: remove redundant normal calculation call for subdivide
2014-06-14 17:55:07 +10:00
a217db0d63
Fix T40297: Crash while ripping an edge when autosmooth is activated.
...
Turned out there was still quite a few cases were indices were set dirty,
but elem_index_dirty was not tagged accordingly (mostly for BM_LOOP,
but a few others as well). So probably this crash was not the only one
hidden here.
Hopefully all possible cases were catched this time!
2014-05-21 22:37:50 +02:00
46bd759964
Code cleanup: rename BM_face_legal_splits -> BM_face_splits_check_legal
2014-05-13 17:48:25 +10:00
bdf477d19a
BMesh: add check to BM_vert_pair_share_face to allow adjacent loops
...
Add BM_vert_pair_share_face_by_angle to avoid selecting concave splits.
2014-05-13 16:49:57 +10:00
88a0fe5f1b
Code cleanup: use 'const' for arrays (bmesh)
2014-04-27 00:25:16 +10:00
3d031d1f3a
BMesh: minor changes for BM_face_split use
2014-03-13 18:41:45 +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
54310b8086
bmesh: internal api change, remove BMOElemMapping, its not needed since the values can be stored in the ghash directly.
...
saves 24 bytes per element (per vertex/edge/face on a 64bit system), for bmesh operators.
2013-09-02 03:13:51 +00:00
98c574e41a
use 'greater/less then or equal to' operators rather then adding 1.
2013-08-11 05:40:35 +00:00
19496ab62a
internal bmesh api change: BM_elem_attrs_copy() no longer copies the selection flag.
...
this was slowing down modifiers since the selection flags would be copied and flushed to connected geometry.
2013-07-24 19:31:58 +00:00
5fac3d9db5
remove bmesh arg from BM_face_legal_splits(), don't use a bmesh iterator.
2013-06-26 20:15:02 +00:00
c03e638cf3
Fix msvc compile error with subdivide use_smooth_even option.
2013-06-10 20:54:08 +00:00
bff8a4c594
correction to typo in r57327, ui-load wasnt working on splash screen.
...
also minor changes:
- update the load-UI flag when changing in the preferences.
- remove unused initialization values for subdivide.
2013-06-10 10:55:57 +00:00
cae0d9df52
optimize customdata lookups for subdivision.
2013-06-10 05:18:45 +00:00
501f655503
fix [ #35648 ] Loop cut, smoothness showing wrong symmetrical
...
this is more of a feature request then a bug, but nicer to use even smoothing offset for loopcut smoothing.
2013-06-10 04:33:05 +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
e4aff35020
smooth falloff options for loopcut.
2013-05-08 12:58:28 +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
afb4b65167
Random number generator: replace a bunch of usage of the global random number
...
generator with a local one. It's not thread safe and will not give repeatable
results, so in most cases it should not be used.
Also fixes #34992 where the noise texture of a displacement modifier was not
properly random in opengl animation render, because the seed got reset to a
fixed value by an unrelated function while for final render it changed each
frame.
2013-04-15 23:12:40 +00:00
858ff6b696
Fix for [ #34898 ] Typo in error message of mathutils.Vector
...
* Also fixed some more cases of "more then" -> "more than".
2013-04-07 15:09:06 +00:00
b1f4e2b4db
code comments: bmesh operator doxy header descriptions.
2013-03-30 08:54:50 +00:00
6f9f1399a0
code cleanup: operator headers
2013-03-25 22:40:11 +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
347e2b6cb0
code cleanup: make bmesh var names more consistent
2013-03-09 17:12:24 +00:00
2005f7c6c0
style cleanup: also some typos
2013-02-11 00:49:00 +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
b27854bd47
use booleans for bmesh api.
2013-01-14 16:42:43 +00:00
8ecce451ab
bmesh operator naming - use clearer names for args eg: (mat -> matrix, use_singleedge -> use_single_edge)
...
also remove duplicate docs for operator arg formatting.
2012-11-28 00:16:06 +00:00
f8bc346eff
bmesh/py operator api:
...
add type checking for element buffers, there was nothing stopping python from passing any element type into an argument when in some cases only verts/edges/faces were expected.
now operator args define which types they support.
2012-11-27 00:50:59 +00:00
a91814e94d
style cleanup
2012-11-26 11:03:14 +00:00
cf2c459325
Fix #33285 : loop cut is not supposed to cut through triangles/ngons, but it
...
still happened when the loop would go all the way around the mesh with just one
triangle/ngon inbetween to close the loop.
2012-11-26 06:59:59 +00:00
ebaf1306b8
bmesh operator api:
...
avoid per vert/edge/face string lookups in BMO_slot_map_* functions --- used in array modifier, subdivide, remove doubles and other tools.
2012-11-20 13:29:27 +00:00
dbdc76c9d0
code cleanup: make bmesh operator names more consistant since python has access to these as input arguments and return values.
...
all output values currently have ".out" suffix, this may go in the future, but for now it makes it clear in C code what are inputs and outputs.
2012-11-20 05:50:19 +00:00
e8667421ed
bmesh operator api edits, add macros and NULL the buffer if BMO_slot_buffer_alloc()'s len is zero.
2012-11-20 03:29:12 +00:00