`
longgangbai
  • 浏览: 7330325 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

GIS的学习(三十六)osmdroid 和google地图整合之图源重写

 
阅读更多

             在osmdroid中调用google地图采用可以采用两种方式实现:

方案一:采用mapsforget提供的google接口封装实现。

方案二:采用osmdroid的图源扩展实现。

 

 

本文采用方案二:

       在研究Osmdroid和Google整合的过程中,发现使用mapforget有一些问题,于是采用扩展图层源的方式扩展osmdroid的图源支持
  google地图的
  具体的实现参考GoogleMapsTileSource类:
  
  
    在研究适合发现地图显示部分为中文,部分显示英文,尚未找到真正的原因。

 

package com.etrip.osmdroid;

import org.osmdroid.ResourceProxy.string;
import org.osmdroid.tileprovider.MapTile;
import org.osmdroid.tileprovider.tilesource.IStyledTileSource;
import org.osmdroid.tileprovider.tilesource.OnlineTileSourceBase;
/**
 * 
 * 扩展osmdroid的图层源支持google格式的数据源头信息
 * 
 * 
 * @author longgangbai
 * 
 */
public class GoogleMapsTileSource extends OnlineTileSourceBase implements IStyledTileSource<Integer> {

		 public GoogleMapsTileSource(String aName, string aResourceId,
			int aZoomMinLevel, int aZoomMaxLevel, int aTileSizePixels,
			String aImageFilenameEnding, String[] aBaseUrl) {
			super(aName, aResourceId, aZoomMinLevel, aZoomMaxLevel, aTileSizePixels,
					aImageFilenameEnding, aBaseUrl);
		 }

		@Override 
		public String getTileURLString(MapTile aTile) { 
			return getBaseUrl() + "&x=" + aTile.getX() + "&y=" + aTile.getY() + "&z=" + aTile.getZoomLevel(); 
		}

		@Override
		public Integer getStyle() {
			return null;
		}

		@Override
		public void setStyle(Integer arg0) {
			
		}

		@Override
		public void setStyle(String arg0) {
			
		} 
} 

 

具体实现如下:

package com.etrip.osmdroid;

import org.osmdroid.util.GeoPoint;
import org.osmdroid.views.MapController;
import org.osmdroid.views.MapView;

import android.app.Activity;
import android.os.Bundle;

/**
 * 
 *       在研究Osmdroid和Google整合的过程中,发现使用mapforget有一些问题,于是采用扩展图层源的方式扩展osmdroid的图源支持
 * google地图的
 * 具体的实现参考GoogleMapsTileSource类:
 * 
 * 
 *   在研究适合发现地图显示部分为中文,部分显示英文,尚未找到真正的原因。
 * 
 * 
 * 
 * 
 * @author longgangbai
 */
public class MainActivity extends Activity {

	private MapController mapController;
	private MapView mapView;
	/** Called when the activity is first created. */
	@Override
	public void onCreate(final Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		mapView = (MapView) findViewById(R.id.map);
		mapView.setTileSource(new GoogleMapsTileSource("Google Maps", null, 1, 20, 256, ".png", new String[]{"http://mt3.google.com/vt/v=w2.97"})); 
		mapView.setBuiltInZoomControls(true);
		mapController = mapView.getController();
		mapController.setZoom(15);
		GeoPoint geopoint=new GeoPoint(39.92605, 116.42616); 
		mapController.setCenter(geopoint);	}
}

 

分享到:
评论

相关推荐

    2022最新谷歌地图图源下载

    本资源"2022最新谷歌地图图源下载"提供了最新的谷歌地图图源数据,这对于GIS专业人员或者地图爱好者来说是一份宝贵的资料。 谷歌地图作为全球领先的在线地图服务,以其高清晰度、实时更新和多维度展示闻名。这份...

    2023年奥维互动地图高清图源

    奥维互动地图高清图源的更新,对于GIS(地理信息系统)爱好者、户外运动爱好者、旅游规划者以及需要进行地理分析的专业人士而言,具有重要意义。用户可以通过这些图源查看最新的地理信息,进行路径规划、地标识别、...

    lsv常用地图图源汇总150+

    在IT行业中,地图图源是地理信息系统(GIS)和地理定位应用的重要组成部分。"lsv常用地图图源汇总150+"是一个集合了多种地图数据源的资源包,旨在为用户提供丰富的地图选择,覆盖了从现代到历史,从海洋到天空的各种...

    奥维互动地图自定义地图图源

    奥维互动地图自定义地图,通过pc版导入后分享到手机更方便

    100+地图图源(含谷歌卫星影像)导入图新地球

    在IT行业中,地图数据是地理信息系统(GIS)和位置服务不可或缺的部分。本文将详细解析“100+地图图源(含谷歌卫星影像)导入图新地球”这一主题,涵盖地图资源、图新地球软件、离线地图以及LRC文件格式等相关知识点...

    奥维地图图源:分辨率奥维卫星影像融合地图

    1. **奥维地图**:奥维互动地图是一款集成了Google地图、百度地图、高德地图等多种地图服务的软件,支持在线和离线地图浏览,提供地图标记、轨迹记录、测量距离等功能。 2. **卫星影像融合**:这是一种技术,将来自...

    奥维地图-自定义地图_5.25更新.zip

    自定义地图图源是奥维地图的一项重要特性,它让用户可以导入自己的地图数据,或者使用第三方提供的地图数据,从而在奥维地图上展现更加符合个人需求的地图信息。 在“奥维地图-自定义地图_5.25更新.zip”这个压缩包...

    奥维VIP版本专用图源.7z

    对于"奥维VIP版本专用图源",它可能包含了多种地图类型,如卫星影像、地形图、矢量地图等,这些数据通常由专业机构或公司通过卫星遥感、航空摄影、实地测绘等方式获取,并经过处理和整合,以适应奥维地图软件的格式...

    两步路全球图源格式解析

    标题中的“两步路全球图源格式解析”指的是一个关于地图数据格式解析的教程或资源,可能涵盖了如何理解和处理各种地图数据格式,以便在不同应用中使用。这可能包括地理信息系统(GIS)中的常见格式,如Shapefile、...

    图新地球(lsv)自定义图源.rar

    图新地球(LSV)是一款基于GIS(地理信息系统)技术的开源地图软件,它提供了丰富的地图数据可视化和分析功能。这个“图新地球(lsv)自定义图源.rar”压缩包文件,显然是针对图新地球的一个扩展资源,包含的是从旧...

    图新地球的自定义图源lrc

    【图新地球的自定义图源LRC】是一种在地理信息系统中实现个性化地图展示的方法,主要针对的是图新地球这款软件。图新地球是一款强大的、开源的桌面端三维地球浏览软件,它允许用户查看全球地形、卫星图像以及各种...

    GIS.rar_gis_gis管网_百度地图_管网图形_管网地图

    GIS(Geographic Information System,地理信息系统)是一种集成了计算机硬件、软件和地理数据的系统,用于获取、...通过研究这个案例,可以了解如何整合不同的GIS技术和地图服务,实现特定的地理信息展示和管理需求。

    Google地图GISAPI应用实例

    在Web GIS中,这些功能被整合到网页应用中,使用户可以通过浏览器访问和交互地图。 2. **Google Map API**:Google Maps API是Google提供的一个JavaScript库,允许开发者将Google Maps集成到自己的网站或应用中。它...

    GlobalMapper加载谷歌地球卫片和谷歌地图

    本文将深入探讨如何利用GlobalMapper加载谷歌地球的卫星图像和谷歌地图,以增强地理空间分析和可视化能力。 一、GlobalMapper简介 GlobalMapper是一款功能全面的GIS软件,它支持众多格式的地理空间数据读取、编辑和...

    gis谷歌地图方案

    Gis googlemap gmap 地图 谷歌地图,提供网页版地图开发方案,单机版地图开发方案,第三方控件开发方案.

    图新地球(lsv)自定义加载:图源lrc

    图新地球(LSV)是一款国产的开源GIS(地理信息系统)软件,它提供了丰富的地图浏览、分析和数据管理功能。标题中的“自定义加载:图源LRC”指的是利用LRC(Location Resource Configuration)文件来扩展图新地球的...

    vue+三维GIS地图

    此实例为vue版本三维GIS地图,其中包含底图切换、图层控制、图上量算、空间分析、坐标定位、图上标绘、地图打印等功能

    ARCGIS WMTS在线图源 gis软件导入即可

    本资源聚焦于ARCGIS与WMTS(Web Map Tile Service)在线图源的整合,帮助用户轻松导入地图服务,提升工作效率。 WMTS是一种基于OGC(Open Geospatial Consortium)标准的服务,它允许用户通过HTTP或HTTPS协议获取预...

    谷歌地图与GIS地图的转换工具

    在IT领域,地理信息系统(GIS)和在线地图服务如谷歌地图是两个重要的组成部分。GIS主要用于存储、管理和分析地理数据,而谷歌地图则是提供全球卫星图像和地图信息的在线平台。当我们需要将GIS数据与谷歌地图整合时...

    Arcgis在线谷歌地图(地图)2023年最新版(已不可用)

    Arcgis在线谷歌地图(地图)2023年最新版(可用),加载在arcgis中可以作为地图使用,不包含地图标准,纯影像图。

Global site tag (gtag.js) - Google Analytics