Flowchart node layout method and related device

By grouping and independently laying out the nodes of the flowchart, the problems of difficult flowchart construction and large space occupation are solved, achieving clear presentation and space saving, thus improving the user experience.

WO2025246971A1PCT designated stage Publication Date: 2025-12-04BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/095343
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-30
Filing Date
2025-05-16
Publication Date
2025-12-04

AI Technical Summary

Technical Problem

Existing flowchart node layout methods suffer from difficulties in building complex flowcharts, inconsistent results, large space consumption, or unclear directions.

Method used

The first node group is generated by grouping the nodes of the flowchart, and the flowchart nodes in the first node group are laid out independently, while the original layout of other nodes is retained. Different layout methods are used to clearly present the components and direction of the flowchart, while saving space.

Benefits of technology

It achieves a clear presentation of components and flow in the flowchart, while saving space, improving user experience, and meeting different needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025095343_04122025_PF_FP_ABST
    Figure CN2025095343_04122025_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the present disclosure are a flowchart node layout method and a related device. The method comprises: in response to a node grouping operation for a first flowchart, generating a first node group on the basis of a plurality of first process nodes of the first flowchart; and on the basis of a first node layout method, determining first location information of the plurality of first process nodes, and on the basis of the first location information, determining a first node layout of the plurality of first process nodes in the first node group.
Need to check novelty before this filing date? Find Prior Art

Description

Node layout method of flowchart and related device

[0001] Cross-reference to Related Applications

[0002] The present application claims priority to the Chinese patent application No. 202410692567.3, filed on May 30, 2024, and entitled “Node layout method of flowchart and related device”, the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD

[0003] The present disclosure relates to the field of computer technology, and in particular, to a node layout method of flowchart and related device. BACKGROUND

[0004] This section is intended to provide background or context to the embodiments of the disclosure recited in the claims. The description herein does not constitute admission that the prior art is prior art nor does it constitute an admission of any description in this section as prior art to an application.

[0005] In related technologies, the node layout method of flowchart is divided into manual layout and automatic layout. SUMMARY

[0006] The purpose of the present disclosure is to propose a node layout method of flowchart and related device.

[0007] To achieve the above purpose, the first aspect of the present disclosure provides a node layout method of flowchart, comprising:

[0008] In response to a node grouping operation of a first flowchart, a first node grouping is generated based on a plurality of first flow nodes of the first flowchart.

[0009] Based on a first node layout method, first position information of the plurality of first flow nodes is determined, and based on the first position information, a first node layout of the plurality of first flow nodes in the first node grouping is determined.

[0010] In some embodiments, there is a direct dependency relationship between the plurality of first flow nodes.

[0011] In some embodiments, the first node grouping is generated based on the plurality of first flow nodes of the first flowchart in response to the node grouping operation of the first flowchart, comprising:

[0012] In response to a selection operation of the plurality of first flow nodes of the first flowchart, a first control is displayed.

[0013] In response to a triggering operation of the first control, the first node grouping is generated based on the plurality of first flow nodes.

[0014] In some embodiments, the method further comprises:

[0015] displaying a group name editing control based on the first node group;

[0016] in response to a group name editing operation based on the group name editing control, displaying a node group name of the first node group.

[0017] In some embodiments, the method further comprises:

[0018] in response to a moving operation on at least one second flow node in the first flowchart, adding the at least one second flow node to the first node group;

[0019] wherein the at least one second flow node has a direct dependency relationship with at least one first flow node in the first node group.

[0020] In some embodiments, the method further comprises at least one of:

[0021] in response to a node adding operation after a first target flow node and the first target flow node belongs to the first node group, adding a third flow node in the first flowchart and adding the third flow node to the first node group;

[0022] in response to a node adding operation on a node link and a predecessor node of the node link is any first flow node in the first node group, adding a fourth flow node in the first flowchart and adding the fourth flow node to the first node group.

[0023] In some embodiments, the method further comprises:

[0024] in response to a moving out operation on at least one second target flow node in the first node group, moving the at least one second target flow node out of the first node group;

[0025] wherein the at least one second target flow node is an edge node in the plurality of first flow nodes of the first node group.

[0026] In some embodiments, the method further comprises:

[0027] in response to a node grouping operation on part of the first flow nodes in the first node group, generating a second node group based on the part of the first flow nodes;

[0028] determining second position information of part of the first flow nodes based on the first node layout method, and determining node layout of part of the first flow nodes in the second node group based on the second position information.

[0029] In some embodiments, the method further comprises at least one of:

[0030] adding a fifth flow node in the first flowchart and adding the fifth flow node into the second node group in response to a node adding operation after a node of a third target flow node and the third target flow node belonging to the first node group and the second node group;

[0031] adding a sixth flow node and adding the sixth flow node into the second node group in response to a node adding operation on a node connection line and a predecessor node of the node connection line belonging to the first node group and the second node group.

[0032] In some embodiments, the method further comprises:

[0033] moving at least one fourth target flow node out of the second node group and setting the at least one fourth target flow node in the first node group in response to a moving out operation on the at least one fourth target flow node in the second node group;

[0034] wherein the at least one fourth target flow node is an edge node in part of the first flow nodes of the second node group.

[0035] In some embodiments, the method further comprises:

[0036] displaying a group mark for the first node group;

[0037] and,

[0038] displaying the group mark in response to a display canceling operation on the group mark.

[0039] In some embodiments, the method further comprises:

[0040] obtaining other flow nodes in the first flowchart except the first flow nodes;

[0041] determining third position information of the first node group and the other flow nodes based on a second node layout method, and determining a second node layout of the first node group and the other flow nodes based on the third position information.

[0042] In some embodiments, the method further comprises:

[0043] in response to a group ungrouping operation on the first node group, ungrouping the first node group;

[0044] determining fourth position information of the first flow node and other flow nodes based on the second node layout method, and determining node layout of the first flow node and other flow nodes based on the fourth position information.

[0045] In some embodiments, after the ungrouping the first node group, the method further comprises:

[0046] setting the first flow node to a focus state.

[0047] In some embodiments, the method further comprises:

[0048] modifying arrangement order of flow nodes in a view list corresponding to the first flowchart based on arrangement order of flow nodes in the first node layout and the second node layout.

[0049] A second aspect of the present disclosure provides a node layout apparatus of a flowchart, comprising:

[0050] a grouping module configured to, in response to a node grouping operation on a first flowchart, generate a first node group based on a plurality of first flow nodes of the first flowchart;

[0051] a display module configured to determine first position information of the plurality of first flow nodes based on a first node layout method, and determine first node layout of the plurality of first flow nodes in the first node group based on the first position information.

[0052] A third aspect of the present disclosure provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the method of the first aspect.

[0053] A fourth aspect of the present disclosure provides a non-transitory computer readable storage medium, which stores computer instructions for causing the computer to execute the method of the first aspect.

[0054] A fifth aspect of the present disclosure provides a computer program product, comprising computer program instructions, which, when executed on a computer, cause the computer to execute the method of the first aspect. BRIEF DESCRIPTION OF DRAWINGS

[0055] In order to illustrate the technical solutions in the present disclosure or the related art more clearly, a brief introduction will be made to the drawings needed in the embodiments or the related description. Obviously, the drawings in the following description are only some embodiments of the present disclosure, and other drawings can be obtained by those skilled in the art without any creative effort based on these drawings.

[0056] FIG. 1A shows a schematic diagram of one example flowchart according to an embodiment of the present disclosure.

[0057] FIG. 1B shows a schematic diagram of one example flowchart according to an embodiment of the present disclosure.

[0058] FIG. 2 shows a schematic diagram of one example flowchart according to an embodiment of the present disclosure.

[0059] FIG. 3A shows a flowchart of one example method according to an embodiment of the present disclosure.

[0060] FIG. 3B shows a flowchart of one example method according to an embodiment of the present disclosure.

[0061] FIG. 3C shows a flowchart of one example method according to an embodiment of the present disclosure.

[0062] FIG. 3D shows a flowchart of one example method according to an embodiment of the present disclosure.

[0063] FIG. 3E shows a flowchart of one example method according to an embodiment of the present disclosure.

[0064] FIG. 3F shows a flowchart of one example method according to an embodiment of the present disclosure.

[0065] FIG. 3G shows a flowchart of one example method according to an embodiment of the present disclosure.

[0066] FIG. 3H shows a flowchart of one example method according to an embodiment of the present disclosure.

[0067] FIG. 3I shows a flowchart of one example method according to an embodiment of the present disclosure.

[0068] FIG. 3J shows a flowchart of one example method according to an embodiment of the present disclosure.

[0069] FIG. 3K shows a flowchart of one example method according to an embodiment of the present disclosure.

[0070] FIG. 3L shows a flowchart of one example method according to an embodiment of the present disclosure.

[0071] FIG. 3M shows a flow diagram of an example method according to embodiments of the present disclosure.

[0072] FIG. 3N shows a flow diagram of an example method according to embodiments of the present disclosure.

[0073] FIG. 4 shows a schematic diagram of an example apparatus according to embodiments of the present disclosure.

[0074] FIG. 5 shows a schematic diagram of a hardware structure of an example computer device according to embodiments of the present disclosure. DETAILED DESCRIPTION

[0075] For the purposes of the present disclosure, technical solutions and advantages, the following will be further described in detail with specific embodiments and with reference to the accompanying drawings.

[0076] It should be noted that, unless otherwise defined, technical terms or scientific terms used in embodiments of the present disclosure should be understood as their common meanings to those skilled in the art to which the present disclosure pertains. The terms "first", "second", and similar terms used in embodiments of the present disclosure do not denote any order, quantity, or importance, but are merely used to distinguish different components. The terms "include" or "contain" and similar terms mean that the elements or objects before the terms encompass the elements or objects listed after the terms and their equivalents, and do not exclude other elements or objects. The terms "connect" or "connected" and similar terms do not mean only physical or mechanical connections, but can include electrical connections, whether direct or indirect. The terms "upper", "lower", "left", "right", and the like are merely used to indicate relative positional relationships, and when the absolute positions of the described objects are changed, the relative positional relationships can also be changed accordingly.

[0077] The names of the messages or information exchanged between the plurality of apparatuses in the embodiments of the present disclosure are only for illustrative purposes, and are not intended to limit the scope of the messages or information.

[0078] It can be understood that, before using the technical solutions of various embodiments of the present disclosure, the user will be informed of the type, scope of use, use scenario, etc. of the personal information involved by appropriate means, and the authorization of the user will be obtained.

[0079] For example, in response to receiving the user's active request, the user is sent prompt information to explicitly prompt the user that the operation requested to be performed will require the acquisition and use of the user's personal information. Thus, the user can voluntarily choose whether to provide personal information to the electronic device, application program, server or storage medium, etc. software or hardware that performs the operation of the technical solutions of the present disclosure according to the prompt information.

[0080] As an optional but non-limiting implementation, in response to receiving the active request of the user, the manner of sending the prompt information to the user may be, for example, a pop-up window manner, in which the prompt information may be presented in the form of text. In addition, the pop-up window may also carry a selection control for the user to select "agree" or "disagree" to provide personal information to the electronic device.

[0081] It can be understood that the above notification and user authorization process is only illustrative and does not limit the implementation of the present disclosure, and other manners meeting the relevant laws and regulations can also be applied to the implementation of the present disclosure.

[0082] It can be understood that the data involved in the technical solution (including but not limited to the data itself, the acquisition or use of the data) should comply with the requirements of the relevant laws and regulations and the relevant provisions.

[0083] As described above, in the related art, the flowchart node layout method is divided into manual layout and automatic layout.

[0084] The manual layout has high flexibility, and the user can adjust the node position through dragging and the like. However, when the flowchart is relatively complex, it is difficult to build the flowchart, a large amount of time is consumed, and meanwhile, the building result is different for different people.

[0085] The automatic layout can help the user to quickly build the flowchart. However, the automatic layout in the related art can clearly present the components of the flowchart and the trend of each component but occupies a large space, or saves the space but the generated flowchart has the problems of crossing and unclear trend.

[0086] Therefore, the present disclosure aims to provide a flowchart node layout method and related equipment to at least solve one of the technical problems in the related art to some extent.

[0087] The flowchart node layout method and related equipment provided by the present disclosure generate a first node group by performing a node grouping operation on the flow nodes of a first flowchart, perform independent node layout on each first flow node in the first node group, and retain the original node layout for other flow nodes in the first flowchart except the first flow nodes, so that different node layout methods are adopted for different flow nodes in the first flowchart, so that the components of the flowchart and the trend of each component can be clearly presented, the requirement of saving space can be considered, different needs of the user when drawing the flowchart can be met, and the user experience is improved.

[0088] As shown in FIG. 1A, in the related art, when the nodes of a flowchart are automatically laid out, the automatic layout method can clearly present the components of the flowchart and the direction of each component based on the dependency relationship between the nodes, but it occupies a large space.

[0089] As shown in FIG. 1B, in the related art, when the nodes of a flowchart are automatically laid out, each column of nodes is uniformly distributed in the vertical direction of the flowchart, and this method saves space, but the generated flowchart has the problems of crossing and unclear direction.

[0090] Therefore, the embodiments of the present disclosure provide a node layout method of a flowchart to solve the above problems. As shown in FIG. 2, the method comprises:

[0091] In step S101, in response to a node grouping operation of a first flowchart, a first node group is generated based on a plurality of first flow nodes of the first flowchart.

[0092] In the embodiments, the flow nodes can be nodes corresponding to a task stage in a flow task corresponding to the first flowchart, and a flow task is composed of a plurality of flow nodes to form the logic of the flow task.

[0093] In the embodiments, the plurality of first flow nodes are obtained from the flow nodes of the first flowchart through the node grouping operation of the first flowchart, and the first node group is generated based on the plurality of first flow nodes.

[0094] In step S103, first position information of the plurality of first flow nodes is determined based on a first node layout method, and a first node layout of the plurality of first flow nodes in the first node group is determined based on the first position information.

[0095] In the embodiments, after obtaining the first node group, for each first flow node in the first node group, the first position information of the first flow node is determined based on the first node layout method, and the first node layout of the first flow node in the first node group is determined based on the first position information of the first flow node, so that the node layout of each first flow node in the first node group can be performed individually. In addition, the other flow nodes in the first flowchart except the first flow nodes continue to be laid out according to the original node layout method, so as to meet the use requirements of the user.

[0096] The first node layout method can be, for example, the layout method based on the dependency relationship between each process node as shown in Figure 1A, while the original node layout method can be, for example, the vertically evenly distributed layout method as shown in Figure 1B. In this way, by grouping the process nodes in the first flowchart and laying out the nodes separately, the components of the flowchart and the direction of each part can be clearly presented, while also taking into account the requirement of saving space, meeting the different needs of users when drawing flowcharts, and improving the user experience.

[0097] In this embodiment, a first node group is generated by performing node grouping operations on the process nodes of the first flowchart. Each first process node in the first node group is laid out independently, while the original node layout is retained for other process nodes in the first flowchart. Thus, different node layout methods are used for different process nodes in the first flowchart, which can clearly present the components of the flowchart and the direction of each part, while also taking into account the requirement of saving space, meeting the different needs of users when drawing flowcharts, and improving user experience.

[0098] In some embodiments, there are direct dependencies between multiple first process nodes. A dependency can characterize the sequential connection between process nodes, including a start node and an end node. For example, a dependency could be node 1 → node 2, where node 1 is the start node and node 2 is the end node.

[0099] In this embodiment, in the first flowchart, if two process nodes are connected by a line, then there is a direct dependency relationship between the two process nodes.

[0100] In some embodiments, as shown in Figure 3M, multiple process nodes can be selected. If the selected process nodes are not grouped, or if the selected process nodes are all in the same group, then new grouping and deletion operations can be performed on them. The deletion operation can be displayed in the "..." control following the new grouping control.

[0101] When multiple selected process nodes belong to different node groups, you cannot create or remove groups; you can only delete nodes.

[0102] In this embodiment, only process nodes with direct dependencies can be grouped. If multiple selected process nodes do not have direct dependencies, node groups cannot be created.

[0103] As shown in FIG. 3N, when a flow node without direct dependency relationship is selected, for example, node 21 or node 41 is selected, the new group control for establishing a node group is set to be in a non-triggerable state; when the new group control is triggered, for example, the mouse is hovered over the new group control, a prompt information is displayed to remind that the flow node cannot establish a node group. The prompt information can be, for example, "the currently selected node is not connected, and the group cannot be created".

[0104] In some embodiments, the generating, in step S101, the first node group based on the plurality of first flow nodes of the first flowchart in response to the node grouping operation on the first flowchart comprises:

[0105] In step S201, a first control is displayed in response to a selection operation on the plurality of first flow nodes of the first flowchart.

[0106] In step S203, the first node group is generated based on the plurality of first flow nodes in response to a trigger operation on the first control.

[0107] In the embodiment, when the user selects the plurality of first flow nodes in the first flowchart, the first control for performing the node grouping operation is displayed; when the user triggers the first control, for example, the user clicks the first control, the first node group is generated and the plurality of first flow nodes are added to the first node group, so that the independent node layout of each first flow node in the first node group is performed based on the first node layout method corresponding to the first node group.

[0108] FIG. 3A shows a schematic diagram of an exemplary first flowchart.

[0109] In the first flowchart, each flow node is laid out based on a second node layout method. The second node layout method can be, for example, a vertical uniform distribution layout method, or any other node layout method, which is not limited in the embodiment.

[0110] As shown in FIG. 3B, when the user selects the four first flow nodes of node 21, node 22, node 31 and node 41 in the first flowchart, the node 21, node 22, node 31 and node 41 are highlighted, and the grouping mark and the first control 102 are displayed. The grouping mark includes a grouping box for accommodating each first flow node, which is not limited in the embodiment.

[0111] When the user triggers the first control 102, a node grouping operation is performed to generate the first node grouping 101, and the four first flow nodes, i.e., the node 21, the node 22, the node 31 and the node 41, are added to the first node grouping 101 based on the node grouping operation, and the four first flow nodes, i.e., the node 21, the node 22, the node 31 and the node 41, in the first node grouping 101 are laid out based on the first node layout method corresponding to the first node grouping.

[0112] The first node layout method may be, for example, a node layout method based on a dependency relationship, as shown in FIG. 3C. Alternatively, the first node layout method may be any other feasible node layout method, which is not limited in the present embodiment.

[0113] In some embodiments, the layout method of the flow nodes in the node grouping may be set as the first node layout method by default, or a plurality of node layout methods may be provided for the user to select, and each flow node in the first node grouping is laid out based on the first node layout method selected by the user, which is not limited in the present embodiment.

[0114] In some embodiments, the method further includes:

[0115] In step S301, a grouping name editing control based on the first node grouping is displayed.

[0116] In step S303, in response to a grouping name editing operation based on the grouping name editing control, a node grouping name of the first node grouping is displayed.

[0117] In the present embodiment, after the node grouping is created, a grouping name editing control for performing a grouping name editing operation on the first node grouping is displayed. The node grouping name of the first node grouping can be edited through the grouping name editing control.

[0118] As shown in FIG. 3C, after the first node grouping 101 is generated, a grouping name editing control 103 corresponding to the first node grouping 101 is displayed, and the grouping name editing control 103 is set as an editing state of the active node grouping name by default.

[0119] The node grouping name may be displayed as “Grouping X” by default, where X is a number and arranged in ascending order according to the maximum value of the current serial number. When the node grouping name is cleared, the node grouping name may still be displayed as “Grouping X” by default.

[0120] In some embodiments, the method further comprises: in response to a moving operation on at least one second flow node in the first flowchart, adding the at least one second flow node to the first node group; wherein the at least one second flow node has a direct dependency relationship with at least one first flow node in the first node group.

[0121] In the embodiment, when the user triggers the second flow node, a second control for performing the moving operation is displayed; when the user triggers the second control, a node group list is displayed, the node group list displaying existing node groups or displaying node groups to which the current flow node can be added; when the user selects a first node group based on the list of existing node groups, the second flow node is added to the first node group.

[0122] In the embodiment, through the moving operation on the second flow node in the first flowchart, the second flow node not belonging to the first node group is added to the first node group. After the second flow node is added to the first node group, the second flow node and the plurality of first flow nodes originally existing in the first node group are arranged by using the first node layout method corresponding to the first node group.

[0123] In the embodiment, the second flow node needs to have a direct dependency relationship with the first flow node in the first node group, that is, the second flow node needs to have a front-back sequence dependency relationship with any first flow node in the first node group, that is, only the second flow node connected with any first flow node in the first node group can be added to the first node group.

[0124] As shown in FIG. 3D, when the user triggers the second flow node, for example, node 23, a second control 104 for moving the node 23 is displayed; when the user triggers the second control 104, a node group list is displayed, the node group list displaying existing node groups or displaying node groups to which the current flow node can be added. The node group corresponding to the moving operation is determined based on the selection operation of the user, and the node 23 is added to the corresponding node group.

[0125] In some embodiments, the method further comprises: in response to a node adding operation after the first target flow node and the first target flow node belonging to the first node group, adding a third flow node in the first flowchart, and adding the third flow node to the first node group.

[0126] In the embodiment, for any first target flow node in the first node group, when a node adding operation is performed after the first target flow node, a third flow node can be added in the first flowchart based on the node adding operation. Meanwhile, since the predecessor node of the third flow node is the first target flow node, and the first target flow node belongs to the first node group, the third flow node is also added into the first node group, and the third flow node and the plurality of first flow nodes originally existing in the first node group are arranged by using the first node layout method corresponding to the first node group.

[0127] As shown in FIG. 3E, for the first target flow node, for example, node 41, in the first node group, when the node 41 is triggered, a new node control for performing a node adding operation after the node of the flow node can be displayed; when the new node control is triggered, a node 5 is added after the node 41, as shown in FIG. 3F.

[0128] In the embodiment, for the first target flow node, for example, node 41, in the first node group, when the node 41 is triggered, a new node control for performing a node adding operation after the node of the flow node can be displayed; when the new node control is triggered, a node 5 is added after the node 41, as shown in FIG. 3F.

[0129] In some embodiments, the method further comprises: in response to a node adding operation on a node connection line and a predecessor node of the node connection line being any first flow node in the first node group, adding a fourth flow node in the first flowchart, and adding the fourth flow node into the first node group.

[0130] In the embodiment, when a node adding operation is performed on a node connection line, a fourth flow node can be added in the first flowchart. After the fourth flow node is added, the predecessor node of the node connection line is the predecessor node of the fourth flow node, and the successor node of the node connection line is the successor node of the fourth flow node.

[0131] Since the predecessor node of the fourth flow node is a flow node in the first node group, the fourth flow node is also added into the first node group, and the fourth flow node and the plurality of first flow nodes originally existing in the first node group are arranged by using the first node layout method corresponding to the first node group.

[0132] As shown in FIG. 3G, when a node adding operation is performed on the node connection line between the node 41 and the node 6, an insert node control for performing a node adding operation on the node connection line can be displayed; when the insert node control is triggered, a node 5 is added between the node 41 and the node 6, as shown in FIG. 3H.

[0133] In the embodiment, for the first target flow node, for example, node 41, in the first node group, when the node 41 is triggered, a new node control for performing a node adding operation after the node of the flow node can be displayed; when the new node control is triggered, a node 5 is added after the node 41, as shown in FIG. 3F.

[0129] In the embodiment, for the first target flow node, for example, node 41, in the first node group, when the node 41 is triggered, a new node control for performing a node adding operation after the node of the flow node can be displayed; when the new node control is triggered, a node 5 is added after the node 41, as shown in FIG. 3F.

[0134] In some embodiments, the method further includes: in response to the removal operation on at least one second target flow node in the first node group, removing the at least one second target flow node from the first node group; wherein the at least one second target flow node is an edge node in the plurality of first flow nodes in the first node group.

[0135] In this embodiment, the second target flow node in the first node group can be removed from the node group through the removal operation on the second target flow node in the first node group; the second target flow node removed from the first node group no longer belongs to the first node group, and thus will not be laid out using the first node layout method corresponding to the first node group.

[0136] The second target flow node is an edge node in the first node group, i.e., the second target flow node is a leaf node or a node connected to a flow node outside the first node group at one end. As shown in FIG. 3B, the node 21, the node 22, and the node 41 are edge nodes in the first node group 101 and can be removed from the first node group 101; and the node 31 is not an edge node in the first node group 101 and cannot be removed from the first node group 101.

[0137] In this embodiment, when the user triggers the second target flow node, a removal group control for performing the removal operation can be displayed; when the removal group control is triggered, the second target flow node can be removed from the first node group.

[0138] In some embodiments, the method further includes:

[0139] In step S401, in response to the node grouping operation on part of the first flow nodes in the first node group, a second node group is generated based on the part of the first flow nodes.

[0140] In step S403, second position information of the part of the first flow nodes is determined based on the first node layout method, and node layout of the part of the first flow nodes in the second node group is determined based on the second position information.

[0141] In this embodiment, for the first flow nodes already existing in the first node group, the grouping can also be continued. Part of the first flow nodes in the first node group can be acquired, and a node grouping operation is performed on the part of the first flow nodes, thereby generating a second node group including the part of the first flow nodes; and each flow node in the second node group can also be laid out based on the first node layout method corresponding to the second node group.

[0142] When part of the first flow nodes are selected in the first node group, a new group control for performing the node grouping operation is displayed; when the user triggers the new group control, for example, the user clicks the new group control, a second node group is generated and part of the first flow nodes are added to the second node group, so that the node layout of each flow node in the second node group is performed independently based on the first node layout method corresponding to the second node group.

[0143] As shown in FIG. 3I, when the three first flow nodes of node 21, node 31 and node 41 are selected in the first node group 101, the three first flow nodes are highlighted, and the group label and the new group control are displayed.

[0144] When the user triggers the new group control, the node grouping operation is performed to generate the second node group 105, and the three first flow nodes of node 21, node 31 and node 41 are added to the second node group 105 based on the node grouping operation, and the node layout of the three first flow nodes in the second node group 105 is performed based on the first node layout method corresponding to the second node group 105, as shown in FIG. 3J.

[0145] In this embodiment, after the second node group 105 is generated, the group name editing control corresponding to the second node group 105 is displayed, and the group name editing control is set to the editing state of the active node group name by default. The node group name can be displayed as "Group X" by default, where X is a number and is arranged in ascending order according to the maximum value of the current serial number. When the node group name is cleared, the node group name can still be displayed as "Group X" by default.

[0146] In some embodiments, the method further comprises: in response to the node adding operation after the node of the third target flow node and the third target flow node belonging to the first node group and the second node group, adding a fifth flow node in the first flowchart and adding the fifth flow node to the second node group.

[0147] In this embodiment, when the node adding operation is performed after the node of the third target flow node to add the fifth flow node in the first flowchart, if the third target flow node belongs to the first node group and the second node group at the same time, the fifth flow node is added to the innermost node group, i.e., the second node group, and the fifth flow node and part of the first flow nodes originally existing in the second node group are arranged by the first node layout method corresponding to the second node group.

[0148] In some embodiments, the method further comprises: in response to a node adding operation on the node connection line and the predecessor node of the node connection line belonging to the first node group and the second node group, adding a sixth flow node, and adding the sixth flow node to the second node group.

[0149] In this embodiment, when a node adding operation is performed on the node connection line, a sixth flow node can be added in the first flowchart. If the sixth flow node predecessor node belongs to both the first node group and the second node group, the sixth flow node is added to the innermost node group, i.e., the second node group, and the sixth flow node and the part of the first flow nodes originally existing in the second node group are arranged by using the first node layout method corresponding to the second node group.

[0150] In some embodiments, the method further comprises: in response to a removing operation on at least one fourth target flow node in the second node group, removing at least one fourth target flow node from the second node group, and setting at least one fourth target flow node in the first node group; wherein the at least one fourth target flow node is an edge node in the part of the first flow nodes of the second node group.

[0151] In this embodiment, when a removing operation is performed on the fourth target flow node in the second node group, since the fourth target flow node belongs to both the first node group and the second node group, the fourth target flow node can be removed from the innermost group, i.e., the second node group, by performing a removing operation on the second target flow node in the first node group. The fourth target flow node removed from the second node group no longer belongs to the second node group but still belongs to the first node group, and the fourth target flow node can still be arranged in the first node group by using the first node layout method corresponding to the first node group.

[0152] The fourth target flow node is an edge node in the second node group, i.e., the fourth target flow node is a leaf node or a node connected to a flow node outside the second node group at one end. As shown in FIG. 3J, the node 21 and the node 41 are edge nodes in the second node group 105 and can be removed from the second node group 105; and the node 31 is not an edge node in the second node group 105 and cannot be removed from the second node group 105.

[0153] In some embodiments, the method further comprises: displaying a group marker for the first node group; and in response to a canceling display operation on the group marker, canceling the display of the group marker.

[0154] The group mark can be a group box for containing the first flow nodes. The embodiment is not limited in this regard. In the embodiment, the group mark can be hidden by a hide operation.

[0155] As shown in FIG. 3C, after the first node group 101 is created, a rectangular dashed group box is displayed to contain the first flow nodes in the first node group 101, so that the user can know which flow nodes are added to the first node group 101, facilitating the use of the user and improving the user experience.

[0156] After the first node group 101 is created, the display group outline control 106 for displaying or hiding the group mark is displayed, and the group mark is displayed by default after the first node group 101 is created.

[0157] As shown in FIG. 3K, when the hide operation is performed through the display group outline control 106, the group mark can be hidden, and the rectangular dashed group box is no longer displayed, facilitating the user to view the complete first flowchart and improving the user experience.

[0158] In some embodiments, the method further includes:

[0159] In step S501, the first flowchart is obtained, and the first flow nodes and other flow nodes are obtained.

[0160] In step S503, the third position information of the first node group and the other flow nodes is determined based on a second node layout method, and the second node layout of the first node group and the other flow nodes is determined based on the third position information.

[0161] In the embodiment, for the flow nodes other than the first flow nodes which are not grouped, the first node group is taken as a flow node, and the first node group and the other flow nodes are laid out by the second node layout method. The second node layout method can be, for example, a vertical uniform distribution node layout method, or can be another node layout method different from the first node layout method, and the embodiment is not limited in this regard.

[0162] In the embodiment, for the flow nodes which are not grouped, the second node layout method of the first flowchart is used for node layout; for the flow nodes which are removed from the node group, the second node layout method is used for node layout together with the flow nodes which are not grouped; and for each node group in the first flowchart, the node group is taken as a flow node and the second node layout method is used for node layout together with the flow nodes which are not grouped.

[0163] In some embodiments, the method further comprises:

[0164] In step S601, the first node group is released in response to a group release operation on the first node group.

[0165] In step S603, fourth position information of the first flow node and other flow nodes is determined based on the second node layout method, and node layout of the first flow node and other flow nodes is determined based on the fourth position information.

[0166] In this embodiment, for the created first node group, the group release operation can be performed based on the group release operation, and after the release, the first flow node in the original first node group and the flow node not in the group are arranged together by the second node layout method.

[0167] As shown in FIG. 3L, when the first node group 101 is triggered, for example, when the first node group 101 is clicked or the mouse is hovered over the first node group 101, a release group control for performing the group release operation is displayed; when the release group control is triggered, the first node group 101 is released, and the nodes 21, 22, 31 and 41 in the first node group 101 are no longer arranged by the first node layout method, but are arranged together with the flow node not in the group by the second node layout method.

[0168] In some embodiments, after the first node group is released, the first flow node is set to a focus state.

[0169] In this embodiment, after the first node group is released, each first flow node in the first node group needs to be selected, that is, each first flow node in the first node group is kept in a selected state, so that the user can know which nodes are the flow nodes after the node group is released, the user's use is facilitated, and the user experience is improved.

[0170] In some embodiments, if other flow nodes are selected before the first node group is released, after the release, each first flow node in the first node group and the selected flow nodes are kept in a selected state.

[0171] In some embodiments, the method further comprises: based on the arrangement order of the flow nodes in the first node layout and the second node layout, modifying the arrangement order of the flow nodes in the view list corresponding to the first flowchart.

[0172] In this embodiment, since the flow nodes in the first flowchart are grouped and rearranged, the topological order of the flow nodes in the first flowchart can be changed, for example, the up-down order of the flow nodes in the same column is changed. In this embodiment, the arrangement order of the flow nodes in the view list corresponding to the first flowchart is modified based on the topological order of the nodes after grouping and rearrangement. The view list corresponding to the first flowchart can include a conditional view, a Gantt chart, etc., which is not limited in this embodiment.

[0173] It should be noted that the method of the embodiments of the present disclosure can be executed by a single device, such as a computer or a server. The method of the embodiments can also be applied to a distributed scenario, and be completed by multiple devices cooperating with each other. In the case of such a distributed scenario, one of the multiple devices can only execute one or more steps in the method of the embodiments of the present disclosure, and the multiple devices can interact with each other to complete the method.

[0174] It should be noted that some embodiments of the present disclosure have been described above. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims can be performed in a different order than the order described above and still achieve desirable results. In addition, the processes depicted in the figures do not necessarily require the particular order shown, or sequential order, to achieve the desired results. In certain implementations, multitasking and parallel processing can be advantageous.

[0175] Based on the same inventive concept, the present disclosure also provides a node layout device of a flowchart corresponding to any of the above-mentioned embodiment methods.

[0176] Referring to FIG. 4, the device comprises:

[0177] The grouping module 11 is configured to generate a first node group based on a plurality of first flow nodes of a first flowchart in response to a node grouping operation on the first flowchart.

[0178] The display module is configured to determine first position information 13 of the plurality of first flow nodes based on a first node layout method, and determine a first node layout of the plurality of first flow nodes in the first node group based on the first position information.

[0179] In some embodiments, there is a direct dependency relationship between the plurality of first flow nodes.

[0180] In some embodiments, the grouping module 11 is further configured to:

[0181] In response to a selection operation on the plurality of first flow nodes of the first flowchart, display a first control.

[0182] In response to a triggering operation on the first control, the first node group is generated based on a plurality of the first flow nodes.

[0183] In some embodiments, the apparatus is further configured to:

[0184] display a group name editing control based on the first node group;

[0185] In response to a group name editing operation based on the group name editing control, display a node group name of the first node group.

[0186] In some embodiments, the apparatus is further configured to:

[0187] In response to a moving operation on at least one second flow node in the first flowchart, add the at least one second flow node to the first node group;

[0188] wherein the at least one second flow node has a direct dependency relationship with at least one first flow node in the first node group.

[0189] In some embodiments, the method and the apparatus are further configured to at least one of:

[0190] In response to a node adding operation after a first target flow node and the first target flow node belongs to the first node group, add a third flow node in the first flowchart and add the third flow node to the first node group;

[0191] In response to a node adding operation on a node link and a predecessor node of the node link is any first flow node in the first node group, add a fourth flow node in the first flowchart and add the fourth flow node to the first node group.

[0192] In some embodiments, the apparatus is further configured to:

[0193] In response to a moving out operation on at least one second target flow node in the first node group, move the at least one second target flow node out of the first node group;

[0194] wherein the at least one second target flow node is an edge node in the plurality of first flow nodes of the first node group.

[0195] In some embodiments, the apparatus is further configured to:

[0196] in response to a node grouping operation on part of the first flow nodes of the first node group, generating a second node group based on part of the first flow nodes;

[0197] determining second position information of part of the first flow nodes based on the first node layout method, and determining node layout of part of the first flow nodes in the second node group based on the second position information.

[0198] In some embodiments, the apparatus is further configured to at least one of:

[0199] in response to a node adding operation after a node of a third target flow node and the third target flow node belongs to the first node group and the second node group, adding a fifth flow node in the first flowchart and adding the fifth flow node to the second node group;

[0200] in response to a node adding operation on a node link and a predecessor node of the node link belongs to the first node group and the second node group, adding a sixth flow node and adding the sixth flow node to the second node group.

[0201] In some embodiments, the apparatus is further configured to:

[0202] in response to a removal operation on at least one fourth target flow node in the second node group, removing at least one fourth target flow node from the second node group and setting at least one fourth target flow node in the first node group;

[0203] wherein at least one fourth target flow node is an edge node in part of the first flow nodes of the second node group.

[0204] In some embodiments, the apparatus is further configured to:

[0205] display a group mark for the first node group;

[0206] and,

[0207] in response to a cancel display operation on the group mark, cancel display of the group mark.

[0208] In some embodiments, the apparatus is further configured to:

[0209] obtain other flow nodes in the first flowchart except the first flow nodes;

[0210] determine third position information of the first node group and other flow nodes based on the second node layout method, and determine a node layout of the first node group and other flow nodes based on the third position information.

[0211] In some embodiments, the apparatus is further configured to:

[0212] In response to a group cancel operation on the first node group, cancel the first node group.

[0213] determine fourth position information of the first flow node and other flow nodes based on the second node layout method, and determine a node layout of the first flow node and other flow nodes based on the fourth position information.

[0214] In some embodiments, after the first node group is cancelled, the apparatus is further configured to:

[0215] set the first flow node to a focus state.

[0216] In some embodiments, the apparatus is further configured to:

[0217] modify the arrangement order of flow nodes in a view list corresponding to the first flowchart based on the arrangement order of flow nodes in the first node layout and the second node layout.

[0218] For the convenience of description, the above apparatus is described in various modules in terms of functions. Of course, the functions of the modules can be implemented in one or more software and / or hardware when implementing the present disclosure.

[0219] The apparatus of the above embodiments is used to implement the corresponding method in any of the preceding embodiments, and has the beneficial effects of the corresponding method embodiments, which are not described here again.

[0220] Based on the same inventive concept, the present disclosure also provides an electronic device corresponding to the method of any of the above embodiments, which comprises a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method of any of the above embodiments when executing the program.

[0221] FIG. 5 shows a more specific hardware structure of an electronic device according to the present embodiment. The device can include a processor 1010, a memory 1020, an input / output interface 1030, a communication interface 1040, and a bus 1050. The processor 1010, the memory 1020, the input / output interface 1030, and the communication interface 1040 are connected to each other through the bus 1050 for communication within the device.

[0222] The processor 1010 can be implemented by a general-purpose CPU (Central Processing Unit), a microprocessor, an ASIC (Application Specific Integrated Circuit), or one or more integrated circuits, etc., for executing relevant programs to implement the technical solutions provided by the embodiments of the present specification.

[0223] The memory 1020 can be implemented by a ROM (Read Only Memory), a RAM (Random Access Memory), a static storage device, a dynamic storage device, etc. The memory 1020 can store an operating system and other application programs, and when the technical solutions provided by the embodiments of the present specification are implemented by software or firmware, the relevant program codes are stored in the memory 1020 and called and executed by the processor 1010.

[0224] The input / output interface 1030 is configured to connect input / output modules to implement information input and output. The input / output modules can be configured as components in the device (not shown in the figure) or externally connected to the device to provide corresponding functions. The input devices can include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output devices can include a display, a speaker, a vibrator, an indicator light, etc.

[0225] The communication interface 1040 is configured to connect a communication module (not shown in the figure) to implement communication interaction between the device and other devices. The communication module can realize communication through a wired manner (such as USB, network cable, etc.) or through a wireless manner (such as mobile network, WIFI, Bluetooth, etc.).

[0226] The bus 1050 includes a channel for transmitting information between various components (such as the processor 1010, the memory 1020, the input / output interface 1030, and the communication interface 1040) of the device.

[0227] It should be noted that although the above device only shows the processor 1010, the memory 1020, the input / output interface 1030, the communication interface 1040, and the bus 1050, in the specific implementation process, the device can also include other components necessary for normal operation. In addition, those skilled in the art can understand that the above device can also only include components necessary for implementing the technical solutions of the embodiments of the present specification, and does not necessarily include all the components shown in the figure.

[0228] The electronic device of the above embodiments is used to implement the corresponding method in any of the preceding embodiments, and has the beneficial effects of the corresponding method embodiments, which are not described here again.

[0229] Based on the same inventive concept, the disclosure also provides a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform the method of any of the above embodiments.

[0230] The computer-readable medium of the embodiments can include permanent and non-permanent, removable and non-removable media, which can be implemented by any method or technology to store information. The information can be computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information accessible by a computing device.

[0231] The computer instructions stored in the storage medium of the above embodiments are used to cause the computer to perform the method of any of the above embodiments, and have the beneficial effects of the corresponding method embodiments, which are not described here.

[0232] Based on the same inventive concept, the disclosure also provides a computer program product including computer program instructions. In some embodiments, the computer program instructions can be executed by one or more processors of a computer to cause the computer and / or the processor to perform the method. Corresponding to each step in each embodiment of the method, the processor performing the corresponding step can belong to the corresponding execution subject.

[0233] The computer program product of the above embodiments is used to cause the computer and / or the processor to perform the method of any of the above embodiments, and has the beneficial effects of the corresponding method embodiments, which are not described here.

[0234] Those skilled in the art should understand that the discussion of any of the above embodiments is only exemplary and is not intended to imply that the scope of the disclosure (including claims) is limited to these examples; under the idea of the disclosure, the above embodiments or technical features between different embodiments can also be combined, the steps can be implemented in any order, and there are many other changes of different aspects of the embodiments of the disclosure as described above. In order to be brief, they are not provided in detail.

[0235] In addition, to simplify the description and discussion, and so as not to make the embodiments of the disclosure difficult to understand, the well-known power / ground connections to integrated circuit (IC) chips and other components can or can not be shown in the provided drawings. Further, devices can be shown in block diagram form in order to avoid making the embodiments of the disclosure difficult to understand, and this also takes into account the fact that details regarding implementation of these block diagram devices are highly dependent on the platform to which the embodiments of the disclosure are to be implemented (i.e., these details should be well within the understanding of one of skill in the art). Where specific details (e.g., circuitry) are set forth in order to describe an illustrative embodiment of the disclosure, it will be apparent to one of skill in the art that the embodiments of the disclosure can be practiced without, or with variation of, these specific details. Thus, the description is to be considered as illustrative and not restrictive, and the scope of the disclosure to be indicated by the appended claims.

[0236] Although the disclosure has been described in conjunction with specific embodiments thereof, numerous alternatives, modifications, and variations will be readily apparent to those of ordinary skill in the art. For example, other memory architectures (e.g., dynamic RAM (DRAM)) can use the embodiments discussed.

[0237] The embodiments of the disclosure are intended to cover all such alternatives, modifications, and variations as come within the scope of the broadest possible interpretation of the appended claims. Accordingly, any and all such modifications, variations, and equivalents that fall within the spirit and scope of the embodiments of the disclosure are intended to be included herein.

Claims

1. A method for node layout in a flowchart, comprising: In response to the node grouping operation of the first flowchart, a first node group is generated based on multiple first flowchart nodes of the first flowchart; Based on the first node layout method, the first position information of multiple first process nodes is determined, and based on the first position information, the first node layout of multiple first process nodes in the first node group is determined.

2. The method according to claim 1, wherein, There are direct dependencies between multiple nodes in the first process.

3. The method according to claim 1, wherein, The step of generating a first node group based on multiple first process nodes of the first flowchart in response to a node grouping operation on the first flowchart includes: In response to a selection operation on multiple first process nodes of the first flowchart, a first control is displayed; In response to a trigger operation on the first control, the first node group will be generated based on multiple first process nodes.

4. The method according to claim 1, further comprising: Displays a group name editing control based on the first node group; In response to a group name editing operation based on the group name editing control, the node group name of the first node group is displayed.

5. The method according to claim 1, further comprising: In response to a move operation on at least one second process node in the first flowchart, at least one second process node is added to the first node group; Wherein, at least one of the second process nodes has a direct dependency relationship with at least one of the first process nodes in the first node group.

6. The method of claim 1, further comprising at least one of the following: In response to a node addition operation following a node of a first target process node and the first process target node belonging to the first node group, a third process node is added to the first flowchart and the third process node is added to the first node group. In response to a node addition operation on a node connection line, where the preceding node of the node connection line is any first process node in the first node group, a fourth process node is added to the first flowchart, and the fourth process node is added to the first node group.

7. The method according to claim 1, further comprising: In response to a removal operation of at least one second target process node in the first node group, at least one second target process node is removed from the first node group; Wherein, at least one of the second target process nodes is an edge node among the multiple first process nodes in the first node group.

8. The method according to claim 1, further comprising: In response to the node grouping operation on a portion of the first process nodes of the first node group, a second node group is generated based on a portion of the first process nodes; Based on the first node layout method, the second position information of some of the first process nodes is determined, and based on the second position information, the node layout of some of the first process nodes in the second node group is determined.

9. The method of claim 8, further comprising at least one of the following: In response to a node addition operation following a node of a third target process node, and the third target process node belongs to both the first node group and the second node group, a fifth process node is added to the first flowchart, and the fifth process node is added to the second node group; In response to a node addition operation on a node connection where the preceding node of the node connection belongs to both the first node group and the second node group, a sixth process node is added and the sixth process node is added to the second node group.

10. The method of claim 8, further comprising: In response to a removal operation of at least one fourth target process node in the second node group, at least one fourth target process node is removed from the second node group, and at least one fourth target process node is set in the first node group; Wherein, at least one of the fourth target process nodes is an edge node in a portion of the first process nodes in the second node group.

11. The method according to claim 1, further comprising: Display the grouping marker for the first node group; as well as, In response to the operation of canceling the display of the group tag, the group tag is canceled.

12. The method according to claim 1, further comprising: Obtain the other process nodes in the first flowchart besides the first process node; The third position information of the first node group and other process nodes is determined based on the second node layout method, and the second node layout of the first node group and other process nodes is determined based on the third position information.

13. The method of claim 12, further comprising: In response to the unpacking operation on the first node group, the first node group is unpacked; The fourth position information of the first process node and other process nodes is determined based on the second node layout method, and the node layout of the first process node and other process nodes is determined based on the fourth position information.

14. The method according to claim 13, wherein, After ungrouping the first node, the method further includes: Set the first process node to focus state.

15. The method of claim 12, further comprising: Based on the arrangement order of process nodes in the first node layout and the second node layout, modify the arrangement order of process nodes in the view list corresponding to the first flowchart.

16. A flowchart node layout device, comprising: The grouping module is configured to: generate a first node group based on multiple first process nodes of the first flowchart in response to a node grouping operation of the first flowchart; The display module is configured to: determine the first position information of multiple first process nodes based on the first node layout method, and determine the first node layout of multiple first process nodes in the first node group based on the first position information.

17. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the program, implements the method as claimed in any one of claims 1 to 15.

18. A non-transitory computer-readable storage medium storing computer instructions for causing the computer to perform the method according to any one of claims 1 to 15.

19. A computer program product comprising computer program instructions that, when executed on a computer, cause the computer to perform the method as described in any one of claims 1 to 15.

Citation Information

Patent Citations

  • Method and device for processing flow diagram

    CN102737108A

  • Method and device for analyzing layout of flow chart

    CN103473265A

  • Nested flow chart generation method and device, electronic equipment and storage medium

    CN114119806A

  • Image generation method and device, equipment and storage medium

    CN115423898A

  • Node layout method of flow chart and related equipment

    CN118657850A