Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python生成3D网格的2D镶嵌贴图';s三角形_Python_Algorithm_Map_2d_Delaunay - Fatal编程技术网

Python生成3D网格的2D镶嵌贴图';s三角形

Python生成3D网格的2D镶嵌贴图';s三角形,python,algorithm,map,2d,delaunay,Python,Algorithm,Map,2d,Delaunay,我有一个3D点云(“colors.csv”)和一个生成其凸面外壳的代码: #loading cloud of points points = np.array([(XYZRGB(rank, name, X, Y, Z)) for rank, name, X, Y, Z in csv.reader(open('colors.csv'))]) #doing geometry hull = points[tri.convex_hull] print hull

我有一个3D点云(“colors.csv”)和一个生成其凸面外壳的代码:

#loading cloud of points

points = np.array([(XYZRGB(rank, name, X, Y, Z))
                  for rank, name, X, Y, Z in csv.reader(open('colors.csv'))])
#doing geometry

hull = points[tri.convex_hull]

print hull
使用
print hull
我得到一系列由3个点定义的三角形:

 [[['5' 'PINKwB' '74.62792193' ..., '239' '212' '240']
  ['15' 'TUwC' '74.43151414' ..., '208' '242' '247']
  ['25' 'OR0B' '80.01931102' ..., '255' '215' '190']]

 ..., 
 [['29' 'gY6B' '9.473696537' ..., '32' '134' '39']
  ['16' 'K2M' '13.46800615' ..., '150' '30' '46']
  ['31' 'gY6D' '35.53944758' ..., '176' '187' '0']]]
每个点都是一种颜色,由等级、名称、三维空间中的XYZ坐标和RGB颜色定义

我想创建一个2D贴图(图表),表示三角形顶点之间的关系。 例如,我将从列表的第一个三角形开始,绘制其3个点,绘制其边,然后再添加一个点以绘制第二个三角形,等等。 直到我画出最后一点

我不在乎点之间的实际距离,我只想要一张表示点与点之间真正联系的地图。 有什么标准的方法可以做到这一点吗


谢谢

这只是一个想法,但由于您有外壳,您可以选择外壳的任何三角形,并将其顶点指定为包含所有剩余顶点的大型2D三角形的外部顶点。然后在每个外部顶点同时使用BFS来填充中间。抱歉,我是说。而且,你不必在三角形处停下来。您可以使用两个(或更多)三角形作为二维图形的“外部”,只要您记得在它们之间包含边。所以对于两个有两个公共顶点的三角形,你可以画一个有一个对角线的正方形。顺便说一下,如果你需要一些搜索词,你要做的是一个平面图嵌入。