代码改变世界

移动GIS开发(PDA)

2010-06-01 17:22  WebGIS_TXW  阅读(2046)  评论(0编辑  收藏  举报

  做惯了PC机上的GIS开发,突然转到内存只有几十兆的PDA上进行GIS开发,真有一种从富人变成穷人的感觉。最让人头疼的就是读文件和写文件,读个一两兆的SHP文件就要花上好几秒钟,再加上简单的图形显示,将近10多秒钟过去了,真是让人无法忍受。上网查了好多文章,花好几个星期,希望能找到好的方法给程序提提速,什么内存映射、分块读取,感觉仍然不是很理想,也许是我对嵌入式设备了解不够深,期待着以后能解决这个问题。为了提高图形查询和显示的速度,只好将地图数据调到内存里面,这样载入数据后,地图显示速度勉强能接受。

 

  图形可以显示了,接下来该是文字标注了,现在才感觉到底层开发的好处,那真是“我的地图我做主”。以前在PC机上都是做的ArcGIS的二次开发,有很多局限性,就像这个道路沿线字头朝北标注,找了好多文章看了好多资料,在人家的平台上解决是不可能的,也许老外开发软件根本就没太考虑咱国家的使用习惯。现在是自己从底层开发,想怎么标都可以,但是接触之后,也没想象的那么简单,多尺度下道路沿线标注还真是个难题。既保证速度,又要标注的合理,真是很难两全齐美。而且编着编着,突然发现算法也不是想象中的那么简单,尽然需要用到图形剪裁算法。天啦,又得消耗掉我那宝贵的地图显示时间。

  接下来,开始研究本以为很简单的点标注,一弄才发现,点标注也不是原来想的那么简单。密密麻麻一堆点,标上汉字,重叠的非常厉害。怎么办又得开始优化,控制标注字体的空间占位,剔除掉重叠标注,保证标注的清晰。但是这又得以时间为代价,终于算完成了,虽然点很多,但标注绝对不能让他们“沾亲带故”。

  经过这一段时间的底层开发,得到一个真理,对于PDA开发,GIS架构的越好、越完美并不实用,一切都必须以运行时间为先,我的原则是“不求最好,只求最快”,这才是我的嵌入式设备开发之道。