一个传单图像的边界视图映射到一个景观视窗
Bounding view of a Leaflet image map to a landscape viewport
我有一个方形图像16384x16384,已经使用MapTiler切割成瓷砖,在传单中创建6个缩放级别。
我已经设置了传单中的图像如下:
var map = L.map('map', {
maxZoom: 6,
minZoom: 0,
}).setView([0, 0],1);
var tilesURL = "_server/tiles/{z}/{x}/{y}.jpg";
L.tileLayer(tilesURL, {
maxZoom: 6,
continuousWorld: 'false',
tms: true
}).addTo(map);
我怎么能:
- 将此大方形图像的视图限制在中间(横向矩形)区域?
- 生产一套非正方形矩形瓷砖?
另外,传单可以自动适应有界区域到地图容器吗?
- 是的。使用maxBounds选项 不知道,但你为什么要做这样的事?
- 是:方法fitBounds做这个
无法编辑@L。Sanna代码,因为队列是满的,但我想贡献一个关于如何使用maxBounds的第一个问题的例子。
我使用的是Angular的传单1.7.1
注意:
- maxBounds()接受latlnbounds数据类型作为参数。在我的情况下,我使用一个元组保存两个坐标。
- maxboundViscosity()接受0.0-1.0之间的值,该值将控制将地图拖出边界时边界的坚固程度。值1将阻止任何超出边界的区域显示。
- 提示:调整你的minZoom,使视图不显示任何超出边界的区域。
this.map = L.map('map', {
maxBounds: [[-90, -260],[90, 260]],
maxBoundsViscosity: 1,
center: [39.8282, -98.5795],
zoom: 5,
zoomSnap: 0.15 // enables fractional zooms
});
编码快乐!
相关文章:
- 将一个对象集合映射到汇总集合的单个对象
- 如何将所有url映射到一个.html页面
- 将一个外部二维数组映射到另一个二维数组(javascript)
- 如何将一个javascript数组映射到另一个具有不同字段名称的数组
- 简化在 CasperJS 中映射多个子元素以仅使用一个函数
- 在结果中映射一个 json 以 jquery 自动完成
- 将打字稿缩小为一个JS文件,使用gulp保持源映射工作
- 如何使用标记映射中的链接将数据的标记传递到另一个页面
- Javascript / jQuery - 将一个数字范围映射到另一个数字范围
- 使用不可变 JS 更新映射列表中的一个键
- 让ckeditor在源代码中保留一个图像映射
- 在Dynamo DB中用JavaScript向映射添加一个新的键值
- 一个页面中的多个映射可调整大小
- Ember数据“;无映射”;错误,尽管有一个正确命名的模型
- 通过更新的lat&谷歌的lng将可拖动标记映射到另一个页面
- AngularJS将一个对象映射到另一个对象
- localStorage中键与另一个键值的映射
- 在Javascript上迭代一个映射
- 创建一个映射回调,按数组和缩放每个数组值
- 在javascript中比较两个映射并向一个映射添加键