WebGIS航线编辑器(无人机航线规划)

无人机航点、航线规划,实现全自动航点飞行作业及飞行航拍。禁飞区、作业区功能保障飞行安全。

GIS引擎加载

const viewer = new Cesium.Viewer("cesiumContainer", {

imageryProvider: new Cesium.IonImageryProvider({ assetId: 3872 }),

});

const imageryLayers = viewer.imageryLayers;

const nightLayer = imageryLayers.get(0);
const dayLayer = imageryLayers.addImageryProvider(
new Cesium.IonImageryProvider({
assetId: 3875,
})
);
imageryLayers.lowerToBottom(dayLayer);

GIS航线

多相机联动

GIS多相机联动

航线加载

复制代码
const czml = [
  {
    id: "document",
    name: "CZML Geometries: Polyline",
    version: "1.0",
  },
  {
    id: "redLine",
    name: "Red line clamped to terain",
    polyline: {
      positions: {
        cartographicDegrees: [-75, 35, 0, -125, 35, 0],
      },
      material: {
        solidColor: {
          color: {
            rgba: [255, 0, 0, 255],
          },
        },
      },
      width: 5,
      clampToGround: true,
    },
  },
  {
    id: "blueLine",
    name: "Glowing blue line on the surface",
    polyline: {
      positions: {
        cartographicDegrees: [-75, 37, 0, -125, 37, 0],
      },
      material: {
        polylineGlow: {
          color: {
            rgba: [100, 149, 237, 255],
          },
          glowPower: 0.2,
          taperPower: 0.5,
        },
      },
      width: 10,
    },
  },
  {
    id: "orangeLine",
    name:
      "Orange line with black outline at height and following the surface",
    polyline: {
      positions: {
        cartographicDegrees: [-75, 39, 250000, -125, 39, 250000],
      },
      material: {
        polylineOutline: {
          color: {
            rgba: [255, 165, 0, 255],
          },
          outlineColor: {
            rgba: [0, 0, 0, 255],
          },
          outlineWidth: 2,
        },
      },
      width: 5,
    },
  },
  {
    id: "purpleLine",
    name: "Purple arrow at height",
    polyline: {
      positions: {
        cartographicDegrees: [-75, 43, 500000, -125, 43, 500000],
      },
      material: {
        polylineArrow: {
          color: {
            rgba: [148, 0, 211, 255],
          },
        },
      },
      arcType: "NONE",
      width: 10,
    },
  },
  {
    id: "dashedLine",
    name: "Blue dashed line",
    polyline: {
      positions: {
        cartographicDegrees: [-75, 45, 500000, -125, 45, 500000],
      },
      material: {
        polylineDash: {
          color: {
            rgba: [0, 255, 255, 255],
          },
        },
      },
      width: 4,
    },
  },
];

const dataSourcePromise = Cesium.CzmlDataSource.load(czml);
viewer.dataSources.add(dataSourcePromise);

感兴趣的可以留言或发邮件 1985692469@qq.com,欢迎一起交流!

相关推荐
掘金安东尼1 天前
让 JavaScript 更容易「善后」的新能力
前端·javascript·面试
掘金安东尼1 天前
用 HTMX 为 React Data Grid 加速实时更新
前端·javascript·面试
灵感__idea1 天前
Hello 算法:众里寻她千“百度”
前端·javascript·算法
yinuo1 天前
轻松接入大语言模型API -04
前端
袋鼠云数栈UED团队1 天前
基于 Lexical 实现变量输入编辑器
前端·javascript·架构
cipher1 天前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
UrbanJazzerati1 天前
非常友好的Vue 3 生命周期详解
前端·面试
AAA阿giao1 天前
从零构建一个现代登录页:深入解析 Tailwind CSS + Vite + Lucide React 的完整技术栈
前端·css·react.js
兆子龙1 天前
像 React Hook 一样「自动触发」:用 Git Hook 拦住忘删的测试代码与其它翻车现场
前端·架构
兆子龙2 天前
用 Auto.js 实现挂机脚本:从找图点击到循环自动化
前端·架构