`
gstarwd
  • 浏览: 1538851 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

必应地图图片系统(Tile System)之一

阅读更多
微软必应地图 提供了全球地图,用户可以进行平移、放大或缩小操作。但是我们可曾考虑过,地图系统的后台是怎么工作的?在进行地图操作的时候,我们会发现并不是整个地图 一次性加载显示的,而是一块块的小地图分别显示。没错,为了使地图的浏览速度更快,地图交互更流畅,目前包括微软必应地图在内的几乎所有在线电子地图都事 先对地图图片(Tile)进行预处理。本文主要描述地图映射、坐标系以及地图Tile编码体系,统称为必应地图图片系统(Bing Maps Tile System)。
 
【地图映射】
为了使地图看起来是无缝(Seamless)的,并且确保来自不同数据源的卫星照片能够完美的拼接,必须有一个统一的地图映射系统,这就是必应 地图所采用的墨卡托映射(Mercator Projection)。在上一篇文章中我们已经简单介绍了Mercator Projection。通过Mercator Projection,整个地球可以展示为如下平面地图:
尽管Mercator Projection会使地球比例尺和某些区域变形,尤其在两极,它还是有不可磨灭的贡献的:
1)首先它是共形映射(Conformal Projection),即保留了物体的原有形状。这在展示卫星照片的时候很重要,因为我们所看到的正方形建筑就应该是正方形的,而不是长方形的。
2)其次它是柱状体映射,即南北极在地图的正下、上方,而东西方向处于地图的正右、左。
由于Mercator Projection在两极附近是趋于无限值得,因此它并没完整展现了整个世界,地图上最高纬度是85.05度。为了简化计算,我们采用球形映射,而不是 椭球体形状。虽然采用Mercator Projection只是为了方便展示地图,需要知道的是,这种映射会给Y轴方向带来0.33%的误差。
 
【精度和比例尺】
 为了准确显示地图,除了地图映射我们还需要指定地图精度或者比例尺。在最低地图放大级别(1级),地图是512 x 512像素。每下一个放大级别,地图的高度和宽度分别乘于2:2级是1024 x 1024像素,3级是2048 x 2048像素,4级是4096 x 4096像素,等等。通常而言,地图的宽度和高度可以由以下式子计算得到:
map width = map height = 256 * 2^ level pixels
 
地图精度表示屏幕上每个像素所代表的实际距离,例如精度为10m,表示每个像素代表10m的距离。在每个放大级别(Xoom Level)和不同纬度下,地图的精度都是不同的。假设地球直径为6378137米,地图精度(米/像素)可以由如下式子计算得到:
ground resolution = cos(latitude * pi/180) * earth circumference / map width

= (cos(latitude * pi/180) * 2 * pi * 6378137 meters) / (256 * 2^ level pixels)

地图比例尺是指测量相同目标时,地图上距离与实际距离的比例。例如,在地图比例尺为1:10万时,地图上每厘米代表地面距离为10万厘米。和地图精度一样,比例尺也随着地图放大级别和纬度的不同而不同。假设屏幕的分辨率为96dpi,比例尺可以由如下式子计算得到:

map scale = 1 : ground resolution * screen dpi / 0.0254 meters/inch

= 1 : (cos(latitude * pi/180) * 2 * pi * 6378137 * screen dpi) / (256 * 2^ level * 0.0254)

下表显示了在赤道上,不同放大级别下对应的地图精度和比例尺:

分享到:
评论

相关推荐

    必应地图卫星影像瓦片(0-10级)

    开发者需要根据瓦片的坐标系统和层级结构,正确请求并拼接这些图片,以展示完整的地图视图。 总的来说,必应地图卫星影像瓦片提供了丰富的地理信息资源,对于需要地图服务的开发者来说,这是一个宝贵的工具。通过...

    Rotorz Tile System unity3d

    "Rotorz Tile System" 是一款专为Unity3D游戏引擎设计的关卡地图构建工具,它简化了2D游戏地图的创建和管理过程。这款插件提供了强大的功能,使开发者能够快速、直观地设计出复杂的游戏场景,尤其适用于平台跳跃、...

    TileMap地图游戏资源

    10. **可扩展性**:TileMap系统通常是模块化的,允许开发者轻松添加新的瓷砖类型、地图层或者事件,从而适应不同游戏的需求和内容更新。 总的来说,TileMap地图在游戏开发中扮演着核心角色,提供了一种强大而灵活的...

    瓦片地图编辑工具Tilemap Editing Tools

    瓦片地图编辑工具Tilemap Editing Tools . 用TileMap制作了一张地图,是按照480 * 320制作的,但build到真机的时候...用Tile制作地图,但是每一层上只允许有一个贴图集,其实就是把需要用到的多个图片合到一张图片上。

    tile-lnglat-transform:高德百度谷歌腾讯必应的地图经纬度坐标和瓦片坐标相互转换

    提供了高德、百度、谷歌、腾讯和必应地图的经纬度坐标与瓦片坐标的相互转换 特点 实现了国内常用地图的经纬度坐标与瓦片坐标的相互转换 使用 UMD 模块打包,可以在 node 和 browser 中直接使用 转换原理 各地图的...

    Tile Studio 地图编辑器

    Tile Studio地图编辑器是一款专为2D像素艺术地图设计而生的专业工具,适用于各种类型的游戏,如RPG、平台跳跃类以及策略游戏等。其核心优势在于提供了一套直观的界面和高效的瓷砖(Tile)管理机制,使得设计师能够...

    tile地图编辑器

    "Tile地图编辑器"是一款专用于创建和编辑地图的软件工具,尤其适用于游戏开发和地理信息系统。这款编辑器因其简洁的界面和强大的功能而受到广大用户的喜爱。在本篇文章中,我们将深入探讨这款编辑器的核心特性、使用...

    MapTile切片工具

    MapTile是一款专为GIS(地理信息系统)用户设计的高效图片切片工具,它能够处理几乎所有的图片格式,并且用户可以根据需求自由设定切片等级。在WebGIS应用中,地图的加载速度往往受到单个图像文件大小的影响,Map...

    tileStudio地图编辑器中文版

    《tileStudio地图编辑器中文版:开启你的2D游戏世界创作之旅》 在游戏开发领域,尤其是2D游戏,地图编辑器是不可或缺的工具之一。tileStudio作为一款知名的2D地图编辑器,以其强大的功能和易用性赢得了众多开发者和...

    素材_tilemap素材_使用TileMap快速构造2D关卡_

    TileMap(瓷砖地图)是一种高效且灵活的工具,常用于构建2D游戏的环境和场景。本素材包主要围绕如何使用TileMap来快速构造2D关卡,帮助开发者节省时间和精力,专注于游戏玩法的创新。 1. TileMap简介: TileMap是2...

    Tile-Studio地图编辑器

    **Description:** Tile-Studio是一款专用于创建和编辑地图的专业工具,尤其适用于像素艺术风格的游戏开发。它的最新版本为ts2_076b,其中包含的主要可执行文件是ts.exe。此外,还有ts.zip文件,这可能是软件的压缩包...

    tile-utils:Python脚本,用于拼接来自多个来源的平铺地图(必应航拍图,网络地图,MBTiles文件)-python source file

    tile-utils是一组Python脚本,用于拼接平铺的Web地图。 支持以下网络地图资源: 必应航空地图 使用切片方案的Web地图 本地文件 可能的应用 准备要打印的大地图 在移动设备中制作绘画程序的原纸 先决条件 Python ...

    使用必应图像1

    在本文中,我们将深入探讨如何使用必应地图的图像服务,并通过C#语言与OpenLayers库结合,构建一个可以切换图层的地图应用。首先,我们要理解必应地图是微软提供的地图服务,它提供了多种图像类型,如航拍、带有标签...

    全功能瓦片地图下载(百度、高德、谷歌、腾讯、微软等等)

    瓦片地图下载是一种在GIS(地理信息系统)领域中常见的数据获取方式,特别是在处理大量地图数据时。本资源提供了全面的功能,支持从多个主流地图服务提供商,包括百度、高德、谷歌、腾讯和微软等,下载相应的瓦片...

    军火地图(system)软件

    想方便操作自己的运行命令吗? 废话少说,看拉就知道!

    游戏地图编辑器 Tile 砖块地图 wxPython

    游戏地图编辑器 Tile 砖块地图 wxPython,一开始考虑不全面,后面写的时候就只有一个心思,烂代码,完成就好。代码创建控件实例是个痛苦的过程,因为做的基本都是重复的事,能用循环的最好写进循环,熟悉控件后推荐...

    TILE块地图编辑器

    TILE块地图编辑器,作为一款专为此目的设计的工具,以其便捷性和灵活性,让开发者能够高效地构建出丰富多彩的游戏地图。本文将深入探讨这款编辑器的功能、使用方法以及其在游戏地图制作中的应用。 首先,TILE块地图...

    Tile Studio V3.0 地图编辑器

    Tile Studio V3.0,作为一款专业的地图编辑工具,它以其强大的功能和易用性,赢得了众多用户的青睐。本文将深入探讨Tile Studio V3.0的核心特性、使用场景以及如何结合lpng.dll库实现更高效的工作流程。 Tile ...

    tiledmap-跑酷地图素材

    1. 图块集(Tilesets):这些是构成地图的基本单元,由多个预设图形组成,可以是不同风格的地砖、障碍物、道具等,开发者可以通过拼接图块来构建地图。 2. 地图层(Layers):地图由多个层组成,例如背景层、地面层...

Global site tag (gtag.js) - Google Analytics