APP下载

GIS系统内部结构表示方法

2009-10-19郭中社常海军

新媒体研究 2009年17期
关键词:分院坐标系制图

夏 江 郭中社 常海军

[摘要]GIS开发中一些常用的要素表示方法,点、线、面以及坐标系投影的相关知识。

[关键词]点 线 面 坐标系 投影变换

中图分类号:TN96文献标识码:A文章编号:1671-7597(2009)0910008-01

近几年来,GIS技术在全球得到了迅猛的发展,它已经成为现实生活的重要组成部分。利用GIS技术开发的以多媒体、网络化、自动化为特色的信息处理、信息管理、指挥调度和决策支持系统,已经在各领域发挥着重大作用。GIS技术已经成为电子商务、电子政务、电子军务的重要技术支撑。正因为如此,用于开发GIS的专业开发工具也得到了飞速发展,出现了大量GIS的专业开发工具,应用专业开发工具开发GIS,具有开发起点高,可靠性好,相对简单易学等优点,但也存在着可扩展性差、适用性差、系统庞大,没有系统版权等缺点,尤其是,这些专业开发工具总体上来说还是一个难于真正修改的“黑匣子”,很难通过无缝集成实现实用系统的特殊功能。

开发具有自主知识产权的GIS系统,面临的困难是,对开发人员的要求较高,开发周期相对较长,风险性也较大,但从长远发展来看,有利于核心技术的积累,同时开发出的系统也可以根据实际需要进行取舍,灵活性高,本文简要介绍GIS系统实现的一些内部核心内容。

GIS系统首先要解决的问题是GIS数据的内部结构表示问题,通常会GIS相应对象分为点(Point)、线(Polyline)、面(Region)三种类型,下面对相关类型逐一说明:

(一)点(Point)的结构表示

struct Point {

// 点的坐标。

CPoint point;

// 缩放级别。

unsigned char cLevel;

// 删除与否。

BoolbDeleted;

//符号的类型集,用于设置点的样式。

const CTypeSet * pTypeSet;

// 点的标注内容。

CStringstrLabel;

// 点的标注位置。

CPointptLabel;

//标注所用的字体信息。

CFontfont;

};

(二)线(Polyline)、面(Region)的结构表示

struct Line or Region {

// 线或面的结点。

CPoint points;

// 线或面对象的边界矩形。

CRectange rectBound;

// 缩放级别。

unsigned char cLevel;

// 对于面来说,内部是否有一个”Hole”。

bool bHole;

//删除与否。

bool bDeleted;

// 对于线来说则是长度,对于面来说则是面积。

floatfLengthOrArea;

//符号的类型集,用于设置线或面的样式。

const CTypeSet * pTypeSet;

// 点的标注内容。

CStringstrLabel;

// 线或面的标注的起始位置。

CPointptLabel;

//标注所用的字体信息。

CFontfont;

其次就是GIS系统中所用到的坐标系、投影内容等相关内部结构,在中国常用的坐标系有WGS84、XiAN80、BeiJing54等三种,一般采用如下的表示结构:

struct CDatum {

const char * strName;

const char * strOziID;

const CEllipsoid * pEllipsoid;

float fDX;

float fDY;

float fDZ;

float fWX;

float fWY;

float fWZ;

float fMS;

mutable CTransformationBase * pToWGS84;

CTransformationBase * ToWGS84 () const;

};

具体形式如下:

// WGS84椭球体参数。

const CEllipsoid c_eWGS84 ("WGS 84", 6378137.0, 1/298.257223563);

//CDatum结构示例。

{"WGS 84", "WGS 84", & c_eWGS84, 0, 0, 0}

下面是关于坐标系,投影变换的简要说明:

(1)Geographic Coordinate Systems(地理坐标系)。描述了地理坐标系的名称、大地基准面、椭球体、起始坐标参考点、单位等。

(2)Projected Coordinate Systems(投影坐标系)。在Projected Coordinate Systems同样存在许多已定义的投影坐标系,我国大部分地图所采用的北京54和西安80坐标系的投影文件就在其中,它们均采用高斯-克吕格投影,前者使用克拉索夫斯基椭球体,后者使用国际大地测量协会推荐的IAG75地球椭球体。

投影坐标系的参数里面除了包含地理坐标系的定义外,还有投影方式的相应描述。

(3)Vertical Coordinate Systems(垂直坐标系)。Vertical Coordinate Systems定义了测量海拔或深度值的原点的具体定义。

需要注意的是,大家经常希望能够通过坐标转换,将北京54或西安80中的地理坐标系转换到WGS84,实际上这样做是不准确的,北京54或西安80的投影坐标可以通过计算转换到其对应的地理坐标系,但由于我国北京54和西安80中的地理坐标系到WGS84的转换参数没有公开,因此无法完成其到WGS84坐标的精准计算。

参考文献:

[1]陈永奇,工程测量学-(第三版),测绘出版社.

[2]祝国瑞,地图设计与编绘,高等学校地图学与地理信息系统系列教材.

[3]ArcGIS 9.3 Desktop Help.

作者简介:

夏江,女,53岁,工程师,河北省地矿局测绘院制图分院副院长、技术负责,从事测绘工作34年;郭中社,男,46岁,工程师,河北省地矿局测绘院制图分院院长;常海军,河北省地矿局测绘院制图分院,工程师。

猜你喜欢

分院坐标系制图
航天科技五院西安分院扶贫工作获定点扶贫村认可
极坐标系中的奇妙曲线
江苏联合职业技术学院江宁分院 王光勇
高职院校学生参与社团的兴趣分析
三角函数的坐标系模型
求坐标系内三角形的面积
例谈坐标系与参数方程常考题型
明天我们将生活在怎样的城市?
中国网民大数据
一图看清上海的“拆拆并并”