基于FMEObjectsDotNet实现空间数据大地坐标系转换与应用1/5基于FMEObjectsDotNet实现空间数据大地坐标系的转换与应用许金辉,许洪波(北京新兴华安测绘有限公司,北京100081)[摘要]:提出一种基于FME二次开发技术FMEObjectsDotNet将原数据的一种大地坐标系转换到另一种大地坐标系的方法,实现快速、无损、高精度的大地坐标系转换,有效的解决空间数据交换、共享中的坐标系不一致的问题。[关键词]:大地坐标系;FME;FMEObjectsDotNet一、引言自新中国建立至今,我国目前存在着四类常用大地坐标系统:1954北京坐标系是将我国大地控制网与前苏联1942年普尔科沃大地坐标系相联结后建立的我国过渡性大地坐标系;1980年西安坐标系是1978年,我国决定建立新的国家大地坐标系统,并且在新的大地坐标系统中进行全国天文大地网的整体平差上建立的;2000国家大地坐标系,是应现代经济发展迫切需要而建立的,原点为包括海洋和大气的整个地球的质量中心;地方独立坐标系是各个地方根据自己的实际需求建立的O-XYZ坐标系。原点O有些是实际中的点,有些是假设的。随着信息化建设的迅速发展,各种跨行政区域、跨行业的工程越来越多,如区域地理信息系统、连接城市之间的各种道路工程、水利工程、灾害预防工程等,这些工程由于历史原因及城市发展状况的不同,空间数据采用了不同的大地坐标系统给现阶段的空间数据交换、共享带来了许多问题,本文以FME二次开发技术FMEObjectsDotNet转换大地坐标系为例,详细阐述其方法。二、技术路线数字中国地理空间框架建设以及全国二次调查的进行,都会涉及空间数据交换以及共享的坐标系转换问题,在数据处理软件中常用的是ArcGIS、FME等来处理数据的坐标系转换,但是这些应用软件关于坐标系转换操作都比较繁琐,且不能依照用户需求进行简单的自定义坐标系转换。因此在强大的数据处理软件FME的基础上使用FMEObjectsDotNet组件定制开发空间数据的坐标系转换是非常实用的,FME软件优势:FME(FeatureManipulateEngineering)Suite是加拿大SafeSoftware公司推出的空间数据转换处理系统,该系统基于OpenGIS组织提出的新的数据转换理念“语义转换”,通过提供在转换过程中重新构造数据的功能,实现了超过100种不同空间数据格式(模型)之间的转换,为进行快速、高质量、多需求的数据转换应用提供了高效、可靠的手段。基于FMEObjectsDotNet实现空间数据大地坐标系转换与应用2/5引用FMEObjectsDotNet组件进行空间数据坐标系转换模块开发设计:在MicrosoftVisualC#软件中嵌入FMEObjectsDotNet组件,定义坐标系转换的原始数据及目标数据,调用FMEObjectsDotNet的IFMEOFeature接口的Reproject方法,将输入的原始数据经过坐标系转换即定义目标数据的坐标系输出到目标数据,在进行空间数据的坐标系转换过程中也可同时对空间数据进行标准化处理,如属性匹配、图形编辑等操作。基于FMEObjectsDotNet组件的空间数据坐标系转换流程图设计如下:图表1空间数据坐标系转换流程图三、关键技术依托于FME(FeatureManipulateEngineering)强大的空间数据处理、格式转换的FMEObjectsDotNet组件,实现空间数据的坐标系转换的同时也对其图形、属性进行高效的、无损的转换处理。主要数据处理的技术难点如下:1.坐标系转换空间数据的坐标系转换主要包括上面提到的四类坐标系转换,跨椭球体的坐标系转换通常都是采用七参数算法进行,在FMEObjectsDotNet组件中使用Reproject的方法调用LocalCoordSysDefs.fme文件中自定义的七参数的坐标系转换方法。关于接口IFMEOFeature的Reproject方法说明:图表2Reproject说明空间数据的坐标系转换过程主要代码:IFMEOFeaturefmeFeature=fmeSession.CreateFeature();while(fmeReader.Read(fmeFeature))基于FMEObjectsDotNet实现空间数据大地坐标系转换与应用3/5{//如原始数据的坐标系转到目标数据坐标系的七参数方法为BJ54TOXA80,则//输出定义如下:fmeFeature.Reproject(BJ54TOXA80);//数据输出fmeWriter.Write(fmeFeature);}2.属性数据处理空间数据经过FMEObjectsDotNet组件的处理实现了坐标系的转换,但是在对空间数据的处理过程中必须保证原始数据的属性完整转换到目标数据属性中,这是当前众多GIS软件处理数据转换、加工的关键之处,FMEObjectsDotNet组件则完美的解决了这一问题。FMEObjectsDotNet组件读取原始数据属性信息,输出到指定目标数据的属性信息中,关于属性数据处理样例的主要代码如下:IFMEOFeaturefmeFeature=fmeSession.CreateFeature();while(fmeReader.ReadSchema(fmeFeature)){//在这里设置要素的属性字段及类型fmeFeature.SetSequencedAttribute(YSDM,fme_int32);fmeFeature.SetSequencedAttribute(Layer_name,fme_char(20));fmeWriter.AddSchema(fmeFeature);}while(fmeReader.Read(fmeFeature)){//设置输出数据的属性内容fmeFeature.SetIntAttribute(YSDM,212000);//要素代码//图层名称stringtempFeatureType=fmeFeature.FeatureType;fmeFeature.SetStringAttribute(Layer_name,tempFeatureType);//设置输出数据的坐标系fmeFeature.Reproject(BJ54TOXA80);//输出数据fmeWriter.Write(fmeFeature);}四、生产应用在广东省惠州市进行数字城市地理空间框架建设项目中,将北京1954坐标系、西安1980坐标系的空间数据统一转换到自定义的西安1980坐标系,起算中央子午线经度L0=114°30′00″,得到了广泛应用,在空间数据转换过程中即保证了图形数据的精度和属性信息等内容同时又大大提高了数基于FMEObjectsDotNet实现空间数据大地坐标系转换与应用4/5据库建设中坐标系转换处理的效率。五、结语随着信息化建设全球化的趋势以及大地测量技术的发展,我国在不同历史阶段建立的北京1954坐标系、西安1980坐标系以及自定义坐标系都必将被2000国家大地坐标系所取代,从今至将来的一段时间内的空间数据库建设或其他相关工程建设将频繁的进行空间数据的坐标系转换。本文为空间数据的大地坐标系转换问题提供了一种切实有效的参考方法。参考文献:[1]邵春丽,黄承义,李志刚.基于FME实现MicrostationDGN到MapGISSUV的数据转换与应用[J].测绘通报,2009(4):1-3.[2]Safe.FMEObjects.NETTutorial[EB/PL].,2009-12-08.[3]张庆华,等.零基础学VisualC#2005[M].北京:机械工业出版社,2008.1[4]焦文海,魏子卿,贾小林.大地坐标系与卫星导航系统坐标系[J].军事测绘,2003(1)[5]Safe.FMEObjects[EB/PL].,2009-11-13[6]Safe.BuildingApplicationswithFMEObjects[EB/PL].,2009-11-3[7]邬伦,刘瑜,等.地理信息系统—原理、方法和应用[M].北京:科学出版社,2001[8]边馥苓.地理信息系统原理和方法[M].北京:测绘出版社,1996[9]孔祥元,梅是义.控制测量学(下册)[M].武汉:武汉测绘科技大学出版社,1996作者:1许金辉(1983-),女,河北迁安人,学士,工程师,主要从事大地测量、地理信息数据库建设和应用理论研究。单位:北京新兴华安测绘有限公司,地址:北京市海淀区太平路22号正兴商务楼,电话:13601199441;基于FMEObjectsDotNet实现空间数据大地坐标系转换与应用5/52许洪波(1979-),男,黑龙江龙江人,学士,工程师,主要从事地理信息数据库、系统的建设和应用理论研究。单位:北京三正科技有限公司,地址:北京市海淀区大柳树路17号富海中心2号楼(富海大厦)15层1503,电话:18611100604;ImplementationofSpatialDataGeodeticCoordinateSystemTransformationBaseonFMEObjectsDotNetandItsApplicationXuJinhui(BeijingXinxingHuaanSurveyingandMappingCo.,Ltd,Beijing,100040,China)Abstract:PutforwardakindofFMESeconddevelopmenttechnologybasedontheoriginaldataFMEObjectsDotNet,thegeodeticcoordinatesystemchangedtoanotheroneofthegeodeticcoordinatesystemmethod,realizingfast,nondestructive,highprecisionofthegeodeticcoordinatesystemconversion,effectivelysolvetheproblemthatthespatialdataexchangeandsharinginthecoordinatesystemisnotthesame.Keywords:GeodeticCoordinateSystem;FME;FMEObjectsDotNet