diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2012-03-26 16:43:48 +0400 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2012-03-26 16:43:48 +0400 |
commit | 56baed13da0e3cf1206afd17f65bba00ec4a287c (patch) | |
tree | 3864ed65ce685daf12935a12ef539d75de847e8e /release/scripts/startup/bl_operators/add_mesh_torus.py | |
parent | 5e764bf848926ea1b40f15b8599bea5880143e89 (diff) |
Fix [#30684] Bmesh AddTorus.execute failure.
Done BMESH_TODO (use polys/loops instead of tessfaces).
Diffstat (limited to 'release/scripts/startup/bl_operators/add_mesh_torus.py')
-rw-r--r-- | release/scripts/startup/bl_operators/add_mesh_torus.py | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/release/scripts/startup/bl_operators/add_mesh_torus.py b/release/scripts/startup/bl_operators/add_mesh_torus.py index 74f7b9c0f78..0cd781f550f 100644 --- a/release/scripts/startup/bl_operators/add_mesh_torus.py +++ b/release/scripts/startup/bl_operators/add_mesh_torus.py @@ -140,19 +140,23 @@ class AddTorus(Operator, object_utils.AddObjectHelper): self.minor_radius = extra_helper verts_loc, faces = add_torus(self.major_radius, - self.minor_radius, - self.major_segments, - self.minor_segments) + self.minor_radius, + self.major_segments, + self.minor_segments) mesh = bpy.data.meshes.new("Torus") mesh.vertices.add(len(verts_loc) // 3) - # BMESH_TODO, use polygons - mesh.faces.add(len(faces) // 4) + nbr_loops = len(faces) + nbr_polys = nbr_loops // 4 + mesh.loops.add(nbr_loops) + mesh.polygons.add(nbr_polys) mesh.vertices.foreach_set("co", verts_loc) - mesh.faces.foreach_set("vertices_raw", faces) + mesh.polygons.foreach_set("loop_start", range(0, nbr_loops, 4)) + mesh.polygons.foreach_set("loop_total", (4,) * nbr_polys) + mesh.loops.foreach_set("vertex_index", faces) mesh.update() object_utils.object_data_add(context, mesh, operator=self) |