diff options
author | Philipp Oeser <info@graphics-engineer.com> | 2019-02-08 15:08:01 +0300 |
---|---|---|
committer | Philipp Oeser <info@graphics-engineer.com> | 2019-02-08 15:58:42 +0300 |
commit | 6e2da0883f6359c5c1a35cbc7691f543e9603722 (patch) | |
tree | f9961580fb664dc743daa96d3fa26c69951cf616 /release/scripts/modules/bpy_extras/mesh_utils.py | |
parent | 813800f143b90480f563d1e1dd6fbb9acd3e5f87 (diff) |
Fix T61309: mesh_utils.triangle_random_points fails with a TypeError
Caused by an error in rBe65784a0519e.
And since we are going over loop triangles anyways, we can remove the
part quecking for quads [remainder of tessface era] entirely.
Reviewers: campbellbarton
Maniphest Tasks: T61309
Differential Revision: https://developer.blender.org/D4324
Diffstat (limited to 'release/scripts/modules/bpy_extras/mesh_utils.py')
-rw-r--r-- | release/scripts/modules/bpy_extras/mesh_utils.py | 19 |
1 files changed, 3 insertions, 16 deletions
diff --git a/release/scripts/modules/bpy_extras/mesh_utils.py b/release/scripts/modules/bpy_extras/mesh_utils.py index 85356206482..e76d1f1815e 100644 --- a/release/scripts/modules/bpy_extras/mesh_utils.py +++ b/release/scripts/modules/bpy_extras/mesh_utils.py @@ -454,19 +454,6 @@ def triangle_random_points(num_points, loop_triangles): tv = (verts[ltv[0]].co, verts[ltv[1]].co, verts[ltv[2]].co) for k in range(num_points): - # If this is a quad, we need to weight its 2 tris by their area - if len(tv) != 1: - area1 = area_tri(*tv[0]) - area2 = area_tri(*tv[1]) - area_tot = area1 + area2 - - area1 = area1 / area_tot - area2 = area2 / area_tot - - vecs = tv[0 if (random() < area1) else 1] - else: - vecs = tv[0] - u1 = random() u2 = random() u_tot = u1 + u2 @@ -475,10 +462,10 @@ def triangle_random_points(num_points, loop_triangles): u1 = 1.0 - u1 u2 = 1.0 - u2 - side1 = vecs[1] - vecs[0] - side2 = vecs[2] - vecs[0] + side1 = tv[1] - tv[0] + side2 = tv[2] - tv[0] - p = vecs[0] + u1 * side1 + u2 * side2 + p = tv[0] + u1 * side1 + u2 * side2 sampled_points[num_points * i + k] = p |