guoshilong
2023-11-15 67ddc799e509bed44432aa90e5dd4935c61e02af
图斑飞行
3 files modified
1 files added
41 ■■■■ changed files
src/api/wayline.ts 4 ●●●● patch | view | raw | blame | history
src/assets/jsonData/jkj(1).json 1 ●●●● patch | view | raw | blame | history
src/components/g-map/DroneControlPanel.vue 34 ●●●● patch | view | raw | blame | history
src/pages/page-web/projects/tsa.vue 2 ●●● patch | view | raw | blame | history
src/api/wayline.ts
@@ -221,9 +221,9 @@
  distance?:number
}
export const flyByArea = async function (sn:string,dockPoint:Point,areaList:any[],radius:number,deviceSn:string): Promise<IWorkspaceResponse<any>> {
export const flyByArea = async function (sn:string,dockPoint:Point,jsonPath:any,radius:number,deviceSn:string): Promise<IWorkspaceResponse<any>> {
  const url = `${HTTP_PREFIX}/workspaces/${sn}/jobs/${deviceSn}/flyByArea`
  const result = await request.post(url,{dockPoint:dockPoint,areaList:areaList,radius:radius})
  const result = await request.post(url,{dockPoint:dockPoint,jsonPath:jsonPath,radius:radius})
  return result.data
}
src/assets/jsonData/jkj(1).json
New file
@@ -0,0 +1 @@
{"type":"FeatureCollection","crs":{"type":"name","properties":{"name":"EPSG:4326"}},"features":[{"type":"Feature","id":0,"geometry":{"type":"Polygon","coordinates":[[[115.86646556494736,28.634450296554235],[115.86425430209033,28.635738328540754],[115.86455173471609,28.633120921432976],[115.86697714906381,28.633843533997606],[115.86646556494736,28.634450296554235]]]},"properties":{"FID":0,"Id":0}},{"type":"Feature","id":1,"geometry":{"type":"Polygon","coordinates":[[[115.86400669060504,28.620271391369386],[115.86002109341996,28.616202513049245],[115.86637425430604,28.614203765804177],[115.86591204400565,28.617200102075913],[115.86400669060504,28.620271391369386]]]},"properties":{"FID":1,"Id":0}},{"type":"Feature","id":2,"geometry":{"type":"Polygon","coordinates":[[[115.83936693345481,28.616199931733206],[115.84128848946852,28.616084360149614],[115.84093157031771,28.618154491224743],[115.83814760094094,28.618654178035968],[115.83936693345481,28.616199931733206]]]},"properties":{"FID":2,"Id":0}},{"type":"Feature","id":3,"geometry":{"type":"Polygon","coordinates":[[[115.76493801956997,28.690367528093361],[115.76654812497384,28.688124702651749],[115.77111669010515,28.688505416412738],[115.7695938350613,28.690980055858802],[115.76493801956997,28.690367528093361]]]},"properties":{"FID":3,"Id":0}}]}
src/components/g-map/DroneControlPanel.vue
@@ -497,25 +497,27 @@
    lat: props.deviceInfo.dock.basic_osd.latitude
  })
  const deviceSn = props.deviceInfo.dock.basic_osd.sub_device?.device_sn
  const jsonData = await parseJsonFile('../src/assets/jsonData/图斑_FeaturesToJSON(1).json')
  const jsonPath = 'src/main/resources/jkj(1).json'
  const sn = props.sn
  const features = jsonData.features
  const list = []
  // const jsonData = await parseJsonFile('../src/assets/jsonData/jkj(1).json')
  features.forEach(feature => {
    const areaList = []
    feature.geometry.coordinates[0].forEach(areaPoint => {
      console.log('areaPoint:', areaPoint)
      const point = {
        lon: areaPoint[0],
        lat: areaPoint[1]
      }
      areaList.push(point)
    })
    list.push(areaList)
  })
  // const features = jsonData.features
  // const list = []
  flyByArea(sn, dockPoint, list, radius, deviceSn).then(res => {
  // features.forEach(feature => {
  //   const areaList = []
  //   feature.geometry.coordinates[0].forEach(areaPoint => {
  //     console.log('areaPoint:', areaPoint)
  //     const point = {
  //       lon: areaPoint[0],
  //       lat: areaPoint[1]
  //     }
  //     areaList.push(point)
  //   })
  //   list.push(areaList)
  // })
  flyByArea(sn, dockPoint, jsonPath, radius, deviceSn).then(res => {
    console.log(res, '----------------')
  })
}
src/pages/page-web/projects/tsa.vue
@@ -420,7 +420,7 @@
    cesium.addPoint(setting)
    // cesium.flyTo(setting)
  }
  cesium.loadGeoJson('../src/assets/jsonData/图斑_FeaturesToJSON(1).json')
  cesium.loadGeoJson('../src/assets/jsonData/jkj(1).json')
}, {
  deep: true,
})