cesium 经纬度绘制点_cesium获取点取地理坐标
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);
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);