Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'release/scripts/modules/bpy_types.py')
-rw-r--r--release/scripts/modules/bpy_types.py23
1 files changed, 14 insertions, 9 deletions
diff --git a/release/scripts/modules/bpy_types.py b/release/scripts/modules/bpy_types.py
index 29b53aedf78..8a1615ad99f 100644
--- a/release/scripts/modules/bpy_types.py
+++ b/release/scripts/modules/bpy_types.py
@@ -477,29 +477,34 @@ class Mesh(bpy_types.ID):
face_lengths = tuple(map(len, faces))
- self.vertices.add(len(vertices))
- self.edges.add(len(edges))
+ # NOTE: check non-empty lists by length because of how `numpy` handles truth tests, see: T90268.
+ vertices_len = len(vertices)
+ edges_len = len(edges)
+ faces_len = len(faces)
+
+ self.vertices.add(vertices_len)
+ self.edges.add(edges_len)
self.loops.add(sum(face_lengths))
- self.polygons.add(len(faces))
+ self.polygons.add(faces_len)
self.vertices.foreach_set("co", tuple(chain.from_iterable(vertices)))
self.edges.foreach_set("vertices", tuple(chain.from_iterable(edges)))
vertex_indices = tuple(chain.from_iterable(faces))
- loop_starts = tuple(islice(chain([0], accumulate(face_lengths)), len(faces)))
+ loop_starts = tuple(islice(chain([0], accumulate(face_lengths)), faces_len))
self.polygons.foreach_set("loop_total", face_lengths)
self.polygons.foreach_set("loop_start", loop_starts)
self.polygons.foreach_set("vertices", vertex_indices)
- if edges or faces:
+ if edges_len or faces_len:
self.update(
# Needed to either:
# - Calculate edges that don't exist for polygons.
# - Assign edges to polygon loops.
- calc_edges=bool(faces),
+ calc_edges=bool(faces_len),
# Flag loose edges.
- calc_edges_loose=bool(edges),
+ calc_edges_loose=bool(edges_len),
)
@property
@@ -761,9 +766,9 @@ class Macro(StructRNA):
__slots__ = ()
@classmethod
- def define(self, opname):
+ def define(cls, opname):
from _bpy import ops
- return ops.macro_define(self, opname)
+ return ops.macro_define(cls, opname)
class PropertyGroup(StructRNA, metaclass=RNAMetaPropGroup):