如何通过手动修改GeoJson文件实现省级镂空Feature制作

蜗牛 互联网技术资讯 2021-12-13 290 0

如何通过手动修改GeoJson文件实现省级镂空Feature制作,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

一、先用QGIS绘制一个环形Feature并保存为GeoJson,看看环形Feature的数据结构是什么样

  • 先绘制一个多边形,右键保存 如何通过手动修改GeoJson文件实现省级镂空Feature制作  geojson 第1张 如何通过手动修改GeoJson文件实现省级镂空Feature制作  geojson 第2张

  • 在绘制好的多边形内添加环形(注意:这期间左下角一定要选中所编辑layer,否则会报错) 如何通过手动修改GeoJson文件实现省级镂空Feature制作  geojson 第3张

  • 如果没有这个组件,右键工具栏,勾选Advanced Digitizing Toolbar 如何通过手动修改GeoJson文件实现省级镂空Feature制作  geojson 第4张

  • 导出咱们刚刚画好的这个环形Feature为GeoJson 如何通过手动修改GeoJson文件实现省级镂空Feature制作  geojson 第5张 如何通过手动修改GeoJson文件实现省级镂空Feature制作  geojson 第6张

  • 打开刚刚保存的GeoJson文件,看看它的数据结构,发现环形Feature的里外两个环的坐标数组都放在coordinates内,且外环在前,内环在后:

{
    "type": "FeatureCollection", 
    "name": "test", 
    "crs": {
        "type": "name", 
        "properties": {
            "name": "urn:ogc:def:crs:OGC:1.3:CRS84"
        }
    }, 
    "features": [
        {
            "type": "Feature", 
            "properties": {
                "id": 1
            }, 
            "geometry": {
                "type": "MultiPolygon", 
                "coordinates": [
                    [
                        [
                            [
                                98.62682583778792, 
                                54.32228639928258
                            ], 
                            [
                                109.40281163615893, 
                                55.957263554897494
                            ], 
                            [
                                116.64873312127047, 
                                55.02829926193448
                            ], 
                            [
                                117.35474598392236, 
                                52.94741924569732
                            ], 
                            [
                                114.64217024847035, 
                                51.832662094141696
                            ], 
                            [
                                112.7842416625443, 
                                50.68074637086755
                            ], 
                            [
                                103.71755016322525, 
                                50.792222086023116
                            ], 
                            [
                                98.62682583778792, 
                                54.32228639928258
                            ]
                        ], 
                        [
                            [
                                103.9976189834291, 
                                53.8974727328586
                            ], 
                            [
                                105.91267520881026, 
                                51.91148849913
                            ], 
                            [
                                107.99323012033545, 
                                54.18118476624841
                            ], 
                            [
                                103.9976189834291, 
                                53.8974727328586
                            ]
                        ]
                    ]
                ]
            }
        }
    ]
}

二、着手制作镂空的内蒙区域GeoJson

了解环形Feature的GeoJson结构之后,接下来我们可以把现有的内蒙古区域GeoJson改造一下,让它变成镂空的。

  • 用QGIS画个方框,一定要把内蒙整个包进去,然后获得这个方框的坐标数组,具体过程不作赘述

    • 我这获得的坐标数组:

[ [ 70.35465968686151, 73.302099634723305 ], [ 158.04277887424999, 73.181814148869549 ], [ 157.922493388396219, 11.234788934184962 ], [ 70.114088715153997, 12.317358306868769 ], [ 70.35465968686151, 73.302099634723305 ] ]

如何通过手动修改GeoJson文件实现省级镂空Feature制作  geojson 第7张

  • 修改内蒙的GeoJson文件,把上一步获得的坐标数组加到内蒙边界坐标数组前边

  • 加载一下修改好的GeoJson看看效果: 如何通过手动修改GeoJson文件实现省级镂空Feature制作  geojson 第8张

关于如何通过手动修改GeoJson文件实现省级镂空Feature制作问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注蜗牛博客行业资讯频道了解更多相关知识。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论Telegram