月球大数据地理空间分析展示平台-【前端】-月球2期前端
Surpriseplus
2023-09-14 0e828960b1ffc10f19303316e7e1a10c9117614e
src/components/mouseMove.vue
@@ -25,6 +25,7 @@
</template>
<script lang="ts" setup>
import InitMap from "@/assets/js/Map";
import {
  ref,
  onMounted,
@@ -76,7 +77,7 @@
        Cesium.Cartographic.fromDegrees(longitude.value, latitude.value, 0)
      );
      if (altHeight.value) {
        altHeight.value = altHeight.value.toFixed(6);
        altHeight.value = altHeight.value.toFixed(2);
      }
    }
  }, SmartEarth.Cesium.ScreenSpaceEventType.MOUSE_MOVE);
@@ -110,25 +111,18 @@
      globe.ellipsoid.cartesianToCartographic(rightPosition);
    var geodesic = new SmartEarth.Cesium.EllipsoidGeodesic();
    geodesic.setEndPoints(leftCartographic, rightCartographic);
    rate.value = geodesic.surfaceDistance.toFixed(6); //分辨率
    rate.value = geodesic.surfaceDistance.toFixed(2); //分辨率
  });
};
const gridSwitch = () => {
  gridIsshow.value = !gridIsshow.value;
  if (gridIsshow.value) {
    grid(10);
    // getHeight();
    // createPrimitives();
  } else {
    gridDel();
  }
  InitMap.showlonlatLine();
};
const getHeight = () => {
  let removeListener = Viewer.camera.changed.addEventListener(() => {
    // 当前高度
    let height = Viewer.camera.positionCartographic.height;
    heightlevel = getLevel(height);
    console.log(heightlevel);
    if (heightlevel == 6) {
      gridDel();
      grid(5);
@@ -165,7 +159,7 @@
  //     ])
  //   );
  // }
  // console.log(ps);
  // let polylineGeometry = new Cesium.PolylineGeometry({
  //   positions: ps,
  //   width: 5,
@@ -190,16 +184,6 @@
const grid = (degree) => {
  const entities = Viewer.entities;
  for (let longitude = -180; longitude <= 180; longitude += degree) {
    console.log(
      Cesium.Cartesian3.fromDegreesArray([
        longitude,
        -90,
        longitude,
        0,
        longitude,
        90,
      ])
    );
    let text = "";
    if (longitude === 0) {
      text = "0";
@@ -247,7 +231,7 @@
    if (lat === 0) {
      text = "";
    }
    // console.log(lat, "---lat");
    let obj = entities.add({
      position: Cesium.Cartesian3.fromDegrees(0, lat),
      polyline: {
@@ -278,7 +262,7 @@
    });
    entitiesObj.latLine.push(obj);
  }
  console.log(entitiesObj);
  // 抗锯齿
  if (Cesium.FeatureDetection.supportsImageRenderingPixelated()) {
    //判断是否支持图像渲染像素化处理