Jacques Lucke
ae028ef206
Fix T57045: Unhandled degenerate case in bevel code
...
Reviewers: howardt
Differential Revision: https://developer.blender.org/D4104
2018-12-20 10:58:50 +01:00
Campbell Barton
d5f87bdde6
Merge branch 'master' into blender2.8
2018-12-20 17:53:12 +11:00
Campbell Barton
f7d216c1b6
Fix T59074: BMesh intersect hangs
...
This is a degenerate intersection, exit early instead of hanging.
2018-12-20 17:50:36 +11:00
Campbell Barton
d46d8e831c
Merge branch 'master' into blender2.8
2018-12-19 10:28:26 +11:00
Campbell Barton
5c3953010d
Cleanup: spelling
2018-12-19 10:18:15 +11:00
Campbell Barton
9bac172a79
Merge branch 'master' into blender2.8
2018-12-14 11:39:39 +11:00
Campbell Barton
f0a481eebd
Fix selection history clearing when selecting all
2018-12-14 11:38:02 +11:00
Campbell Barton
dd4c87cd04
Merge branch 'master' into blender2.8
2018-12-14 11:09:42 +11:00
Campbell Barton
aa3c4b4cb6
Missed last commit
2018-12-14 11:06:34 +11:00
Campbell Barton
6e2d9ef2db
Cleanup: naming (mean -> median) see T47811
2018-12-14 10:54:11 +11:00
Campbell Barton
49490e5cfb
Merge branch 'master' into blender2.8
2018-12-12 13:02:09 +11:00
Campbell Barton
e757c4a3be
Cleanup: use colon separator after parameter
...
Helps separate variable names from descriptive text.
Was already used in some parts of the code,
double space and dashes were used elsewhere.
2018-12-12 12:50:58 +11:00
Campbell Barton
42126bdf06
Merge branch 'master' into blender2.8
2018-12-11 14:05:16 +11:00
Campbell Barton
6bc828ed87
Fix T59161: Edge Rotate CW is CCW
2018-12-11 14:03:42 +11:00
Campbell Barton
45afcd6b86
Merge branch 'master' into blender2.8
2018-12-06 15:08:42 +11:00
Campbell Barton
d24cfa329b
Fix T58832: Spin tool creates duplicate faces
2018-12-06 14:52:55 +11:00
Howard Trickey
365a5b75c1
Partial fix for T57868, crash when using bevel from Python.
...
These changes are necessary. Need to mark vertices of edges passed
in geom; also the normals.out slot has a custom element type, not
ELEM, so need to prevent attempt by python code to convert it to
an elem. But this leaves a memory leak. I will rework code to not
use normals.out slot at all, but that's a bigger fix.
Now there is a crash in a different place (GPU code). Think that if
using Op on its own (instead of from edbm_bevel_calc, there needs to
be a dependency graph update and maybe more?
2018-11-27 09:59:03 -05:00
Campbell Barton
030830be9a
Revert "Fix texture space not updating in edit mode."
...
This reverts commit 3a038db576 .
Caused CoW crash switching from edit to sculpt mode.
2018-11-27 14:18:44 +11:00
Campbell Barton
621405ee0f
Merge branch 'master' into blender2.8
2018-11-27 11:41:33 +11:00
Campbell Barton
9a5df92c1b
Fix T56872: Edge slide gives invalid normals
...
Add the ability to skip overwriting normals.
2018-11-27 11:40:32 +11:00
mano-wii
3a038db576
Fix texture space not updating in edit mode.
2018-11-26 07:32:04 -02:00
Bastien Montagne
23656d01d8
Merge branch 'master' into blender2.8
2018-11-20 18:01:13 +01:00
Bastien Montagne
ec851efda9
Fix T57923: Freeze in mesh vnors computation code with some degenerated geometry.
...
Second part of the fix: do not try at all to compute normals in degenerated
geometry. Just loss of time and potential issues later with weird
invalid computed values.
2018-11-20 17:54:48 +01:00
Bastien Montagne
c9c6433a59
Fix T57923: Freeze in mesh vnors computation code with some degenerated geometry.
...
Fix first part of it, the freeze itself being caused by float NAN values
never comparing equal to anything, not even themselves.
2018-11-20 17:52:21 +01:00
Campbell Barton
720368e2d0
Cleanup: use const mesh arg to BM_mesh_bm_from_me
...
Needed for D3966
2018-11-20 13:30:25 +11:00
Brecht Van Lommel
6f08124fbd
Fix assert in bevel modifier with certain geometry.
...
This happened in in the barbershop_interior.blend benchmark file, seems
duplicate hash entries are ok for this algorithm.
2018-11-14 18:21:28 +01:00
Campbell Barton
55e719ec35
Merge branch 'master' into blender2.8
2018-11-14 17:21:34 +11:00
Campbell Barton
d7f55c4ff5
Cleanup: comment block tabs
2018-11-14 17:10:56 +11:00
Campbell Barton
3756f920f4
BMesh: backport minor changes from 2.8
2018-11-10 19:56:02 +11:00
Campbell Barton
5a59327fb3
Cleanup: includes
2018-11-10 19:02:26 +11:00
Campbell Barton
0feeea1bd5
BMesh: avoid incorrect/invalid matrix calculation
...
- `BKE_object_scale_to_mat3` was used to get the worldspace scale,
without taking constraints, parenting etc into account.
- Don't pass object's into BMesh API, (prefer matrices instead).
- Avoid matrix invert for each edge-angle calculation.
- Avoid 2x matrix multiplies when looping over edge pairs.
2018-11-10 18:55:03 +11:00
Habib Gahbiche
0c1934f3c2
Multi-Objects: MESH_OT_select_similar worldspace completion
...
This makes the operator to work 100% with worldspace similarity:
* SIMFACE_PERIMETER
* SIMFACE_AREA
* SIMEDGE_FACE_ANGLE
Note from revisor (Dalai Felinto):
I'm not sure we want to pass Object * to the bmesh api, though I
personally don't see why not. Either way I group the patches together so
we can more easily roll them back if needs be.
Maniphest Tasks: T56948
Differential Revision: D3908, D3899, D3896
2018-11-09 17:19:04 -02:00
Campbell Barton
900c562b71
Cleanup: rename fast-heap -> heap-simple
...
In general prefer API names don't start with adjectives
since it causes grouping of unrelated API's for completion.
2018-11-06 13:06:49 +11:00
Campbell Barton
d805a4a5ef
Cleanup: move fast heap into own source & header
2018-11-06 12:52:34 +11:00
Alexander Gavrilov
fee6ab18e7
BLI_heap: implement a limited but faster version of heap.
...
If the user only needs insertion and removal from top, there is
no need to allocate and manage separate HeapNode objects: the
data can be stored directly in the main tree array.
This measured a 24% FPS increase on a ~50% heap-heavy workload.
Reviewers: brecht
Differential Revision: https://developer.blender.org/D3898
2018-11-05 20:49:17 +03:00
Alexander Gavrilov
d3c815bd08
BLI_heap: add an API function to directly read the top node value.
...
It is very commonly needed in loop conditions to check if
the items in the heap are good enough to continue.
2018-11-04 13:29:17 +03:00
Campbell Barton
4b2b8a0c3f
Fix T57351: Deform modifiers skipped in editmode
2018-10-24 14:48:17 +11:00
Campbell Barton
860dd31647
Merge branch 'master' into blender2.8
2018-10-24 12:55:44 +11:00
Campbell Barton
db69deea89
BMesh: inline index lookups
...
For release builds this is now the same as indexing the array directly.
2018-10-24 12:54:26 +11:00
Campbell Barton
756ac74f81
Cleanup: rename 'dm' -> 'me' for 'Mesh' types
2018-10-23 15:00:40 +11:00
Campbell Barton
dbdf653f8e
Fix bad origindex layers for editmode modifiers
...
Reverts workaround from last commit.
2018-10-23 13:53:42 +11:00
Campbell Barton
633e2cddd7
BMesh: simple bmesh -> mesh for evaluation
...
Copied from CDDM_from_bmesh, the modifier stack doesn't
need to handle shape keys, vertex parents or selection history
(needed for mode switching).
2018-10-10 13:14:15 +11:00
Campbell Barton
733e6c0b1d
Merge branch 'master' into blender2.8
2018-10-09 08:46:00 +11:00
Campbell Barton
da39f10eb7
Fix T57103: Subdivide smooth results in NAN verts
2018-10-09 07:49:54 +11:00
Dalai Felinto
0f03750f4f
Cleanup: Remove bmo_similar.c and small renaming
2018-09-28 10:32:04 -03:00
Campbell Barton
07747bcd67
Merge branch 'master' into blender2.8
2018-09-26 10:30:34 +10:00
Campbell Barton
34d98cfe61
BMesh: spin option to merge first/last
...
For 360d revolutions this is almost always whats intended,
enable by default.
2018-09-26 09:55:17 +10:00
Campbell Barton
a7bf4966e2
Merge branch 'master' into blender2.8
2018-09-25 13:42:51 +10:00
Campbell Barton
06d4fad313
BMesh: option to flip normals for extrude/spin
2018-09-25 13:31:29 +10:00
Dalai Felinto
502dbcf404
Select Similar: Cleanup - WITH_FREESYTLE
2018-09-21 16:32:24 -03:00