如何从3D坐标边集检索顶点集

时间:2019-04-27 05:51:03

标签: python 3d coordinates

我有以下3D边缘列表 (((x1,y1,z1),(x2,y2,z2)) ..... (((x_k,y_k,z_k),(x_t,y_t,z_t))

我需要从中获取顶点列表。

我目前的想法: 创建初始空集V

检查所有边缘,检查2个点的坐标,如果不在集合V中,则将其添加到V。

我觉得一一检查集合中是否存在3D坐标并不快。

我需要一种更清洁,更快捷的方法?有什么建议吗?

1 个答案:

答案 0 :(得分:1)

由于所有边都由顶点组成,因此您只需要提取所有顶点并删除重复的顶点即可,例如

>>> x = [((1,2), (1,5)), ((2,3), (4,5)), ((1, 2), (6,7))]
>>> set(sum(x, tuple()))
{(1, 2), (1, 5), (4, 5), (2, 3), (6, 7)}

>>> list(set(sum(x, tuple())))