flutter - 使用 flutter_map 包创建没有地理位置的平铺地图
问题描述
我想平铺一张大图像并在带有 flutter_map 包的 Flutter 应用程序中查看它。即,使用 flutter_map 包作为可缩放的平铺图像的大型位图查看器。
在网络上,我可以使用 Leaflet 实现这一点,并相信这是一个很常见的用例?
在 Leaflet 中,我可以按如下方式平铺图像并创建地图。假设图像大小为 7680x4320,缩放级别为 0 (512x512) 到级别 4(全图像分辨率)。
var mapExtent = [0.00000000, -4320.00000000, 7680.00000000, 0.00000000];
var mapMinZoom = 0;
var mapMaxZoom = 4;
var mapMaxResolution = 1.00000000;
var mapMinResolution = Math.pow(2, mapMaxZoom) * mapMaxResolution;
var tileExtent = [0.00000000, -4320.00000000, 7680.00000000, 0.00000000];
var crs = L.CRS.Simple;
crs.transformation = new L.Transformation(1, -tileExtent[0], -1, tileExtent[3]);
crs.scale = function(zoom) {
return Math.pow(2, zoom) / mapMinResolution;
};
crs.zoom = function(scale) {
return Math.log(scale * mapMinResolution) / Math.LN2;
};
var layer;
var map = new L.Map('map', {
maxZoom: mapMaxZoom,
minZoom: mapMinZoom,
crs: crs
});
layer = L.tileLayer('{z}/{x}/{y}.png', {
minZoom: mapMinZoom, maxZoom: mapMaxZoom,
tileSize: L.point(512, 512),
noWrap: true,
tms: false
}).addTo(map);
map.fitBounds([
crs.unproject(L.point(mapExtent[2], mapExtent[3])),
crs.unproject(L.point(mapExtent[0], mapExtent[1]))
]);
有没有办法或例子使用flutter_map和CrsSimple在Dart中实现同样的事情?
谢谢,
解决方案
推荐阅读
- python-3.x - 使用 buildozer 构建 apk 文件时出现错误“没有名为 'virtualenv.__main__' 的模块;'virtualenv' 不是包”
- javascript - 仅在单击的函数内部而不是在 Type Script 代码的 UI 中更新可淘汰可观察值
- git - 是否可以避免使用 ansible git 模块更改 remote_url?
- python - 在 Python 中获取 Bing 搜索结果
- amazon-web-services - Route 53 托管的 zome 记录指向旧的负载均衡器
- swift - TextField 接受有限的字符 SwiftUi
- laravel - 在laravel中将文件下载为未知文件
- java - Jhipster 和角度过滤器
- datepicker - 如何在使用 Apex Office Print 打印时更改日期选择器的格式掩码?
- yii - Yii 1.1 关系搜索问题