【发布时间】:2014-01-30 09:48:44
【问题描述】:
对于我的 d3 项目,我有一系列相邻的多边形,我想计算一个新的多边形,它是所有较小多边形放在一起的外边界。
我已将几个连接多边形的所有点合并到一个数组中以创建一个大多边形。但这包括所有内部边缘以及外部边缘。我想删除这个合并多边形的内边缘,这样我就只有一个形状代表该区域的外边界,但我找不到合适的算法来做到这一点。
我找到了this,但它要求多边形的顶点已经明确知道;我只有一组点,没有外在和内在的区别。
删除生成的多边形的内部点后,我想在外部点周围绘制一条带有“基数”插值的线。这就是为什么我必须保持点的完整性而不是将多边形转换为弧并使用类似topojson.mesh!
这里有一个屏幕截图可以更清楚地解释:
绿色多边形的所有顶点(红线的角)都连接成一个点数组。我想弄清楚如何删除内部点,以便我可以在剩余的外部点周围应用“基数”插值线。
【问题讨论】:
-
“点”是指黑点还是线段端点?
-
@Clive 和其他人我不知道为什么搁置问题的人会抱怨它,如果我,写答案的人,并且大概更了解相关技术领域,我没有抱怨吗?
-
@Qantas 94 重磅,能否请您重新提出这个问题,关闭的原因不准确?太多的好问题被关闭了。我分几段回答了这个问题。让我们说三个答案,这个问题不太可能得到更多。
-
@davidkonrad,能否请您重新提出这个问题,关闭的原因看起来不准确。太多的好问题被关闭了。我分几段回答了这个问题。这个问题不太可能得到比三个答案更多的答案。 quy 需要指导他应该查看 API 的哪一部分(这是 D3 库 API)。
-
@xan,是的,好问题,我明白你的观点,线段端点在这里看起来是一种更合适的选择。
标签: javascript d3.js convex-hull