技术开发 频道

经纬度点与投影坐标系下坐标点的互相转换


【IT168技术文档】

  经纬度点与投影坐标系下坐标点的互相转换是AE编程中经常遇到的,下面以WGS84 和北京54为例介绍如何转换
''' <summary> ''' 将经纬度点转换为某投影下的坐标点 ''' </summary> ''' <param name="pPoint">经纬度点</param> ''' <returns>某投影下的坐标点</returns> ''' <remarks>其中pPoint的X是经度,Y是纬度,单位都是度,千万不要搞错,否则转换出来的值是不对的或转换不出值</remarks> Private Function GetProjectPoint(ByVal pPoint As IPoint) As IPoint Dim pSRF As ISpatialReferenceFactory = New SpatialReferenceEnvironment pPoint.SpatialReference = pSRF.CreateGeographicCoordinateSystem(esriSRGeoCSType.esriSRGeoCS_WGS1984) pPoint.Project(pSRF.CreateProjectedCoordinateSystem(esriSRProjCSType.esriSRProjCS_Beijing1954GK_23N)) Return pPoint End Function ''' <summary> ''' 将点转换为经纬度点 ''' </summary> ''' <param name="x">点X坐标</param> ''' <param name="y">点Y坐标</param> ''' <returns>经纬度点</returns> ''' <remarks></remarks> Private Function GetGeoPoint(ByVal x As Double, ByVal y As Double) As IPoint Dim pProPoint As IPoint = New Point pProPoint.PutCoords(x, y) Dim pSRF As ISpatialReferenceFactory = New SpatialReferenceEnvironment pProPoint.SpatialReference = pSRF.CreateProjectedCoordinateSystem(esriSRProjCSType.esriSRProjCS_Beijing1954GK_23N) pProPoint.Project(pSRF.CreateGeographicCoordinateSystem(esriSRGeoCSType.esriSRGeoCS_WGS1984)) Return pProPoint End Function
0
相关文章