1.鼠标监听
handler.setInputAction(function(movement) {
cartesian = viewer.camera.pickEllipsoid(movement.position, ellipsoid);//movement.endPosition,主要用于用cesium表示行星体的形状
if (cartesian) {
//将笛卡尔坐标转换为地理坐标
var cartographic = Cesium.Cartographic.fromCartesian(cartesian);
longitudeString = Cesium.Math.toDegrees(cartographic.longitude).toFixed(3);
latitudeString = Cesium.Math.toDegrees(cartographic.latitude).toFixed(3);
//获取相机高度
height = Math.ceil(viewer.camera.positionCartographic.height);
mouse_state.innerText = 'LEFT_UP :(' + longitudeString + ', ' + latitudeString + "," + height + ')';
}else {
mouse_state.innerText = '';
}
}, Cesium.ScreenSpaceEventType.LEFT_UP );
```//一 鼠标MOUSE_MOVE
handler.setInputAction(function(movement) {
//通过指定的椭球或者地图对应的坐标系,将鼠标的二维坐标转换为对应椭球体三维坐标
cartesian = viewer.camera.pickEllipsoid(movement.endPosition, ellipsoid);
if (cartesian) {
//将笛卡尔坐标转换为地理坐标
var cartographic = ellipsoid.cartesianToCartographic(cartesian);
//将弧度转为度的十进制度表示
longitudeString = Cesium.Math.toDegrees(cartographic.longitude).toFixed(3);
latitudeString = Cesium.Math.toDegrees(cartographic.latitude).toFixed(3);
//获取相机高度
height = Math.ceil(viewer.camera.positionCartographic.height).toFixed(3);
mouse_state.innerText = '移动:(' + longitudeString + ', ' + latitudeString + "," + height + ')';
}else {
mouse_state.innerText = "";
}
}, Cesium.ScreenSpaceEventType.MOUSE_MOVE);
