一文搞懂大疆机场kmz航线和图新地球导出的kmz的区别

2024-03-28 02:04

本文主要是介绍一文搞懂大疆机场kmz航线和图新地球导出的kmz的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

0序:

近期有用户问“ 把KML文件放到图新后,想转出来KMZ(大疆的机场用的格式)但是转出来的KMZ显示格式不对 ”

之前只是知道大疆的航线规划采用的是kml规范,但具体是什么样并不清楚。就这这个问题把这个事情给弄明白。

1.找一份大疆机场能认的kmz文件进行分析

原理:kmz就是zip文件改了后缀。核心是kml与附件的压缩包。

kmz复制一份,并改名为.zip,然后解压

打开kml和wpml看下,注意这里面存了author信息哦

2.了解大概的原理

原理直接到大疆官网查看即可,网址如下:上云API

结论:

大疆的航线kmz是遵循kml规范的自定义文件。

如果需要自己开发航线规划软件,可以参考大疆的规范,把各个字段搞清楚,如何通过参数控制飞机的指令。

3.图新地球导出的kmz和大疆的航线kmz的区别

图新地球核心是一个三维GIS平台,能够融合各类GIS数据,并在数据融合的基础上进行方案制作、分析等。

所以图新平台在展示kmz、kml方面能解析加载几十Gb的文件,

在编辑kml、kmz文件中设置图标、风格、增加属性(图片、视频、全景)等,也能基于地图快速的标绘点、线、面等格式的文件。

图新地球在操作kml、kmz方面的几个点,大家了解一下

  • 1.图新在加载kml、kmz时会自动备份,生成后缀为.bak的文件,如果出现文件编辑后损坏,请使用备份文件恢复(前提,选项设置中打开自动备份)
  • 2.图新加载kmz后,会自动修改kmz中的文件结构,如果kmz中的kml名称不是doc,会自动改为doc。
  • 3.会自动重新整理附件,如果附件没有用到,会删除掉相关的附件。

4.航线转换与开发

如果只是为了把老的kml航线转为新的kmz航线,请使用大疆自己的【Pilot2】转换。

不要把大疆的航线导入到图新地球进行编辑,图新只能展示,编辑后无法再导回到【大疆机场】。

图新只能解析大疆机场的航线kmz文件,但是无法导出大疆机场可用的航线kmz。

看一个图新加载的大疆kmz文件

如果有编码能力的朋友想要做一些简单的航线规划软件,可以基于python语言和图新地球的python api快速完成这样的设定。

大概思路:

1.基于图新地球完成航线的绘制

2.给节点设置对应的参数指令

3.按照大疆的规范协议输出kml和wpml

附:

图新地球PythonAPI帮助文档:

1.产品概述 | 图新地球PythonAPI

输出大疆机场文件java代码示例:

大疆机场开发四(画航线)_大疆司空2航线文件-CSDN博客

5.大疆机场航线导入遥控器失败解决方案

5.1MultiGeometry问题

1、右键KML文件,选择编辑文本。

2、<Polygon> 的上级标签只能是 <Placemarker>,不能再包含其他标签,如果设置了其他标签,需要手动删除。

3、重新保存KML文件,然后导入遥控器中,即可正常使用。

举例:下图中的KML文件,需要删除文本中的<MultiGeometry>标签。

5.2根目录Folder问题

1、右键KML文件,选择编辑文本。

2、M300无法识别带有 <Folder>标签的KML,如下图所示,需要删除这个标签。

3、重新保存KML文件,然后导入遥控器中,即可正常使用。

5.3非document标签开头

1、右键KML文件,选择编辑文本

2、M300可以识别的KML,必须要以<Document>为开头标签,如果缺失,APP将无法识别。

错误示范的KML中,缺少了<Document>开头标签,导致KML无法识别。解决方案是手头添加这个条目。

3、重新保存KML文件,然后导入遥控器中,即可正常使用。

这篇关于一文搞懂大疆机场kmz航线和图新地球导出的kmz的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/854120

相关文章

Java中ArrayList和LinkedList有什么区别举例详解

《Java中ArrayList和LinkedList有什么区别举例详解》:本文主要介绍Java中ArrayList和LinkedList区别的相关资料,包括数据结构特性、核心操作性能、内存与GC影... 目录一、底层数据结构二、核心操作性能对比三、内存与 GC 影响四、扩容机制五、线程安全与并发方案六、工程

java中不同版本JSONObject区别小结

《java中不同版本JSONObject区别小结》本文主要介绍了java中不同版本JSONObject区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录1. FastjsON2. Jackson3. Gson4. org.json6. 总结在Jav

Java导出Excel动态表头的示例详解

《Java导出Excel动态表头的示例详解》这篇文章主要为大家详细介绍了Java导出Excel动态表头的相关知识,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录前言一、效果展示二、代码实现1.固定头实体类2.动态头实现3.导出动态头前言本文只记录大致思路以及做法,代码不进

数据库使用之union、union all、各种join的用法区别解析

《数据库使用之union、unionall、各种join的用法区别解析》:本文主要介绍SQL中的Union和UnionAll的区别,包括去重与否以及使用时的注意事项,还详细解释了Join关键字,... 目录一、Union 和Union All1、区别:2、注意点:3、具体举例二、Join关键字的区别&php

一文详解Java Condition的await和signal等待通知机制

《一文详解JavaCondition的await和signal等待通知机制》这篇文章主要为大家详细介绍了JavaCondition的await和signal等待通知机制的相关知识,文中的示例代码讲... 目录1. Condition的核心方法2. 使用场景与优势3. 使用流程与规范基本模板生产者-消费者示例

java中的HashSet与 == 和 equals的区别示例解析

《java中的HashSet与==和equals的区别示例解析》HashSet是Java中基于哈希表实现的集合类,特点包括:元素唯一、无序和可包含null,本文给大家介绍java中的HashSe... 目录什么是HashSetHashSet 的主要特点是HashSet 的常用方法hasSet存储为啥是无序的

电脑密码怎么设置? 一文读懂电脑密码的详细指南

《电脑密码怎么设置?一文读懂电脑密码的详细指南》为了保护个人隐私和数据安全,设置电脑密码显得尤为重要,那么,如何在电脑上设置密码呢?详细请看下文介绍... 设置电脑密码是保护个人隐私、数据安全以及系统安全的重要措施,下面以Windows 11系统为例,跟大家分享一下设置电脑密码的具体办php法。Windo

一文详解Python中数据清洗与处理的常用方法

《一文详解Python中数据清洗与处理的常用方法》在数据处理与分析过程中,缺失值、重复值、异常值等问题是常见的挑战,本文总结了多种数据清洗与处理方法,文中的示例代码简洁易懂,有需要的小伙伴可以参考下... 目录缺失值处理重复值处理异常值处理数据类型转换文本清洗数据分组统计数据分箱数据标准化在数据处理与分析过

详解Vue如何使用xlsx库导出Excel文件

《详解Vue如何使用xlsx库导出Excel文件》第三方库xlsx提供了强大的功能来处理Excel文件,它可以简化导出Excel文件这个过程,本文将为大家详细介绍一下它的具体使用,需要的小伙伴可以了解... 目录1. 安装依赖2. 创建vue组件3. 解释代码在Vue.js项目中导出Excel文件,使用第三

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是