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:
authorBastien Montagne <montagne29@wanadoo.fr>2012-03-26 16:43:48 +0400
committerBastien Montagne <montagne29@wanadoo.fr>2012-03-26 16:43:48 +0400
commit56baed13da0e3cf1206afd17f65bba00ec4a287c (patch)
tree3864ed65ce685daf12935a12ef539d75de847e8e /release/scripts/startup/bl_operators/add_mesh_torus.py
parent5e764bf848926ea1b40f15b8599bea5880143e89 (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.py16
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)