open3d-mesh读写

目录

一、mesh读取

二、mesh写入

三、支持格式

四、代码示例


一、mesh读取

 read_triangle_mesh(filename, enable_post_processing=False, print_progress=False)

从文件中读取三角网格数据

参数:

  • filename (str):文件名.
  • enable_post_processing (bool, optional, default=False)是否支持后处理
  • print_progress (bool, optional, default=False): 如果设置为true,控制台中会显示一个进度条

返回:

  • open3d.geometry.TriangleMesh

二、mesh写入

write_triangle_mesh(filename, mesh, write_ascii=False, compressed=False, write_vertex_normals=True, write_vertex_colors=True, write_triangle_uvs=True, print_progress=False)

参数:

  • filename (str): 写入文件名.
  • mesh (open3d.geometry.TriangleMesh): 目标三角网格数据open3d.geometry.TriangleMesh
  • write_ascii (bool, optional, default=False): 设置为True为ascii格式, 否则binary格式.
  • compressed (bool, optional, default=False): 设置为' ' True ' '以压缩格式写入。 
  • write_vertex_normals (bool, optional, default=True): 设置为“False”不写入任何顶点法线,即使在网格上也不写入
  • write_vertex_colors (bool, optional, default=True): 设置为“False”不写入任何顶点颜色,即使网格上存在 
  • write_triangle_uvs (bool, optional, default=True): 设置为' ' False ' '不写入任何三角形uv,即使网格上存在。 对于' ' obj ' '格式,mtl文件只在' ' True ' '设置时保存 
  • print_progress (bool, optional, default=False): 如果设置为true,控制台中会显示一个进度条 

返回:

  • bool

三、支持格式

与点云数据结构相比,网格有三角形来定义3D表面。  

默认情况下,Open3D尝试通过文件名扩展名推断文件类型。 支持以下网格文件类型: 

Format

Description

ply

见 Polygon File Format, ply文件同事包含点云和网格数据 

stl

见 StereoLithography

obj

见 Object Files

off

见 Object File Format

gltf/glb

见 GL Transmission Format

四、代码示例

import open3d as o3d
print("Testing IO for meshes ...")
knot_data = o3d.data.KnotMesh()
#读取
mesh = o3d.io.read_triangle_mesh(knot_data.path)
print(mesh)
#写入
o3d.io.write_triangle_mesh("copy_of_knot.ply", mesh)

猜你喜欢

转载自blog.csdn.net/Bolly_He/article/details/125510974