Cesium坐标转换

Cesium坐标转换

屏幕坐标、三维空间坐标、投影坐标

1.坐标系:

var pt1 = new Cesium.Cartesian2(1,1) //表示一个二维笛卡尔坐标系,也就是直角坐标系(屏幕坐标系)

new Cesium.Cartesian3(1,1,1) //表示一个三维笛卡尔坐标系,也是直角坐标系(就是真实世界的坐标系)

2.二维屏幕坐标系到三维坐标系的转换:

var pick= scene.globe.pick(viewer.camera.getPickRay(pt1), scene) //其中pt1为一个二维屏幕坐标。

3.三维坐标到地里坐标的转换:

var geoPt= scene.globe.ellipsoid.cartesianToCartographic(pick1) //其中pick1是一个Cesium.Cartesian3对象。

4.地里坐标到经纬度坐标的转换:

var point1=[geoPt.longitude / Math.PI * 180,geoPt.latitude / Math.PI * 180]; //其中geoPt1是一个地理坐标。

5.经纬度坐标转地里坐标(弧度):

var cartographic = Cesium.Cartographic.fromDegree(point) //point是经纬度值

var coord_wgs84 = Cesium.Cartographic.fromDegrees(lng, lat, alt);//单位:度,度,米

6.经纬度坐标到世界坐标:

var cartesian = Cesium.Cartesian3.fromDegree(point)

7.弧度角度转换:

Cesium.Math.toDegrees(radians);//将弧度转换为角度

Cesium.Math.toRadians(degrees);//将角度转换为弧度

/

var toRadians = Math.PI / 180.0;//角度转化为弧度(rad)
var toDegrees = 180.0 / Math.PI;//弧度转化为角度

8.计算两个三维坐标之间的距离:

var d = Cesium.Cartesian3.distance(

new Cesium.Cartesian3(pick1.x, pick1.y, pick1.z),

new Cesium.Cartesian3(pick3.x, pick3.y, pick3.z)

); //pick1、pick3都是三维坐标系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值