Python之Trimesh库的使用方式
更新时间:2024年06月24日 10:47:17 作者:BTWBB
这篇文章主要介绍了Python之Trimesh库的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
Python Trimesh库的使用
Trimesh是一个纯Python(2.7-3.5+)库,用于加载和使用三角形网格。
该库的目标是提供一个功能齐全、经过良好测试的Trimesh对象,允许简单的操作和分析,风格与Shapely库中的Polygon对象相同。
下面是一些相关的使用方法!
模型加载
mesh = trimesh.load(obj_path)
vertices和faces输出
v = mesh.vertices f = mesh.faces #这样得到的v,f格式是trimesh 内置的格式,不能直接用于其它计算,需要转换为numpy v1 = np.array(v) f1 = np.array(f)
vertices和faces转化为模型并显示
obj = trimesh.Trimesh(vertices = v1, faces = f1) obj.show() #然后点击a展示坐标轴,w只展示模型线条
采样表面点并计算最近点
""" tgt_mesh:采样的mesh sampled_points_num:采样点数目 gt_surface_pts:采样点坐标 face_index:采样点对应的face索引 """ gt_surface_pts, face_index = trimesh.sample.sample_surface_even(tgt_mesh, sampled_points_num) """ src_mesh:目标的mesh gt_surface_pts:要计算最近点的点 pred_surface_pts:得到的在三角面片上的最近点 dist_pred_gt:点到最近三角面片的距离 triangle_id:最近三角面片的索引 """ pred_surface_pts, dist_pred_gt, triangle_id = trimesh.proximity.closest_point( src_mesh, gt_surface_pts)
用齐次变换矩阵变换网格
# matrix((4,4)float) -齐次变换矩阵 mesh = trimesh.load(obj_path) mesh = mesh.apply_transform(matrix)
其他的Trimesh函数详解及使用方法可查询官网!
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
centos 安装python3.6环境并配置虚拟环境的详细教程
这篇文章主要介绍了centos-安装python3.6环境并配置虚拟环境的详细教程,非常不错,具有参考借鉴价值,需要的朋友可以参考下2018-02-02Python fire模块(最简化命令行生成工具)的使用教程详解
Python Fire是谷歌开源的一个第三方库,用于从任何Python对象自动生成命令行接口(CLI),可用于如快速拓展成命令行等形式。本文将通过实例为大家详细说说fire模块的使用,感兴趣的可以了解一下2022-10-10python scipy.spatial.distance 距离计算函数
本文主要介绍了python scipy.spatial.distance 距离计算函数,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2022-03-03
最新评论