fix picker

This commit is contained in:
Aifeilong 2023-10-10 16:01:39 +08:00
parent 6ddf53ab22
commit 64501d528e

View File

@ -1,16 +1,13 @@
import { useState } from "react"; import { useState } from "react";
import { useCesium } from "resium"; import { useCesium } from "resium";
let handler;
function Picker() { function Picker() {
const { viewer } = useCesium(); const { viewer } = useCesium();
const { scene } = viewer; const { scene } = viewer;
const [lon, setLon] = useState(0); const [lon, setLon] = useState();
const [lat, setLat] = useState(0); const [lat, setLat] = useState();
// Mouse over the globe to see the cartographic position const handler = new Cesium.ScreenSpaceEventHandler(scene.canvas);
handler = new Cesium.ScreenSpaceEventHandler(scene.canvas);
handler.setInputAction(function (movement) { handler.setInputAction(function (movement) {
const cartesian = viewer.camera.pickEllipsoid( const cartesian = viewer.camera.pickEllipsoid(
movement.endPosition, movement.endPosition,
@ -31,6 +28,8 @@ function Picker() {
} }
}, Cesium.ScreenSpaceEventType.MOUSE_MOVE); }, Cesium.ScreenSpaceEventType.MOUSE_MOVE);
if (!lon && !lat) return <></>;
return ( return (
<div <div
className="picker" className="picker"