[英]Convert mesh to polygon in python
我有一个网格,想将其转换为多边形。 我做了一些谷歌搜索,找到了关于将多边形转换为网格的大部分答案。 我想做相反的事情。是否有任何图书馆或关于如何实现它的任何想法
那么您可以使用Python FME 库将输入作为网格对象并返回多边形
import fmeobjects
class MeshToPolygons(object):
def input(self, feature):
mesh = feature.getGeometry()
if isinstance(mesh, fmeobjects.FMEMesh):
vertices = mesh.getVertices()
for part in mesh:
indices = part.getVertexIndices()
if indices:
boundary = fmeobjects.FMELine([vertices[i] for i in indices])
feature.setGeometry(fmeobjects.FMEPolygon(boundary))
self.pyoutput(feature)
如果上述方法没有帮助,您还可以查看python TriMesh库。 您可以使用将对象加载为网格
trimesh.load(file_obj, file_type=None, resolver=None, force=None, **kwargs)
Return type: Trimesh, Path2D, Path3D, Scene
Returns: geometry – Loaded geometry as trimesh classes
现在将网格对象转换为一系列连接点。 之后你可以使用
trimesh.path.polygons.paths_to_polygons(paths, scale=None)
Return type: (p,) list
Returns: polys – Filled with Polygon or None
希望能帮助到你
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.