我正在编写一个脚本来从平面生成建筑物。虽然普通平面是矩形,但它很容易 - 您正在寻找大多数顶点 -/+X、-/+Y、-/+Z,但是如果平面不是规则形状怎么办?Blender中的python api中有一个很好的简单解决方案吗?事实上,有没有什么聪明的方法来检测边界上的面/边/顶点?
问问题
738 次
1 回答
1
寻找边界边缘:这些将仅连接到一个面上。查看Mesh类,特别是edges、faces和vertices属性。不幸的是,边缘不包含它们所属的面的列表,因此您必须构建这样的映射,例如
EdgeFaces = {} # mapping from edge to adjacent faces
for ThisFace in TheMesh.faces :
for ThisEdge in ThisFace.edge_keys :
if not ThisEdge in EdgeFaces :
EdgeFaces[ThisEdge] = []
#end if
EdgeFaces[ThisEdge].append(ThisFace.edge_keys)
#end for
#end for
然后,您只需通过 EdgeFaces 查看映射到单元素列表的所有键。
于 2012-02-02T00:56:59.687 回答