基于Wms协议的Map开发(四:系统设计)

来源:互联网 发布:mac专柜地址 编辑:程序博客网 时间:2024/05/22 05:01

声明:此系列文章,不是说教,不是告诉任何人如何利用C++开发电子地图的教程,而且本人水平有限,也达不到教程的地步。只是利用此系列的文章,来记录开发基于C++应用在Windows开发电子地图的过程。愿对C++开发感兴趣的朋友,熟知Gis开发的朋友,了解WmsWFS协议的朋友,亦或是对GoogleMap之类感兴趣的朋友,共同讨论。(废话到此结束)。

之前的几篇捞不到什么干货,从这篇开始都是干货了。

系统设计

先来说明一下我们的系统流程。提纲挈领嘛。一步一步的达到我们的目的。

先来张系统设计图纸,这是最早设计的原始图纸,是个理论图,后续设计步骤基本上忠实的执行了这个设计图纸,但是也有部分功能做了修改来提升性能,具体修改的地方会在后续文章应用的位置予以说明。

下面对部分内容予以说明。

(1)输入参数:左上,右下。两个点都是以经度和纬度坐标组成的。像素宽度指的是用户用来显示图片的空间的像素宽度。(下面以Google map为例,说明)

(2)Zoom值:前文名词解释中已有,这里再重申一下,Google Map是矢量化放大,但并不是无极放大的,这有别于Gis的矢量化放大,它只会在定义好的Zoom级别与其服务器通讯(即按照标准二分法计算得到的0~17级)。而OGC(后文将WMSWFS等一并称为OGC标准协议)及其他Gis矢量数据是没有级别概念的。

(3)图块的URL地址:与OGC通讯,要遵守OGC的通讯协议标准,WMSWFS都有各自的通讯协议,WMS的通讯协议可参见《概要》部分的http://www.gisforum.net/wiki/index.php?doc-view-124.html

(4)并发访问:为了达到Google的效果,被切割好的瓦块都会被生成一个Url地址,对这些地址的通讯,要做到并发访问,否则无法达到既定效果。

(5)本地缓冲文件夹:用于存储已访下载过的图片瓦块。以实现,本地有用本地,本地无再下载。提高运行速度。

原创粉丝点击