Talky的个人博客分享 http://blog.sciencenet.cn/u/Talky 应当重视建设生态文明!

博文

环境信息经验之二:地图程序

已有 4411 次阅读 2012-5-26 21:28 |个人分类:环境信息|系统分类:科研笔记| 地图, 程序, 环境信息

环境信息经验之二:地图程序

 

讲的是一些不太成功的经验,目的是激励年轻人:有激情也要有耐力,因为程序要一句一句地写,但风险和机会并存。

 

这里提供一个地图C++源程序,因为也是DOS系统下的,而现在GIS风行,这个程序的应用价值不大,但可以用来做练习。

 

1989年在上海市新华书店的外文科技书架上(内部影印书),发现了一本讲环境信息系统和地理信息系统的论文集,感觉到“思绪顿开”,产生了自己动手的想法。可能是19911992年,购买了Boland C++ 2.0正版软件(可能刚推出3.0,因此2.0在降价促销,当时是500元人民币,包括一箱厚厚的十几本原版说明书)。凑巧又得到了一个研究项目,有了任务,便真的启动了。

 

然而当时困难大:自学C++,计算机设备落后,WINDOWS 3.11的中文版和“中文之星”还没有出台,数据库还是DBASE II。但工作慢慢前进了:购置了在西文系统上可以显示中文点阵字符的模块,汉语拼音输入法模块,汉字点阵和多个矢量字库等。

 

第一个工作是地图程序,完成后的工作界面如图(没编辑好,图弄到最后面去了)。

 

该地图程序特点:

1、DOS系统,西文系统下显示中文;

2、地图数据是矢量形式,数据库参照了AUTO-CADDXF格式;

3、字库有点阵和矢量两种形式,可以汉语拼音输入汉字;

4、可以输入主要的地图要素,同时增加了一些有用的图标;可以移动、放大缩小、转动;

5、“单线”有线型、线宽、颜色的选择;如果封闭,允许填充颜色;

6、“双线”以实线为主,双线间可以添色,可应用于河流或道路;“铁路”有特色,能自动产生习惯上的标识:黑白段相间产生;

7、“字符”可输入中文或英文,矢量字体,可以放大缩小和转动;

 

缺点:

1、DOS系统下工作;

2、底层开发,包括按钮和鼠标,而且上面显示的“鼠标”是假的(当时还没来得及学会操作鼠标),实际用上下左右按键操作;

3、考虑了屏幕输入和绘图仪输入两种形式,但绘图仪输入尚未安装;

4、没有上传地图,再进行矢量化操作的能力;

 

附件是C++源程序(1993年的),为了下载简单,把多个分别编写的模块放到一起了。 H”是头文件;“V.OBJ”和“G.LIB”文件也是必须的,前一个是英文系统下显示点阵汉字的模块,后一个是Boland C++的图形库,C++编译时要用。

 

下面几个文件在运行时放在和地图执行程序同一子目录下:

HZPY.COD”是汉字拼音模块;

PCLIB”是汉字点阵字库;

SLHZ”是汉字单线矢量字库;

SH.JMP”是已经输入好的上海市地图数据库,参考用。

 

SMAP.H

SMAP.CPP

V.OBJ

G.LIB

PCLIB

HZPY.COD

SLHZ

SH.JMP

 

1996年到美国西棕榈海滩参加过一个华人地理信息系统(GIS)协会的研讨会,记得有一个主旨发言是ARC/INFO公司的技术负责人,他说将来ARC/INFO也会进化成象C++具有的应用模块(如函数或图形)那样,可以由程序员自由调用,当时觉得激动人心,是一个正确的发展方向。然而十五年过去了,GIS的商业化趋势并没有得到遏制,环境信息方向的研究生只得花费大量精力于学会使用商业GIS软件,不少论文起首写“基于GIS…”,实际上以商业GIS软件的应用为主要内容。环境信息具有地理属性没错,空间分析是一个重要方面,但是环境问题的决策是以“空间分析”为主吗?环境信息学的进一步发展,是否应当考虑摆脱商业软件的制约?

 

 

 

 

上海图



https://blog.sciencenet.cn/blog-609047-575279.html

上一篇:环境信息经验一:等值线程序
下一篇:何必纠结于PM2.5的监测和标准?
收藏 IP: 116.231.10.*| 热度|

2 赵建民 王小平

该博文允许注册用户评论 请点击登录 评论 (5 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-3-28 21:26

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部