GeoJSON外接框
获取任意GeoJSON的外接框、中心、面积与长度——两种坐标顺序皆有,按球面测量。
GeoJSON外接框完全在你的浏览器中运行。粘贴的GeoJSON在设备上解析,绝不上传。
打开GeoJSON查看器
关于 GeoJSON外接框
GeoJSON外接框读取任意GeoJSON——Feature、FeatureCollection、裸几何体、GeometryCollection乃至原始坐标数组——并给出包住它的四个数字。这些数字刻意输出两遍。RFC 7946规定GeoJSON的bbox顺序为西、南、东、北——经度在前——而Leaflet和许多地图API要的是南、西、北、东——纬度在前。把它们弄混是盯着错误半球看的最常见途径之一。面积与长度在球面上计算,而不是在平面经纬网格上,因为把度当作均匀网格会在远离赤道处严重高估面积。
功能特性
- 读取Feature、FeatureCollection、几何体与坐标数组
- 以GeoJSON顺序和纬经度顺序双份输出bbox
- 外接框还可输出为可直接粘贴的GeoJSON Feature
- 外接框中心的经纬度
- 外接框宽高按真实地面距离给出
- 球面多边形面积并扣除孔洞
如何使用 GeoJSON外接框
- 粘贴GeoJSON,或加载示例查看输出格式
- 读取西、南、东、北四个边界
- 按你的库所需顺序复制bbox
- 要在地图上画框就用多边形输出
示例
输入
{"type":"Polygon","coordinates":[[[-0.1757,51.5073],[-0.1502,51.5073],[-0.1502,51.5122],[-0.1757,51.5122],[-0.1757,51.5073]]]}
输出
[-0.1757, 51.5073, -0.1502, 51.5122]
GeoJSON顺序经度在前——与几乎所有地图库相反。
常见错误与故障排除
- 地图把框画到了错误的位置。 — 几乎可以断定是坐标顺序用反了。Leaflet的fitBounds要纬度在前;GeoJSON的bbox属性要经度在前。这也是这里把两种顺序分开列出的原因。
- 面积比平面算法小得多。 — 球面数值才是对的。一度经线在赤道是111公里,在伦敦只有78公里——把度当均匀网格会在高纬度虚增面积。
- JSON解析成功却找不到坐标。 — 结构里任何地方都没有coordinates数组。检查feature是否有geometry对象而不只有properties——导出丢失几何列时就会这样。
常见问题
- GeoJSON的bbox用什么坐标顺序?
- 西、南、东、北——即最小经度、最小纬度、最大经度、最大纬度。GeoJSON全程把经度放在纬度前面,与口头习惯相反。
- 为什么我的地图库要另一种顺序?
- Leaflet、Google Maps等按说和写坐标的习惯把纬度放前面。GeoJSON则遵循几何学的先x后y。这里两种顺序都输出,取用即可。
- 多边形面积怎么算的?
- 在平均地球半径的球面上用球面盈余公式,计入经线向两极收敛的效应。内环会被扣除,带孔多边形报告的是净面积。
- 我的GeoJSON会被上传测量吗?
- 不会。文档在浏览器内解析和测量,可能敏感的位置数据从不经过网络。
相关工具
- GeoJSON 查看器 — 校验 GeoJSON、在地图上预览,并查看要素与边界框摘要。
- GeoJSON 转 CSV — 将 GeoJSON 转为 CSV,或将 CSV 转回 GeoJSON——Point 要素变成纬度和经度列,全部在你的浏览器本地完成。
- 坐标距离 — 测量两个经纬度点之间的大圆距离、方位角与中点。
- WKT 转 GeoJSON — 在你的浏览器中双向转换 WKT(Well-Known Text)与 GeoJSON——粘贴 POINT、LINESTRING 或 POLYGON,你的几何数据始终在本地。
- KML 转 GeoJSON — 将 Google Earth 的 KML 转为 GeoJSON,或反向转换——完全在你的浏览器中,你的地图数据不会离开你的设备。
- 坐标转换器 — 在十进制度、DMS 与度分(DDM)之间双向转换经纬度。
全部 ArrayKit 工具