如何计算GeoJSON的边界而不将其添加到地图中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何计算GeoJSON的边界而不将其添加到地图中相关的知识,希望对你有一定的参考价值。
我有一个GeoJSON对象,我想在没有将它添加到地图的情况下得到它的界限,类似于我可以用L.polygon().getBounds()
得到的。
有没有办法轻松做到这一点?
也许将L.geoJSON
对象直接转换为L.polygon
?
答案
通过L.geoJSON
工厂解析GeoJSON对象以便构建Leaflet GeoJSON图层组(扩展要素组)后,您可以让Leaflet使用组的getBound()
方法计算其子图层(要素)的边界,而无需添加小组到地图。
var map = L.map('map').setView([48.86, 2.35], 11);
var geojsondata = {"type": "FeatureCollection", "features": [{"type": "Feature", "geometry": {"type": "Point", "coordinates": [2.34, 48.86]}}, {"type": "Feature", "geometry": {"type": "Point", "coordinates": [2.36, 48.86]}}]};
var geojsongroup = L.geoJSON(geojsondata);
//geojsongroup.addTo(map);
alert(geojsongroup.getBounds().toBBoxString());
L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
}).addTo(map);
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.2.0/dist/leaflet.css">
<script src="https://unpkg.com/leaflet@1.2.0/dist/leaflet-src.js"></script>
<div id="map" style="height: 200px"></div>
以上是关于如何计算GeoJSON的边界而不将其添加到地图中的主要内容,如果未能解决你的问题,请参考以下文章