CN115906770A - Json数据etl过程图形化表示方法及终端 - Google Patents
Json数据etl过程图形化表示方法及终端 Download PDFInfo
- Publication number
- CN115906770A CN115906770A CN202211454696.6A CN202211454696A CN115906770A CN 115906770 A CN115906770 A CN 115906770A CN 202211454696 A CN202211454696 A CN 202211454696A CN 115906770 A CN115906770 A CN 115906770A
- Authority
- CN
- China
- Prior art keywords
- primitive
- attribute
- objects
- array
- connecting line
- 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.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种JSON数据ETL过程图形化表示方法及终端,步骤如下:1)XML文件到图像的转换过程;11)读取XML文件并绘制图元;12)绘制连接线;2)图像到XML文件的转换过程;21)增量的方式将绘图区的图元保存到图元对象数组中;22)将绘图区的连接线保存到连接线对象数组中;23)检查图元及连接线的合理性,并保存到XML文件中。本发明中XML文件保存的ETL过程描述能够被各种程序公用,减少了***迁移过程中重构业务过程时带来的重复劳动,减低***迁移成本。
Description
技术领域
本发明属于数据图形化表示技术领域,具体涉及一种JSON数据ETL过程图形化表示方法及终端。
背景技术
目前,低代码的概念越来越多的被信息化领域的人员熟知和接受,低代码平台的产品也层出不穷。这些产品一定程度上满足了非软件工程专业的人员定制信息化平台业务功能的需求。同时,大数据处理技术越来越成熟,大数据处理场景越来越普遍,即便是信息化***这样偏重业务的大***,也或多或少会用到统计分析、数据挖掘和预测等功能。因此,很多过去只应用在大数据处理中的方法和概念可以被迁移到信息化***中相似的场景中来满足用户需求。
现有的ETL过程主要通过直接编码实现,对软件工程方面有技能要求,但从事信息化业务领域的人员一般不具备高深的软件开发能力。目前的主流ETL工具面向大数据领域,用于结构化数据的分析工作,信息化***低代码平台中,缺少类似工具用于统计分析信息化***中的表单数据。大部分ETL工具都是随平台捆绑提供,如果想要把ETL过程保留下来,就必须使用特定的平台产品,这就给用户带来了极大不便。
发明内容
针对于上述现有技术的不足,本发明的目的在于提供一种JSON数据ETL过程图形化表示方法及终端,以解决现有技术中***迁移时ETL过程需要重复开发、开发ETL过程成本比较高的问题。
为达到上述目的,本发明采用的技术方案如下:
本发明的一种JSON数据ETL过程图形化表示方法,步骤如下:
1)XML文件到图像的转换过程;
11)读取XML文件并绘制图元;
12)绘制连接线;
2)图像到XML文件的转换过程;
21)增量的方式将绘图区的图元保存到图元对象数组中;
22)将绘图区的连接线保存到连接线对象数组中;
23)检查图元及连接线的合理性,并保存到XML文件中。
进一步地,所述步骤11)中读取XML文件并绘制图元具体包括:
111)将XML文件转换为对象(指面向对象程序中的数据结构),称为过程文件对象;遍历过程文件对象中process属性中的子对象,每一个子对象代表一个图元,将读取到的对象转换为图元对象,并按照XML文件中原有的顺序保存在图元对象数组中;
112)从本地文件***中加载以PNG形式保存的图形文件,加载到内存中称为图形资源对象,图形资源对象的属性type与对应的PNG文件名相同,不同的文件名对应不同的图元;
113)初始化界面显示区域,在界面可视区域中选定一个合适大小的部分作为绘图区,界面的二维坐标的规则是可视区域左上角为坐标原点,坐标为(0,0);假设所选绘图区域左上角的坐标为(x0,y0),并设置该坐标为绘图区域的坐标原点;坐标轴采用界面约定方式,横坐标轴向右,纵坐标轴向下;
114)遍历步骤111)中获取的图元对象数组,根据图元对象的图元类型属性,从图形资源对象数组中找到需要绘制的图形资源对象;假设下一个需要绘制的图元A,类型为typeA,遍历图形资源对象数组,找到type值为typeA的图形资源对象;
115)计算图元对象a的实际坐标,假设图元对象a的坐标位置属性值为(xa,ya),那么其实际坐标为(xa+x0,ya+y0);
116)根据图元对象a的实际坐标(xa+x0,ya+y0)和对应的图元资源对象,将图元A绘制在绘图区域的正确位置上。
进一步地,所述步骤12)中的绘制连接线具体包括:
121)按顺序遍历过程文件对象的子对象lines属性下的所有对象,每个对象均代表一条连线;将遍历到的每一个对象转换为连接线对象,并按照原有顺序保存到连接线对象数组中;
122)遍历连接线对象数组,假设下一个读取的连接线对象是L,则先获取L的起点坐标和点半径r,在绘图区域中根据起点坐标和半径绘制一个圆形代表起点;
123)逐个绘制连接线L的路径点属性中的各路径点,半径均使用r,不绘制终点;
124)用直线矢量图连接起点和各路径点,不包括终点;
125)使用箭头线矢量图连接路径点的最后一个点和终点。
进一步地,所述绘图区域指界面的可视区域中划分出一部分空间,用于绘制图元和连接线;所述图元用于表示ETL过程中某一处理步骤的图形;所述图元资源指存储图片的文件,格式为PNG,存储内容为图元的矢量图数据;所述ETL过程文件用于存储ETL过程图形配置数据和ETL过程的本地文件称为ETL过程文件,文件格式为XML;所述ETL过程图形指图形化表示的ETL过程。
进一步地,所述过程文件对象指读取ETL过程文件生成的数据结构,使用面向对象程序中的对象数据结构保存;所述节点对象指过程文件对象任意属性的值,即过程文件对象反映了XML文件的树形结构,任意子对象被称为节点对象;所述图形资源对象数组指用数组的形式保存加载到的图元资源,数组元素称为图形资源对象,图形资源对象具有图元类别属性type,取值与PNG文件的文件名相同,用来唯一标识一个图元对象;所述图元对象数组用来存储表示图元的对象,每个数组元素称为一个图元对象;所述连接线对象数组,用于存储表示绘图区域中所有连接线,数组元素是连接线对象,一个对象代表一条连接线。
进一步地,所述图元对象具有多个属性,分为基本属性、图元属性、扩展属性;
基本属性包括:图元类型(type)、唯一标识(ID)、后继图元ID(next)、坐标位置(coord)、图形尺寸(L*H,L长度和H宽度,单位是像素);
图元属性:不同的图元表示不同的ETL过程中的处理步骤,除了图形不同外,还需要一些属性来保存处理步骤中需要的参数,例如用columns属性来表示一个保存了列名的数组;
扩展属性:用于描述自定义参数的属性,所述自定义参数由开发者定义或添加。
进一步地,所述ETL过程图形中的连接线用折线表示,通过保存路径点来保存连接线,对应的连接线对象具有如下属性:
唯一标识ID:用于识别对象的唯一标识;
起点start:起点的二维坐标;
路径点path:多个二维坐标按顺序组成的数组;
终点stop:终点的二维坐标;
点半径radius:用于保存起点、路径点、终点所构成的圆形的半径。
进一步地,所述步骤21)增量的方式将绘图区的图元保存到图元对象数组中详细步骤如下;
211)在界面上绘制图元后,生成一个新的图元对象,将图元种类写入type属性,将坐标信息写入新生成图元对象的coord属性,然后将新生成的图元对象置于图元对象数组的尾部;
212)从界面上删除图元后,根据所删除图元ID(绘制阶段从XML文件读取),遍历图元对象数组,删除图元对象数组中对应ID的图元元素;
213)修改图元的属性时,输入图元ID和新的图元对象,遍历图元对象数组找到参数中的图元ID对应的图元对象,然后修改为输入的属性值。
进一步地,所述步骤22)具体包括:
221)绘制起点,输入参数为起点图元ID、图元的坐标和连接线起点方位;
222)向连接线中添加路径点时,输入参数为步骤221)中生成的连接线ID、新的路径点坐标;遍历连接线对象数组,根据连接线ID找到对应的连接线对象,在路径点属性末尾添加输入的路径点坐标;
223)添加终点时,输入参数为步骤221)中生成的连接线ID、新的路径点坐标、终点图元ID、终点方位(终点坐标计算与起点坐标计算的方法类似);遍历图元数组,根据输入的图元ID找到对应的图元对象,修改图元对象的next属性为终点图元ID;
224)删除连接线时,输入参数为线路ID;遍历线路对象数组,找到对应的线路对象删除;从界面上删除绘制的起点、路径点、终点和连接线。
进一步地,所述步骤221)具体如下:
2211)根据输入的起点图元ID,从图元对象数组中找到对应的图元对象;根据图元坐标和起点方位计算出起点坐标,左上角坐标是图元坐标(xa,ya),图元在绘图区显示为一个正方形,边长为L;
2212)计算起点坐标时,输入的起点方位参数是起点方位的编号,起点方位参数表示正方形的4个边,按照上、右、下、左分别取值0,1,2,3;方位参数是0,则起始点坐标为(xa+L/2,ya);方位参数是1,坐标为(xa+L,ya+L/2);方位参数是2,坐标为(xa+L/2,ya+L);方位参数是3,坐标为(xa,ya+L/2);
2213)在计算得到的坐标位置绘制一个半径r=L/20的实心圆形作为起点,如果L/20<2,则r取值为2;
2214)生成一个连接线对象,设置连接线对象唯一标识ID为一个uuid随机值,设置起始点属性为计算得到的起始点坐标(xa+L/2,ya),设置连接线对象的radius属性值为半径r,将该连接线对象添加到连接线对象数组的末尾。
进一步地,所述步骤23)具体包括:
231)打开已有的或新建一个空的ETL过程文件;
232)图元对象数组中的对象具有next属性,取值为后继图元对象,图元对象数组中的所有对象能够构成一个单向链表,遍历该单向链表,检查是否符合ETL过程的需求;
233)如果图元对象组成的单向链表符合要求,再遍历图元对象数组,逐个转换为XML文件对象的中的节点对象,图元对象数组中的对象根据type属性转换为对应的xml节点;例如type=A,那么转换为XML中的节点就是<A></A>,对象的所有属性转换为XML节点的属性;
234)将节点对象写入过程文件对象中的process节点对象下作为子节点,process节点对象对应XML文件中的<process></process>节点,process的子对象是<process></process>的子节点;
235)将所有的线路对象写入XML文件对象的lines节点对象下作为子节点,lines节点对象对应XML文件中的<lines></lines>节点,lines的子对象是<lines></lines>的子节点;
236)将XML对象数据写入XML文件。
进一步地,所述步骤232)中ETL过程检查具体包括;
在ETL过程文件对象被保存到XML文件前,需要强制检查过程的合理性;开始时使用图元对象数组的第一个元素作为输入,递归的遍历整个图形;如果有不合理的图元关系,则抛出异常;检查方法步骤如下:
2321)输入图元对象数组的第一个元素;
2322)判断输入对象是否为ETL过程中的输出图元对象;若是输出图元对象,则进入步骤2323);若不是输出图元对象,则进入步骤2324);
2323)判断是否有后继图元对象,若有后继,则检查失败,退出并返回异常;若无后继,则检查通过;
2324)判断是否有后继图元对象,若没有后继,则检查失败,退出并返回异常;若有后继(可能是一个或者多个),则获取下一个后继,作为步骤2321)的输入,并执行步骤2321),返回后继续处理下一个后继,直至处理完所有后继。
本发明还提供一种表示终端,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现所述JSON数据ETL过程图形化表示方法。
本发明的有益效果:
1、本发明中图形化表示的ETL过程更容易理解和传播,增加了信息化***的可理解性。
2、本发明中XML文件保存的ETL过程描述能够被各种程序公用,减少了***迁移过程中重构业务过程时带来的重复劳动,减低***迁移成本。
3、本发明的方法让不具备软件工程专业技能的人能够直接参与信息化***中数据的处理过程的自定义开发,减少了软件开发过程中的工作负担。
附图说明
图1为本发明方法原理图框图。
图2为本发明中图元结构示意图。
图3为本发明中的ETL图形检查方法原理图。
具体实施方式
为了便于本领域技术人员的理解,下面结合实施例与附图对本发明作进一步的说明,实施方式提及的内容并非对本发明的限定。
参照图1所示,本发明的一种JSON数据ETL过程图形化表示方法,步骤如下:
1)XML文件到图像的转换过程;
11)读取XML文件并绘制图元;
111)将XML文件转换为对象(指面向对象程序中的数据结构),称为过程文件对象;遍历过程文件对象中process属性中的子对象,每一个子对象代表一个图元,将读取到的对象转换为图元对象,并按照XML文件中原有的顺序保存在图元对象数组中;
112)从本地文件***中加载以PNG形式保存的图形文件,加载到内存中称为图形资源对象,图形资源对象的属性type与对应的PNG文件名相同,不同的文件名对应不同的图元;
113)初始化界面显示区域,在界面可视区域中选定一个合适大小的部分作为绘图区,界面的二维坐标的规则是可视区域左上角为坐标原点,坐标为(0,0);假设所选绘图区域左上角的坐标为(x0,y0),并设置该坐标为绘图区域的坐标原点;坐标轴采用界面约定方式,横坐标轴向右,纵坐标轴向下;
114)遍历步骤111)中获取的图元对象数组,根据图元对象的图元类型属性,从图形资源对象数组中找到需要绘制的图形资源对象;假设下一个需要绘制的图元A,类型为typeA,遍历图形资源对象数组,找到type值为typeA的图形资源对象;
115)计算图元对象a的实际坐标,假设图元对象a的坐标位置属性值为(xa,ya),那么其实际坐标为(xa+x0,ya+y0);
116)根据图元对象a的实际坐标(xa+x0,ya+y0)和对应的图元资源对象,将图元A绘制在绘图区域的正确位置上。
12)绘制连接线;
121)按顺序遍历过程文件对象的子对象lines属性下的所有对象,每个对象均代表一条连线;将遍历到的每一个对象转换为连接线对象,并按照原有顺序保存到连接线对象数组中;
122)遍历连接线对象数组,假设下一个读取的连接线对象是L,则先获取L的起点坐标和点半径r,在绘图区域中根据起点坐标和半径绘制一个圆形代表起点;
123)逐个绘制连接线L的路径点属性中的各路径点,半径均使用r,不绘制终点;
124)用直线矢量图连接起点和各路径点,不包括终点;
125)使用箭头线矢量图连接路径点的最后一个点和终点。
所述绘图区域指界面的可视区域中划分出一部分空间,用于绘制图元和连接线;所述图元用于表示ETL过程中某一处理步骤的图形;所述图元资源指存储图片的文件,格式为PNG,存储内容为图元的矢量图数据;所述ETL过程文件用于存储ETL过程图形配置数据和ETL过程的本地文件称为ETL过程文件,文件格式为XML;所述ETL过程图形指图形化表示的ETL过程。
所述过程文件对象指读取ETL过程文件生成的数据结构,使用面向对象程序中的对象数据结构保存;所述节点对象指过程文件对象任意属性的值,即过程文件对象反映了XML文件的树形结构,任意子对象被称为节点对象;所述图形资源对象数组指用数组的形式保存加载到的图元资源,数组元素称为图形资源对象,图形资源对象具有图元类别属性type,取值与PNG文件的文件名相同,用来唯一标识一个图元对象;所述图元对象数组用来存储表示图元的对象,每个数组元素称为一个图元对象;所述连接线对象数组,用于存储表示绘图区域中所有连接线,数组元素是连接线对象,一个对象代表一条连接线。
其中,所述图元对象具有多个属性,分为基本属性、图元属性、扩展属性;
基本属性包括:图元类型(type)、唯一标识(ID)、后继图元ID(next)、坐标位置(coord)、图形尺寸(L*H,L长度和H宽度,单位是像素);
图元属性:不同的图元表示不同的ETL过程中的处理步骤,除了图形不同外,还需要一些属性来保存处理步骤中需要的参数,例如用columns属性来表示一个保存了列名的数组。
扩展属性:用于描述自定义参数的属性,所述自定义参数由开发者定义或添加。
进一步地,所述ETL过程图形中的连接线用折线表示,通过保存路径点来保存连接线,对应的连接线对象具有如下属性:
唯一标识ID:用于识别对象的唯一标识;
起点start:起点的二维坐标;
路径点path:多个二维坐标按顺序组成的数组;
终点stop:终点的二维坐标;
点半径radius:用于保存起点、路径点、终点所构成的圆形的半径。
2)图像到XML文件的转换过程;
21)增量的方式将绘图区的图元保存到图元对象数组中;
211)在界面上绘制图元后,生成一个新的图元对象,将图元种类写入type属性,将坐标信息写入新生成图元对象的coord属性,然后将新生成的图元对象置于图元对象数组的尾部;
212)从界面上删除图元后,根据所删除图元ID(绘制阶段从XML文件读取),遍历图元对象数组,删除图元对象数组中对应ID的图元元素;
213)修改图元的属性时,输入图元ID和新的图元对象,遍历图元对象数组找到参数中的图元ID对应的图元对象,然后修改为输入的属性值。
22)将绘图区的连接线保存到连接线对象数组中;
221)绘制起点,输入参数为起点图元ID、图元的坐标和连接线起点方位;
222)向连接线中添加路径点时,输入参数为步骤221)中生成的连接线ID、新的路径点坐标;遍历连接线对象数组,根据连接线ID找到对应的连接线对象,在路径点属性末尾添加输入的路径点坐标;
223)添加终点时,输入参数为步骤221)中生成的连接线ID、新的路径点坐标、终点图元ID、终点方位(终点坐标计算与起点坐标计算的方法类似);遍历图元数组,根据输入的图元ID找到对应的图元对象,修改图元对象的next属性为终点图元ID;
224)删除连接线时,输入参数为线路ID;遍历线路对象数组,找到对应的线路对象删除;从界面上删除绘制的起点、路径点、终点和连接线。
进一步地,所述步骤221)具体如下:
2211)根据输入的起点图元ID,从图元对象数组中找到对应的图元对象;图元方位布局如图2所示,根据图元坐标和起点方位计算出起点坐标,左上角坐标是图元坐标(xa,ya),图元在绘图区显示为一个正方形,边长为L;
2212)计算起点坐标时,输入的起点方位参数是起点方位的编号,起点方位参数表示正方形的4个边,按照上、右、下、左分别取值0,1,2,3;方位参数是0,则起始点坐标为(xa+L/2,ya);方位参数是1,坐标为(xa+L,ya+L/2);方位参数是2,坐标为(xa+L/2,ya+L);方位参数是3,坐标为(xa,ya+L/2);
2213)在计算得到的坐标位置绘制一个半径r=L/20的实心圆形作为起点,如果L/20<2,则r取值为2;
2214)生成一个连接线对象,设置连接线对象唯一标识ID为一个uuid随机值,设置起始点属性为计算得到的起始点坐标(xa+L/2,ya),设置连接线对象的radius属性值为半径r,将该连接线对象添加到连接线对象数组的末尾。
23)检查图元及连接线的合理性,并保存到XML文件中;
231)打开已有的或新建一个空的ETL过程文件;
232)图元对象数组中的对象具有next属性,取值为后继图元对象,图元对象数组中的所有对象能够构成一个单向链表,遍历该单向链表,检查是否符合ETL过程的需求;
233)如果图元对象组成的单向链表符合要求,再遍历图元对象数组,逐个转换为XML文件对象的中的节点对象,图元对象数组中的对象根据type属性转换为对应的xml节点;例如type=A,那么转换为XML中的节点就是<A></A>,对象的所有属性转换为XML节点的属性;
234)将节点对象写入过程文件对象中的process节点对象下作为子节点,process节点对象对应XML文件中的<process></process>节点,process的子对象是<process></process>的子节点;
235)将所有的线路对象写入XML文件对象的lines节点对象下作为子节点,lines节点对象对应XML文件中的<lines></lines>节点,lines的子对象是<lines></lines>的子节点;
236)将XML对象数据写入XML文件。
参照图3所示,所述步骤232)中ETL过程检查具体包括;
在ETL过程文件对象被保存到XML文件前,需要强制检查过程的合理性;开始时使用图元对象数组的第一个元素作为输入,递归的遍历整个图形;如果有不合理的图元关系,则抛出异常;检查方法步骤如下:
2321)输入图元对象数组的第一个元素;
2322)判断输入对象是否为ETL过程中的输出图元对象;若是输出图元对象,则进入步骤2323);若不是输出图元对象,则进入步骤2324);
2323)判断是否有后继图元对象,若有后继,则检查失败,退出并返回异常;若无后继,则检查通过;
2324)判断是否有后继图元对象,若没有后继,则检查失败,退出并返回异常;若有后继(可能是一个或者多个),则获取下一个后继,作为步骤2321)的输入,并执行步骤2321),返回后继续处理下一个后继,直至处理完所有后继。
本发明具体应用途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进,这些改进也应视为本发明的保护范围。
Claims (10)
1.一种JSON数据ETL过程图形化表示方法,其特征在于,步骤如下:
1)XML文件到图像的转换过程;
11)读取XML文件并绘制图元;
12)绘制连接线;
2)图像到XML文件的转换过程;
21)增量的方式将绘图区的图元保存到图元对象数组中;
22)将绘图区的连接线保存到连接线对象数组中;
23)检查图元及连接线的合理性,并保存到XML文件中。
2.根据权利要求1所述的JSON数据ETL过程图形化表示方法,其特征在于,所述步骤11)中读取XML文件并绘制图元具体包括:
111)将XML文件转换为对象,称为过程文件对象;遍历过程文件对象中process属性中的子对象,每一个子对象代表一个图元,将读取到的对象转换为图元对象,并按照XML文件中原有的顺序保存在图元对象数组中;
112)从本地文件***中加载以PNG形式保存的图形文件,加载到内存中称为图形资源对象,图形资源对象的属性type与对应的PNG文件名相同,不同的文件名对应不同的图元;
113)初始化界面显示区域,在界面可视区域中选定一个部分作为绘图区,界面的二维坐标的规则是可视区域左上角为坐标原点,坐标为(0,0);假设所选绘图区域左上角的坐标为(x0,y0),并设置该坐标为绘图区域的坐标原点;坐标轴采用界面约定方式,横坐标轴向右,纵坐标轴向下;
114)遍历步骤111)中获取的图元对象数组,根据图元对象的图元类型属性,从图形资源对象数组中找到需要绘制的图形资源对象;假设下一个需要绘制的图元A,类型为typeA,遍历图形资源对象数组,找到type值为typeA的图形资源对象;
115)计算图元对象a的实际坐标,假设图元对象a的坐标位置属性值为(xa,ya),则其实际坐标为(xa+x0,ya+y0);
116)根据图元对象a的实际坐标(xa+x0,ya+y0)和对应的图元资源对象,将图元A绘制在绘图区域的正确位置上。
3.根据权利要求2所述的JSON数据ETL过程图形化表示方法,其特征在于,所述图元对象具有多个属性,分为基本属性、图元属性、扩展属性;
基本属性包括:图元类型、唯一标识、后继图元ID、坐标位置、图形尺寸;
图元属性:不同的图元表示不同的ETL过程中的处理步骤,除了图形不同外,还需要一些属性来保存处理步骤中需要的参数;
扩展属性:用于描述自定义参数的属性,所述自定义参数由开发者定义或添加。
4.根据权利要求1所述的JSON数据ETL过程图形化表示方法,其特征在于,所述步骤12)具体包括:
121)按顺序遍历过程文件对象的子对象lines属性下的所有对象,每个对象均代表一条连线;将遍历到的每一个对象转换为连接线对象,并按照原有顺序保存到连接线对象数组中;
122)遍历连接线对象数组,假设下一个读取的连接线对象是L,则先获取L的起点坐标和点半径r,在绘图区域中根据起点坐标和半径绘制一个圆形代表起点;
123)逐个绘制连接线L的路径点属性中的各路径点,半径均使用r,不绘制终点;
124)用直线矢量图连接起点和各路径点,不包括终点;
125)使用箭头线矢量图连接路径点的最后一个点和终点。
5.根据权利要求1所述的JSON数据ETL过程图形化表示方法,其特征在于,所述步骤21)具体包括:
211)在界面上绘制图元后,生成一个新的图元对象,将图元种类写入type属性,将坐标信息写入新生成图元对象的coord属性,然后将新生成的图元对象置于图元对象数组的尾部;
212)从界面上删除图元后,根据所删除图元ID,遍历图元对象数组,删除图元对象数组中对应ID的图元元素;
213)修改图元的属性时,输入图元ID和新的图元对象,遍历图元对象数组找到参数中的图元ID对应的图元对象,然后修改为输入的属性值。
6.根据权利要求1所述的JSON数据ETL过程图形化表示方法,其特征在于,所述步骤22)具体包括:
221)绘制起点,输入参数为起点图元ID、图元的坐标和连接线起点方位;
222)向连接线中添加路径点时,输入参数为步骤221)中生成的连接线ID、新的路径点坐标;遍历连接线对象数组,根据连接线ID找到对应的连接线对象,在路径点属性末尾添加输入的路径点坐标;
223)添加终点时,输入参数为步骤221)中生成的连接线ID、新的路径点坐标、终点图元ID、终点方位;遍历图元数组,根据输入的图元ID找到对应的图元对象,修改图元对象的后继图元ID属性为终点图元ID;
224)删除连接线时,输入参数为线路ID;遍历线路对象数组,找到对应的线路对象删除;从界面上删除绘制的起点、路径点、终点和连接线。
7.根据权利要求6所述的JSON数据ETL过程图形化表示方法,其特征在于,所述步骤221)具体如下:
2211)根据输入的起点图元ID,从图元对象数组中找到对应的图元对象;根据图元坐标和起点方位计算出起点坐标,左上角坐标是图元坐标(xa,ya),图元在绘图区显示为一个正方形,边长为L;
2212)计算起点坐标时,输入的起点方位参数是起点方位的编号,起点方位参数表示正方形的4个边,按照上、右、下、左分别取值0,1,2,3;方位参数是0,则起始点坐标为(xa+L/2,ya);方位参数是1,坐标为(xa+L,ya+L/2);方位参数是2,坐标为(xa+L/2,ya+L);方位参数是3,坐标为(xa,ya+L/2);
2213)在计算得到的坐标位置绘制一个半径r=L/20的实心圆形作为起点,如果L/20<2,则r取值为2;
2214)生成一个连接线对象,设置连接线对象唯一标识ID为一个uuid随机值,设置起始点属性为计算得到的起始点坐标(xa+L/2,ya),设置连接线对象的radius属性值为半径r,将该连接线对象添加到连接线对象数组的末尾。
8.根据权利要求1所述的JSON数据ETL过程图形化表示方法,其特征在于,所述步骤23)具体包括:
231)打开已有的或新建一个空的ETL过程文件;
232)图元对象数组中的对象具有后继图元ID属性,取值为后继图元对象,图元对象数组中的所有对象能够构成一个单向链表,遍历该单向链表,检查是否符合ETL过程的需求;
233)如果图元对象组成的单向链表符合要求,再遍历图元对象数组,逐个转换为XML文件对象的中的节点对象,图元对象数组中的对象根据type属性转换为对应的xml节点;
234)将节点对象写入过程文件对象中的process节点对象下作为子节点,process节点对象对应XML文件中的<process></process>节点,process的子对象是<process></process>的子节点;
235)将所有的线路对象写入XML文件对象的lines节点对象下作为子节点,lines节点对象对应XML文件中的<lines></lines>节点,lines的子对象是<lines></lines>的子节点;
236)将XML对象数据写入XML文件。
9.根据权利要求8所述的JSON数据ETL过程图形化表示方法,其特征在于,所述步骤232)中ETL过程检查具体包括;
在ETL过程文件对象被保存到XML文件前,检查过程的合理性;开始时使用图元对象数组的第一个元素作为输入,递归的遍历整个图形;如果有不合理的图元关系,则抛出异常;检查方法步骤如下:
2321)输入图元对象数组的第一个元素;
2322)判断输入对象是否为ETL过程中的输出图元对象;若是输出图元对象,则进入步骤2323);若不是输出图元对象,则进入步骤2324);
2323)判断是否有后继图元对象,若有后继,则检查失败,退出并返回异常;若无后继,则检查通过;
2324)判断是否有后继图元对象,若没有后继,则检查失败,退出并返回异常;若有后继,则获取下一个后继,作为步骤2321)的输入,并执行步骤2321),返回后继续处理下一个后继,直至处理完所有后继。
10.一种表示终端,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-9中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211454696.6A CN115906770A (zh) | 2022-11-21 | 2022-11-21 | Json数据etl过程图形化表示方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211454696.6A CN115906770A (zh) | 2022-11-21 | 2022-11-21 | Json数据etl过程图形化表示方法及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115906770A true CN115906770A (zh) | 2023-04-04 |
Family
ID=86478009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211454696.6A Pending CN115906770A (zh) | 2022-11-21 | 2022-11-21 | Json数据etl过程图形化表示方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115906770A (zh) |
-
2022
- 2022-11-21 CN CN202211454696.6A patent/CN115906770A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10579344B2 (en) | Converting visual diagrams into code | |
US6995765B2 (en) | System, method, and computer program product for optimization of a scene graph | |
US7714860B2 (en) | Method and system for converting engineering data into 3D modeling data | |
US10650559B2 (en) | Methods and systems for simplified graphical depictions of bipartite graphs | |
CN111881809A (zh) | 基于cad图纸的图元识别方法和识别装置 | |
JP4125673B2 (ja) | 二次元あるいは三次元の幾何学的実体に結合したデータのエクスポートシステム | |
CN113051885B (zh) | 基于AutoCAD的设计图纸快速排版方法 | |
CN118012967A (zh) | 一种桥类地理信息数据处理方法和装置 | |
CN112785696A (zh) | 基于游戏引擎和倾斜摄影数据的三维实景模型生成方法 | |
CN113901231A (zh) | 一种知识图谱的演进分析方法、装置及介质 | |
CN114494024B (zh) | 图像渲染方法、装置、设备及存储介质 | |
CN113326314A (zh) | 数据可视化方法、装置、电子设备及可读存储介质 | |
CN115439609A (zh) | 基于地图服务的三维模型渲染方法、***、设备及介质 | |
CN113778961B (zh) | 一种cim模型数据的生产管理方法、装置及*** | |
CN106204413A (zh) | 利用分层加速结构的图形渲染 | |
CN113457161A (zh) | 画面展示方法、信息生成方法、装置、设备及存储介质 | |
CN116167365B (zh) | 一种基于表格模板的流程图生成方法 | |
CN115906770A (zh) | Json数据etl过程图形化表示方法及终端 | |
Mateo et al. | Hierarchical, Dense and Dynamic 3D Reconstruction Based on VDB Data Structure for Robotic Manipulation Tasks | |
CN115170765A (zh) | 一种模型处理***、方法及装置 | |
CN112612427B (zh) | 一种车辆停靠点数据处理方法、装置、存储介质及终端 | |
CN115375812A (zh) | Cad数据渲染方法、装置、电子设备及存储介质 | |
CN114259730A (zh) | 一种Cocos预制体的高效率导出方法、***及介质 | |
CN114090666A (zh) | 幻灯片显示方法、装置、设备以及存储介质 | |
CN112732643A (zh) | 流程图图形文件数据与s1000d标准xml格式数据的相互转换方法 |
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 |