千家信息网

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

发表于:2024-11-28 作者:千家信息网编辑
千家信息网最后更新 2024年11月28日,如何通过手动修改GeoJson文件实现省级镂空Feature制作,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、先用QGIS绘制一
千家信息网最后更新 2024年11月28日如何通过手动修改GeoJson文件实现省级镂空Feature制作

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

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

  • 先绘制一个多边形,右键保存

  • 在绘制好的多边形内添加环形(注意:这期间左下角一定要选中所编辑layer,否则会报错)

  • 如果没有这个组件,右键工具栏,勾选Advanced Digitizing Toolbar

  • 导出咱们刚刚画好的这个环形Feature为GeoJson

  • 打开刚刚保存的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文件,把上一步获得的坐标数组加到内蒙边界坐标数组前边

  • 加载一下修改好的GeoJson看看效果:

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

0