2ae6a93f05
Cleanup: style
2017-11-01 11:56:56 +11:00
7ffd3490a8
Merge branch 'master' into blender2.8
2017-10-27 13:24:16 +11:00
282af08fe2
Fix T53131: Incorrect vert-edge angle calculation
...
Vertex w/ a single edge wasn't detected
2017-10-27 13:10:36 +11:00
7ea7fd45d0
Merge branch 'master' into blender2.8
2017-10-24 12:19:48 +02:00
136f33b09f
Fix T53143: Knife Crash after Grid Fill
...
BM_ELEM_INTERNAL_TAG flag wasn't ensured to be cleared.
2017-10-24 17:21:25 +11:00
Julian Eisel
147f9585db
Merge branch 'master' into blender2.8
2017-10-23 00:04:20 +02:00
6dfe4cbc6b
Polyfill Beautify: half-edge optimization
...
Was using an edge hash for triangle -> edge lookups,
updating triangle indices for each edge-rotation.
Replace this with half-edge which can rotate edges much more simply,
writing triangles back once the solution has been calculated.
Gives ~33% speedup in own tests.
2017-10-23 01:40:03 +11:00
c45b8a65b4
Merge branch 'master' into blender2.8
2017-10-20 14:14:44 +11:00
959a58da9e
Cleanup: redundant casts
2017-10-20 14:03:22 +11:00
ea606a7847
Merge branch 'master' into blender28
2017-10-06 21:25:33 +11:00
3df139c530
Cleanup: Math lib naming (use v3 suffix)
2017-10-06 21:06:38 +11:00
63c472b4f9
Merge branch 'master' into blender2.8
2017-10-04 22:18:05 +05:00
d1dfed206b
Fix T52923: Circle diameter is in fact radius
2017-10-04 18:01:53 +11:00
e3fe8128e4
Merge branch 'master' into blender2.8
2017-09-29 19:55:00 +10:00
5a1954a5cb
Drop platform support for Solaris & AIX
...
These platforms didn't see maintenance in years.
This commit just removes ifdef's & cmake check.
2017-09-29 19:16:34 +10:00
af170839af
Merge branch 'master' into blender2.8
2017-09-19 21:08:14 +05:00
7b95243240
BLI_utildefines_iter: Use for iteration helpers
2017-09-19 20:22:24 +10:00
60956397ca
Cleanup: BLI_utildefines prefix for header-only libs
...
This allows to have different macro headers without them sharing
similar names to regular C modules.
2017-09-19 20:16:05 +10:00
9a2f7dd77b
Correct recent error in boolean quad split check
2017-09-19 14:25:37 +10:00
4c1ee47707
Merge branch 'master' into blender2.8
2017-09-18 15:54:56 +05:00
a0e7dbc66d
BMesh: move bridge tools stepping logic into macro
...
Also use floor division since regular division was giving a bias
on negative error values.
2017-09-18 13:18:54 +10:00
7c8e87fc52
Fix T52384: Bridge pair result depends on other loops
...
When 2x loops have different number of vertices,
the distribution for vertices fan-fill depended on the loop order
and was often lop-sided.
This caused noticeable inconstancies depending on the input
since edge-loops are flipped to match each others winding order.
2017-09-16 05:15:09 +10:00
4fae536f60
Merge branch 'master' into blender2.8
2017-09-15 22:44:07 +10:00
d120780fed
BMesh: use less involved check for edge rotation
...
Was using function for edge rotation which was doing unnecessary checks
Use the face normal and BLI_polyfill_beautify_quad_rotate_calc directly.
2017-09-15 18:19:04 +10:00
fdb8e17936
Fix error in recent boolean changes w/ quad split
2017-09-15 18:08:24 +10:00
75f36266df
Merge branch 'master' into blender2.8
2017-09-14 16:17:22 +05:00
892d304ded
Fix T52291: Boolean fails w/ co-linear edged ngons
...
This means boolean tessellation wont match viewport tessellation
however it's needed to avoid zero area triangles causing problems.
2017-09-14 16:08:03 +10:00
7d7741d25f
Merge branch 'master' into blender2.8
2017-09-11 16:52:53 +10:00
f56fea3d6b
Fix T52701: Mesh shortest path fails at boundaries
2017-09-11 16:45:19 +10:00
ca9801bd42
Merge branch 'master' into blender2.8
2017-08-27 16:35:51 +10:00
b07dcb8fb0
Missed last commit
2017-08-27 03:51:25 +10:00
b6b27b0671
Fix T52515: Crash on BMesh.to_mesh()
2017-08-27 02:44:15 +10:00
79111f9246
Merge branch 'master' into blender2.8
2017-08-27 00:51:54 +10:00
fa365d5f2f
Fix minor Mesh -> BMesh conversion issues
...
- Vertex only meshes never restored their selection history.
- Select history was cleared on the source instead of the target.
Simple Optimizations:
- Avoid O(n^2) linked list looping that checked the entire list before
adding elements (NULL values in the source array to prevent dupes).
- Re-use vert & edge lookup tables instead of allocating new ones.
2017-08-26 23:14:18 +10:00
673c9dce08
Merge branch 'master' into blender2.8
2017-08-12 19:08:49 +10:00
a4bcdf5fb1
Fix T52329: Boolean with aligned shapes failed
...
Creating ngons with multiple axis aligned shapes in the middle of a
single face would fail in some cases.
This exposed multiple problems in BM_face_split_edgenet_connect_islands
- Islands needed to be sorted on Y axis when X was aligned.
- Checking edge intersections needed increased endpoint bias.
- BVH epsilon needed to be increased.
2017-08-12 18:35:47 +10:00
8ddaa6a4e2
Merge branch 'master' into blender2.8
2017-08-01 10:38:36 +10:00
a372638a76
Cleanup: use static vars where appropriate
2017-08-01 09:06:34 +10:00
361acb6991
Cleanup: multistatement-macros warning
2017-07-29 08:21:01 +10:00
393ba0cf16
Cleanup: multistatement-macros warning
2017-07-29 08:18:20 +10:00
ad7f782e17
Merge branch 'master' into blender2.8
2017-07-13 18:05:20 +02:00
7daae642d8
Cleanup: Fix MSVC warning message
...
The const key is required by compiler to avoid warning
2017-07-13 17:54:24 +02:00
5ee5c595ba
Merge branch 'master' into blender2.8
2017-07-12 23:18:11 +10:00
457596d4df
BMesh: move safe loop-normal-calc to own function
...
This makes sense when we want to avoid float precision error
for near co-linear edges. OTOH, this is an arbitrary decision,
so keep functions separate.
2017-07-12 23:13:04 +10:00
e2c0197a96
Merge branch 'master' into blender2.8
2017-07-11 12:30:30 +02:00
218c254e72
Resolve T51745: Mesh extrude keep-orig needs edges
...
Document to avoid confusion when called from Python.
2017-07-11 14:48:55 +10:00
346619159a
Merge branch 'master' into blender2.8
2017-06-09 07:21:43 +10:00
c71e160c02
Fix T51733: 3d print toolbox checks report false positives.
...
Colinear vertices in a same face would not be handled correctly.
2017-06-08 14:05:36 +02:00
ed84388e7d
Bevel Op (internal and API) now returns new edges and verts as well as
...
faces.
This was requested by script writers. Especially needed if beveling
wire edges with vertex_only.
Should be backward compatible as just adds two new keys to returned
dict in python ('edges' and 'verts').
2017-06-07 08:53:10 -04: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