项目中遇到需要转换坐标系需求,虽然大佬已经解决了,但是不想当一个寄生虫所以自己尝试着去做做,加油吧,渣渣!!!!!
一.首先来说明一下目前常用的坐标系
1.北京1954
大概意思就是说1954年以北京为基准实现的坐标系
2.西安80
以西安为基准的大地坐标系
3.WGS84
给gps卫星用的坐标系
4.CGCS2000
国家大地坐标系
坐标之间可以相互转换
二.skyline提供了坐标转换的接口
Working with SGWorld 下的 coordServices 的Reproject接口提供了转换坐标系的接口
该接口需要4个参数,需要转换的转标系,要转换的坐标系,x的坐标,然后Y的坐标
根据接口文档的介绍,现在我们欠缺两个坐标系,一个是原来的坐标系,另外一个是需要转换的坐标系
1.通过查看APi我们又发现skyline又为我们提供了一个创建坐标系的接口
Working with SGWorld 下的 coordServices 的CreateCoordinateSystem 接口提供了创建坐标系的接口。
根据接口文档的介绍,发现创建坐标系需要一个Well know text 的参数(这是什么玩意儿?what fuck?)
没事,现在我们来看看这个Well Know text具体是什么?
打开skylinePro(skyline用来浏览图层的专属工具),我用的是6.6.1
ctrl+o打开fly,点击OK
之后选中项目树其中一个对象,右键properties出现layer properties
之后点击layer,选中Set
出现坐标系的弹框Search可以选择想要的坐标系,然后下面就有了well know text 这个就是我们需要的参数哟亲
接下来我们开始用代码创建上面的四个坐标系