def polys_to_mesh(self, entities, scene, name):
d = bpy.data.meshes.new(name)
bm = bmesh.new()
m = Matrix(((1, 0, 0, 0), (0, 1, 0, 0), (0, 0, 1, 0), (0, 0, 0, 1)))
for en in entities:
t = m
verts = []
if is_.extrusion(en):
t = convert.extrusion_to_matrix(en)
for p in en.points:
verts.append(bm.verts.new(self.proj((t*Vector(p)).to_3d())))
if len(verts) > 2:
bm.faces.new(verts)
elif len(verts) == 2:
bm.edges.new(verts)
bm.to_mesh(d)
o = bpy.data.objects.new(name, d)
scene.objects.link(o)
return o
评论列表
文章目录