Detailed Description
To enable those skilled in the art to better understand the technical aspects of the present disclosure, exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, in which various details of the embodiments of the present disclosure are included to assist understanding, and they should be considered as being merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Embodiments of the present disclosure and features of embodiments may be combined with each other without conflict.
As used herein, the term "and/or" includes any and all combinations of one or more of the associated listed items.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises," "comprising," "includes," and/or "made from" \8230; \8230 ";" made from ";" specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. The terms "connected" or "coupled" and the like are not restricted to physical or mechanical connections, but may include electrical connections, whether direct or indirect.
Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and the present disclosure, and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
Example one
Fig. 1 shows a flowchart of a tool path diagram interaction method based on 3D display according to an embodiment of the present invention. Referring to fig. 1, the method includes:
step S110: and analyzing the tool path file to obtain tool path instruction data contained in the tool path file.
The tool path is simply interpreted as a tool path, and the standard interpretation is that a computer is used for simulating the tool to process a model or a vector line, so as to generate a numerical control instruction which can be read and operated by a machine. The tool path file is also called as an engraving file, and comprises tool path parameters and engraving instructions, and the common formats are ENG and NC.
Step S120: and converting the tool path instruction data into drawing parameters, and displaying a tool path preview corresponding to the drawing parameters in a display control interface.
The tool path instruction data includes tool path parameters and carving instructions in the tool path file, such as outer contour dimension parameters of a tool path diagram. The display and control interface is developed and completed by a developer through a three-dimensional graphics library (such as OpenGL), and comprises a preview window, a toolbar, a ruler and the like, wherein the preview window, the toolbar, the ruler and the like are used for drawing display and receiving input of an operation instruction. And after the tool path instruction data are converted into drawing parameters, drawing and displaying a corresponding three-dimensional tool path preview image in a preview window of the display control interface according to the drawing parameters.
Step S130: in response to the received first interoperation instruction, a first interaction type of the first interoperation instruction is determined.
The first interactive operation instruction is related interactive operation performed by a user through a mouse and a keyboard on a display control interface; the first interactive operation instruction is triggered through a corresponding operation entry, wherein the operation entry comprises a key of a display control interface toolbar, a keyboard shortcut key and the like, and the first interactive operation instruction is flexibly set by a person skilled in the art according to specific conditions when the method is implemented, and is not limited herein; the first interaction type includes: move, rotate, select view, select line, zoom.
Step S140: and executing interactive operation matched with the first interactive type aiming at the cutter path preview, and displaying the cutter path preview after the first interactive operation is executed in the display control interface.
The first interaction type includes: move, rotate, select view, select line, zoom. And aiming at the first interaction type of the current user, according to the parameters contained in the first interaction operation instruction, executing corresponding operation on the cutter path preview image, drawing and displaying the cutter path preview image after the operation is executed in a preview window of the display control interface.
Therefore, compared with the method for drawing the tool path graph by adopting the three-dimensional static technology, the method has the advantages that the tool path data is modeled by the three-dimensional model, the tool path file is converted into the three-dimensional graph to be drawn, so that the tool path is dynamically displayed, the observation visual angle can be independently selected, and the tool path graph has diversified and unique human-computer operation interfaces and attractive 3D dynamic display effect. The operation personnel can operate the preview tool path picture flexibly and conveniently, and can acquire abundant tool path information through an intuitive mode, thereby helping the operation personnel to accurately analyze the tool path and find problems, reducing errors and improving the working efficiency.
Example two
Fig. 2 shows a flowchart of a tool path diagram interaction method based on 3D display according to a second embodiment of the present invention. Referring to fig. 2, the method includes:
step S210: and analyzing the tool path file to obtain tool path instruction data contained in the tool path file.
The tool path is simply interpreted as a tool path, and the standard interpretation is that a computer is used for simulating the tool to process a model or a vector line, so as to generate a numerical control instruction which can be read and operated by a machine. The tool path file is also called as an engraving file, and comprises tool path parameters and engraving instructions, and the common formats are ENG and NC.
Step S220: and converting the tool path instruction data into drawing parameters, and displaying a tool path preview corresponding to the drawing parameters in a display control interface.
The tool path instruction data includes tool path parameters and carving instructions in the tool path file, such as outer contour dimension parameters of a tool path diagram. The display and control interface is developed and completed by developers through a three-dimensional graphics library (such as OpenGL), and comprises a preview window, a toolbar, a ruler and the like, and is used for drawing display and receiving input of operation instructions. And after the tool path instruction data are converted into drawing parameters, drawing and displaying a corresponding three-dimensional tool path preview image in a preview window of a display control interface according to the drawing parameters.
Besides displaying the tool path diagram in a preview window of the display control interface, the method also displays related tool path parameters in the preview window, and specifically comprises the following steps:
acquiring the dimension parameters of the outer contour of the tool path diagram corresponding to the drawing parameters; the tool path diagram outer contour dimension parameters comprise the length, width, height and initial and end point coordinate values of the tool path diagram outer contour;
displaying or hiding the dimension parameters of the outer contour of the tool path diagram at the periphery of the tool path preview diagram; abundant information is provided in an intuitive mode, so that an operator can conveniently judge the material size according to the dimension parameters;
hiding the dimension parameters of the outer contour of the tool path diagram under the condition of receiving a hiding instruction; displaying the outer contour dimension parameters of the tool path diagram under the condition of receiving a display instruction; the display instruction or the hidden instruction is triggered by a display/hidden operation entry, where the operation entry may be a button of a display control interface toolbar, an option in a pop-up menu bar by clicking a right mouse button, or a shortcut of a keyboard (for example, setting the shortcut as "Ctrl + D"), and is flexibly set by a person skilled in the art according to a specific situation when implementing the method, and is not limited herein.
Step S230: and in response to the received first interoperation instruction, determining a first interaction type of the first interoperation instruction.
The first interactive operation instruction is related interactive operation performed by a user through a mouse and a keyboard on a display control interface; the first interactive operation instruction is triggered through a corresponding operation entry, wherein the operation entry comprises a key of a display control interface toolbar, a keyboard shortcut key and the like, and the first interactive operation instruction is flexibly set by a person skilled in the art according to specific conditions when the method is implemented, and is not limited herein; the first interaction type includes: move, rotate, select view, select line, zoom.
Step S240: and executing interactive operation matched with the first interactive type aiming at the cutter path preview, and displaying the cutter path preview after the first interactive operation is executed in the display control interface.
Under the condition that the first interaction type is a movement type, executing movement operation on the cutter path preview graph according to movement parameters contained in the first interaction operation instruction; wherein the first interoperation command is triggered by moving the operation entry.
And the moving operation inlet is dragged by pressing a left mouse button or by shortcut keys of an upper button, a lower button, a left button and a right button of a keyboard, the cutter path preview image in the preview window is moved up, down, left and right under the condition of fixed visual angle and image size, and the cutter path preview image after the moving operation is executed is displayed in the preview window.
Under the condition that the first interaction type is a rotation type, according to rotation parameters contained in the first interaction operation instruction, executing rotation operation on the cutting path preview image; and the first interactive operation instruction is triggered by rotating the operation inlet.
The rotation operation inlet is realized by pressing a right mouse button for dragging, the position of a mouse pointer can be used as the center for rotating the cutter path preview image when the mouse is pressed, the observation visual angle is switched, and the cutter path preview image after the rotation operation is executed is displayed in a preview window. By the method, the three-dimensional dynamic preview of the tool path diagram can be realized, the operation is flexible and convenient, the tool path diagram drawing has a three-dimensional perspective effect and is attractive, the general visual law is met, and operators can conveniently obtain more information about the tool path diagram; meanwhile, the two views before and after the observation visual angle is rotationally switched have high association degree, so that operators can analyze the cutter path and find problems conveniently.
Under the condition that the first interaction type is the view selection type, executing view selection operation on the cutter path preview graph according to view selection parameters contained in the first interaction operation instruction; wherein the first interoperation instruction is triggered by selecting the view operation entry.
Wherein the alternative views include: the three-dimensional view is a default view, namely a tool path preview graph which is drawn according to drawing parameters and displayed in a preview window of the display and control interface after the tool path file is analyzed and the tool path instruction data are converted into the drawing parameters; a front view looking at the tool path in the opposite direction along the X-axis (YZ plane); a left view, observing the tool path along the positive direction of the Y axis (ZX plane); a plan view of the tool path viewed in the opposite direction to the Z axis (XY plane); and displaying the tool path diagram at the center of the preview window according to the optimal view angle and the optimal size, wherein the selection of the optimal view angle is flexibly set by a person skilled in the art according to specific conditions when the method is implemented, and is not limited herein. When a plane view (such as a front view, a left view and a top view) is selected instead of a three-dimensional view for observation, the superscript column and the left surface column of the preview window can display scales with scales, so that an operator can conveniently check the dimension of the tool path.
The selection view operations entry is embodied in three forms: displaying and controlling tool bar keys of an interface, clicking options in a popup menu bar of a right mouse button, operating shortcut keys of a keyboard (for example, the shortcut key in a three-dimensional view is a number key 9, the shortcut key in a front view is a number key 5, the shortcut key in a left view is a number key 6, and the shortcut key in a top view is a number key 8), clicking the keys or the options through the left mouse button to switch to a corresponding view, and displaying a cutter path preview image after the view is switched in a preview window.
Under the condition that the first interaction type is the line selection type, performing line selection operation on the cutter path preview graph according to line selection parameters contained in the first interaction operation instruction; and the first interactive operation instruction is triggered by the row selection operation entrance.
Wherein, the selected row (row, i.e. a segment of tool path) refers to a specific tool path in the selected tool path diagram. The line selection operation entry is realized by clicking a certain section of tool path in the tool path diagram through a left mouse button, the section of tool path is selected and highlighted (for example, highlighted in blue-green), one end of the tool path is marked by points with different colors (for example, a red point at one end of the tool path represents a terminal point), the line selection operation entry is used for identifying the cutting direction of the section of tool path and displaying the line number of the section of tool path in a tool path file; meanwhile, the tool path file text display window can directly jump to the G-Code instruction line corresponding to the tool path section and highlight the G-Code instruction line, so that an operator can conveniently check the G-Code instruction or execute high-level operation (directly starting to carve the selected line and editing and modifying the G-Code instruction of the selected line).
Under the condition that the first interaction type is a zooming type, zooming operation is carried out on the cutter path preview graph according to zooming parameters contained in the first interaction operation instruction; and the first interactive operation instruction is triggered by the zooming operation entrance.
The zooming operation entry is embodied in the following five forms: the keys of the display and control interface toolbar are enlarged or reduced by clicking the keys through a left mouse button, and the focus is the center point of the preview window; clicking the right mouse button to pop up the option in the menu bar, and clicking the option through the left mouse button to realize amplification or reduction, wherein the focus is the center point of the preview window; rolling a mouse roller, zooming in forward, zooming out backward, and taking the focus as the position of a mouse pointer; pressing a mouse roller, dragging upwards for amplification, dragging downwards for reduction, and taking the focus as the center point of a preview window; keyboard accelerator operation (e.g. keypad '+' zoom up, keypad '-' zoom down), focus is the preview window center point. And correspondingly executing an enlarging or reducing operation on the cutter path preview image after corresponding operation is carried out through a mouse or a keyboard, and displaying the enlarged or reduced cutter path preview image in a preview window. By the aid of the method, diversified cutter path diagram zooming operation modes are achieved, zooming focuses are controllable, operators can partially amplify the cutter path diagrams according to needs, deviation after amplification is avoided, tracking is difficult, and points needing to be checked cannot be found.
Step S250: and acquiring real-time engraving dynamic data.
The real-time engraving dynamic data refers to the engraving progress obtained in real time by monitoring the engraving machine after the engraving process starts, such as the engraved line, the non-engraved line and the line currently being engraved.
Step S260: and determining a second interaction type of the second interactive operation instruction in response to the received second interactive operation instruction.
The second interactive operation instruction is related interactive operation of a user on the display control interface through a mouse and a keyboard; the second interactive operation instruction is triggered through a corresponding operation entry, wherein the operation entry comprises a key of a display control interface toolbar, a keyboard shortcut key and the like, and the second interactive operation instruction is flexibly set by a person skilled in the art according to specific conditions when the method is implemented, and is not limited herein; the second interaction type includes: and positioning the current line and redrawing.
Step S270: and aiming at the tool path preview, according to the real-time engraving dynamic data, executing interactive operation matched with the second interactive type, and displaying the tool path preview after the second interactive operation is executed in the display control interface.
Under the condition that the second interaction type is the type of the positioning current line, according to the parameters of the positioning current line contained in the first interaction operation instruction, executing the operation of positioning the current line on the cutter path preview picture; and the second interactive operation instruction is triggered by positioning the current row operation entry.
Positioning the current row includes snap-positioning to the current carving row and snap-positioning to the current tool position. The operation entry of present line of location embodies and pops up the option in the menu bar for clicking the mouse right button, click the option through the mouse left button and realize quick location, and show it in the central point of preview window, this section of sword way will be selected and highlight (if show with blue-green highlight) simultaneously, sword way one end is marked with the point of different colours (if show the terminal point with the red point of sword way one end), be used for the walking direction of this section of sword way of sign, and show the line number of this section of sword way in the sword way file, be convenient for operating personnel look over the current condition of carving fast.
Under the condition that the second interaction type is a redrawing type, executing redrawing operation on the cutting path preview graph according to redrawing parameters contained in the first interaction operation instruction; and the second interactive operation instruction is triggered by the redrawing operation inlet.
In the engraving process, the engraved line is redrawn (for example, the straight line is redrawn to be dark red, and the circular arc is redrawn to be dark yellow), and the engraving progress is displayed in an intuitive mode by distinguishing from the unetched tool paths (for example, the engraving progress is displayed as white). The redraw operation entry is embodied in three forms: displaying and controlling interface toolbar keys, and displaying or hiding redraws of the engraved rows through clicking the keys by a left mouse key, or permanently clearing the redraws of the engraved rows without displaying; clicking the right mouse button to pop up the option in the menu bar, clicking the hook option through the left mouse button to display the redrawn of the carved row, clicking the hook canceling option to hide the redrawn of the carved row, or clicking the option to permanently clear the redrawn of the carved row without displaying any more; and (3) operating keyboard shortcut keys (for example, setting the shortcut key for displaying/hiding the redrawn of the engraved row as 'Ctrl + T', and setting the shortcut key for clearing the redrawn of the engraved row as 'Ctrl + Delete'), displaying or hiding the redrawn of the engraved row, or permanently clearing the redrawn of the engraved row without displaying any more. By the mode, the engraved rows are different from the rows which are not engraved, so that an operator can conveniently position the engraving position, track the engraving progress and the like.
Therefore, compared with the method for drawing the tool path graph by adopting the three-dimensional static technology, the method has the advantages that the tool path data is modeled by the three-dimensional model, the tool path file is converted into the three-dimensional graph to be drawn, so that the tool path is dynamically displayed, the observation visual angle can be independently selected, and the tool path graph has diversified and unique human-computer operation interfaces and attractive 3D dynamic display effect. The operation personnel can operate the preview tool path picture flexibly and conveniently, and can acquire abundant tool path information through an intuitive mode, thereby helping the operation personnel to accurately analyze the tool path and find problems, reducing errors and improving the working efficiency.
EXAMPLE III
Fig. 3 shows a block diagram of a structure of a tool path diagram interaction device based on 3D display according to a third embodiment of the present invention. Referring to fig. 3, the apparatus includes:
the data acquiring module 31 is adapted to analyze the tool path file and acquire tool path instruction data included in the tool path file;
the drawing display module 32 is suitable for converting the cutter path instruction data into drawing parameters and displaying a cutter path preview corresponding to the drawing parameters in the display control interface;
the operation matching module 33 is adapted to determine a first interaction type of the first interoperation instruction in response to the received first interoperation instruction;
and the operation execution module 34 is adapted to execute an interactive operation matched with the first interactive type aiming at the tool path preview, and display the tool path preview after the first interactive operation is executed in the display control interface.
Optionally, the drawing display module 32 is specifically adapted to:
acquiring the dimension parameters of the outer contour of the tool path diagram corresponding to the drawing parameters;
displaying or hiding the dimension parameters of the outer contour of the tool path diagram at the periphery of the tool path preview diagram;
hiding the outer contour dimension parameters of the tool path diagram under the condition of receiving a hiding command; and displaying the outer contour dimension parameters of the tool path diagram under the condition of receiving a display instruction.
Optionally, the operation execution module 34 is specifically adapted to:
under the condition that the first interaction type is a movement type, executing movement operation on the cutting path preview image according to movement parameters contained in the first interaction operation instruction;
under the condition that the first interaction type is a rotation type, according to rotation parameters contained in the first interaction operation instruction, executing rotation operation on the cutter path preview image;
under the condition that the first interaction type is the view selection type, executing view selection operation on the cutter path preview graph according to view selection parameters contained in the first interaction operation instruction;
under the condition that the first interaction type is the line selection type, performing line selection operation on the cutter path preview graph according to line selection parameters contained in the first interaction operation instruction;
and under the condition that the first interaction type is a zooming type, zooming operation is carried out on the cutting path preview graph according to zooming parameters contained in the first interaction operation instruction.
Optionally, the operation execution module 34 is specifically adapted to:
under the condition that the first interaction type is a mobile type, a first interaction operation instruction is triggered through a mobile operation entrance;
under the condition that the first interaction type is a rotation type, a first interaction operation instruction is triggered through a rotation operation inlet;
under the condition that the first interaction type is the selected view type, a first interaction operation instruction is triggered by a selected view operation entrance;
under the condition that the first interaction type is the line selection type, triggering a first interaction operation instruction through a line selection operation inlet;
and in the case that the first interaction type is a zooming type, the first interaction operation instruction is triggered by the zooming operation entrance.
Optionally, the data acquisition module 31 is further adapted to: and acquiring real-time engraving dynamic data.
Optionally, the operation matching module 33 is further adapted to: and determining a second interaction type of the second interactive operation instruction in response to the received second interactive operation instruction.
Optionally, the operation performing module 34 is further adapted to: and aiming at the tool path preview, according to the real-time engraving dynamic data, executing interactive operation matched with the second interactive type, and displaying the tool path preview after the second interactive operation is executed in the display control interface.
Optionally, the operation performing module 34 is further adapted to:
under the condition that the second interaction type is the type of the current positioning line, according to the parameters of the current positioning line contained in the first interaction operation instruction, performing the operation of positioning the current positioning line on the cutting path preview;
and under the condition that the second interaction type is a redrawing type, executing redrawing operation on the cutting path preview image according to redrawing parameters contained in the first interaction operation instruction.
Optionally, the operation performing module 34 is further adapted to:
under the condition that the second interaction type is the type of the positioning current line, a second interaction operation instruction is triggered by the positioning current line operation entrance;
and under the condition that the second interaction type is the redrawing type, triggering the second interaction operation instruction through the redrawing operation inlet.
The specific structure and the operation principle of each module may refer to the description of the corresponding parts of the first embodiment and the second embodiment of the method, and are not described herein again.
Example four
Fig. 4 shows a schematic structural diagram of an electronic device according to a fourth embodiment of the present invention, where the specific embodiment of the present invention does not limit the specific implementation of the electronic device. Referring to fig. 4, the electronic device includes:
at least one processor 401; a memory 402 communicatively coupled to the at least one processor; a communication interface 403; and a communication bus 404.
Wherein:
the processor 401, memory 402, and communication interface 403 communicate with each other via a communication bus 404.
A communication interface 403 for communicating with network elements of other devices, such as clients or other servers.
The memory 402 stores one or more computer programs 405 executable by the at least one processor 401, and the one or more computer programs 405 are executed by the at least one processor 401 to enable the at least one processor 401 to perform corresponding operations in the embodiment of the tool path diagram interaction method based on 3D display as described above.
EXAMPLE five
Fifth embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the tool path diagram interaction method based on 3D display as described above.
It will be understood by those of ordinary skill in the art that all or some of the steps of the methods, systems, functional modules/units in the devices disclosed above may be implemented as software, firmware, hardware, and suitable combinations thereof. In a hardware implementation, the division between functional modules/units mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may be performed by several physical components in cooperation. Some or all of the physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software may be distributed on computer readable storage media, which may include computer storage media (or non-transitory media) and communication media (or transitory media).
The term computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable program instructions, data structures, program modules or other data, as is well known to those of ordinary skill in the art. Computer storage media includes, but is not limited to, random Access Memory (RAM), read Only Memory (ROM), erasable Programmable Read Only Memory (EPROM), static Random Access Memory (SRAM), flash memory or other memory technology, portable compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer. In addition, communication media typically embodies computer readable program instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media as known to those skilled in the art.
The computer-readable program instructions described herein may be downloaded from a computer-readable storage medium to a respective computing/processing device, or to an external computer or external storage device via a network, such as the internet, a local area network, a wide area network, and/or a wireless network. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. The network adapter card or network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in the respective computing/processing device.
Computer program instructions for carrying out operations of the present disclosure may be assembler instructions, instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer-readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may 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 the connection may be made to an external computer (for example, through the Internet using an Internet service provider). In some embodiments, the electronic circuitry that can execute the computer-readable program instructions implements aspects of the present disclosure by utilizing the state information of the computer-readable program instructions to personalize the electronic circuitry, such as a programmable logic circuit, a Field Programmable Gate Array (FPGA), or a Programmable Logic Array (PLA).
The computer program product described herein may be embodied in hardware, software, or a combination thereof. In an alternative embodiment, the computer program product is embodied in a computer storage medium, and in another alternative embodiment, the computer program product is embodied in a Software product, such as a Software Development Kit (SDK), or the like.
Various aspects of the present disclosure are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer-readable program instructions.
These computer-readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer-readable program instructions may also be stored in a computer-readable storage medium that can direct a computer, programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer-readable medium storing the instructions comprises an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus or other devices implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
Example embodiments have been disclosed herein, and although specific terms are employed, they are used and should be interpreted in a generic and descriptive sense only and not for purposes of limitation. In some instances, features, characteristics and/or elements described in connection with a particular embodiment may be used alone or in combination with features, characteristics and/or elements described in connection with other embodiments, unless expressly stated otherwise, as would be apparent to one skilled in the art. It will, therefore, be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the disclosure as set forth in the appended claims.