Flow chart drawing optimization method and device, electronic equipment and storage medium
By determining the minimum rectangular box and influence area of the mobile unit in the flowchart software, the flowchart drawing is optimized, and the problem of slow flowchart drawing speed in the prior art is solved and the user experience is improved.
Patent Information
- Application Number
- CN202510436846.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-09
- Publication Date
- 2025-05-06
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
When the existing flowchart drawing software is large in number of unit modules and material flows, the canvas drawing speed will be slow, the user feels stuttered during operation, and the user experience will be poor.
By drawing a flowchart saved by the user at the previous moment when the system is started, and determining the minimum rectangular box of each mobile unit; in response to user operations, determining the starting and ending positions of the target mobile unit, calculating the influence mobile units within its influence area; clearing and redrawing these units to optimize the flowchart.
Reduces areas that need to be repainted, improves the speed of flowchart drawing, reduces lag during user operations, and improves user experience.
Smart Images

Figure CN119938213A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to the field of computer technology, and in particular to a flowchart drawing optimization method, device, electronic device and storage medium. Background Art
[0002] In process simulation software, there is a canvas for drawing flow charts, which will display all unit modules, connections and various data of modules. Since the information drawn in the flow chart will change frequently, the canvas needs to be redrawn frequently.
[0003] The commonly used solution is to clear the entire canvas when there is a change, and then redraw all the information. When there are a large number of unit modules and material flows, since the entire canvas needs to draw a lot of content, and the drawing of the unit module is very complicated, it will take a lot of time. Therefore, when users operate the entire canvas, they feel very stuck and the user experience is very poor.
[0004] Therefore, how to improve the speed of canvas drawing is a technical problem that needs to be solved urgently by those skilled in the art. Summary of the invention
[0005] The embodiments of the present invention provide a flowchart drawing optimization method, device, electronic device and storage medium, so as to reduce the drawing time and improve the performance by accurately calculating the minimum area that needs to be redrawn.
[0006] In a first aspect, an embodiment of the present invention provides a flowchart drawing optimization method, comprising:
[0007] When the system starts, the flowchart saved by the user at the last moment is drawn on the canvas, and the minimum rectangular frame corresponding to each mobile unit is determined; wherein the minimum rectangular frame is used to determine the starting position of the mobile unit before moving, and the mobile unit includes a module, a connection line and the data in the module;
[0008] In response to a user's operation request, determine a target mobile unit to be moved and a terminal position of the target mobile unit after the movement;
[0009] Determine the impact area of the target mobile unit and the impact mobile units in the impact area when the target mobile unit moves according to the starting position and the ending position of the target mobile unit;
[0010] The influencing mobile units in the influencing area are cleared and the target mobile units and the influencing mobile units in the influencing area are redrawn to obtain an optimized target flow chart.
[0011] In a second aspect, an embodiment of the present invention further provides a flowchart drawing optimization device, comprising:
[0012] The minimum rectangular frame determination module is used to draw the flowchart saved by the user at the last moment on the canvas when the system is started, and determine the minimum rectangular frame corresponding to each mobile unit; wherein the minimum rectangular frame is used to determine the starting position of the mobile unit before moving, and the mobile unit includes a module, a connection line and data in the module;
[0013] A target mobile unit determination module is used to respond to a user's operation request and determine the target mobile unit to be moved and the terminal position of the target mobile unit after the movement;
[0014] An influence area determination module, used to determine the influence area of the target mobile unit and the influence mobile units in the influence area according to the starting position and the ending position of the target mobile unit;
[0015] The flow chart drawing optimization module is used to clear the influencing mobile units in the influencing area and redraw the target mobile units and the influencing mobile units in the influencing area to obtain an optimized target flow chart.
[0016] In a third aspect, an embodiment of the present invention further provides an electronic device, the electronic device comprising:
[0017] one or more processors;
[0018] A storage device for storing one or more programs;
[0019] When the one or more programs are executed by the one or more processors, the one or more processors implement the flowchart drawing optimization method described in any embodiment of the present invention.
[0020] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the flowchart drawing optimization method described in any embodiment of the present invention.
[0021] In a fifth aspect, an embodiment of the present invention further provides a computer program product, wherein the computer program product includes a computer program, and when the computer program is executed by a processor, the flowchart drawing optimization method as described in any embodiment of the present invention is implemented.
[0022] The embodiment of the present invention provides a flowchart drawing optimization method, device, electronic device and storage medium. When the system starts, the flowchart saved by the user at the last moment is drawn on the canvas, and the minimum rectangular frame corresponding to each mobile unit is determined; in response to the user's operation request, the target mobile unit that moves and the terminal position of the target mobile unit after the movement are determined; according to the starting position and the terminal position of the target mobile unit, the impact area when the target mobile unit moves and the impact mobile units in the impact area are determined; the impact mobile units in the impact area are cleared and the target mobile units and the impact mobile units in the impact area are redrawn to obtain an optimized target flowchart. The technical solution of the embodiment of the present invention is adopted to reduce the drawing time and improve the performance by accurately calculating the minimum area that needs to be redrawn. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Other features, objects and advantages of the present invention will become more apparent by reading the detailed description of non-limiting embodiments made with reference to the following drawings. The drawings are only for the purpose of illustrating preferred embodiments and are not to be considered as limiting the present invention. Also, the same reference symbols are used throughout the drawings to represent the same parts. In the drawings:
[0024] Figure 1 is a flowchart of a flowchart drawing optimization method provided in an embodiment of the present invention;
[0025] Figure 2 is a schematic diagram of a minimum rectangular frame structure provided in an embodiment of the present invention;
[0026] Figure 3 is a flowchart of another flowchart drawing optimization method provided in an embodiment of the present invention;
[0027] Figure 4 is a schematic diagram of an impact area structure provided in an embodiment of the present invention;
[0028] Figure 5 It is a structural schematic diagram of a flow chart drawing optimization device provided in an embodiment of the present invention;
[0029] Figure 6 It is a structural schematic diagram of an electronic device provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0030] The present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. It is to be understood that the specific embodiments described herein are only used to explain the present invention, rather than to limit the present invention. It should also be noted that, for ease of description, only parts related to the present invention, rather than all structures, are shown in the accompanying drawings.
[0031] Before discussing the exemplary embodiments in more detail, it should be mentioned that some exemplary embodiments are described as processes or methods depicted as flow charts. Although the flow charts describe the operations (or steps) as sequential processes, many of the operations (or steps) therein can be implemented in parallel, concurrently or simultaneously. In addition, the order of the operations can be rearranged. The process can be terminated when its operation is completed, but can also have additional steps not included in the accompanying drawings. The process can correspond to a method, function, procedure, subroutine, subprogram, etc.
[0032] Among them, the acquisition, storage, use and processing of data in the technical solution of this application are in compliance with the relevant provisions of laws and regulations. It should be noted that in the embodiments of this application, some existing solutions in the industry such as certain software, components or models may be mentioned, which should be considered as exemplary, and their purpose is only to illustrate the feasibility of the implementation of the technical solution of this application, but it does not mean that the solution has been or must be used.
[0033] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the numbers used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein.
[0034] Embodiment 1
[0035] Figure 1 This is a flowchart of a flowchart drawing optimization method provided in an embodiment of the present invention. This embodiment is applicable to the case of flowchart drawing optimization. The method of this embodiment can be executed by a flowchart drawing optimization device, and the device can be implemented in hardware and / or software. The device can be configured in a flowchart drawing optimization server. The method specifically includes the following steps:
[0036] S110: When the system starts, the flowchart saved by the user at the last moment is drawn on the canvas, and the minimum rectangular frame corresponding to each mobile unit is determined.
[0037] When the drawing system is started, the canvas needs to be drawn for the first time. The first drawing of the canvas is based on the flowchart saved by the user at the last moment. If the user has not saved the flowchart at the last moment, the flowchart is drawn according to the user's needs.
[0038] After drawing the flow chart, determine the smallest rectangular box corresponding to each mobile unit. The mobile unit includes modules, connections, and data within the module. Figure 2The mobile unit includes a module, a connection between modules, each subunit constituting the module, and data within the module. For example, taking the feed stream module as an example, the mobile unit includes the feed stream module, the connection between the feed stream module and the Gibbs reactor module, the five subunits constituting the feed stream module, and data within the subunits.
[0039] The minimum rectangular frame is used to determine the starting position of the mobile unit before it moves. The minimum rectangular frame may refer to a minimum rectangular frame that can frame the mobile unit, such as Figure 2 The red box in the figure can select the Gibbs reactor module. Since there are coordinates in the canvas, the starting position of each mobile unit before moving can be determined.
[0040] S120, responding to the user's operation request, determining the target mobile unit to be moved and the final position of the target mobile unit after the movement.
[0041] In response to the user's operation request, the mobile units in the canvas are monitored to determine the target mobile unit to be moved and the final position of the target mobile unit after the movement. The operation request includes but is not limited to moving, adding and deleting the mobile unit.
[0042] S130: Determine the influence area of the target mobile unit and the influence mobile units in the influence area according to the starting position and the ending position of the target mobile unit.
[0043] The influence area is determined according to the starting position and the ending position of the target mobile unit, and the influence area is composed of the entire rectangular area from the starting position to the ending position of the target mobile unit. The position of the influence area can be determined by the coordinates of the starting position and the ending position.
[0044] The affected mobile units refer to the mobile units other than the target mobile unit in the affected area. Figure 2 If the Gibbs reactor module in the influent moves to the left and to the left side of the feed stream module, the feed stream module is an influencing mobile unit in the influencing area.
[0045] S140, clearing the influencing mobile units in the influencing area and redrawing the target mobile units and the influencing mobile units in the influencing area to obtain an optimized target flow chart.
[0046] After determining the impact area and the impact mobile units in the impact area, the impact mobile units and the target mobile units in the moving area are cleared, and the moved target mobile units and the cleared impact mobile units are redrawn to obtain an optimized target flow chart.
[0047] The embodiment of the present invention provides a flowchart drawing optimization method, which draws the flowchart saved by the user at the last moment in the canvas when the system starts, and determines the minimum rectangular box corresponding to each mobile unit; wherein the minimum rectangular box is used to determine the starting position of the mobile unit before the movement, and the mobile unit includes a module, a connection line and the data in the module; in response to the user's operation request, determines the target mobile unit that moves and the end position of the target mobile unit after the movement; according to the starting position and the end position of the target mobile unit, determines the impact area when the target mobile unit moves and the impact mobile units in the impact area; clears the impact mobile units in the impact area and redraws the target mobile unit and the impact mobile units in the impact area to obtain an optimized target flowchart. The technical solution of the embodiment of the present invention is adopted to reduce the drawing time and improve the performance by accurately calculating the minimum area that needs to be redrawn.
[0048] Embodiment 2
[0049] Figure 3 The flowchart of a flowchart drawing optimization method provided in an embodiment of the present invention. The embodiment of the present invention further optimizes the above embodiment on the basis of the above embodiment, and the embodiment of the present invention can be combined with various optional solutions in one or more of the above embodiments. Figure 3 As shown, the flowchart drawing optimization method provided in the embodiment of the present invention may include the following steps:
[0050] S310: When the system starts, the flowchart saved by the user at the last moment is drawn on the canvas, and the minimum rectangular frame corresponding to each mobile unit is determined.
[0051] When the drawing system is started, the flowchart saved by the user at the last moment is redrawn.
[0052] As an optional but non-limiting implementation, when the system is started, a flowchart saved by the user at the last moment is drawn on the canvas, including but not limited to steps A1-A2:
[0053] Step A1: If the user has saved a flowchart at the last moment, the flowchart saved by the user is drawn on the canvas when the system is started.
[0054] Step A2: If the flowchart saved by the user at the last moment is empty, the current canvas is in a blank state when the system starts.
[0055] If the user has saved a flowchart at the last moment, the flowchart saved by the user at the last moment will be redrawn when the system starts. If the user is drawing on the canvas for the first time, the canvas will be blank when the system starts; draw a flowchart on the canvas according to the user's needs.
[0056] S320: In response to the user's operation request, determine the target mobile unit to be moved and the final position of the target mobile unit after the movement.
[0057] The system responds to the user's operation request and monitors the moving target mobile unit and the terminal position of the target mobile unit after the movement.
[0058] As an optional but non-limiting implementation, the step of responding to the user's operation request and determining the target mobile unit that has moved and the final position of the target mobile unit after the movement includes but is not limited to steps B1-B2:
[0059] Step B1: responding to the user's operation request, determining the target mobile unit that is moving and determining the starting position of the target mobile unit; wherein the operation request includes the position movement, addition and deletion of the mobile unit.
[0060] Step B2: Determine the final position of the target mobile unit after it moves according to the user's operation request; wherein the starting position and the final position are determined by coordinates in the canvas.
[0061] The system responds to any operation request of the user to move, add or delete the mobile unit, monitors the mobile unit in the canvas, and determines the target mobile unit to be moved and the corresponding starting position and ending position.
[0062] S330: Determine the influence area of the target mobile unit and the influence mobile units in the influence area according to the starting position and the ending position of the target mobile unit.
[0063] The affected area when the target mobile unit moves and the affected mobile units in the affected area are determined according to the user's operation request, the starting position and the ending position of the target mobile unit.
[0064] As an optional but non-limiting implementation, the step of determining the affected area and the affected mobile units within the affected area when the target mobile unit moves according to the starting position and the ending position of the target mobile unit includes but is not limited to steps C1-C3:
[0065] Step C1: If the user's operation request is to move the position of the target mobile unit, the entire area from the starting position to the ending position of the target mobile unit is used as the influence area, and other mobile units in the influence area are used as the influence mobile units.
[0066] Step C2: If the user's operation request is to add a new target mobile unit, the end position of the target mobile unit is used as the affected area, and other mobile units in the affected area are used as affected mobile units.
[0067] Step C3: If the user's operation request is to delete the target mobile unit, the starting position of the target mobile unit is used as the influence area, and other mobile units in the influence area are used as the influence mobile units.
[0068] Among them, see Figure 4 If the user's operation request is to move the position of the target mobile unit, the Gibbs reactor module needs to be moved to the upper left to the end position. The solid line box in the figure is the affected area, and the feed stream module and the connection line between the Gibbs reactor module and the feed stream module are the affected mobile units in the affected area.
[0069] If the user's operation request is to add a target mobile unit, the end position of the target mobile unit is determined and the end position is used as the affected area. If the user's operation request is to delete the target mobile unit, the start position of the target mobile unit is used as the affected area.
[0070] S340: Determine whether there is an affected mobile unit in the affected area.
[0071] S350: If there are influencing mobile units in the influencing area, clear the influencing mobile units in the influencing area, and redraw the target mobile unit and the influencing mobile units in the influencing area.
[0072] When it is determined that there are influencing mobile units in the influencing area, the influencing mobile units in the influencing area need to be cleared, and the target mobile units and the influencing mobile units in the influencing area need to be redrawn.
[0073] As an optional but non-limiting implementation, if there are influencing mobile units in the influencing area, the influencing mobile units in the influencing area are cleared, and the target mobile unit and the influencing mobile units in the influencing area are redrawn, including but not limited to steps D1-D2:
[0074] Step D1: If there are influencing mobile units in the influencing area, the influencing mobile units in the influencing area are cleared, and the target mobile unit is redrawn at the termination position of the target mobile unit and the influencing mobile unit is redrawn at the original position of the influencing mobile unit.
[0075] Step D2: If the redrawn target mobile unit overlaps with the influencing mobile unit, the influencing mobile unit is adaptively adjusted to obtain an optimized target flow chart; wherein the target mobile unit and the influencing mobile unit in the target flow chart do not overlap.
[0076] Among them, Figure 4As shown, if it is determined that there is an influencing mobile unit in the influencing area, it is necessary to clear the influencing mobile unit and the target mobile unit in the influencing area, and then redraw the target mobile unit at the end position and redraw the influencing mobile unit feed stream module and the corresponding connection lines.
[0077] Optionally, after redrawing the target mobile unit and the influencing mobile unit, if there is an overlapping part between the target mobile unit and the influencing mobile unit, the influencing mobile unit is adaptively adjusted to obtain an optimized target flow chart. For example, if the redrawn Gibbs reactor module overlaps with the feed stream module, the user's needs need to be obtained again to determine the corresponding movement operation. If the redrawn Gibbs reactor module does not overlap with the feed stream module, the connection between them needs to be adaptively adjusted to conform to the actual logic.
[0078] Optionally, the removal of the affected mobile units in the affected area is completed in the system, which does not affect the user experience. The user will not see the removal process of the affected mobile units in actual operation.
[0079] S260: If there is no affected mobile unit in the affected area, redraw the target mobile unit at the end position.
[0080] If there is no influencing mobile unit in the influencing area, the target mobile unit is redrawn at the termination position; if there is a connecting line, the corresponding connecting line is adaptively adjusted.
[0081] An embodiment of the present invention provides a flowchart drawing optimization method, which determines the starting position of the target mobile unit by determining the minimum rectangular frame of the target mobile unit, determines the influence area by the starting position and the end position of the target mobile unit, and determines the influence mobile unit in the influence area; by clearing and redrawing the influence mobile unit and the target mobile unit in the influence area, the time for the user to redraw in the canvas is reduced, the jamming is reduced, and the user experience is improved.
[0082] Embodiment 3
[0083] Figure 5 : is a schematic diagram of the structure of a flowchart drawing optimization device provided in an embodiment of the present invention. The technical solution of this embodiment can be applied to the case of flowchart drawing optimization. The device can be implemented by software and / or hardware and is generally integrated on any electronic device with network communication function, including but not limited to: servers, computers, personal digital assistants and other devices. Figure 5 As shown, the flowchart drawing optimization device provided in this embodiment may include: a minimum rectangular frame determination module 510, a target mobile unit determination module 520, an impact area determination module 530 and a flowchart drawing optimization module 540; wherein:
[0084] The minimum rectangular frame determination module 510 is used to draw the flowchart saved by the user at the last moment on the canvas when the system is started, and determine the minimum rectangular frame corresponding to each mobile unit; wherein the minimum rectangular frame is used to determine the starting position of the mobile unit before moving, and the mobile unit includes a module, a connection line and data in the module;
[0085] The target mobile unit determination module 520 is used to respond to the user's operation request and determine the target mobile unit to be moved and the terminal position of the target mobile unit after the movement;
[0086] An influence region determination module 530 is used to determine the influence region of the target mobile unit and the influence mobile units in the influence region according to the starting position and the ending position of the target mobile unit;
[0087] The flowchart drawing optimization module 540 is used to clear the influencing mobile units in the influencing area and redraw the target mobile units and the influencing mobile units in the influencing area to obtain an optimized target flowchart.
[0088] Based on the above embodiment, optionally, the minimum rectangular frame determination module is specifically used to:
[0089] If the user has saved a flowchart at the last moment, the flowchart saved by the user will be drawn on the canvas when the system starts;
[0090] If the flowchart saved by the user at the last moment is empty, the current canvas will be blank when the system starts.
[0091] Based on the above embodiment, optionally, the target mobile unit determination module is specifically used to:
[0092] In response to a user's operation request, determining a target mobile unit that has moved and determining a starting position of the target mobile unit; wherein the operation request includes position movement, addition, and deletion of the mobile unit;
[0093] According to the user's operation request, the terminal position of the target mobile unit after moving is determined; wherein the starting position and the terminal position are determined by the coordinates in the canvas.
[0094] Based on the above embodiment, optionally, the impact area determination module is specifically used to:
[0095] If the user's operation request is to move the position of the target mobile unit, the entire area from the starting position to the ending position of the target mobile unit is used as the affected area, and other mobile units in the affected area are used as affected mobile units;
[0096] If the user's operation request is to add a new target mobile unit, the end position of the target mobile unit is used as the affected area, and other mobile units in the affected area are used as affected mobile units;
[0097] If the user's operation request is to delete the target mobile unit, the starting position of the target mobile unit is used as the influence area, and other mobile units in the influence area are used as the influence mobile units.
[0098] Based on the above embodiment, optionally, the flowchart drawing optimization module is specifically used to:
[0099] Determine whether there are any impacted mobile units in the impact area;
[0100] If there are influencing mobile units in the influencing area, the influencing mobile units in the influencing area will be cleared, and the target mobile units and the influencing mobile units in the influencing area will be redrawn;
[0101] If there is no influencing mobile unit in the influencing area, the target mobile unit is redrawn at the termination position.
[0102] Based on the above embodiment, optionally, the flowchart drawing optimization module is further specifically used for:
[0103] If there are influencing mobile units in the influencing area, the influencing mobile units in the influencing area are cleared, and the target mobile unit is redrawn at the termination position of the target mobile unit and the influencing mobile unit is redrawn at the original position of the influencing mobile unit;
[0104] If the redrawn target mobile unit overlaps with the influencing mobile unit, the influencing mobile unit is adaptively adjusted to obtain an optimized target flow chart; wherein the target mobile unit and the influencing mobile unit in the target flow chart do not overlap.
[0105] The flowchart drawing optimization device provided in the embodiment of the present invention can execute the flowchart drawing optimization method provided in any embodiment of the present invention mentioned above, and has the corresponding functions and beneficial effects of executing the flowchart drawing optimization method. For detailed process, please refer to the relevant operations of the flowchart drawing optimization method in the above embodiment.
[0106] Embodiment 4
[0107] Figure 61 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. The electronic device 10 is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.
[0108] like Figure 6 As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. The input / output (I / O) interface 15 is also connected to the bus 14.
[0109] A number of components in the electronic device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0110] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as a flowchart drawing optimization method.
[0111] In some embodiments, the flowchart drawing optimization method can be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program can be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the flowchart drawing optimization method described above can be performed. Alternatively, in other embodiments, the processor 11 can be configured to perform the flowchart drawing optimization method in any other appropriate manner (for example, by means of firmware).
[0112] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0113] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0114] In the context of the present invention, the storage medium containing computer executable instructions can be a tangible medium, which can contain or store a computer program for use by an instruction execution system, device or equipment or used in combination with an instruction execution system, device or equipment. The storage medium containing computer executable instructions can include but is not limited to electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or equipment, or any suitable combination of the above. Alternatively, the storage medium containing computer executable instructions can be a machine-readable signal medium. More specific examples of storage media containing computer executable instructions can include electrical connections based on one or more lines, portable computer disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM or flash memory), optical fibers, portable compact disk read-only memories (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above.
[0115] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).
[0116] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.
[0117] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.
[0118] Embodiment 5
[0119] An embodiment of the present invention further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the flowchart drawing optimization method provided in any embodiment of the present application is implemented.
[0120] In the process of implementation, the computer program product can be written in one or more programming languages or a combination thereof to perform the computer program code of the present invention, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer and partially on a remote computer, or completely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (for example, using an Internet service provider to connect through the Internet).
[0121] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.
[0122] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims
1. A flowchart drawing optimization method, characterized in that: The method comprises: When the system starts, the flowchart saved by the user at the last moment is drawn on the canvas, and the minimum rectangular frame corresponding to each mobile unit is determined; wherein the minimum rectangular frame is used to determine the starting position of the mobile unit before moving, and the mobile unit includes a module, a connection line and the data in the module; In response to a user's operation request, determine a target mobile unit to be moved and a terminal position of the target mobile unit after the movement; Determine the impact area of the target mobile unit and the impact mobile units in the impact area when the target mobile unit moves according to the starting position and the ending position of the target mobile unit; The influencing mobile units in the influencing area are cleared and the target mobile units and the influencing mobile units in the influencing area are redrawn to obtain an optimized target flow chart.
2. The method according to claim 1, characterized in that When the system is started, a flowchart saved by the user at the last moment is drawn on the canvas, including: If the user has saved a flowchart at the last moment, the flowchart saved by the user will be drawn on the canvas when the system starts; If the flowchart saved by the user at the last moment is empty, the current canvas will be blank when the system starts.
3. The method according to claim 1, characterized in that The step of responding to the user's operation request and determining the target mobile unit to be moved and the final position of the target mobile unit after the movement includes: In response to a user's operation request, determine a target mobile unit that has moved and determine a starting position of the target mobile unit; wherein the operation request includes position movement, addition, and deletion of the mobile unit; According to the user's operation request, the terminal position of the target mobile unit after moving is determined; wherein the starting position and the terminal position are determined by the coordinates in the canvas.
4. The method according to claim 1, characterized in that: The step of determining the influence area of the target mobile unit and the influence mobile units in the influence area according to the starting position and the ending position of the target mobile unit comprises: If the user's operation request is to move the position of the target mobile unit, the entire area from the starting position to the ending position of the target mobile unit is used as the affected area, and other mobile units in the affected area are used as affected mobile units; If the user's operation request is to add a new target mobile unit, the end position of the target mobile unit is used as the affected area, and other mobile units in the affected area are used as affected mobile units; If the user's operation request is to delete the target mobile unit, the starting position of the target mobile unit is used as the influence area, and other mobile units in the influence area are used as the influence mobile units.
5. The method according to claim 1, characterized in that The method of clearing the influencing mobile units in the influencing area and redrawing the target mobile units and the influencing mobile units in the influencing area to obtain an optimized target flow chart includes: Determine whether there are any impacted mobile units in the impact area; If there are influencing mobile units in the influencing area, the influencing mobile units in the influencing area will be cleared, and the target mobile units and the influencing mobile units in the influencing area will be redrawn; If there is no influencing mobile unit in the influencing area, the target mobile unit is redrawn at the termination position.
6. The method according to claim 5, characterized in that If there are influencing mobile units in the influencing area, clearing the influencing mobile units in the influencing area, and redrawing the target mobile units and the influencing mobile units in the influencing area include: If there are influencing mobile units in the influencing area, the influencing mobile units in the influencing area are cleared, and the target mobile unit is redrawn at the termination position of the target mobile unit, and the influencing mobile unit is redrawn at the original position of the influencing mobile unit; If the redrawn target mobile unit overlaps with the influencing mobile unit, the influencing mobile unit is adaptively adjusted to obtain an optimized target flow chart; wherein the target mobile unit and the influencing mobile unit in the target flow chart do not overlap.
7. A flow chart drawing optimization device, characterized in that: The device comprises: The minimum rectangular frame determination module is used to draw the flowchart saved by the user at the last moment on the canvas when the system is started, and determine the minimum rectangular frame corresponding to each mobile unit; wherein the minimum rectangular frame is used to determine the starting position of the mobile unit before moving, and the mobile unit includes a module, a connection line and data in the module; A target mobile unit determination module is used to respond to a user's operation request and determine the target mobile unit to be moved and the terminal position of the target mobile unit after the movement; An influence area determination module, used to determine the influence area of the target mobile unit and the influence mobile units in the influence area according to the starting position and the ending position of the target mobile unit; The flow chart drawing optimization module is used to clear the influencing mobile units in the influencing area and redraw the target mobile units and the influencing mobile units in the influencing area to obtain an optimized target flow chart.
8. An electronic device, characterized in that: include: one or more processors; A storage device for storing one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the flowchart drawing optimization method described in any one of claims 1-6.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, which, when executed by a processor, implements the flowchart drawing optimization method as described in any one of claims 1 to 6.
10. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the computer program implements the flowchart drawing optimization method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Annular progress bar drawing method and device and storage medium
CN112435308A
Visual flow chart dragging and drawing method, device and apparatus and storage medium
CN112950744A
Quick drawing method and system for flow chart
CN115393474A
Flow chart drawing method and device, storage medium and program product
CN115526951A