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,欢迎一起交流!

相关推荐
天渺工作室27 分钟前
实现一个adblock/adblock plus等浏览器广告拦截器检测插件
前端·javascript
阳光是sunny1 小时前
Vue 项目怎么做用户行为全链路监控?轻量插件方案详解
前端·面试·架构
ZhengEnCi1 小时前
Q04-Vite禁用CSS代码分割-解决生产环境样式加载顺序混乱问题
前端·vue.js·vite
九酒2 小时前
AI Agent 开发踩坑记:口播功能非得用 APP 原生实现吗?
前端·人工智能·agent
Jackson__2 小时前
做了一段时间的AI coding后,我终于搞清了 CLI 和 MCP 的区别
前端·agent·ai编程
IT_陈寒5 小时前
JavaScript项目实战经验分享
前端·人工智能·后端
用户47949283569155 小时前
6w star,GitHub 趋势第一的 Ponytail,这个agent插件到底在火什么
前端·后端
薛定喵的谔7 小时前
我开源了一个精致的 Next.js 博客模板:Skyplume
前端·前端框架·next.js
张龙6877 小时前
构建生产级 AI Agent:工具调用与记忆架构实战指南
前端
kyriewen8 小时前
2026 年了,还在用 Node.js?Bun 迁移实战:20 分钟搞定,附踩坑记录
前端·javascript·node.js