如何从顶点列表创建 bmesh

kat*_*osh 4 python blender

在搅拌机中,我可以从顶点列表中创建一个网格“我”,如下所示:

me = bpy.data.meshes.new("name") 
me.from_pydata(vertices,[],[])
Run Code Online (Sandbox Code Playgroud)

但对于 bmesh 不存在此功能。我想做的是

bme=bmesh.new()
bme.from_pydata(vertices,[],[])
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

sam*_*ler 5

bmesh 模板的稍微修改版本将为您提供

import bpy
import bmesh

myvertexlist = [[2,2,2],[4,4,4],[6,6,6],[8,8,8]]

# Get the active mesh
me = bpy.context.object.data

# Get a BMesh representation
bm = bmesh.new()   # create an empty BMesh
bm.from_mesh(me)   # fill it in from a Mesh

# Modify the BMesh, can do anything here...
for newvert in myvertexlist:
    bm.verts.new(newvert)

# also add bm.edges and bm.faces

# Finish up, write the bmesh back to the mesh
bm.to_mesh(me)
bm.free()  # free and prevent further access
Run Code Online (Sandbox Code Playgroud)