stl - 如何从 numpy-stl 网格中提取顶点?
问题描述
我正在尝试使用 numpy-stl 从 stl 模型中提取顶点以用于连贯点漂移配准。你如何去提取顶点?我了解如何从顶点和面列表创建网格,但不了解如何倒退。
我试过:从顶点和面创建一个新的网格。导入创建的网格。
解决方案
让我们拿一个长 100、宽 200、高 300 的长方体的 .stl 文件。
from stl import mesh
import numpy as np
cuboid = mesh.Mesh.from_file("./cuboid.stl")
points = np.around(np.unique(cuboid.vectors.reshape([cuboid.vectors.size/3, 3]), axis=0),2)
print "Points are", points.tolist()
输出:
Points are [[0.0, 0.0, 0.0], [0.0, 0.0, 300.0], [0.0, 200.0, 0.0], [0.0, 200.0, 300.0], [100.0, 0.0, 0.0], [100.0, 0.0, 300.0], [100.0, 200.0, 0.0], [100.0, 200.0, 300.0]]
推荐阅读
- thymeleaf - 将照片从资源/静态/图像移动到本地驱动器
- javascript - 烧瓶错误“请求的 URL 不允许该方法。” 使用 Ajax 后调用时
- python-3.x - Python - 无法使用 Selenuim 通过文本定位元素
- html - 来自简单 HTML 代码的图像未显示在浏览器中
- mysql - Mysql对同一列的多个AND查询
- java - Spring Boot 中 Rest Client Junit 的 InvalidUseOfMatchersException
- reactjs - 路径名作为类名类型错误:无法读取未定义的属性“替换”
- python-3.x - Dlib ImportError in Windows 10 on line _dlib_pybind11 import *, DLL Load Failed
- javascript - 我认为我的 if else if 条件不起作用。有人能帮我吗?
- c++ - 为什么我的虚函数没有赋值?