Voronoi图是一种对介质进行镶嵌的方法。
在此图中,平面上有许多点,这些点通过其平分线将介质划分为许多特定区域。任何区域都是凸的,并且都有一个外接矩形。
具有最小面积的凸形的外接矩形(我们有一个算法来想象特定边方向上的任何与边垂直的边,并找到具有最小面积的矩形)。
我想以一种创建随机凸多边形的方式放置这些点(随机均值具有不同数量的边)。
但是我想控制他们外接矩形的宽度和长度的大小。
所以我想知道有没有什么算法可以用来定位具有上述属性的点?
发布于 2020-06-29 15:35:47
尽管我不能完全理解您的问题,但请注意,Voronoi多边形具有强大的组合结构,因此您应该小心您对Voronoi多边形边的数量期望什么样的“随机性”。
更多细节:由于Voronoi图是一个包含V Voronoi节点、E Voronoi边和F Voronoi多边形的平面图,因此您可以
V - E + F = 2由于欧拉公式。(不过,有一些技术细节,在无限长的Voronoi边和无限的Voronoi多边形相交的地方有一个顶点。)接下来,除非四个或更多的输入点恰好位于一个圆上,否则我们通常会有三个Voronoi边在Voronoi结点相交,因此
3V = 2E这给了我们
E = 3F - 6.(同样,这里有无限Voronoi边/多边形的技术细节。如果您有三个以上的无限Voroni边/多边形,例如E',那么您应该将其更正为E = 3F - 3 - E'。)
不涉及太多细节,一个“典型的”Voronoi多边形实际上有6条边。(其对偶图是Delaunay三角剖分,因此对偶断言是Delaunay三角剖分中的顶点通常具有6条三角剖分边。)
如果你想在边的数量上更“灵活”,那么三条以上的Voronoi边需要在Voronoi节点上相交,因此需要三个以上的输入点是圆心的。请注意,这些圆以Voronoi节点为中心,在这种意义上,您甚至可以通过欧拉公式计算出您需要的此类圆的数量,给定Voronoi多边形的数量F和Voronoi边的数量E:
V = 2 + E - F.我希望这有助于对Voronoi图的行为有一个感觉。
https://stackoverflow.com/questions/62513170
复制相似问题