xieb
2023-11-16 2ff44773a8dabed87dc1f70c0676961939310e75
src/components/g-map/DroneControlPanel.vue
@@ -525,8 +525,10 @@
  flyByArea(sn, dockPoint, jsonPath, radius, deviceSn, payloadIndex).then(res => {
    const targetPoint = res.data
    console.log('targetPoint====', targetPoint)
    // 获取到点之后在图上绘点
    targetPoint.forEach((point, index) => {
      console.log(point)
      const setting = {
        longitude: point.lon,
        latitude: point.lat,
@@ -546,8 +548,49 @@
        },
        id: 'target' + index,
      }
      cesiumFunc.addPoint(setting)
      // 根据点画连线
      let polylineSetting = {}
      if (index === (targetPoint.length - 1)) {
        polylineSetting = {
          polyline: {
            positions: Cesium.Cartesian3.fromDegreesArrayHeights([
              point.lon,
              point.lat,
              0,
              targetPoint[0].lon,
              targetPoint[0].lat,
              0
            ]),
            width: 10,
            arcType: Cesium.ArcType.NONE,
            material: new Cesium.PolylineArrowMaterialProperty(
              Cesium.Color.RED
            ),
          },
          id: 'fxTarget' + index
        }
      } else {
        polylineSetting = {
          polyline: {
            positions: Cesium.Cartesian3.fromDegreesArrayHeights([
              point.lon,
              point.lat,
              0,
              targetPoint[index + 1].lon,
              targetPoint[index + 1].lat,
              0
            ]),
            width: 10,
            arcType: Cesium.ArcType.NONE,
            material: new Cesium.PolylineArrowMaterialProperty(
              Cesium.Color.RED
            ),
          },
          id: 'fxTarget' + index
        }
      }
      cesiumFunc.addPolyline(polylineSetting)
    })
  })
}