传单.js - 在地图视图上拟合地理 JSON 坐标
Leaflet.js - Fit geoJSON co-ordinates on map view
我有一个传单.js地图,上面有来自外部JSON文件的点和线串。
如果我添加:
map.setView(new L.LatLng(0,0), 10);
它将使地图在纬度和经度 0,0 上居中。如何设置它,使地图中心和缩放适合其上 JSON 中的所有点?
您可以将所有图层添加到具有getBounds
方法的特征组中。所以你应该可以说myMap.fitBounds(myFeatureGroup.getBounds());
L.FeatureGroup 的 getBounds 方法仅在主分支(不是最新版本 0.3.1)中可用,至少目前如此。
与我的情况类似。我从GeoJson数据中绘制了所有标记。所以我编写了函数,它在单击按钮时被反复调用。试试它是否符合您的要求。
function bestFitZoom()
{
// declaring the group variable
var group = new L.featureGroup;
// map._layers gives all the layers of the map including main container
// so looping in all those layers filtering those having feature
$.each(map._layers, function(ml){
// here we can be more specific to feature for point, line etc.
if(map._layers[].feature)
{
group.addLayer(this)
}
})
map.fitBounds(group.getBounds());
}
编写此函数的最佳用途是,即使地图/标记的状态发生变化,它也会获得标记/图层的最新/当前状态。每当调用此方法时,所有图层都将以适度的缩放级别可见。
在向用户显示从起点到目的地的方向时,我需要这样做。 我将方向列表存储在一个名为directionLatLngs
的L.LatLng
数组中,然后您可以简单地调用
map.fitBounds(directionLatLngs);
这是有效的map.fitBounds
因为它需要一个L.LatLngBounds
对象,该对象只是一个L.LatLng
数组
http://leafletjs.com/reference.html#latlngbounds
相关文章:
- jQuery匹配JSON对象的部分文本
- 在循环中分配json值时,值被覆盖
- 需要帮助设置json数组
- 如何在Javascript中将JSon对象转换为数组
- 对象拟合:获取结果尺寸
- 像PHP一样使用json数组“水合”Javascript对象实例
- 将累积百分比线拟合到排序的直方图输出,使用 d3 获得帕累托图直方图
- 传单.js - 在地图视图上拟合地理 JSON 坐标
- JS指数曲线拟合
- 使用Ember中的Textbox对模型进行实时排序或拟合
- 如何在extjs4的视口区域中拟合图像
- sparklines条形图拟合
- 根据最小和高度值拟合框中的图像
- 显示随机图像与拟合链接
- 拟合多个相关数据集到angalrjs的ngRepeat
- 绘图应用程序-曲线拟合
- 剑道折线图 - 基本单位拟合 - 显示错误值的工具提示
- 在谷歌地图渲染方向中拟合边界
- 如何在c3中拟合Y轴
- JavaScript中的三次回归(最佳拟合线)