def average_edge_cuts(bm,obj,cuts=1):
### collapse short edges
edges_len_average, shortest_edge = get_average_edge_length(bm,obj)
subdivide_edges = []
for edge in bm.edges:
cut_count = int(edge.calc_length()/shortest_edge)*cuts
if cut_count < 0:
cut_count = 0
if not edge.is_boundary:
subdivide_edges.append([edge,cut_count])
for edge in subdivide_edges:
bmesh.ops.subdivide_edges(bm,edges=[edge[0]],cuts=edge[1])
bmesh.update_edit_mesh(obj.data)
评论列表
文章目录