`
lyunabc
  • 浏览: 561194 次
  • 性别: Icon_minigender_2
社区版块
存档分类
最新评论

Java ME引路蜂地图开发示例:离线地图示例

 
阅读更多

在手机上,离线地图包一般放在SD卡上,然后通过文件读取。这里为简单起见,将离线放在例子的资源目录中和应用编译在一起。实际应用中请单独存放这些地图包。引路蜂地图开发包支持同时读取多个地图包,这是通过MapTiledZone类和MapTileStreamReader类来完成的。每个地图包对应于一个MapTiledZone,地图包对每张地图建立的索引以加速图片检索将记录地图包存放的区域和缩放级别。而类MapTileStreamReader提供了管理这些地图包的方法.

//------------------------------------------------------------------------------
//                         COPYRIGHT 2010 GUIDEBEE
//                           ALL RIGHTS RESERVED.
//                     GUIDEBEE CONFIDENTIAL PROPRIETARY
///////////////////////////////////// REVISIONS ////////////////////////////////
// Date       Name                 Tracking #         Description
// ---------  -------------------  ----------         --------------------------
// 16SEP2010  James Shen                              Initial Creation
////////////////////////////////////////////////////////////////////////////////
//--------------------------------- PACKAGE ------------------------------------
package com.pstreets.gisengine.demo.midp;
 
//--------------------------------- IMPORTS ------------------------------------
import com.mapdigit.gis.geometry.GeoLatLng;
import com.mapdigit.gis.raster.MapTileStreamReader;
import com.mapdigit.gis.raster.MapTiledZone;
import com.mapdigit.gis.raster.MapType;
import com.pstreets.gisengine.demo.MapDemoMIDP;
import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.IOException;
import java.io.InputStream;
import javax.microedition.lcdui.Display;
 
//[------------------------------ MAIN CLASS ----------------------------------]
//--------------------------------- REVISIONS ----------------------------------
// Date       Name                 Tracking #         Description
// --------   -------------------  -------------      --------------------------
// 16SEP2010  James Shen                              Initial Creation
////////////////////////////////////////////////////////////////////////////////
/**
 *  stored map demo for Guidebee Map API on MIDP platform.
 * <hr><b>© Copyright 2010 Guidebee, Inc. All Rights Reserved.</b>
 * @version     1.00, 16/09/10
 * @author      Guidebee Pty Ltd.
 */
public class StoredMapMIDP extends MapDemoMIDP {
 
    MapTileStreamReader localMapTileFileReader;
 
    public void startApp() {
 
        init();
 
        InputStream is = this.getClass().getResourceAsStream("/world03.map");
        byte[] buffer = null;
        try {
            buffer = new byte[is.available()];
            is.read(buffer);
            is.close();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
        ByteArrayInputStream bais = new ByteArrayInputStream(buffer);
        MapTiledZone mapTiledZone = new MapTiledZone(new DataInputStream(bais));
 
        localMapTileFileReader
                = mapTileDownloadManager.getInteralMapTileStreamReader();
        localMapTileFileReader.addZone(mapTiledZone);
        //you can add more store map package here use addZone
 
        localMapTileFileReader.open();
        GeoLatLng center = new GeoLatLng(-31.948275, 115.857562);
        map.setCenter(center, 3, MapType.GOOGLEMAP);
        Display.getDisplay(this).setCurrent(canvas);
    }
 
    public void destroyApp(boolean unconditional) {
        localMapTileFileReader.close();
    }
}


World03.map 存放了1-4级世界地图。MapTileManager 内部定义一个MapTileStreamReader ,如果设置了本地地图,MapTileManager会先从本地读取,如果本地没有需要图片,然后再从地图服务器上下载。可以使用MapTileStreamReader的addZone 方法添加多个地图包,地图包可以有重叠的区域,这时添加的先后顺序对结果就会影响,如果有多个,则取第一个。

离线地图工具参见:离线地图生成工具结构图离线地图生成工具使用方法

分享到:
评论

相关推荐

    引路蜂地图开发包2.0 (Java ME版)

    引路蜂地图开发包2.0(Java 平台)包含了 开发库 JavaDoc 示例代码 详细请参见 http://blog.csdn.net/guidebee/archive/2010/09/19/5895245.aspx

    引路蜂离线地图、可视化地形图

    提供引路蜂离线地图工具,提供离线地图数据的导出,并且针对离线地图、可视化地图如何使用,提供源码可供参考。 同时针对内部包含地形图的图号处理、坐标定位、经纬度转换定位等功能;包含工程文件: MapDigit、...

    引路蜂地图开发包2.0 (Windows Mobile版)

    "引路蜂地图开发包2.0 (Windows Mobile版)"是一个专为Windows Mobile平台设计的电子地图开发工具,旨在帮助开发者快速构建地图应用。这个开发包包含了几个关键组件,以便于开发者集成地图功能到他们的应用程序中。...

    引路蜂地图开发包2.0 (Java SE 版)

    引路蜂地图开发包2.0 包含了 开发库 JavaDoc 示例代码 详细请参见 http://blog.csdn.net/guidebee/archive/2010/09/19/5895245.aspx

    引路蜂地图开发包2.0(Mono GTK 版)

    引路蜂地图开发包2.0 包含了 Mono GTK 可用于Linux/Unix/Mac OS/Windows 应用开发 开发库 帮助 示例代码 试用版带水印。 详细请参见 http://blog.csdn.net/guidebee

    引路蜂地图开发包2.0 (Android 版)

    引路蜂地图开发包2.0 包含了 开发库 JavaDoc 示例代码 详细请参见 http://blog.csdn.net/guidebee/archive/2010/09/19/5895245.aspx

    引路蜂地图开发包2.0 (Blackberry版)

    引路蜂地图开发包2.0 包含了 开发库 JavaDoc 示例代码 详细请参见 http://blog.csdn.net/guidebee/archive/2010/09/19/5895245.aspx

    引路蜂地图开发包2.0 (.Net Desktop 版)

    引路蜂地图开发包2.0 包含了 开发库 帮助 示例代码 试用版带水印。 详细请参见 http://blog.csdn.net/guidebee/archive/2010/09/19/5895245.aspx

    引路蜂移动软件->OpenGL ES 开发教程

    引路蜂移动软件-&gt;OpenGL ES 开发教程的代码

    毕业论文基于JAVA的无线人员定位管理软件的设计说明.doc

    数据库管理模块负责数据的持久化,用户管理模块实现用户账户的创建、登录和权限控制,定位服务模块则通过引路蜂地图开发包获取和处理定位数据,界面展示模块则将这些信息以图形化方式呈现给用户。 通过上述技术的...

    二年级语文下册 蜜蜂引路3教案 鲁教版 教案.doc

    1. 故事背景:《蜜蜂引路》是鲁教版二年级语文下册的一篇课文,讲述了列宁在莫斯科附近寻找养蜂人的故事。 2. 教学目标: - 学习汉字:学生需要学会8个新字,如“引”、“附”等,并能用它们组成词语。 - 造句...

    蜜蜂引路课件.ppt

    《蜜蜂引路》这篇课文讲述的是列宁利用蜜蜂引路的方式找到养蜂人的故事,从中我们可以学到关于蜜蜂习性及观察推理的知识。 首先,蜜蜂是自然界中的优秀导航者,它们在采集花粉和蜜源后,能够准确无误地返回蜂巢。这...

    六年级语文:蜜蜂引路(教学设计).pdf

    六年级语文:蜜蜂引路(教学设计).pdf

    26、蜜蜂引路.doc

    26、蜜蜂引路.doc

    Android GPS定位

    ### Android GPS定位详解 #### 一、项目背景与需求分析 该项目主要针对Android平台下的GPS定位功能进行开发,旨在实现实时监控手机位置,...同时也可以探索更多高级特性,如离线地图支持等,以满足更广泛的使用场景。

    《蜜蜂引路》教材分析.docx

    《蜜蜂引路》:一篇寓教于乐的语文教材 在众多的语文教材中,《蜜蜂引路》以其独特的故事魅力和深刻的教育意义,成为了培养学生综合素质的精品教材。这篇课文通过讲述列宁观察蜜蜂采蜜规律从而找到养蜂人的故事,...

    蜜蜂引路教案.docx

    在语文教学中,通过《蜜蜂引路》这样的教案,不仅能够传授学生知识,还能启迪他们的智慧。该教案以一篇关于列宁利用蜜蜂找到养蜂人的故事为内容,不仅仅教授学生语文知识,还通过故事情节让学生们学习到列宁的观察力...

    26蜜蜂引路 (2).ppt

    26蜜蜂引路 (2).ppt

    蜜蜂引路教案最新二案例.pdf

    蜜蜂引路教案最新二案例.pdf

    《蜜蜂引路》课件.ppt

    很抱歉,根据您提供的信息,“《蜜蜂引路》课件.ppt”似乎是一个与小学语文教育相关的课件,特别是针对二年级下册的教学内容。然而,这个标题和描述并没有提供具体的IT知识要点。标签为空,部分内容提及的是七十四团...

Global site tag (gtag.js) - Google Analytics