我想在使用 Google Maps api 的网络项目中显示多个 *tiff 文件。我搜索了很多,但找不到任何相关信息。该功能已存在于另一个使用 Bing 地图和开放图层库的副项目中。
我目前正在努力将微软必应更改为谷歌地图地图,性能更佳,速度更快。但是我可以在谷歌地图文档中找到的一件事是如何在地图视图下显示 tiff 图像......
知道怎么做吗?
我在地理服务器应用程序中托管的图像已准备好服务器端...
我试过的:
var ortofoto = 'name_ortofoto';
var url = 'path_geoserver';
var espacoTrabalho = 'espaco_name';
var layer = new google.maps.ImageMapType({
getTileUrl: function (coord, zoom) {
var proj = map.getProjection();
var zfactor = Math.pow(2, zoom);
var top = proj.fromPointToLatLng(new google.maps.Point(coord.x * 256 / zfactor, coord.y * 256 / zfactor));
var bot = proj.fromPointToLatLng(new google.maps.Point((coord.x + 1) * 256 / zfactor, (coord.y + 1) * 256 / zfactor));
var bbox = top.lng() + "," + bot.lat() + "," + bot.lng() + "," + top.lat();
return url + '?service=WMS&version=1.1.0&request=GetMap&layers=' + espacoTrabalho + ':' + ortofoto + '&styles=&bbox=' + bbox + '&width=256&height=256&srs=EPSG:32722&format=image/tiff';
},
tileSize: new google.maps.Size(256, 256),
opacity: 0.7,
name: ortofoto,
isPng: false,
alt: "GeoTIFF Layer"
});
// Add the GeoTIFF layer to the map
map.overlayMapTypes.push(layer);
我的期望:
以 tiff 格式加载来自地理服务器的图像