[Polygon]谷歌墨卡托坐标系图形转化为WGS84地理坐标系图形

这篇博客介绍了如何将基于CGJ-02坐标系的多边形点数据转换为WGS84地理坐标系。通过遍历多边形的各个点,使用CGJ02ToWGS84的反算方法进行坐标转换,并创建新的WGS84坐标点。最后,利用转换后的点构建了一个Polygon对象。
摘要由CSDN通过智能技术生成
/* 设置空间参考 */
SpatialReference referenceA = SpatialReference.create(4326);
SpatialReference reference = SpatialReference.create(3857);

/* 待转换图形 */
Polygon geo
/* 步骤一: 将谷歌墨卡托平面坐标系上的图形转换为CGJ-02地理坐标系图形 */
geo = GeometryEngine.project(b_SHAPEs.get(i).getSHAPE(), reference, referenceA);

/* 步骤二:拆分CGJ-02地理坐标系图形 */
MultiPath multiPath = (MultiPath)geo;
List<Point> points = new ArrayList<Point>();

for (int j = 0; j < multiPath.getPointCount(); j++) {

// 注意这里将会把CGJ-02的点转化为WGS84的点 - 转化方式可以查找我的博客中: WGS84 | CGJ-02坐标系互转        double[] xy = CGJ02ToWGS84.Backstepping(multiPath          .getPoint(j).getX(), multiPath.getPoint(j)          .getY());        points.add(new Point(xy[0], xy[1]));

      }

/* 重组 */

Polygon polygon = new Polygon();

      for (int k = 0; k < points.size(); k++) {

       if (k == 0) {         polygon.startPath(points.get(k));        } else {         polygon.lineTo(points.get(k));        }

      }

/* 赋值 结束 */ geo = polygon;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值