本文相关内容只用于个人研究,若用于商业请自行负责。
1. 下载Google地图切片到本地:如果没有要求地图显示中文,则可以用Google Maps Downloader下载Google地图到本地;如果要显示中文地图,则要用China Google Maps Downloader
2. 在tomcat服务器建个项目gmcn,为了方便查找文件,将文件按照zoom/x存放,如图:
3. 利用OpenLayers.Layer.TMS显示地图,重点是get_my_url()找到要显示的切片
<html>
<head>
<title>Google Local Tiles</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<script src="js/OpenLayers/lib/OpenLayers.js"></script>
<script type="text/javascript">
var map, layer; //complex object of type OpenLayers.Map
//Initialise the 'map' object
function init() {
map = new OpenLayers.Map("map", {
maxExtent : new OpenLayers.Bounds(-20037508.3427892,
-20037508.3427892, 20037508.3427892, 20037508.3427892),
numZoomLevels : 18,
maxResolution : 156543.0339,
units : 'm',
projection : "EPSG:900913",
displayProjection : new OpenLayers.Projection("EPSG:4326")
});
layer = new OpenLayers.Layer.TMS("Name",
"http://10.0.0.239:8081/gmcn/", {
'type' : 'png',
'getURL' : get_my_url
});
map.addLayer(layer);
map.addControl(new OpenLayers.Control.Scale());
map.addControl(new OpenLayers.Control.MousePosition());
map.addControl(new OpenLayers.Control.LayerSwitcher());
var lonLat = new OpenLayers.LonLat(117.62519, 39.52329);
lonLat.transform(map.displayProjection, map.getProjectionObject());
map.setCenter(lonLat, 8);
}
function get_my_url(bounds) {
var res = this.map.getResolution();
var x = Math.round((bounds.left - this.maxExtent.left)
/ (res * this.tileSize.w));
var y = Math.round((this.maxExtent.top - bounds.top)
/ (res * this.tileSize.h));
var z = this.map.getZoom();
var path = "" + z + "/" + x + "/gmcn_" + x + "_" + y + "_" + z + "." + this.type;
var url = this.url;
if (url instanceof Array) {
url = this.selectUrl(path, url);
}
return url + path;
}
</script>
</head>
<!-- body.onload is called once the page is loaded (call the 'init' function) -->
<body onload="init();">
<!-- define a DIV into which the map will appear. Make it take up the whole window -->
<div style="width: 100%; height: 100%" id="map"></div>
</body>
</html>
参考:
Using Custom Tile Sources / Google-like Tile Layer Support
- 大小: 4.3 KB
分享到:
相关推荐
本案例的主题是“openlayers加载本地离线底图瓦片google数据直接运行即可”,这意味着我们可以通过OpenLayers加载已经下载好的Google Maps离线瓦片数据。离线地图瓦片是一种将大型地图分割成许多小块图片(通常为256...
离线地图展示技术是现代GIS(地理信息系统)领域中的一个重要组成部分,它允许用户在没有互联网连接的情况下查看和操作地图数据。这种技术对于那些在偏远地区、网络信号不稳定或需要节省数据流量的用户来说尤其有用...
通过学习和理解这个离线地图实现示例,开发者可以掌握如何在自己的项目中应用OpenLayers进行离线地图的开发,这对于创建不依赖网络的GIS应用非常有价值。同时,这也涉及到前端开发的基本知识,包括HTML、CSS和...
GoogleOutLine可能是一个与Google Maps相关的离线地图解决方案,可能包含了将Google Maps的数据转换为可离线使用的格式的方法或工具。 在电子书中,你可以期待找到离线地图的工作原理、数据结构、数据压缩技术以及...
离线瓦片图下载器是一种工具,主要用于获取地图服务提供商如谷歌、百度、高德和腾讯等的地图数据,以便在没有网络连接的情况下也能查看地图。这种工具对于户外探险、旅行规划或者在没有稳定网络环境的应用场景中非常...
离线地图下载与使用是GIS(地理信息系统)领域中的一个重要技术,它允许用户在没有网络连接的情况下查看和操作地图。这种技术尤其适用于户外活动、航海、航空、远程地区或者网络不稳定的地方。本压缩包"离线地图下载...
总的来说,离线BD瓦片地图加载涉及地图切片、Web开发技术、地理空间数据处理等多个方面,通过合理的设计和实现,可以提供无缝、高效的离线地图浏览体验。这个示例提供了一个基础的框架,开发者可以根据自己的需求...
总的来说,Google Map的离线应用实例是一个综合性的开发项目,涵盖了地图数据处理、前端开发、用户交互等多个方面,对于提升开发者在GIS领域的技能非常有帮助。通过学习和实践,我们可以打造出功能强大的离线地图...
在"Web Gis_webgis_GIS地图开发Js_gis_webgis地图来源_web地图可视化_"这个主题中,我们将探讨如何使用JavaScript来开发Web GIS应用,实现地图的显示、地点查找和地图可视化。 首先,JavaScript(简称Js)是Web开发...
从标签“瓦片地图”来看,这份资料显然与地理信息系统(GIS)、地图开发和相关应用程序开发等领域的专业人员密切相关。瓦片地图广泛应用于网络地图服务,例如谷歌地图、百度地图、高德地图等,它们通过在不同的缩放...
在IT行业中,地图服务是不可或缺的一部分,特别是在地理信息系统(GIS)和Web开发中。Google Maps API是一个广泛使用的工具,它允许...对于有兴趣进行地图开发或GIS应用的人员来说,这是一份非常有价值的参考资料。
在IT行业中,地图控制组件(Map Control)是用于在应用程序中显示地图的一种工具,常见于地理信息系统(GIS)和导航应用。"mapcontrol加载地图"这个主题涉及到的是如何使用特定的地图控制来显示地图数据,以及与之...
在离线地图开发中,瓦片地图是一种常见的数据组织方式。地图被分割成多个小块,每个小块称为一个瓦片,通常以256x256像素的图像格式存在,根据不同的缩放级别有不同的数量。这种分块方式便于快速加载和显示大范围的...
供ArcGIS、SuperMap、Openlayers等客户端直接远程访问,支持Openlayers/ArcGIS API For Javascript/Flex等多款GIS客户端离线浏览,同时支持发布TPK,发布ArcGIS缓存为WMTS地图,助您轻松构建自己的局域网离线地图...
下载的瓦片数据可以用于各种用途,如GIS分析、地图制作、地理信息系统开发等。通过集成到自定义的地图应用程序中,用户可以创建自己的地图服务,展示特定区域的详细信息。 8. **安全性与合法使用**: 在使用OL...
开源项目如OSM Buildings或Cesium提供了丰富的三维地图开发工具。 12. **地图可视化**:使用D3.js或Three.js等库,可以创建交互式、动态的可视化效果,增强地图的表达力。 13. **地图API**:Google Maps API、...
7. **地图服务**:这些文件可能与地图服务提供商(如Google Maps、高德地图、百度地图等)提供的API相结合,以创建自定义地图视图或提供离线地图支持。 总的来说,"山东地图.zip" 提供了一个了解GIS应用开发、地图...
总的来说,MapDownloader是一款针对地图下载和离线使用的高效工具,特别适合地图爱好者、GIS专业人员以及需要构建离线地图应用的开发者。通过C#的编程支持和对OpenLayers的兼容,它提供了一条简单而强大的途径来管理...
OpenLayers是一个流行的JavaScript库,用于在Web上创建交互式地图应用,而这款下载器则是基于该库构建的,为GIS(地理信息系统)爱好者和专业人士提供了便利。 GIS,全称Geographic Information System,是一种能够...
青岛谷歌地图瓦片的本地部署,可以让青岛地区的用户更快地获取和浏览地图信息,尤其适用于离线环境或者需要高性能地图应用的场合。 4. 文件名称列表解析: 在提供的文件名称列表中,我们可以推测这些文件可能代表...