86b7698a3e
Merge branch 'master' into blender2.8
2017-07-13 17:21:11 +10:00
d3f7b04f04
Fix T51100: Vertex pick fails after extrude
2017-07-13 14:13:59 +10:00
3c703df327
Correct select-similar end value
2017-06-01 19:41:19 +10:00
8cf5eaa2ba
Add Face-Map to select similar
...
Handy for setting up face-maps,
also allows selecting all faces with no assigned map.
2017-06-01 16:42:14 +10:00
7a9ad029dd
Remove TexFace, per-face images
...
TexFace complicates the now more popular shading pipeline by having
per-face images, see: T51382 for details.
To keep the ability to select a per-material edit-image
(used with UV-mapping workflow), the material now stores an image
which will be set when changing images in edit-mode.
This is used as a bake-target when not using Cycles too.
2017-05-24 23:38:15 +10:00
8125271ddb
Cleanup: rename functions in BLI_bitmap_draw_2d
2016-10-26 23:24:19 +11:00
3e36cbb3de
Cleanup: move bitmap drawing into its own module
...
Bitmap drawing is out-of-scope for a general math API,
move to BLI_bitmap_draw_2d.
2016-10-26 20:11:09 +11:00
0a026033ae
BMesh: make toolflags optional
...
Saves 8 bytes per vert/edge/face.
Gives overall ~20-25% memory saving for dyntopo sculpting
and modifiers that use BMesh.
2016-07-01 19:29:22 +10:00
935998312c
Fix T48085: Select linked w/ seam delimit gives random results
...
This changes behavior so seams aren't used for the bmesh walker.
2016-04-25 18:44:11 +10:00
28ca3ebc5f
Fix T47969: Select Random always uses same seed
...
Increment the seed on each use,
otherwise calling again selects the same order, unless you manually adjust the seed.
2016-03-29 01:24:57 +11:00
e830334357
Math Lib: use x-span for fill_poly_v2i_n callback
...
Instead of running the callback per-pixel,
pass the x-span to the callback.
2016-01-08 23:35:34 +11:00
eed28a1db8
Select mirror multiple axis support
...
Previously you could only select mirror on X axis,
now support mirroring on multiple axis as well as more than one
(for mesh and lattice data).
2016-01-07 20:57:03 +11:00
193b38cc47
Remove select-next-loop operator
...
Taken from original bmesh-branch but doesn't give useful results
(misses selection flushing).
2016-01-04 15:03:18 +11:00
c6e8353462
Fix possible invalid-index use /w link/path select
2015-12-28 21:26:02 +11:00
d020b4ca91
BMesh: extract int/bmesh element access funcs.
...
Support getting an vert/edge/face from a single index, useful for operator redo.
2015-12-27 18:05:34 +11:00
f820c45534
WM: add checker_interval utility functions
2015-12-27 18:01:11 +11:00
b3e94791d3
Typo in last commit
2015-12-23 15:11:54 +11:00
21b91bc764
Select Linked: only use seam delimit for faces
...
Delimiting on seams was only ever intended for face selection,
Previously this option didn't work for vertices,
now it's fixed the defaults aren't right for vertex/edge select-linked.
Add a workaround that bypasses operator-defaults - since this is such a rare case.
2015-12-23 15:08:58 +11:00
532c8be974
Fix error in shadowing cleanup (wrong pointer free)
2015-11-26 08:46:38 +11:00
48b1656a6c
Cleanup: shadowing (editors)
2015-11-23 17:40:50 +11:00
676d790d29
Cleanup: use rna_enum_ prefix for RNA enums
...
Definitions could shadow local vars.
2015-11-23 17:40:09 +11:00
c03598955b
Optimization: use dot product for angle comparison
2015-10-30 16:20:22 +11:00
05acf3d43a
Random Select Seed Option
...
Add 'Seed' option for all random select operators
D1508 by @mba105 , w/ edits
2015-10-10 23:52:11 +11:00
ad873ca92d
prevent assert: select-linked UV delimit w/o UV's
2015-09-23 03:00:30 +10:00
09e40a4956
Cleanup: spelling
2015-09-14 02:22:22 +10:00
3c911ff8a5
Fix T45450: Loop-select fails to cycle between overlapping edges
2015-07-21 12:27:41 +10:00
114e7eaa09
Add WM_framebuffer_to_index_array
...
Convert buffer to index in one loop,
also minor cleanup to backbuf/selection functions.
- Use IMB_rectcpy instead of inline pixel copy.
- Redundant WM_framebuffer_to_index call.
2015-07-11 23:21:41 +10:00
30b7aafe33
Correct default enum values
...
Had assert creating cheat sheet
2015-07-07 23:10:08 +10:00
43f6ed908f
Fix T45135: More cleanup of extreme max values in operator properties.
...
INT_/FLOAT_MAX are sometimes valid choices, but most of the time more
sensible values should be used here!
2015-06-21 21:56:35 +02:00
60621940d0
Use threshold for selecting side-of-axis
2015-06-07 02:09:41 +10:00
af434fea71
BMesh: select linked /w delimiters & wire edges
...
Add support for using edge delimiters mixed with wire edges.
Code isn't so elegant but users will expect this.
2015-05-29 14:41:39 +10:00
dddb4f655c
BMesh: link-select-pick now supports redo
...
Without this you can't change delimiter options without editing the keymap.
2015-05-16 20:53:35 +10:00
3aa4a0e787
BMesh: add UV delimit for select-linked, dissolve
2015-05-16 12:21:31 +10:00
05c4c2409e
BMesh: add sharp edge delimiter
2015-05-16 10:18:38 +10:00
5cc55486ee
BMesh: select linked, support other delimiters
...
Use same options as limited dissolve (adds material & winding)
2015-05-16 10:17:46 +10:00
1bb3d0d485
Select linked seam limit, now works for picking
...
Second half of fix for also T42510
2015-05-16 09:35:35 +10:00
ba9dbaae64
Fix T42510: Limit by seams fails in edge/vert mode
2015-05-15 17:14:02 +10:00
bc371030a7
BMesh: rename loop walker -> edgeloop
2015-05-15 10:55:56 +10:00
3878180a6f
Fix typo using interp_v3_v3v3 over float[2] variables...
...
Found by asan! ;)
2015-04-29 19:44:06 +02:00
61ac5dd5ba
Correct missing NULL check (own mistake)
2015-04-24 02:38:15 +10:00
8010672bbc
BMesh: mesh-data picking, edge+vert improvement
...
When zoomed out vert bias over edges meant it wasn't possible to select edges.
Now pick the edge if the cursor is closer to its center.
2015-04-23 16:11:54 +10:00
c9f9e29538
Math Lib: handling bits handling into own file
2015-04-22 04:44:24 +10:00
84d117b3ad
Minor edit to edit-mesh selection bias
...
only choose verts over edges (not faces)
2015-04-22 00:43:31 +10:00
3a3f80673c
Cleanup: minor corrections
2015-04-22 00:16:26 +10:00
e3a6440e7a
BMesh: mesh-data picking, general improvements
...
Generalize logic for vert/edge/face selection:
- index cycling.
- selection bias with mixed modes.
Details:
- Edges now support index cycling (as verts/faces did already)
- Cycling over near elements is now only enabled when the mouse position remains the same.
- No longer do 2 selection passes to perform index cycling.
Fixes:
- Edges behind the view could be selected (surprising nobody reported!)
- Selection bias now only changes the element that gets picked without interning the return distance
(was buggy with mixed modes).
2015-04-21 21:25:43 +10:00
62e149881a
Fixes for backbuf selection logic
...
- Fix ED_view3d_backbuf_sample_rect, r_dist was set completely wrong.
- Avoid duplicate calculations picking the nearest edge.
- Bias against picking selected edges is now optional.
- Remove unused callback reading the backbuf.
- Remove unused strict option picking vertices.
2015-04-21 04:50:39 +10:00
aa880bb815
Cleanup: use ED_view3d_backbuf_* prefix
2015-04-21 03:19:27 +10:00
d57a93a7cb
Fix T44383: Select face fails in some positions
...
When mixing vert/edge/face with select-visible,
face selection could fail when not close enough to the center.
This also fixes a bug where the bias for verts over edges would
prefer faces over edges too, making edges harder to pick.
Mixing edge with other selection modes works more predictably now.
2015-04-21 03:10:32 +10:00
0626d27bf6
Editmesh select nearest fixes
...
- distance from edge check wasn't clamping 0-1
- vertex bias wasn't taking pixelsize into account.
- index & pass counter were floats
Also some improvements
- use BMesh lookup tables when available.
- use structs to avoid issues getting out of sync.
2015-04-21 01:50:21 +10:00
60e8e20132
Cleanup: use macro for common view3d zbuf check
2015-04-21 01:50:20 +10:00