var point={"x":geoPt.longitude / Math.PI *
180,"y":geoPt.latitude / Math.PI * 180}; */
var
scene = viewer.scene;
//
得到当前三维场景
var
ellipsoid = scene.globe.ellipsoid;
//
得到当前三维场景的椭球
体
var
drawHandler =
new
Cesium.ScreenSpaceEventHandler(scene.canvas);
//
设置鼠标移动事件的处理函数,这里负责监听
x,y
坐标值变化【
LEFT_CLICK
的
movement
对象是
position
属性】
drawHandler.setInputAction(
function
(movement) {
//
通过指定的椭球或者地图对应的坐标系,
将鼠标的二维坐标转换为对应椭球体
三维坐标
var
cartesian = viewer.camera.pickEllipsoid(movement.position,
ellipsoid);
if
(cartesian) {
//
将笛卡尔坐标转换为地理坐标
var
cartographic
=
ellipsoid.cartesianToCartographic(cartesian);
//
将弧度转为度的十进制度表示
var
longitudeString =
Cesium.Math.toDegrees(cartographic.longitude);
var
latitudeString =
Cesium.Math.toDegrees(cartographic.latitude);
obj.find(
"input[name='x']"
).val(longitudeString);
obj.find(
"input[name='y']"
).val(latitudeString);
drawHandler.destroy();
}
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);