一种算法流程编辑方法及相关装置与流程

未命名 10-17 阅读:142 评论:0


1.本技术涉及数据处理技术领域,特别是涉及一种算法流程编辑方法及相关装置。


背景技术:

2.在工业生产领域中,越来越多的检测设备通过使用拖拽式视觉检测软件来编辑检测算法流程。通过在拖拽式视觉检测软件中拖拽节点,编辑算法流程,能够降低操作人员的使用门槛,提高工作效率,为算法流程编辑带来了极大便利。
3.相关技术中,拖拽式视觉检测软件往往通过碰撞连接的方式,将节点拖拽至流程图中自动进行输入连接和输出连接,但是,通过碰撞连接的方式编辑算法流程会破坏流程图中各个节点已有的连接关系,算法流程编辑效率较低。


技术实现要素:

4.基于此,有必要针对上述技术问题,提供一种算法流程编辑方法及相关装置,能够提高算法流程编辑效率。
5.第一方面,本技术提供了一种算法流程编辑方法,包括:响应于针对待添加节点的拖拽操作,检测所述待添加节点的位置;其中,所述待添加节点对应待添加算法,所述待添加节点中至少包括待添加输入连接点;当所述待添加节点被拖拽至流程编辑区时,响应于所述待添加节点在所述流程编辑区的位置变化,获取所述待添加输入连接点与所述流程编辑区内各个流程节点的输出连接点之间的实时位置关系;其中,所述流程编辑区内各个流程节点之间存在连接关系,并存在根据所述连接关系生成的节点连接算法;确定所述实时位置关系符合关联条件的目标输出连接点;其中,所述目标输出连接点至少与所述流程编辑区内一个流程节点的输入连接点存在第一连接关系;在保留所述第一连接关系的基础上,增加所述目标输出连接点与所述待添加输入连接点之间的第二连接关系,将所述目标输出连接点对应的算法输出,作为所述待添加算法的算法输入。
6.第二方面,本技术提供了一种算法流程编辑装置,包括:检测模块,用于:响应于针对待添加节点的拖拽操作,检测所述待添加节点的位置;其中,所述待添加节点对应待添加算法,所述待添加节点中至少包括待添加输入连接点;获取模块,用于:当所述待添加节点被拖拽至流程编辑区时,响应于所述待添加节点在所述流程编辑区的位置变化,获取所述待添加输入连接点与所述流程编辑区内各个流程节点的输出连接点之间的实时位置关系;其中,所述流程编辑区内各个流程节点之间存在连接关系,并存在根据所述连接关系生成的节点连接算法;确定模块,用于:确定所述实时位置关系符合关联条件的目标输出连接点;其中,所述目标输出连接点至少与所述流程编辑区内一个流程节点的输入连接点存在第一连接
关系;连接模块,用于:在保留所述第一连接关系的基础上,增加所述目标输出连接点与所述待添加输入连接点之间的第二连接关系,将所述目标输出连接点对应的算法输出,作为所述待添加算法的算法输入。
7.第三方面,本技术提供了一种计算机设备,计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行该计算机程序时实现上述算法流程编辑方法中的步骤。
8.第四方面,本技术提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述算法流程编辑方法中的步骤。
9.第五方面,本技术提供了一种计算机程序产品,计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现本上述算法流程编辑方法中的步骤。
10.上述算法流程编辑方法、装置、计算机设备、计算机可读存储介质及计算机程序产品,响应于针对至少包括待添加输入连接点的待添加节点的拖拽操作,检测该待添加节点的位置,使用拖拽操作对待添加节点进行处理,使用待添加节点对应的待添加算法编辑算法流程,提高了算法流程编辑的交互性,使得算法流程编辑操作简便化;当待添加节点被拖拽至包括流程节点的流程编辑区时,在流程编辑区内的这些流程节点之间存在连接关系,基于这种连接关系,还生成有对应的节点连接算法,通过该节点连接算法可以直接执行流程编辑区内原有的算法流程,根据该待添加节点在流程编辑区的位置变化,获取待添加输入连接点与流程编辑区内各个流程节点的输出连接点之间的实时位置关系,并根据该实时位置关系,可以确定出与待添加输入连接点符合关联条件的目标输出连接点,以目标输出连接点对应的算法输出作为待添加输入连接点的算法输入,在算法流程编辑过程中关注待添加节点对应的算法输入,有效满足了工业场景需求,其中,该目标输出连接点至少与流程编辑区内的一个流程节点的输入连接点存在第一连接关系;在保留这种第一连接关系的基础上,增加目标输出连接点与待添加节点中待添加输入连接点之间的第二连接关系,如此,通过拖拽操作向流程编辑区中新增待添加节点时,没有破坏流程编辑区内原有流程节点之间的连接关系,无需再对流程编辑区内的连接关系进行恢复,直接根据原有的连接关系和第二连接关系即可生成新的算法流程,提高了算法流程的编辑效率。
附图说明
11.图1为本技术实施例提供的一种算法流程编辑方法的应用环境图;图2为本技术实施例提供的一种算法流程编辑方法的流程示意图;图3为本技术场景实施例提供的算法流程编辑方法的流程示意图;图4为本技术场景实施例提供的拖拽过程效果示意图;图5为本技术实施例提供的一种算法流程编辑装置的结构框图;图6为本技术实施例提供的一种计算机设备的内部结构图;图7为本技术实施例提供的另一种计算机设备的内部结构图;图8为本技术实施例提供的一种计算机可读存储介质的内部结构图。
具体实施方式
12.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对
本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
13.使用拖拽式视觉检测软件编辑检测算法流程时,通过在拖拽式视觉检测软件中拖拽节点来编辑算法流程,但是,拖拽式视觉检测软件中往往需要通过碰撞连接的方式,将节点拖拽至流程图中自动进行输入输出连接,例如,将节点c拖拽至节点a与节点b之间时,会断开节点a与节点b之间的连接,并将节点c的输入连接点与节点a的输出连接点进行连接,节点c的输出连接点与节点b的输入连接点进行连接,破坏了原有的节点a与节点b之间已有的连接关系。
14.对于工业生产领域中的算法流程编辑来说,通常更为关注新增节点输入连接点的自动连接,并不关注于输出连接点的自动连接,同时对新增节点的输入连接点和输出连接点进行自动连接不符合算法流程编辑的需求,以上述节点c为例,直接将节点c的输出连接点与节点b的输入连接点进行连接后,若这种连接方式与用户预期的算法流程并不相符,在后续算法流程编辑过程中,还会增加删除节点c与节点b之间连接关系的这一步骤,降低了算法流程编辑效率。
15.因此,如何提高算法流程编辑效率,是目前亟需解决的技术问题。
16.基于此,本技术实施例提供了一种算法流程编辑方法,通过响应于针对至少包括待添加输入连接点的待添加节点的拖拽操作,为该待添加输入连接点匹配与其他输入连接点存在第一连接关系的目标输出连接点,在保留这种第一连接关系的基础上,增加目标输出连接点与待添加节点中待添加输入连接点之间的第二连接关系,如此,通过拖拽操作向流程编辑区中新增待添加节点时,没有破坏流程编辑区内原有流程节点之间的连接关系,无需再对流程编辑区内的连接关系进行恢复,直接根据原有的连接关系和第二连接关系即可生成新的算法流程,提高了算法流程的编辑效率。
17.本技术实施例提供的算法流程编辑方法,可以应用于如图1所示的应用环境中。其中,终端102通过通信网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据,例如本技术实施例中待添加节点的位置、待添加输入连接点与流程编辑区内各个流程节点的输出连接点之间的实时位置关系等。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
18.如图2所示,本技术实施例提供了一种算法流程编辑方法,该方法可以应用于计算机设备,计算机设备可以包括终端和服务器中的至少一种,下面以该方法应用于图1中的终端102为例进行说明。该方法包括以下步骤:s201、响应于针对待添加节点的拖拽操作,检测待添加节点的位置。
19.在本技术实施例中,用户通过拖拽操作可以控制待添加节点的位置变化,基于拖拽操作控制待添加节点,进行算法流程编辑。当待添加节点被选中后,可以触发针对该待添加节点的拖拽操作,随着针对该待添加节点的拖拽操作被触发,响应于拖拽操作所引起的位置变化,待添加节点也会随着拖拽操作进行拖拽移动,提高了算法流程编辑过程中的交互性。
20.需要说明的是,本技术实施例中,拖拽操作可以根据实际需要,采用多种触发方式来触发,例如,在终端设备中,通过长按选中待添加节点,或者点击选中待添加节点,触发对该待添加节点的拖拽操作,本技术实施例对此不做具体限定。
21.待添加节点为拖拽操作的操作对象。在本技术实施例中,待添加节点对应于待添加算法,在该待添加节点中,至少包括待添加输入连接点,该待添加输入连接点用于连接其他节点的输出连接点,待添加输入连接点对应待添加算法的算法输入,当与其他节点的输出连接点进行连接时,将该输出连接点对应的算法输出作为待添加算法的算法输入。除此之外,在该待添加节点中,还可以包括待添加输出连接点,与其他流程节点的输入连接点相连时,可以将待添加算法中的算法输出传输给该流程节点。
22.s202、当待添加节点被拖拽至流程编辑区时,响应于待添加节点在流程编辑区的位置变化,获取待添加输入连接点与流程编辑区内各个流程节点的输出连接点之间的实时位置关系。
23.在申请实施例中设置有流程编辑区,流程编辑区是根据各个流程节点之间的位置关系编辑算法流程的区域。流程编辑区内存在多个流程节点,各个流程节点之间存在连接关系,并存在根据连接关系生成的节点连接算法,该节点连接算法用于按照流程编辑区内各个流程节点之间的连接关系,执行各个流程节点对应的流程节点算法,实现流程编辑区内的算法流程。其中,流程节点是对待添加节点进行拖拽时,在流程编辑区内已经存在的节点,从位置变化的角度来说,流程节点在流程编辑区内的位置是相对固定的,而当前拖拽操作所控制的待添加节点,其在流程编辑区内的位置是相对变化的。各个流程节点也有各自对应的流程节点算法,根据各个流程节点之间的连接关系,可以确定流程节点算法所对应的算法输入、算法输出之间的连接关系,进而将各个流程节点算法进行组合,生成算法流程,同时生成用于执行算法流程的节点流程算法。
24.通过检测待添加节点的位置,可以确定当前待添加节点是否处于流程编辑区内;当该待添加节点被拖拽至流程编辑区时,根据该待添加节点在流程编辑区内的位置,可以获得待添加输入连接点在流程编辑区内的位置,进而获得待添加输入连接点与流程编辑区内各个流程节点的输出连接点的实时位置关系。在本技术实施例中,基于拖拽操作控制待添加节点位置时,待添加输入连接点在流程编辑区内的位置也会随拖拽操作发生变化,所以为了提高所获取位置关系的准确性,需要根据待添加输入连接点在流程编辑区内的位置变化,实时确定待添加输入连接点与其他输出连接点的位置关系,所以实时位置关系是基于当前待添加输入连接点在流程编辑区内的位置确定的。
25.s203、确定实时位置关系符合关联条件的目标输出连接点。
26.关联条件是用于从流程编辑区内多个流程节点的输出连接点中,确定目标输出连接点的筛选条件。当通过拖拽操作,将待添加节点放置在流程编辑区内的两个流程节点之间时,会根据待添加节点与两个流程节点之间的位置关系,确定符合关联条件的流程节点进行关联,即,将符合关联条件的流程节点的输出连接点,确定为与待添加输入连接点对应的目标输出连接点。
27.其中,目标输出连接点至少与流程编辑区内一个流程节点的输入连接点存在第一连接关系,基于第一连接关系,目标输出连接点对应的算法输出与前述流程节点的输入连接点所对应的算法输入相连接,将目标输出连接点对应的算法输出作为前述流程节点输入
连接点对应的算法输入。例如,在流程编辑区内存在节点a和节点b,且节点a的输出连接点与节点b的输入连接点相连接的场景中,若将待添加节点c拖拽至流程编辑区,为节点c确定的目标输出连接点是节点a的输出连接点时,那么流程编辑区内的节点a和节点b之间的连接关系即为第一连接关系。
28.需要说明的是,该第一连接关系可能对应目标输出连接点与一个输入连接点之间的连接关系,也可能对应目标输出连接点与多个输入连接点之间的连接关系,本技术对此不做具体限定。当目标输出连接点与流程编辑区内的多个流程节点存在第一连接关系时,该目标输出连接点对应的算法输出对应这多个流程节点的算法输入。
29.关联条件可以根据实际需要进行设置,具体地,在自上而下的流程图中,父节点位于子节点的上方,那么关联条件可以为位于待添加输入连接点的上方,且距离该待添加输入连接点的距离最近的输出连接点;同样地,在自左向右的流程图中,父节点位于子节点的左侧,那么关联条件就可以为位于待添加输入连接点的左侧,且距离该待添加输入连接点最近的输出连接点。
30.当然,也可以通过其他方式确定前述关联条件,本技术实施例对此不做具体限定。
31.s204、在保留第一连接关系的基础上,增加目标输出连接点与待添加输入连接点之间的第二连接关系,将目标输出连接点对应的算法输出,作为待添加算法的算法输入。
32.本技术实施例中,确定与待添加输入连接点对应的目标输出连接点后,为了不破坏流程编辑区内各个流程节点之间已有的连接关系,在增加目标输出连接点与待添加输入连接点之间的第二连接关系时,保留了目标输出连接点与其他输入连接点之间的第一连接关系,这样,针对流程编辑区内的算法流程来说,待添加节点作为新增节点,其所对应的待添加算法是以增加而非插入的方式编辑算法流程,保留了原有算法流程中各个算法输入、算法输出之间的对应关系,将已有算法流程中的算法输出作为待添加算法的算法输入,并未将待添加算法的算法输出与已有算法流程中的算法输入进行连接,更符合工业生产领域中关注自动输入连接的要求,同时,基于流程编辑区内与该待添加输入连接点对应的目标输出连接点,直接进行对应算法的输入输出连接,简化了算法编辑步骤,能够满足工业生产领域的算法流程编辑需求。
33.具体地,在一些实施例中,在保留第一连接关系的基础上,增加目标输出连接点与待添加输入连接点之间的第二连接关系时,可以根据待添加算法和该第二连接关系,将目标输出连接点对应的算法输出作为待添加算法的算法输入,并使用待添加算法来更新节点连接算法。
34.根据第二连接关系,将目标输出连接点与待添加输入连接点进行连接,由于待添加输入连接点对应于待添加算法的算法输入,所以将目标输出连接点所对应的算法输出作为该待添加算法的算法输入,目标输出连接点对应的流程节点成为该待添加节点的父节点。基于这种算法间的输入输出关系,在流程编辑区内原有的节点连接算法中,新增待添加算法,并将目标输出连接点对应的算法输出设置为待添加算法的算法输入,以更新流程编辑区内的算法流程和节点连接算法。
35.可见,直接根据第二连接关系确定待添加算法与流程节点算法之间的输入输出关系,使用该待添加算法更新节点连接算法,实现了对流程编辑区内算法流程的更新,简化了算法流程编辑步骤,节省了对具体算法的编辑过程,提高了算法流程的编辑效率。
36.在一些实施例中,若待添加节点被拖拽至流程编辑区外,响应于待添加节点被拖拽至流程编辑区外释放,删除第二连接关系,并根据待添加算法和第二连接关系,从节点连接算法中删除待添加算法。
37.针对待添加节点执行的拖拽操作可以通过选中待添加节点来触发,那么,当待添加节点被释放时,该拖拽操作终止,基于针对待添加节点的释放操作,确定待添加节点与其他流程节点之间的位置关系,例如,当鼠标左键按下,待添加节点被选中,可以基于鼠标实现针对待添加节点的拖拽,当鼠标左键被抬起,该待添加节点被释放。当然,也可以通过其他方式实现针对待添加节点的选中和释放,例如双击、长按等,本技术实施例对此不做具体限定。
38.其中,当待添加节点在流程编辑区内被释放时,可以根据待添加输入连接点与其他流程节点中的输出连接点之间的实时位置关系,确定目标输出连接点,并根据目标输出连接点与待添加输入连接点之间的连接关系更新节点连接算法;但当待添加节点被拖拽至流程编辑区外释放时,将撤销与该待添加节点对应的添加内容,从流程编辑区删除待添加输入连接点与目标输出连接点之间的第二连接关系,并在节点连接算法中,删除该待添加节点对应的待添加算法,将流程编辑区内的算法流程和节点连接算法恢复至添加该待添加节点之前。
39.在待添加节点被拖拽至流程编辑区以外时,删除与该待添加节点对应的第二连接关系,并从节点连接算法中删除该待添加节点对应的待添加算法,可见,通过响应将待添加节点拖拽至流程编辑区外的拖拽操作,完成待添加节点的删除和算法流程的恢复,提高了算法流程的编辑效率。
40.可见,在本技术实施例中,使用拖拽操作对待添加节点进行处理,使用待添加节点对应的待添加算法编辑算法流程,提高了算法流程编辑的交互性,使得算法流程编辑操作简便化;当待添加节点被拖拽至包括流程节点的流程编辑区时,在流程编辑区内的这些流程节点之间存在连接关系,基于这种连接关系,还生成有对应的节点连接算法,通过该节点连接算法可以直接执行流程编辑区内原有的算法流程,根据该待添加节点在流程编辑区的位置变化,获取待添加输入连接点与流程编辑区内各个流程节点的输出连接点之间的实时位置关系,并根据该实时位置关系,可以确定出与待添加输入连接点符合关联条件的目标输出连接点,以目标输出连接点对应的算法输出作为待添加输入连接点的算法输入,在算法流程编辑过程中关注待添加节点对应的算法输入,有效满足了工业场景需求,其中,该目标输出连接点至少与流程编辑区内的一个流程节点的输入连接点存在第一连接关系;在保留这种第一连接关系的基础上,增加目标输出连接点与待添加节点中待添加输入连接点之间的第二连接关系,如此,通过拖拽操作向流程编辑区中新增待添加节点时,没有破坏流程编辑区内原有流程节点之间的连接关系,无需再对流程编辑区内的连接关系进行恢复,直接根据原有的连接关系和第二连接关系即可生成新的算法流程,提高了算法流程的编辑效率。
41.在一些实施例中,当流程编辑区内不存在符合关联条件的目标输出连接点时,不针对该待添加输入连接点建立连接关系,而是当待添加输入连接点被选中时,响应于该待添加输入连接点被选中,为该待添加输入连接点确定对应的目标输出连接点;然后,当目标输出连接点被选中时,响应于目标输出连接点被选中,建立待添加输入连接点与目标输出
连接点之间的连接关系,手动为待添加输入连接点配置目标输出连接点。
42.若流程编辑区内不存在符合关联条件的目标输出连接点,那么就不能在拖拽操作结束后,直接针对待添加输入连接点建立连接关系。当拖拽操作结束、待添加输入连接点被放置在流程编辑区内时,可以通过响应针对待添加输入连接点的选中操作,为该待添加输入连接点设置目标输出连接点,在选中该待添加输入连接点的状态下,通过响应针对目标输出连接点的选中操作,使得待添加输入连接点与该目标输出连接点之间建立连接关系。
43.需要说明的是,可以采用多种方式实现针对待添加输入连接点的选中操作,同样,也可以采用多种方式实现针对目标输出连接点的选中操作,针对待添加输入连接点和针对目标输出连接点的选中操作可以相同,也可以不同。例如,在终端设备中,可以均通过单击的方式来选中待添加输入连接点和目标输出连接点,还可以通过拖拽的方式,当鼠标左键被按下时选中待添加输入连接点,通过拖拽鼠标,当鼠标左键被释放时,选中当前释放位置对应的输出连接点为目标输出连接点。当然,以上所述仅为示例,本技术实施例对针对待添加输入连接点的选中操作和针对目标输出连接点的选中操作不做具体限定。
44.可见,当流程编辑区内不存在符合关联条件的目标输出连接点时,能够通过响应于待添加输入连接点、目标输出连接点被选中,为待添加输入连接点建立与目标输出连接点之间的连接关系,提高了算法流程编辑的灵活性。
45.在一些实施例中,拖拽待添加节点时,可以根据检测到的当前待添加节点的位置,使用第一形状绘制待添加节点,并且随着待添加节点位置的变化,对待添加节点的显示位置进行修改。例如,用户通过鼠标执行拖拽操作,操纵鼠标来拖拽待添加节点,将鼠标光标对应的位置确定为当前待添加节点的位置,并以当前待添加节点的位置为中心绘制待添加节点;当鼠标光标的位置变化时,当前所拖拽的待添加节点的显示位置也随之变化,以体现待添加节点与拖拽操作的跟随效果。
46.需要说明的是,上述以待添加节点位置为中心绘制待添加节点仅为示例,在实际场景中,还可以根据待添加节点的位置,以该位置作为图标的左上角、右上角等来绘制待添加节点。
47.在实际场景中,可以根据实际需要设置第一形状对应的大小、线条、颜色等参数,本技术实施例对此不做具体限定。
48.通过显示待添加节点的位置,可视化拖拽操作与待添加节点位置的交互效果,使得算法流程编辑的过程更加直观。
49.在一些实施例中,根据实时位置关系确定目标输出连接点时,可以根据实时位置关系,判断流程编辑区内的各个流程节点的输出连接点是否符合关联条件,如果符合,则将该输出连接点确定为目标输出连接点,并使用第一线段连接该目标输出连接点与待添加输入连接点。
50.在确定对应的目标输出连接点的过程中,拖拽操作会控制待添加节点的位置变化,那么实时位置关系也会随之变化,根据实时位置关系所确定的目标输出连接点也可能发生变化,因此,在流程编辑区拖拽该待添加节点时,可以根据待添加节点的当前位置,实时确定与当前位置对应的目标输出连接点,并通过第一线段将待添加输入连接点和目标输出连接点进行连接;在当前位置发生变化时,若该目标输出连接点不符合关联条件时,断开与该目标输出连接点之间的连接,在流程编辑区内重新为该待添加输入连接点确定符合关
联条件的目标输出连接点,并将待添加输入连接点与最新的目标输出连接点进行连接。
51.可见,根据待添加节点在流程编辑区内的实时位置变化,实时确定与待添加输入连接点符合关联条件的目标输出连接点,可视化输出待添加输入连接点与目标输出连接点之间的连接关系,并将该连接关系进行实时反馈,使得算法流程编辑过程更加直观。
52.在一些实施例中,当建立目标输出连接点与待添加输入连接点之间的第二连接关系后,针对待添加节点的拖拽操作终止,待添加节点被放置在流程编辑区,此时,删除第一形状,使用第二形状绘制待添加节点,并使用第二线段绘制第二连接关系。
53.当待添加节点在流程编辑区的位置确定后,拖拽操作终止,释放该待添加节点,由于拖拽过程中,在待添加节点对应的位置使用第一形状绘制了该待添加节点,当拖拽结束后,删除该第一形状,并在相同的位置使用第二形状绘制该待添加节点;同时,使用第二线段替换第一线段,绘制待添加输入连接点与目标输出连接点之间的第二连接关系。
54.在本技术实施例中,第一线段、第二线段分别用于绘制待添加节点被拖拽时、拖拽被释放后的两种状态,所以为了区分前述两种状态,第一线段与第二线段可以是不同的线段。例如,第一线段为虚线段、第二线段为实线段,或者第一线段为灰色线段、第二线段为黑色线段等等,本技术实施例对此不做具体限定。
55.在本技术实施例中,第一形状、第二形状分别用于绘制待添加节点被拖拽时、拖拽被释放后的两种状态,所以为了区分前述两种状态,第一形状与第二形状之间也可以有所区分。例如,可以使用虚线绘制第一形状、使用实线绘制第二形状,也可以使用不同颜色深度的线条来绘制第一形状和第二形状,以实现对第一形状和第二形状的区分。
56.其中,对应于待添加节点的两种状态:被拖拽时和拖拽被释放后,也可以使用第一线段绘制第一形状,使用第二线段绘制第二形状。
57.具体地,参见图3、图4,其中,图3为本技术场景实施例提供的算法流程编辑方法的流程示意图,图4为本技术场景实施例提供的拖拽过程效果示意图。
58.使用鼠标左键点击待添加节点后,该待添加节点被选中,按住鼠标左键将待添加节点拖拽至流程编辑区,在该待添加节点被拖拽过程中,根据当前鼠标位置确定待添加节点的位置,并在该位置绘制待添加节点,在图4所示的场景中,第一形状为使用虚线绘制的矩形文本框,在待添加节点和各个流程节点对应的形状中,还写有各个节点对应的节点名称。
59.进一步地,还可以将图4中各个节点形状对应的区域设置为工具箱区域,在该工具箱区域中,可以选中任一节点形状作为待添加节点拖拽至流程编辑区,进行算法流程编辑。
60.在待添加节点被拖拽过程中,若在流程编辑区内存在与待添加输入连接点之间的位置关系符合关联条件的输出连接点,可以将该输出连接点确定为当前待添加输入连接点对应的目标输出连接点,并使用第一线段将待添加输入连接点与目标输出连接点进行连接,在图4所示的场景中,基于关联条件,将位于待添加输入连接点上方、且距离该待添加输入连接点最近的输出连接点,确定为目标输出连接点,第一线段为虚线段,当通过拖拽操作控制待添加节点的位置变化时,待添加输入连接点对应的目标输出连接点可能也会发生变化,通过虚线段连接待添加输入连接点和当前该待添加输入连接点所对应的目标输出连接点,以在拖拽待添加节点的过程中,可视化输出待添加输入连接点与当前所对应的目标输出连接点之间的实时连接关系。通过移动待添加节点,可以将其与预期的父节点进行连接,
该父节点即为目标输出连接点对应的流程节点。
61.当拖拽操作结束、待添加节点被释放后,由于流程编辑区内待添加节点对应的释放位置,是待添加节点被拖拽过程中对应的最后一个位置,所以拖拽操作结束后,删除该释放位置上使用第一形状绘制的待添加节点,并在该释放位置使用第二形状再次绘制该待添加节点,以体现待添加节点已经被释放的状态;同时,根据待添加节点被拖拽过程中的实时位置关系,可以确定待添加节点在释放位置对应的目标输出连接点,使用第二线段绘制待添加输入连接点与该目标输出连接点之间的第二连接关系,在图4中,第二形状为使用实线绘制的矩形文本框,第二线段为实线段。第二连接关系确定后,就可以基于待添加节点对应的待添加算法,对流程编辑区内的节点连接算法进行更新,进而实现对流程编辑区内算法流程的更新。
62.应该理解的是,虽然如上述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
63.基于同样的发明构思,本技术实施例还提供了一种算法流程编辑装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个算法流程编辑装置实施例中的具体限定可以参见上文中对于算法流程编辑方法的限定,在此不再赘述。
64.如图5所示,本技术实施例提供了一种算法流程编辑装置500,包括:检测模块501,用于:响应于针对待添加节点的拖拽操作,检测所述待添加节点的位置;其中,所述待添加节点对应待添加算法,所述待添加节点中至少包括待添加输入连接点;获取模块502,用于:当所述待添加节点被拖拽至流程编辑区时,响应于所述待添加节点在所述流程编辑区的位置变化,获取所述待添加输入连接点与所述流程编辑区内各个流程节点的输出连接点之间的实时位置关系;其中,所述流程编辑区内各个流程节点之间存在连接关系,并存在根据所述连接关系生成的节点连接算法;确定模块503,用于:确定所述实时位置关系符合关联条件的目标输出连接点;其中,所述目标输出连接点至少与所述流程编辑区内一个流程节点的输入连接点存在第一连接关系;连接模块504,用于:在保留所述第一连接关系的基础上,增加所述目标输出连接点与所述待添加输入连接点之间的第二连接关系,将所述目标输出连接点对应的算法输出,作为所述待添加算法的算法输入。
65.在一些实施例中,连接模块504具体用于:在保留所述第一连接关系的基础上,增加所述目标输出连接点与所述待添加输入连接点之间的第二连接关系;根据所述待添加算法和所述第二连接关系,将所述目标输出连接点对应的算法输
出作为所述待添加算法的算法输入,使用所述待添加算法更新所述节点连接算法。
66.在一些实施例中,该装置还包括:删除模块,用于:响应于所述待添加节点被拖拽至所述流程编辑区外释放,删除所述第二连接关系,并根据所述待添加算法和所述第二连接关系,从所述节点连接算法中删除所述待添加算法。
67.在一些实施例中,该装置还包括绘制模块,用于:根据所述待添加节点的位置,使用第一形状绘制所述待添加节点;响应于所述待添加节点的位置变化,修改所述待添加节点的显示位置。
68.在一些实施例中,确定模块503还用于:根据所述实时位置关系,判断所述流程编辑区内各个流程节点的输出连接点是否符合所述关联条件,如果是,将所述输出连接点确定为目标输出连接点,并使用第一线段连接所述目标输出连接点与所述待添加输入连接点。
69.在一些实施例中,绘制模块还用于:删除所述第一形状,使用第二形状绘制所述待添加节点,并使用第二线段绘制所述第二连接关系。
70.在一些实施例中,连接模块504还用于:当所述流程编辑区内,不存在符合关联条件的目标输出连接点时,不针对所述待添加输入连接点建立连接关系;响应于所述待添加输入连接点被选中,为所述待添加输入连接点确定目标输出连接点;响应于所述目标输出连接点被选中,建立所述待添加输入连接点和所述目标输出连接点之间的连接关系。
71.上述算法流程编辑装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以以硬件形式内嵌于或独立于计算机设备中的处理器,也可以以软件形式存储于计算机设备中的存储器,以便于处理器调用执行以上各个模块对应的操作。
72.在一些实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括处理器、存储器、输入/输出接口(input/output,简称i/o)及通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储设计图。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现上述的算法流程编辑方法中的步骤。
73.在一些实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图7所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元及输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供
计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现上述的xxxx方法中的步骤。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏;该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
74.本领域技术人员可以理解,图6或图7中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
75.在一些实施例中,提供了一种计算机设备,该计算机设备包括存储器和处理器,存储器存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
76.在一些实施例中,如图8所示提供了一种计算机可读存储介质的内部结构图,计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
77.在一些实施例中,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
78.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
79.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
80.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
81.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。

技术特征:
1.一种算法流程编辑方法,其特征在于,所述方法包括:响应于针对待添加节点的拖拽操作,检测所述待添加节点的位置;其中,所述待添加节点对应待添加算法,所述待添加节点中至少包括待添加输入连接点;当所述待添加节点被拖拽至流程编辑区时,响应于所述待添加节点在所述流程编辑区的位置变化,获取所述待添加输入连接点与所述流程编辑区内各个流程节点的输出连接点之间的实时位置关系;其中,所述流程编辑区内各个流程节点之间存在连接关系,并存在根据所述连接关系生成的节点连接算法;确定所述实时位置关系符合关联条件的目标输出连接点;其中,所述目标输出连接点至少与所述流程编辑区内一个流程节点的输入连接点存在第一连接关系;在保留所述第一连接关系的基础上,增加所述目标输出连接点与所述待添加输入连接点之间的第二连接关系,将所述目标输出连接点对应的算法输出,作为所述待添加算法的算法输入。2.根据权利要求1所述的方法,其特征在于,所述在保留所述第一连接关系的基础上,增加所述目标输出连接点与所述待添加输入连接点之间的第二连接关系,将所述目标输出连接点对应的算法输出,作为所述待添加算法的算法输入包括:在保留所述第一连接关系的基础上,增加所述目标输出连接点与所述待添加输入连接点之间的第二连接关系;根据所述待添加算法和所述第二连接关系,将所述目标输出连接点对应的算法输出作为所述待添加算法的算法输入,使用所述待添加算法更新所述节点连接算法。3.根据权利要求2所述的方法,其特征在于,在所述根据所述待添加算法和所述第二连接关系,将所述目标输出连接点对应的算法输出作为所述待添加算法的算法输入,使用所述待添加算法更新所述节点连接算法之后,所述方法还包括:响应于所述待添加节点被拖拽至所述流程编辑区外释放,删除所述第二连接关系,并根据所述待添加算法和所述第二连接关系,从所述节点连接算法中删除所述待添加算法。4.根据权利要求1所述的方法,其特征在于,所述响应于针对待添加节点的拖拽操作,检测所述待添加节点的位置之后,所述方法还包括:根据所述待添加节点的位置,使用第一形状绘制所述待添加节点;响应于所述待添加节点的位置变化,修改所述待添加节点的显示位置。5.根据权利要求4所述的方法,其特征在于,所述确定所述实时位置关系符合关联条件的目标输出连接点包括:根据所述实时位置关系,判断所述流程编辑区内各个流程节点的输出连接点是否符合所述关联条件,如果是,将所述输出连接点确定为目标输出连接点,并使用第一线段连接所述目标输出连接点与所述待添加输入连接点。6.根据权利要求5所述的方法,其特征在于,在所述在保留所述第一连接关系的基础上,增加所述目标输出连接点与所述待添加输入连接点之间的第二连接关系,将所述目标输出连接点对应的算法输出,作为所述待添加算法的算法输入之后,所述方法还包括:删除所述第一形状,使用第二形状绘制所述待添加节点,并使用第二线段绘制所述第二连接关系。7.根据权利要求1所述的方法,其特征在于,在所述当所述待添加节点被拖拽至流程编
辑区时,响应于所述待添加节点在所述流程编辑区的位置变化,获取所述待添加输入连接点与所述流程编辑区内各个流程节点的输出连接点之间的实时位置关系之后,所述方法还包括:当所述流程编辑区内,不存在符合关联条件的目标输出连接点时,不针对所述待添加输入连接点建立连接关系;响应于所述待添加输入连接点被选中,为所述待添加输入连接点确定目标输出连接点;响应于所述目标输出连接点被选中,建立所述待添加输入连接点和所述目标输出连接点之间的连接关系。8.一种算法流程编辑装置,其特征在于,包括:检测模块,用于:响应于针对待添加节点的拖拽操作,检测所述待添加节点的位置;其中,所述待添加节点对应待添加算法,所述待添加节点中至少包括待添加输入连接点;获取模块,用于:当所述待添加节点被拖拽至流程编辑区时,响应于所述待添加节点在所述流程编辑区的位置变化,获取所述待添加输入连接点与所述流程编辑区内各个流程节点的输出连接点之间的实时位置关系;其中,所述流程编辑区内各个流程节点之间存在连接关系,并存在根据所述连接关系生成的节点连接算法;确定模块,用于:确定所述实时位置关系符合关联条件的目标输出连接点;其中,所述目标输出连接点至少与所述流程编辑区内一个流程节点的输入连接点存在第一连接关系;连接模块,用于:在保留所述第一连接关系的基础上,增加所述目标输出连接点与所述待添加输入连接点之间的第二连接关系,将所述目标输出连接点对应的算法输出,作为所述待添加算法的算法输入。9.一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。

技术总结
本申请公开一种算法流程编辑方法及相关装置,方法包括:响应于针对待添加节点的拖拽操作,检测待添加节点的位置,该待添加节点中至少包括待添加输入连接点;当待添加节点被拖拽至流程编辑区时,响应于待添加节点在流程编辑区的位置变化,获取待添加输入连接点与流程编辑区内各个流程节点的输出连接点之间的实时位置关系,流程编辑区内各个流程节点之间存在连接关系;确定实时位置关系符合关联条件的目标输出连接点;目标输出连接点至少与流程编辑区内一个流程节点的输入连接点存在第一连接关系;在保留第一连接关系的同时,增加目标输出连接点与待添加输入连接点间的第二连接关系,将目标输出连接点对应的算法输出,作为待添加算法的算法输入。待添加算法的算法输入。待添加算法的算法输入。


技术研发人员:蔺小康 王晓飞 周超 沈小勇 吕江波
受保护的技术使用者:北京思谋智能科技有限公司
技术研发日:2023.08.21
技术公布日:2023/10/11
版权声明

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

飞行汽车 https://www.autovtol.com/

分享:

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

相关推荐