一种面向地图自动综合的图形化编程系统及装置

未命名 09-24 阅读:58 评论:0


1.本发明涉及地图制图学与地理信息工程中的地图综合领域,更具体的说是涉及一种面向地图自动综合的图形化编程系统及装置,服务于地图综合或地理信息多尺度表达程序的搭建、维护和二次开发。


背景技术:

2.多尺度地图产品在国家安全、空间规划、交通管理、灾害应急、位置服务等多个领域发挥关键作用,作为重要的交流媒介和决策工具被广泛使用。进入到信息化时代,随着自媒体、数字孪生、实景三维等新兴地理信息载体和工程的发展,地图已经从传统纸媒扩展到各类数字化媒介,这对地理信息多尺度表达的粒度、维度、精度和速度都提出了更高的要求。
3.地图综合,作为地理空间信息多尺度表达的核心技术,一直以来都是地图制图学中极具挑战性和创造性的研究领域。它主要研究将大比例尺地图缩编为小比例尺地图时,对空间数据进行抽象、概括的工程、技术和科学。传统的多尺度空间数据生产采用多库多版本的策略,这种方式容易造成信息冗余、效率低下、更新困难等问题;其生产技术模式大量依赖地图制图员的人工操作和决策。因此,地图综合的自动化程度亟待提高。
4.现有的计算机制图或地理信息系统软件包含地图综合功能,但具有一定的局限性:(1)现有软件仅提供具体综合算子,而算子的选择、参数的设定和整个综合流程的控制依赖大量人工操作和决策,使得综合过程效率较低,综合方案的复用性较差。(2)大部分程序算子的泛化性能不高,不能满足特定的综合需求,在制图过程中涉及大量的人工修正;而且,对于地图综合相关功能的二次开发支持较弱。(3)由于地理空间的异质性,在不同区域地图也呈现不同的制图要求;不同类型专题地图的制图要求也各不相同,现有的软件系统无法提供便捷灵活的程序开发方法,地图综合方案快速迭代更新的难度较大。(4)现有制图软件具有较高使用门槛,用户通常需要经过长时间的操作和开发培训,才能够独立进行地图综合方案搭建。
5.对于地图制图人员而言,他们通常掌握了大量地图综合知识和相关制图准则,但是程序开发能力较弱,这不利于搭建自动化程度较高的地图综合程序。然而,得益于地图的符号化语言特性,相比于常见的计算机编程语言,图形化的交互方式对地图制图人员更为友好。因此,很有必要探索一种方案,一方面能够充分发挥制图员掌握的领域知识和专业特性,另一方面还可以高效地开发地图自动综合程序,真正地做到取长补短,提升地理信息多尺度表达的效率和质量。


技术实现要素:

6.有鉴于此,本发明提供了一种面向地图自动综合的图形化编程系统及装置,克服现有地图综合软硬件系统的上述不足,构建一种清晰直观、操作便捷、自动化程度较高的地图综合程序搭建系统。本发明以地图综合的理论、方法和工程特点为基础,专门设计了针对
地图自动综合程序搭建的图形化编程系统和装置,极大的降低了程序开发的门槛,为快速搭建地图自动综合解决方案提供助力。
7.本发明提供一种面向地图综合的图形化编程系统和装置。如附图1所示,包括:地图综合图形化编程系统,地图综合结果展示交互装置,以及支撑二者运行的中央处理终端。
8.首先,本发明提供一种地图综合图形化编程系统。特征包括:(1)所述系统由节点生成器、功能节点库、程序绘板、代码编辑器和编译器组成;(2)基于地图综合的基本理论、方法和工程特点,定义了多种类型功能节点由功能节点库管理,类型包括:数据采集节点、数据预处理节点、综合决策节点、要素综合节点、综合约束节点、数据后处理节点、综合质量检查节点和可视化节点;(3)采用图形化的交互方式,在程序绘板内,通过选择、排布和连接不同的功能节点来编写程序代码;(4)功能节点和其数据连接线的可视化表达遵循地图符号设计准则,让用户能够直观地理解节点功能和数据状态;(5)功能节点支持自定义模式,用户可以修改节点对应的原始脚本完成二次开发;(6)系统支持引导式编程模式,用户通过引导视图,依次输入地图综合方案的相关参数,由系统自动生成图形化的程序代码;(7)系统支持自由式编程模式,用户可以依据自身对地图综合任务的理解,自主选择和连接相关功能节点,搭建地图综合方案。所述系统降低了地图综合程序开发的门槛,提升了多尺度地图产品的生产效率和质量。
9.其次,本发明提供一种地图综合结果展示交互装置。所述装置包括下述特征:(1)可以与图形化编程系统或者由该系统编译生成的地图综合程序相连接,实时显示地图综合程序开发和运行时产生的中间数据和多尺度综合结果。(2)支持触控操作,能够进行可视化交互,并对综合结果进行编辑修正。本发明描述的触控操作需优先满足手指触控的功能,但任需同时兼容鼠标、触控笔等设备的同类操作,保证所述操作在多系统、多设备上的兼容性。(3)编辑修正的行为将被记录,并反馈到地图综合图形化编程系统,并自动更新或生成相应的程序代码。(4)可以渲染出地图在pc端,移动端,普通纸张等不同媒介,不同尺寸的显示状态,让用户能够直观地感受地图综合结果在多种媒介上的可视化效果。所述装置提供了直观简单的交互方式,便于观察地图综合结果和调整综合方案。
10.最后,本发明提供了一种电子终端设备。所述终端设备包括以下模块:计算模块、存储模块、显示模块、网络模块和设备扩展模块。该终端负责支撑上述图形化编程系统和可视化交互装置的运行、通信、存储和扩展。
11.本发明的交互流程如附图2所示,用户通过地图综合图形化编程系统编写程序,并生成图形化的程序代码。该代码能够通过编程系统进行维护、更新和二次开发;可以被封装为高级功能节点入库,用于后续程序开发;也可以被直接编译为能够独立运行的地图综合程序,在生产环境中批量完成地图综合任务。在开发和程序运行过程中,用户可以通过可视化交互装置,实时观察地图综合结果,并通过触控交互调整程序代码和修正综合数据。
附图说明
12.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍。下文描述的附图与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。
13.图1为本发明提供的面向地图综合的图形化编程系统及装置的特征示意图。
14.图2为本发明提供的面向地图综合的图形化编程系统及装置的交互流程示意图。
15.图3为本发明提供的图形化编程系统的功能模块示意图。
16.图4为本发明提供节点生成器工作流程示意图。
17.图5为本发明提供的图形化编程系统中功能节点示意图及其类型。
18.图6为本发明提供的引导式编程方法的流程图。
19.图7为本发明提供的一个道路网综合方案图形化代码实例的示意图。
20.图8为本发明提供的地图综合结果实时可视化方案示意图。
21.图9为本发明提供的部分触控操作案例示意图。
具体实施方式
22.下面将结合本发明附图,对本发明实施例中的技术方案进行完整地描述。所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
23.本发明涉及的面向地图综合的图形化编程系统及装置的基本交互内容包括:用户在地图综合图形化编程系统上生成和管理地图综合功能节点,然后选择和连接功能节点,得到图形化的程序代码,并编译生成可独立运行的地图综合程序;用户通过地图综合结果展示交互装置,检查综合结果,评价和修正地图综合程序方案;用户在地图综合图形化编程系统中对已经搭建完成的图形化的程序代码进行封装、维护、更新和二次开发。
24.图形化编程系统遵从地图综合的基本理论、方法和工程特点,将所涉及的各类功能封装为符号化的功能节点,功能节点支持预定义和自定义模式。用户可以根据生产需求,从功能节点库中选择适合的已封装好的功能节点,或者通过二次开发完成特定的任务需求。图形化语言的编程方式主要包括对不同功能节点的排布和连接,可以通过简单直观的操作编写的地图综合程序。编程方式支持引导式编程和自由式编程两种方式,以高效地满足不同程度的用户需求。
25.附图3给出了所述图形化编程系统的主要功能模块,包括:
26.1.节点生成器:用于编辑和设计地图综合相关的功能节点;
27.2.功能节点库:分类管理地图综合所需的功能节点,包括入库、出库、检索等功能;
28.3.程序绘板:放置、排布和连接功能节点的工作区域,可利用图形化交互的方式搭建地图综合方案;
29.4.代码编辑器:通过修改脚本对功能节点进行二次开发;
30.5.编译器:将图形化程序代码编译为可独立运行的地图综合程序。
31.如附图4所示,利用节点生成器生成功能节点的步骤如下:
32.步骤1:载入地图综合所需的功能脚本,或者载入由图形化编程系统编写的代码;
33.步骤2:定义该节点各个输入和输出的数据类型;
34.步骤3:编辑节点的相关信息,包括:功能说明和功能类型等;
35.步骤4:根据节点的数据类型和功能,设计或载入能够代表该节点功能的符号图案;
36.步骤5:对上述代码、信息和符号进行编译封装,生成功能节点文件;
37.步骤6:将新生成的功能节点载入功能节点库。
38.附图5给出了图形化编程系统中功能节点的示意图和分类。其中,每一个节点符号都依据地图符号表达的原则进行专门的设计,保证用户能够通过符号直观地理解对应节点的基本功能。也可以通过节点信息按钮,了解节点的相关说明。点击自定义模式按钮后,即可进入文本代码视图,用户通过编辑脚本,方便地对节点功能进行修改。
39.基于地图综合的理论、方法和工程特点,功能节点被分为以下类型:数据采集节点、数据预处理节点、综合决策节点、要素综合节点、综合约束节点、数据后处理节点、综合质量检查节点和可视化节点。这八类功能节点基本能够搭建一个完整的地图综合系统,对于一些个性化的,地域性较强的需求,则可以通过自定义模式编写特定的脚本进行修正补充。
40.引导式编程可用于生成规范化综合方案,或者为定制化方案生成初始代码,降低程序编写的工作量,该方法适用于程序开发基础较弱的用户或者比较规范的地图综合应用场景。如附图6所示,进入引导模式后,用户的主要操作即是依次选择和设定综合任务相关的参数;选定所有相关参数后,代码由系统自动生成。附图7展示了一个道路综合实例代码。在引导模式下,该代码可以通过以下参数生成:
41.1.要素类型:道路;
42.2.原比例尺:1∶5000;
43.3.目标比例尺:1∶10000,1∶20000,1∶40000;
44.4.输入/输出数据类型:矢量;
45.5.约束条件:道路网多尺度相似关系函数。
46.自由式编程方法更加灵活。首先,用户根据综合任务需求,从功能节点库中选择所需功能节点。通常情况下,对于一个完整的地图综合程序,每一类节点应至少应包含一个。接下来,用户即可用点击和拖拽的方式在程序绘板上选择、排布和连接功能节点,如附图9(a)和(b)所示。最终,得到类似附图7所示的图形化程序代码。通常复杂的地图综合方案则会包含更多的功能节点和呈现更为复杂的连接方式。该模式有更大的灵活性,能够充分满足不同层次的需求,但也要求用户具备扎实地图综合知识和一定的程序设计基础。
47.两种编程方法可以结合使用,即首先通过引导式编程生成初步解决方法作为程序初稿,再通过自由式编程对该方案进行优化调整;或者在自由式编程过程中,在局部环节通过引导式编程生成代码段落,提升编程的效率。
48.在方案搭建过程中,通过配置和连接恰当的可视化功能节点,测试案例产生的中间数据和综合结果可实时显示在本发明所述的地图综合结果展示及交互装置上。图8给出了一个道路网多尺度综合结果的可视化示意图,用户可以一次性观察多个不同尺度的综合结果;此外,还可以改变综合结果的渲染方式,观察综合结果在不同尺寸和不同材质媒介上的可视化效果。也可以如图9(d)所示,通过触控拖拽叠加不同尺度的综合结果,更为细致地目视检查不同尺度数据之间的差异,以决定是否需要调整综合方案或着修改综合结果。
49.如果用户认为整体综合结果不佳,则需要调整修改图形化程序代码,以保证综合结果的正确合理。
50.如果用户认为少量对象的综合结果有误,如图9(c)所示,可以直接点击有误的地
图对象,系统会根据所选的地图要素匹配可行的地图综合算子供用户选择,以修正综合结果。用户的所有的修正行为会被记录并反馈到图形化编程系统,自动地生成相关的数据后处理节点,并嵌入到原有的图形化程序代码。这种方式不会影响全局方案,仅对部分数据完成了修正。
51.地图综合程序代码绘制修正完成后,如附图7所示,图形化编程系统可以编译生成能独立运行的地图综合程序。该程序和上述的地图综合结果展示交互装置能够有效兼容,在实际生产中进行综合结果可视化。也可以通过节点生成器将其封装为高级功能节点,用于完成复杂的多要素地图综合。例如,五个用户分别搭建了某城市的水系、等高线、兴趣点、道路网和居民地的地图自动综合方案,如果将这些方案封装为高级功能节点,则可以用于开发城市地形图的自动综合程序,显著提升开发效率。
52.在实际生产中,中央处理终端除了能够有效支持图形化编程系统和地图综合结果展示交互装置的运行,通讯和数据存储,还能够对系统进行有效扩展。在数据采集阶段,可以外接扫描仪,照相机等设备,以采集非数字化的地理信息数据,如纸质地图;程序绘制阶段,可以外接鼠标,键盘,触控笔等设备,满足不同用户的操作习惯;在数据输出阶段,可以外接地图打印设备,满足实际生产的需求。
53.总体而言,本发明充分考虑了地图综合的技术特点和地图制图用户的知识背景,利用图形化的编程语言,自动化的流程控制和简单的交互方法,有效降低了地图综合程序开发的门槛,提升了地理空间数据多尺度表达的效率和质量。
54.以上所述仅为本发明的具体实施方式,但本发明的保护范围并不局限于此。任何熟悉本领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

技术特征:
1.一种面向地图自动综合的图形化编程系统及装置,其特征在于,包括:面向地图自动综合的图形化编程系统、地图综合结果展示交互装置和电子终端设备。2.根据权利要求1所述的面向地图自动综合图形化编程系统,其特征在于,包括:所述系统由节点生成器、功能节点库、程序绘板、代码编辑器和编译器组成;所述节点生成器通过载入脚本文件或图形化程序代码封装生成地图综合所需的各项功能节点;所述功能节点库管理了不同类型的功能节点,每一类节点都能够完成地图综合过程中的一类具体任务;编程操作包括从功能节点库选择功能节点,在程序绘板上编辑,拖拽,用数据线连接功能节点,形成特定功能的地图综合图形化的程序代码;所述系统遵循地图符号的设计规则和方法,对不同类型或地图要素对应的功能节点和数据连接线进行符号化表达,用户通过视觉认知可以直观地理解每个功能节点对应的操作对象和功能,以及数据的属性和状态;编译器可将图形化程序代码编译为可独立运行的地图综合程序;所述系统支持引导式编程方法和自由式编程方法。3.根据权利要求2所述的引导式编程方法,其特征在于,包括:用户根据系统引导视图按步骤输入地图综合任务相关信息,包括但不限于:原比例尺、目标比例尺、综合要素类型、输入和输出数据类型、约束条件、制图用途等,系统依据用户输入参数和地图综合规范化流程自动地生成图形化的地图综合程序代码。4.根据权利要求2所述的自由式编程方法,其特征在于,包括:用户依据地图综合任务的要求,自主选择相应的功能节点和连接方案,在程序绘板上绘制程序,灵活地编写定制化的地图综合程序代码,节点的排布和连接可以通过鼠标推拽,或基于触控屏幕由触控笔和手指拖拽实现;可以与权利要求3所述的引导式编程方法结合使用,即首先通过引导式编程方法生成规范化的解决方案作为程序初稿,再通过自由式编程对该方案进行优化调整;或者在自由式编程过程中,在局部环节通过引导式编程生成代码段落。5.根据权利要求2所述的功能节点,其特征在于,包括:功能节点类型包括:数据采集节点、数据预处理节点、综合决策节点、要素综合节点、综合约束节点、数据后处理节点、质量检查节点和可视化节点;功能节点支持预定义模式和自定义模式;预定义模式即为根据已有的地图综合研究成果系统预先封装的功能,用户直接在功能节点库选择使用;自定义模式下,用户根据特定的综合任务需求,通过编程语言修改功能节点的脚本文件,完成定制化二次开发。6.根据权利要求2所述的节点生成器,其生成功能节点步骤如下:步骤1:载入地图综合所需的功能脚本,或者载入由图形化编程系统编写的代码;步骤2:定义该节点各个输入和输出的数据类型;步骤3:编辑节点的相关信息,包括:功能说明和功能类型等;步骤4:根据节点的数据类型和功能,设计或载入能够代表该节点功能的符号图案;步骤5:对上述代码、信息和符号进行编译封装,生成功能节点文件;步骤6:将新生成的功能节点载入功能节点库。
7.根据权利要求1所述的地图综合结果实时展示及交互的装置,其特征在于,包括:可以与权利要求2所述的面相地图自动综合的图形化编程系统和该系统编译生成的地图自动综合程序连接,实时地显示运行过程中产生的中间数据和综合结果;可通过触控交互操作,选择不同的可视化方案,包括但不限于对比例尺、窗口排布、地图要素和渲染方式的调整;可通过触控交互操作,选择综合不恰当的地图对象,并选择适合的综合算子或直接对该对象进行编辑,以修正综合结果;对综合结果的修正操作能够被记录并反馈到权利要求2所述的图形化编程系统,该系统能够通过反馈的操作记录自动生成相应的图形化程序代码片段,并嵌入原有代码。8.根据权利要求1所述的电子终端设备,其特征在于,包括:计算模块、存储模块、显示模块、网络模块和设备扩展模块。所述终端设备支持权利要求2和权利要求7所述的系统及装置的运行、通信、存储和扩展,可实现如权利要求1-7所述的面向地图自动综合的图形化编程系统和装置的各项功能和步骤。

技术总结
本发明公开了一种面向地图自动综合的图形化编程系统及装置,主要包括地图综合图形化编程系统和综合结果可视化交互装置。图形化编程系统将地图综合涉及的各项功能封装为符号化的功能节点,通过在程序绘板内编辑,拖拽和连接不同的功能节点,生成图形化程序代码和地图自动综合程序。程序开发和运行过程中,多尺度综合结果和中间数据在可视化装置上可呈现出多种渲染效果,并通过触控操作便捷地修正综合结果。修正操作可以反馈到编程系统以自动更新代码和数据。本发明改变了传统地图综合软件的人机交互方式,降低了程序开发的门槛,提升了地图自动综合方案搭建、维护和二次开发的效率,进而提高多尺度空间数据的生产效率和质量。量。量。


技术研发人员:闫浩文 李蓬勃 禄小敏 张黎明 杨维芳 王小龙
受保护的技术使用者:兰州交通大学
技术研发日:2023.06.30
技术公布日:2023/9/22
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

航空商城 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐