CN116974550B - 一种通用三维地球可视化方法 - Google Patents
一种通用三维地球可视化方法 Download PDFInfo
- Publication number
- CN116974550B CN116974550B CN202311217169.8A CN202311217169A CN116974550B CN 116974550 B CN116974550 B CN 116974550B CN 202311217169 A CN202311217169 A CN 202311217169A CN 116974550 B CN116974550 B CN 116974550B
- Authority
- CN
- China
- Prior art keywords
- qml
- processor
- interface
- reference mode
- source code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000007794 visualization technique Methods 0.000 title abstract description 7
- 238000000034 method Methods 0.000 claims abstract description 34
- 230000008569 process Effects 0.000 claims abstract description 23
- 238000009877 rendering Methods 0.000 claims abstract description 11
- 238000012545 processing Methods 0.000 claims abstract description 5
- 238000010327 methods by industry Methods 0.000 claims abstract description 4
- 230000009466 transformation Effects 0.000 claims abstract description 4
- 238000004590 computer program Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 3
- 238000007430 reference method Methods 0.000 claims description 3
- 238000012800 visualization Methods 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 6
- 238000011161 development Methods 0.000 abstract description 4
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Remote Sensing (AREA)
- Computer Graphics (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
本发明公开了一种通用三维地球可视化方法,包括以下步骤:S1,进行cesium源码javascript文件库的格式调整;S2,修改cesium对web浏览器的强依赖关系接口,即修改cesium源码中对document的依赖;S3,按照qml渲染接口,实现cesium接口改造;S4,编译客户端qml cesium工程,生成可执行程序。本发明通过qml和cesium技术整合,提高开发效率,同时降低了人工成本。
Description
技术领域
本发明属于三维态势展示方法领域,特别涉及一种通用三维地球可视化方法。
背景技术
市场对客户端三维态势显示、web端三维态势显示的要求越来越高,同时需要投入的成本也是逐步增加,专业三维开发人员相当紧张,很难匹配到同时兼顾客户端三维、web三维全面的开发人员,往往客户端三维需要一个开发人员,web三维需要一个开发人员,人员投入成本高,同时技术无法共享复用。
发明内容
为了解决现有问题,本发明提供了一种通用三维地球可视化方法,具体方案如下:
一种通用三维地球可视化方法,包括以下步骤:
S1,进行cesium源码javascript文件库的格式调整;
S2,修改cesium 对web浏览器的强依赖关系接口,即修改cesium源码中对document的依赖;
S3,按照qml渲染接口,实现cesium接口改造;
S4,编译客户端qml cesium工程,生成可执行程序。
优选地,步骤S1中格式调整是对cesium的javascript文件引用方式进行调整,修改为qml语法识别的引用方式,去掉cesium中define定义,其中所述define定义为web浏览器端javascript文件的引用方法。
优选地,qml语法识别的引用方式为Qt.include引用方式,所述Qt.include引用方式为qml中javascript文件引用javascript文件的方式。
优选地,所述步骤S3将渲染画布修改为qml中的Canvas3D,通过Canvas3D的onInitializeGL函数绘制接口调用cesium初始化渲染,其中所述Canvas3D为qml语言中的一个对象。
优选地,所述步骤S4通过QtCreator工具创建qml工程,将修改的cesium源码加载到工程中,点击项目构建、部署,即可生成可执行程序。
本发明还揭示了一种计算机可读存储介质,介质上存有计算机程序,计算机程序运行后,执行如上述任一项所述的方法。
本发明还揭示了一种计算机系统,包括处理器、存储介质,存储介质上存有计算机程序,处理器从存储介质上读取并运行计算机程序以执行如上述任一项所述的方法。
本发明的有益效果在于:
本发明通过qml和cesium技术整合,提高开发效率,同时降低了人工成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明的方法流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地说明,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
如图1,一种通用三维地球可视化方法,包括以下步骤:
S1,进行cesium源码javascript文件库的格式调整。
qml的宿主环境和web浏览器的宿主环境存在差异,qml的javascript宿主环境要求比较严格,只支持原生javascript接口。因此,进行cesium源码javascript文件库的格式调整。
格式调整是对cesium的javascript文件引用方式进行调整,修改为qml语法识别的引用方式,去掉cesium中define定义,因为通过define引用javascript文件在qml中无法识别。
其中,qml为Qt官方出的一种开发语言。define定义为web浏览器端javascript文件的引用方法。另外,qml语法识别的引用方式为Qt.include引用方式,Qt.include引用方式为qml中javascript文件引用javascript文件的方式。
S2,修改cesium 对web浏览器的强依赖关系接口,即修改cesium源码中对document的依赖,因为qml中没有document对象。其中,document为前端web的一个文档对象。
S3,按照qml渲染接口,实现cesium接口改造;
具体地,web前端是将cesium三维球渲染到div中,为了能让cesium三维球在qml中渲染,将渲染画布修改为qml中的Canvas3D,通过Canvas3D的onInitializeGL函数绘制接口调用cesium初始化渲染,其中,div为web前端编辑的一个标签,Canvas3D为qml语言中的一个对象。
S4,编译客户端qml cesium工程,生成可执行程序。
具体地,通过QtCreator工具创建qml工程,将修改的cesium源码加载到工程中,点击项目构建、部署,即可生成可执行程序。
通过qml编译cesium为可执行程序区别于通过浏览器内核引擎webEngine模块直接封装调用cesium三维服务,直接编译cesium到qml中,是完全的qml引擎渲染解析,采用webEngine加载实质和web浏览器原理一致,同时实现了对代码后台代码的隐藏,输出程序为单进程程序,外部用户无法查看到源代码,更有益于代码保护。
本发明通过qml和cesium技术整合,提高开发效率,同时降低了人工成本。
本发明还揭示了一种计算机可读存储介质,介质上存有计算机程序,计算机程序运行后,执行如上述的方法。
同时,本发明还揭示了一种计算机系统,包括处理器、存储介质,存储介质上存有计算机程序,处理器从存储介质上读取并运行计算机程序以执行如上述的方法。
本领域技术人员将进一步领会,结合本文中所公开的实施例来描述的各种解说性逻辑板块、模块、电路、和算法步骤可实现为电子硬件、计算机软件、或这两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、框、模块、电路、和步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体系统的设计约束。技术人员对于每种特定应用可用不同的方式来实现所描述的功能性,但这样的实现决策不应被解读成导致脱离了本发明的范围。
结合本文所公开的实施例描述的各种解说性逻辑板块、模块、和电路可用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其设计成执行本文所描述功能的任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,该处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、与DSP核心协作的一个或多个微处理器、或任何其他此类配置。
结合本文中公开的实施例描述的方法或算法的步骤可直接在硬件中、在由处理器执行的软件模块中或在这两者的组合中体现。软件模块可驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域中所知的任何其他形式的存储介质中。示例性存储介质耦合到处理器以使得该处理器能从/向该存储介质读取和写入信息。在替换方案中,存储介质可以被整合到处理器。处理器和存储介质可驻留在ASIC中。ASIC可驻留在用户终端中。在替换方案中,处理器和存储介质可作为分立组件驻留在用户终端中。
在一个或多个示例性实施例中,所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现为计算机程序产品,则各功能可以作为一条或更多条指令或代码存储在计算机可读介质上或藉其进行传送。计算机可读介质包括计算机存储介质和通信介质两者,其包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,这样的计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或能被用来携带或存储指令或数据结构形式的合意程序代码且能被计算机访问的任何其它介质。任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或诸如红外、无线电、以及微波之类的无线技术从web网站、服务器、或其它远程源传送而来,则该同轴电缆、光纤电缆、双绞线、DSL、或诸如红外、无线电、以及微波之类的无线技术就被包括在介质的定义之中。如本文中所使用的盘(disk)和碟 (disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘和蓝光碟,其中盘(disk)往往以磁的方式再现数据,而碟(disc)用激光以光学方式再现数据。上述的组合也应被包括在计算机可读介质的范围内。
提供对本公开的先前描述是为使得本领域任何技术人员皆能够制作或使用本公开。对本公开的各种修改对本领域技术人员来说都将是显而易见的,且本文中所定义的普适原理可被应用到其他变体而不会脱离本公开的精神或范围。由此,本公开并非旨在被限定于本文中所描述的示例和设计,而是应被授予与本文中所公开的原理和新颖性特征相一致的最广范围。
尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (4)
1.一种通用三维地球可视化方法,其特征在于,包括以下步骤:
S1,进行cesium源码javascript文件库的格式调整;其中,格式调整是对cesium的javascript文件引用方式进行调整,修改为qml语法识别的引用方式,去掉cesium中define定义,所述define定义为web浏览器端javascript文件的引用方法;且qml语法识别的引用方式为Qt.include引用方式,所述Qt.include引用方式为qml中javascript文件引用javascript文件的方式;
S2,修改cesium 对web浏览器的强依赖关系接口,即修改cesium源码中对document的依赖;
S3,按照qml渲染接口,实现cesium接口改造;具体地,将渲染画布修改为qml中的Canvas3D,通过Canvas3D的onInitializeGL函数绘制接口调用cesium初始化渲染,其中所述Canvas3D为qml语言中的一个对象;
S4,编译客户端qml cesium工程,生成可执行程序。
2.根据权利要求1所述的方法,其特征在于:所述步骤S4通过QtCreator工具创建qml工程,将修改的cesium源码加载到工程中,点击项目构建、部署,即可生成可执行程序。
3.一种计算机可读存储介质,其特征在于:介质上存有计算机程序,计算机程序运行后,执行如权利要求1至2中任一项所述的方法。
4.一种计算机系统,其特征在于:包括处理器、存储介质,存储介质上存有计算机程序,处理器从存储介质上读取并运行计算机程序以执行如权利要求1至2中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311217169.8A CN116974550B (zh) | 2023-09-20 | 2023-09-20 | 一种通用三维地球可视化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311217169.8A CN116974550B (zh) | 2023-09-20 | 2023-09-20 | 一种通用三维地球可视化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116974550A CN116974550A (zh) | 2023-10-31 |
CN116974550B true CN116974550B (zh) | 2023-12-29 |
Family
ID=88477024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311217169.8A Active CN116974550B (zh) | 2023-09-20 | 2023-09-20 | 一种通用三维地球可视化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116974550B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106096016A (zh) * | 2016-06-24 | 2016-11-09 | 北京建筑大学 | 一种基于网络的三维点云可视化方法以及装置 |
CN108319488A (zh) * | 2018-02-07 | 2018-07-24 | 安徽大中润科技有限公司 | 一种基于qml图形化的统一消息处理方法及装置 |
CN108364341A (zh) * | 2018-03-05 | 2018-08-03 | 四川易利数字城市科技有限公司 | 基于可重用模板模型的三维场景加载渲染效率提高方法 |
KR102176837B1 (ko) * | 2019-08-19 | 2020-11-10 | 공간정보기술 주식회사 | 웹 기반 3차원 고속화 렌더링 편집 시스템 및 그 방법 |
CN112231608A (zh) * | 2020-10-30 | 2021-01-15 | 三峡机电工程技术有限公司 | 一种嵌入式Web组态图元的实现方法 |
CN113779168A (zh) * | 2021-08-26 | 2021-12-10 | 广州和辰信息科技有限公司 | 一种基于WebAssembly的矢量空间数据解析方法 |
CN114297546A (zh) * | 2021-12-30 | 2022-04-08 | 中科星图股份有限公司 | 一种基于WebGL的载入3D模型实现自动生成缩略图的方法 |
CN115269756A (zh) * | 2022-07-27 | 2022-11-01 | 广东亿迅科技有限公司 | 一种在cesium中引入热力图的方法及系统 |
CN115639981A (zh) * | 2022-10-19 | 2023-01-24 | 广州和辰信息科技有限公司 | 一种基于3dgis的数字档案馆实现方法和系统 |
CN116126981A (zh) * | 2022-12-02 | 2023-05-16 | 合肥泽众城市智能科技有限公司 | 一种三维可视化技术在城市安全业务场景的使用方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10824770B2 (en) * | 2018-12-13 | 2020-11-03 | Sap Se | Web application execution with secure elements |
-
2023
- 2023-09-20 CN CN202311217169.8A patent/CN116974550B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106096016A (zh) * | 2016-06-24 | 2016-11-09 | 北京建筑大学 | 一种基于网络的三维点云可视化方法以及装置 |
CN108319488A (zh) * | 2018-02-07 | 2018-07-24 | 安徽大中润科技有限公司 | 一种基于qml图形化的统一消息处理方法及装置 |
CN108364341A (zh) * | 2018-03-05 | 2018-08-03 | 四川易利数字城市科技有限公司 | 基于可重用模板模型的三维场景加载渲染效率提高方法 |
KR102176837B1 (ko) * | 2019-08-19 | 2020-11-10 | 공간정보기술 주식회사 | 웹 기반 3차원 고속화 렌더링 편집 시스템 및 그 방법 |
CN112231608A (zh) * | 2020-10-30 | 2021-01-15 | 三峡机电工程技术有限公司 | 一种嵌入式Web组态图元的实现方法 |
CN113779168A (zh) * | 2021-08-26 | 2021-12-10 | 广州和辰信息科技有限公司 | 一种基于WebAssembly的矢量空间数据解析方法 |
CN114297546A (zh) * | 2021-12-30 | 2022-04-08 | 中科星图股份有限公司 | 一种基于WebGL的载入3D模型实现自动生成缩略图的方法 |
CN115269756A (zh) * | 2022-07-27 | 2022-11-01 | 广东亿迅科技有限公司 | 一种在cesium中引入热力图的方法及系统 |
CN115639981A (zh) * | 2022-10-19 | 2023-01-24 | 广州和辰信息科技有限公司 | 一种基于3dgis的数字档案馆实现方法和系统 |
CN116126981A (zh) * | 2022-12-02 | 2023-05-16 | 合肥泽众城市智能科技有限公司 | 一种三维可视化技术在城市安全业务场景的使用方法 |
Non-Patent Citations (4)
Title |
---|
Acess Cesium:viewer in QT5 QML;dayunbao;"https//community.cesium.com/t/access-cesium-viewer-in-qt5-qml/6372";全文 * |
cesiumDemo:qml 上运行cesium;muym;"https://gitee.com/muerdai/cesium-demo";全文 * |
基于Cesium的三维模型平移旋转实现;张玉茜;;机电信息(30);第120-121、123页 * |
基于Cesium的城市内涝模拟三维可视化方法;章旭;沈婕;周卫;杜毅贤;徐家鹏;;南京师范大学学报(工程技术版)(03);第70-75页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116974550A (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7317722B2 (ja) | ブロックチェーンコンパイラ | |
US7610545B2 (en) | Annotations for tracking provenance | |
JP5415557B2 (ja) | デバッギングのためのユーザ・スクリプト・コードの変換 | |
TWI556170B (zh) | 將作業系統之原始應用程式介面投射至其它程式語言(二) | |
CN107273176B (zh) | 一种适配硬件架构的编译方法及装置 | |
KR20150024842A (ko) | 적응식 이식가능 라이브러리 | |
WO2021258692A1 (zh) | 一种多芯片兼容的编译方法和装置 | |
US20170054790A1 (en) | System and Method for Object Compression and State Synchronization | |
CN108089870B (zh) | 用于修复应用的方法和装置 | |
CN115629971A (zh) | 一种应用的开发系统和开发方法 | |
CN104375875A (zh) | 用于应用程序的编译优化的方法以及编译器 | |
CN115951890A (zh) | 一种不同前端框架间的代码转换方法及系统及装置 | |
US20080127034A1 (en) | Distributed resource understanding tool management | |
JP2023507709A (ja) | 統合された参照及び二次のマーキング | |
US9405652B2 (en) | Regular expression support in instrumentation languages using kernel-mode executable code | |
US20160342400A1 (en) | Compact Type Layouts | |
CN116974550B (zh) | 一种通用三维地球可视化方法 | |
TWI467481B (zh) | 層級式程式源碼管理方法、系統及電腦程式產品 | |
CN110018831B (zh) | 程序处理方法、装置及计算机可读存储介质 | |
CN115951870A (zh) | 一种镜像文件编译方法、系统、设备及介质 | |
WO2023227303A1 (en) | Binary translation using raw binary code with compiler produced metadata | |
CN116303143A (zh) | 基于LLVM编译框架来增强WebAssembly内存安全的方法 | |
US11762677B1 (en) | High-level vectorization and scalarization of Java vector API library methods | |
CN115629795A (zh) | 一种可执行文件的配置方法、装置及电子设备 | |
CN114995790A (zh) | 一种组件开发方法、装置、计算机可读介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |