5
如何在QGIS中将道路网络捕捉到六边形网格?
我正在尝试使用QGIS 2.14将道路网络捕捉到六边形网格中,但出现了奇怪的伪像。 我用MMQGIS创建了一个十六进制网格,单元大约为20 x 23 m。我已经将公路网缓冲了1m并进行了密实处理,因此每隔几米就有一个节点。您可以在下面查看我要实现的目标。如您所见,在某些情况下,我可以使其工作:- 蓝色是致密路(缓冲线) 红色是“十六进制”版本-这是我要查找的 灰色是十六进制网格 然后,我使用了新的“ 捕捉几何”功能将节点捕捉到最近的六角形角。结果令人鼓舞,但似乎在某些极端情况下,线扩展以填充六边形(或其一部分): 使用缓冲区的原因是,“ 捕捉几何”不允许您捕捉到几何不同的图层。例如,您不能将LINE层上的节点捕捉到POINT层上的点)。将POLYGON抢购到POLYGON似乎是最快乐的。 我怀疑当缓冲的道路线的一侧跳到十六进制单元的一侧,而另一侧跳到十六进制单元的另一侧时,道路会扩展。在我的示例中,以锐角横穿东西的道路似乎是最糟糕的。 我尝试过的事情没有成功: 仅对道路网进行少量缓冲,因此它仍然是多边形,但非常薄。 使十六进制单元致密(因此沿边缘有节点,而不仅仅是在角落) 改变最大捕捉距离(这具有最大的作用,但是我似乎找不到理想的值) 使用线层,而不是多边形 我发现如果更改为仅使用LINE图层,它会工作一段时间,然后崩溃。它似乎可以保存它的工作-有些行已被部分处理。 有谁知道其他方法可以将一条线上的点捕捉到另一条线/多边形图层上的最近点,理想情况下无需使用postgres / postgis(尽管也欢迎使用postgis解决方案)? 编辑 对于任何想去的人,我都在Dropbox上放置了一个入门QGIS项目。这包括“十六进制网格”和“密实线”层。(道路网来自OSM,因此可以使用QuickOSM下载,例如,如果您需要获取原始文件以使道路致密化)。 请注意,它位于OSGB(epsg:27700)中,这是英国的本地化UTM,以米为单位。