fix: 修改状态栏坐标拾取方式(更精确)

pull/5/head
cbwu 1 year ago
parent df7d438554
commit d50f3fc842

@ -7,6 +7,7 @@
import { Angle } from '@/utils/map/angle.ts' import { Angle } from '@/utils/map/angle.ts'
import { ScreenSpaceEventHandler, Math, ScreenSpaceEventType } from 'cesium' import { ScreenSpaceEventHandler, Math, ScreenSpaceEventType } from 'cesium'
import { onMounted, ref } from 'vue' import { onMounted, ref } from 'vue'
import { cartesian2ToCartesian3 } from '@/utils/map/coordinate'
let nowLatStr: string, nowLonStr: string let nowLatStr: string, nowLonStr: string
let lonlatStr = ref('') let lonlatStr = ref('')
let isDecimal = ref(true) let isDecimal = ref(true)
@ -15,15 +16,16 @@ onMounted(() => {
let _viewer = window.viewer let _viewer = window.viewer
let canvas = _viewer.scene.canvas let canvas = _viewer.scene.canvas
let handler = new ScreenSpaceEventHandler(canvas) let handler = new ScreenSpaceEventHandler(canvas)
handler.setInputAction((e: any) => { handler.setInputAction((e: ScreenSpaceEventHandler.MotionEvent) => {
// //
let position: any = _viewer.scene.pickPosition(e.endPosition) // let position: any = _viewer.scene.pickPosition(e.endPosition)
if (!position) { // if (!position) {
position = _viewer.scene.camera.pickEllipsoid( // position = _viewer.scene.camera.pickEllipsoid(
e.startPosition, // e.startPosition,
_viewer.scene.globe.ellipsoid, // _viewer.scene.globe.ellipsoid,
) // )
} // }
let position = cartesian2ToCartesian3(_viewer, e.endPosition)
if (position) { if (position) {
// //
let cartographic = let cartographic =

Loading…
Cancel
Save