algorithm - 根据网格划分的距离图放置点

标签 algorithm mesh triangulation packing

对于一些拓扑图,有一个特征(比如河流)。有一个按行和列排列的相应文件,其中每个单元格与 map 中的相应像素进行 1-1 映射,并包含一个对应于距要素距离的值。

出于三角测量的目的,将 x、y 点放置在该 map 上的最佳方式是什么,以这样一种方式排列,即在距离低于某个阈值的地方点紧密堆积,并且线性堆积越来越远距离达到某个阈值距离?

圆形包装在这一点上似乎是最好的选择,但我找不到关于如何为这个用例实现它的令人信服的文档。

一个不错的例子是这样的,圆圈大致根据强度排列(然后可以将点放在圆圈的中心):

Circle packing example

最佳答案

一种简单的方法是随机放置站点,然后选择灰度值并将其提供给加权三角测量,距离函数是欧氏距离减去权重。从结果中选择每个三角形的重心,使其成为新站点并重新开始 x 次。 来源:https://en.m.wikipedia.org/wiki/Stippling

关于algorithm - 根据网格划分的距离图放置点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43548549/

相关文章:

algorithm - 算术运算符的单位成本是多少(计算模型运行时间)

algorithm - 依赖性解析算法

algorithm - 参数相关的 PRNG

arduino - 如何计算子弹撞击墙壁的位置(真实的墙壁和子弹)

java - 三角带三角剖分

opencv - 旋转矩阵 R1 w.r.t 到另一个矩阵,比如 R2

javascript - 不同大小的 block 最好分配给固定大小的桶

camera - Three.js - 如何计算两个 3D 位置之间的距离?

dynamic - 渲染后将几何体添加到 Three.js 网格中

c# - 如何计算 3D 折线拉伸(stretch)的顶点?