Disclosure of Invention
The embodiment of the invention provides a track flow display method and device based on an electronic map, which are used for solving the problems that the track playback in the prior art cannot intuitively embody the direction of each track section in the whole track and cannot meet the track smooth playback requirement.
In a first aspect, an embodiment of the present invention provides a track flow display method based on an electronic map, including:
Acquiring a track to be replayed;
generating a background track displayed in a solid line mode and a foreground track displayed in a dotted line mode, which is displayed on the background track in a superposition mode, according to the track to be played back;
Taking the pixel length occupied by the first section of solid line segment where the track starting point of the foreground track is located as the total moving step number, and circularly and dynamically updating the track starting point of the foreground track according to the speed of moving 1 pixel to the track ending point of the foreground track each time to obtain an updated foreground track;
And sequentially and circularly superposing and displaying the updated foreground tracks on the background tracks at preset playback time intervals according to the updating sequence so as to realize the flow display of the front Jing Guiji on the background tracks.
As a preferred mode of the first aspect of the present invention, the generating, according to the track to be played back, a background track displayed in a solid line manner and a foreground track displayed in a dashed line manner superimposed on the background track includes:
according to the track to be played back, a background track displayed in a solid line mode is generated by adopting preset background track colors and background track widths;
and generating a foreground track displayed in a dotted line mode by adopting a preset foreground track color and a foreground track width according to the track to be played back, and displaying the foreground track on the background track in a superposition mode.
As a preferred mode of the first aspect of the present invention, the cyclically dynamically updating the track start point of the foreground track includes:
Acquiring the current position and the current moving step number of the track starting point of the foreground track, and the solid line starting point and the solid line end point of the first section of solid line segment where the track starting point of the foreground track is positioned;
Judging whether the current moving step number of the track starting point of the foreground track is smaller than the moving total step number or not;
If the number of the steps is smaller than the total number of the steps, calculating the slope of a connecting line between the solid line starting point and the solid line ending point; after converting the current position of the track starting point of the foreground track from the map coordinate to the screen coordinate, moving the track starting point of the foreground track by 1 pixel along the slope direction, converting the moved track starting point of the foreground track from the screen coordinate to the map coordinate as the next position of the track starting point of the foreground track, and adding one to the current moving step number.
As a preferred mode of the first aspect of the present invention, further comprising:
And if the current moving step number is equal to the moving total step number, determining the position of the starting point of the solid line as the next position of the track starting point of the foreground track, and carrying out zero clearing processing on the current moving step number.
As a preferred mode of the first aspect of the present invention, the displaying, in a cyclic manner, the updated foreground track on the background track sequentially at a preset playback time interval according to the update sequence includes:
and after the foreground track displayed at the preset playback time interval is cleared according to the updating sequence, the updated foreground track is redrawn from the track starting point of the foreground track after dynamic updating to the track ending point of the foreground track, and the updated foreground track is superimposed and displayed on the background track.
In a second aspect, an embodiment of the present invention provides an electronic map-based trajectory flow display device, including:
an acquisition unit configured to acquire a track to be played back;
A generating unit, configured to generate a background track displayed in a solid line manner and a foreground track displayed in a dashed line manner superimposed on the background track according to the track to be played back;
The updating unit is used for taking the pixel length occupied by the first section of solid line segment where the track starting point of the foreground track is located as the total moving step number, and circularly and dynamically updating the track starting point of the foreground track according to the speed of moving 1 pixel to the track end point of the foreground track each time to obtain an updated foreground track;
And the display unit is used for circularly and overlapped and displaying the updated foreground tracks on the background tracks in turn at preset playback time intervals according to the updating sequence so as to realize the flow display of the front Jing Guiji on the background tracks.
As a preferred mode of the second aspect of the present invention, the generating unit is specifically configured to:
according to the track to be played back, a background track displayed in a solid line mode is generated by adopting preset background track colors and background track widths;
and generating a foreground track displayed in a dotted line mode by adopting a preset foreground track color and a foreground track width according to the track to be played back, and displaying the foreground track on the background track in a superposition mode.
As a preferred mode of the second aspect of the present invention, the updating unit is specifically configured to:
Acquiring the current position and the current moving step number of the track starting point of the foreground track, and the solid line starting point and the solid line end point of the first section of solid line segment where the track starting point of the foreground track is positioned;
Judging whether the current moving step number of the track starting point of the foreground track is smaller than the moving total step number or not;
If the number of the steps is smaller than the total number of the steps, calculating the slope of a connecting line between the solid line starting point and the solid line ending point; after converting the current position of the track starting point of the foreground track from the map coordinate to the screen coordinate, moving the track starting point of the foreground track by 1 pixel along the slope direction, converting the moved track starting point of the foreground track from the screen coordinate to the map coordinate as the next position of the track starting point of the foreground track, and adding one to the current moving step number.
In a third aspect, an embodiment of the present invention provides an electronic device, including a processor and a memory, where the memory stores execution instructions, and the processor reads the execution instructions in the memory to perform the steps in the electronic map based trajectory flow display method according to any one of the first aspect and its preferred modes.
In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium containing computer-executable instructions for performing the steps in the electronic map-based trajectory flow display method according to any one of the above first aspect and its preferred aspects.
The track flowing display method and the track flowing display device based on the electronic map, provided by the embodiment of the invention, adopt a mode of double-layer superposition display of the background track and the foreground track to play back the track, keep the background track motionless in the playback process, enable the foreground track displayed above the background track to continuously and circularly move forward within a certain range according to the speed of 1 pixel each time, enable the relative positions of the background track and the foreground track on the upper layer to continuously change, display the flowing effect of the whole track, not only completely embody the track direction of each section in the whole track, but also realize dynamic uniform smooth playback of the track under the condition that the map scale continuously changes.
Detailed Description
In order that those skilled in the art will better understand the present invention, a technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in which it is apparent that the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present invention without making any inventive effort, shall fall within the scope of the present invention.
It should be noted that: like reference numerals and letters denote like items in the following figures, and thus once an item is defined in one figure, no further definition or explanation thereof is necessary in the following figures.
Fig. 1 exemplarily shows a flow diagram of a track flow display method based on an electronic map, where the relative positions of a background track and an upper foreground track are continuously changed, so that the flow effect of the whole track is shown, not only can the track direction of each section in the whole track be completely reflected, but also dynamic uniform smooth playback of the track can be realized under the condition that the map scale is continuously changed.
Referring to fig. 1, the method mainly comprises the following steps:
Step 101, obtaining a track to be replayed;
step 102, generating a background track displayed in a solid line mode and a foreground track displayed in a dotted line mode, which is displayed on the background track in a superposition mode, according to a track to be played back;
Step 103, taking the pixel length occupied by the first section of solid line segment where the track start point of the foreground track is located as the total moving step number, and circularly and dynamically updating the track start point of the foreground track according to the speed of moving 1 pixel to the track end point of the foreground track each time to obtain an updated foreground track;
and 104, sequentially and circularly superposing and displaying the updated foreground tracks on the background tracks at preset playback time intervals according to the updating sequence so as to realize the flow display of the foreground tracks on the background tracks.
In step 101, the electronic map is a map stored and referred to digitally using computer technology, is a visual real map, and the track is made up of the time and place in which a certain object appeared in the past. To analyze an object more vividly, the track of the object can be played back on an electronic map.
The obtained track to be played back is a common map coordinate system, and the track to be played back is marked as data L under a fixed map coordinate system.
When the track to be played back is acquired, a start point, an end point and a plurality of passing points of the track to be played back are respectively marked as L_ S, L _E and L_P. Wherein, a plurality of passing points are respectively marked as L_P1~L_Pn.
In step 102, according to the related data of the track to be played back obtained in the above step, a background track displayed in a solid line mode is generated, a foreground track displayed in a dotted line mode is generated, the foreground track is displayed on the background track in a superimposed mode, and track playback is performed in a double-layer superimposed display mode. Meanwhile, the background track and the foreground track are drawn by adopting different colors and widths, so that the flowing effect of the track during playback is better.
In the playback process, the background track is kept motionless, and the foreground track displayed above the background track continuously and circularly moves forwards in a certain range, and the relative position of the background track and the foreground track on the upper layer continuously changes, so that the flow effect of the whole track can be displayed.
By setting the background track and the front Jing Guiji, track playback is performed by adopting a double-layer superposition display mode, and compared with a single-layer display playback mode in the prior art, the double-layer superposition display mode can completely embody the track direction of each section in the whole track.
In an alternative embodiment provided by the present application, step 102 may be implemented as follows:
1021. And generating a background track displayed in a solid line mode by adopting a preset background track color and a preset background track width according to the track to be played back.
In this step, after the related data of the track to be played back is acquired, the background track color C1 and the background track width W1 of the background track are set in advance. And then, adopting the preset background track color and background track width to sequentially connect every two adjacent points in the starting point, the plurality of passing points and the end point by using a solid line, so as to generate a background track.
The background track remains unchanged throughout the playback of the track.
1022. And generating a foreground track displayed in a dotted line mode by adopting a preset foreground track color and a foreground track width according to the track to be played back, and displaying the foreground track on the background track in a superimposed mode.
In this step, after acquiring the related data of the track to be played back, the foreground track color C2 and the foreground track width W2 of the foreground track are preset. And then, adopting preset foreground track colors and foreground track widths, and sequentially connecting every two adjacent points in the starting point, the plurality of passing points and the end point by using a dotted line, so as to generate the foreground track. Generally, the width of the front Jing Guiji should be equal to or less than the width of the background track, which makes the flow effect more pronounced. In this embodiment, the front Jing Guiji width is the same as the background track width.
During the entire process of track playback, the background track remains unchanged, and the front Jing Guiji is displayed superimposed on the background track. In the initial state, the foreground track and the background track are completely overlapped. With particular reference to fig. 2.
After the track starts to play back, the starting point of the foreground track continuously moves to form a flowing state, so that the flowing effect of the whole track can be displayed. With particular reference to fig. 3.
In step 103, after the playback of the track is started, since the foreground track is formed by repeating the loop of one solid line segment plus one blank interval plus one solid line segment, the track start point of the foreground track coincides with the start point of the track to be played back initially and is located at the solid line start point of the first solid line segment on the foreground track.
In this embodiment, since the total length of the pixels occupied by the track to be played back is generally greater than the pixel length of the first solid line segment where the track start point of the front Jing Guiji is located, the pixel length occupied by the first solid line segment where the track start point of the foreground track is located is used as the total number of steps of moving in a cyclic manner, and the track start point of the foreground track is continuously and dynamically updated according to the speed of moving 1 pixel towards the track end point of the foreground track each time, so that the updated foreground track is continuously obtained.
Under special conditions, the track to be played back is shorter or the total length of the pixels occupied by the track to be played back is shorter after the electronic map is reduced, and when the total length of the pixels occupied by the track to be played back is smaller than the length of the first section of solid line segment where the track starting point of the front Jing Guiji is located, the total length of the pixels occupied by the whole track to be played back is taken as the total moving steps of the circular movement, and at the moment, the end point of the track to be played back is taken as the track end point of the movement of the foreground track.
And in the range of the pixel length occupied by the first solid line segment where the track start point of the foreground track is located, the track start point of the foreground track starts to move forwards by one pixel from the solid line start point of the first solid line segment until the track start point of the first solid line segment is reached, and then returns to the solid line start point of the first solid line segment, so that the cycle is repeated.
If the total length of the pixels occupied by the track to be replayed is smaller than the length of the pixels occupied by the first section of solid line segment where the track starting point of the front Jing Guiji is located, the moving range of the track starting point of the foreground track is the whole track to be replayed; and when the track starting point of the foreground track moves to the end point of the track to be played back, returning to the solid line starting point of the first solid line segment where the track starting point is positioned, and repeating circularly.
During each playback step, the scale of the electronic map may be changed, so that the track to be played back on the electronic map may change direction after passing through a certain passing point, so that the next position of the track start point of the foreground track needs to be calculated in real time every 1 pixel of forward movement of the foreground track, and the track start point of the foreground track needs to be continuously and dynamically updated.
The track playback speed is kept at 1 pixel each time, so that the dynamic update calculation process of the track start point of the foreground track has no direct relation with the numerical value of the scale level of the electronic map.
In an alternative embodiment provided by the present application, step 103 may be implemented as follows:
1031. acquiring the current position and the current moving step number of a track starting point of a foreground track, and a solid line starting point and a solid line end point of a first solid line segment where the track starting point of the foreground track is positioned;
In this step, the current position of the track start point of the foreground track is acquired, set as l_s', and the current moving step number Bx is also acquired. Meanwhile, the solid line starting point and the solid line ending point of the first solid line segment Lx where the track starting point of the foreground track is located are set as Lx _S and Lx _E
Of course, if the total length of the pixels occupied by the track to be played back is smaller than the length of the pixels occupied by the first solid line segment where the track start point of the front Jing Guiji is located, the start point and the end point of the whole track to be played back are Lx _s and Lx _e.
At each playback step, since the scale of the electronic map may be changed and the track to be played back may change direction after passing through a certain passing point, the next position l_s of the track start point of the foreground track needs to be calculated in real time.
1032. Judging whether the current moving step number of the track starting point of the foreground track is smaller than the moving total step number;
In this step, each time the next position l_s "of the track start point of the foreground track is calculated, it is required to compare whether the current moving step number Bx of the track start point of the foreground track is smaller than the moving total step number B. If the position of the track start point is smaller than the position of the track start point, the track start point of the foreground track can move forwards; if the position is equal to the position, the track starting point of the foreground track reaches the track ending point of the foreground track movement, the next position needs to return to the position of the solid line starting point Lx _S of the first solid line segment Lx, and the forward movement is restarted.
1033. If the number of the steps is smaller than the total number of the steps, calculating the slope of a connecting line between the starting point of the solid line and the ending point of the solid line; after converting the current position of the track starting point of the foreground track from the map coordinate to the screen coordinate, moving the track starting point of the foreground track by 1 pixel along the slope direction, converting the moved track starting point of the foreground track from the screen coordinate to the map coordinate as the next position of the track starting point of the foreground track, and adding one to the current moving step number.
In this step, if the current number of steps of movement of the track start point of the foreground track is smaller than the total number of steps of movement, it is indicated that the track start point of the foreground track does not reach the solid line end point Lx _e of the first solid line segment Lx.
When the track starting point of the foreground track does not reach the solid line end point Lx _E of the first solid line segment Lx, the problem of how to dynamically calculate the next position L_S' of the track starting point of the foreground track under the condition that the scale of the electronic map is reduced is fully considered.
If the foreground track is further in front of the track starting point, when the actually advancing pixel length exceeds the residual pixel length range of the track section where the current track is positioned, the track section and the slope of the next position of the track starting point of the foreground track need to be calculated, and the foreground track advances by a sufficient distance along the slope direction of the new track section, and finally the coordinate of the next position of the track starting point of the foreground track is calculated, so that the track starting point of the foreground track is ensured to advance by 1 pixel at a uniform speed.
The embodiment combines the fixed offset of the screen coordinates as the step length, so that the playback track can show the effect of constant-speed playback under each scale. In the embodiment of the prior art, the track display can skip small-segment tracks, and the speed is suddenly increased or suddenly reduced under the conditions of larger distance length difference, larger time span change, map scale change and the like of adjacent track segments according to time average segmentation as a step length or the track average segmentation as a step length according to fixed map coordinate distance. None of the prior art implementations achieves uniform playback of tracks.
Of course, step 103 further includes the steps of:
1034. and if the number of the moving steps is equal to the total number of the moving steps, determining the position of the starting point of the solid line as the next position of the starting point of the track of the foreground track, and carrying out zero clearing processing on the current number of the moving steps.
In this step, if the current number of steps of movement of the trajectory start point of the foreground trajectory is equal to the total number of steps of movement, it is explained that the trajectory start point of the foreground trajectory has reached the solid line end point Lx _e of the first solid line segment Lx, and therefore, at this time, the position of the solid line start point Lx _s of the first solid line segment Lx is determined as the next position of the trajectory start point of the foreground trajectory, and at the same time, the current number of steps of movement of the trajectory start point of the foreground trajectory is cleared.
In step 104, according to the update sequence of the track start points of the foreground tracks, the updated foreground tracks are sequentially and circularly superimposed on the background tracks at preset playback time intervals, and the tracks to be played back at this time have the effect of flowing along the foreground track direction, so that the complete track direction can be intuitively represented.
Specifically, according to the update sequence, when the foreground track displaying the preset playback time interval is cleared, the updated foreground track is redrawn from the track starting point of the foreground track after dynamic update to the track end point of the foreground track, and the updated foreground track is superimposed and displayed on the background track.
In addition, the playback speed of the track, i.e. the speed of the flow of the foreground track, can be controlled by the playback time interval of each two flows of the foreground track.
Of course, a person skilled in the art may meet different types of display requirements by modifying parameters such as playback speed, color, width of the background track or the foreground track.
It should be noted that, for simplicity of description, the above-described embodiments of the method are all described as a series of combinations of actions, but it should be understood by those skilled in the art that the present invention is not limited by the order of actions described. Further, those skilled in the art will appreciate that the embodiments described in the specification are presently preferred embodiments, and that the acts are not necessarily required for the present invention.
In summary, the track flow display method based on the electronic map provided by the embodiment of the invention performs track playback by adopting a mode of double-layer superposition display of the background track and the foreground track, keeps the background track motionless in the playback process, enables the foreground track displayed above the background track to continuously and circularly move forward within a certain range according to the speed of 1 pixel each time, enables the relative position of the background track and the foreground track on the upper layer to continuously change, shows the flow effect of the whole track, not only can completely embody the track direction of each section in the whole track, but also can realize dynamic uniform smooth playback of the track under the condition that the map scale continuously changes.
Based on the same inventive concept, fig. 4 exemplarily shows a track flow display device based on an electronic map provided by the embodiment of the present invention, and since the principle of the device for solving the technical problem is similar to that of a track flow display method based on an electronic map, the specific implementation of the device may refer to the specific implementation of the calibration method, and the repetition is omitted.
Referring to fig. 4, the apparatus mainly includes the following units:
an acquisition unit 401 for acquiring a track to be played back;
a generating unit 402, configured to generate, according to a track to be played back, a background track displayed in a solid line manner and a foreground track displayed in a dashed line manner superimposed on the background track;
an updating unit 403, configured to dynamically update the track start point of the foreground track circularly according to a speed of moving 1 pixel to the track end point of the foreground track each time by using a pixel length occupied by a first section of solid line segment where the track start point of the foreground track is located as a total moving step number, to obtain an updated foreground track;
and the display unit 404 is configured to sequentially and circularly superimpose and display the updated foreground tracks on the background track at preset playback time intervals according to the update sequence, so as to realize the flow display of the foreground tracks on the background track.
Here, it should be noted that the above-mentioned obtaining unit 401, generating unit 402, updating unit 403, and display unit 404 correspond to steps 101 to 104 in the above-mentioned method embodiment, and four units are the same as the examples and application scenarios implemented by the corresponding steps, but are not limited to those disclosed in the above-mentioned method embodiment.
Preferably, the generating unit 402 is specifically configured to:
According to the track to be played back, a background track displayed in a solid line mode is generated by adopting a preset background track color and a background track width;
And generating a foreground track displayed in a dotted line mode by adopting a preset foreground track color and a foreground track width according to the track to be played back, and displaying the foreground track on the background track in a superimposed mode.
Preferably, the updating unit 403 is specifically configured to:
the updating unit is specifically used for:
Acquiring the current position and the current moving step number of a track starting point of a foreground track, and a solid line starting point and a solid line end point of a first solid line segment where the track starting point of the foreground track is positioned;
judging whether the current moving step number of the track starting point of the foreground track is smaller than the moving total step number;
If the number of the steps is smaller than the total number of the steps, calculating the slope of a connecting line between the starting point of the solid line and the ending point of the solid line; after converting the current position of the track starting point of the foreground track from the map coordinate to the screen coordinate, moving the track starting point of the foreground track by 1 pixel along the slope direction, converting the moved track starting point of the foreground track from the screen coordinate to the map coordinate as the next position of the track starting point of the foreground track, and adding one to the current moving step number.
Preferably, the updating unit 403 is further specifically configured to:
And if the number of the moving steps is equal to the total number of the moving steps, determining the position of the starting point of the solid line as the next position of the starting point of the track of the foreground track, and carrying out zero clearing processing on the current number of the moving steps.
Preferably, the display unit 404 is specifically configured to:
And after the foreground tracks displayed at the preset playback time interval are cleared according to the updating sequence, the updated foreground tracks are redrawn from the track starting point of the foreground tracks after dynamic updating to the track finishing point of the foreground tracks, and the updated foreground tracks are superimposed and displayed on the background tracks.
It should be noted that, the track flow display device based on the electronic map provided by the embodiment of the present invention belongs to the same technical concept as the track flow display method based on the electronic map described in the foregoing embodiment, and the specific implementation process of the track flow display device based on the electronic map may refer to the description of the method steps in the foregoing embodiment, which is not repeated herein.
It should be understood that the above track flow display device based on the electronic map includes units that are only logically divided according to functions implemented by the device, and in practical applications, the above units may be overlapped or split. The functions implemented by the track flow display device based on the electronic map provided by the embodiment are in one-to-one correspondence with the track flow display method based on the electronic map provided by the above embodiment, and the more detailed processing flow implemented by the device is described in detail in the above method embodiment, which is not described in detail here.
In summary, the track flow display device based on the electronic map provided by the embodiment of the invention performs track playback by adopting a mode of double-layer superposition display of the background track and the foreground track, keeps the background track motionless in the playback process, enables the foreground track displayed above the background track to continuously and circularly move forward within a certain range according to the speed of 1 pixel each time, enables the relative position of the background track and the foreground track on the upper layer to continuously change, shows the flow effect of the whole track, not only can completely embody the track direction of each section in the whole track, but also can realize dynamic uniform smooth playback of the track under the condition that the map scale continuously changes.
Based on the same inventive concept, referring to fig. 5, an embodiment of the present invention provides an electronic device, which mainly includes a processor 501 and a memory 502, wherein the memory 502 stores execution instructions. The processor 501 reads the execution instructions in the memory 502 for performing the steps described in any one of the embodiments of the electronic map based trajectory flow display method described above. Or the processor 501 reads the execution instructions in the memory 502 to implement the functions of the units in any one of the embodiments of the electronic map based trajectory flow display device described above.
The processor 501 may be a general purpose processor including a central processing unit (Central Processing Unit, CPU), a network processor (Network Processor, NP), etc.; but may also be a digital signal processor (DIGITAL SIGNAL Processing, DSP), application SPECIFIC INTEGRATED Circuit (ASIC), field-Programmable gate array (Field-Programmable GATE ARRAY, FPGA) or other Programmable logic device, discrete gate or transistor logic device, discrete hardware components.
The memory 502 may be an internal storage unit, such as a hard disk or a memory. The memory 402 may also be an external storage device, such as a plug-in hard disk, a smart memory card (SMART MEDIA CARD, SMC), a Secure Digital (SD) card, a flash memory card (FLASH CARD), etc. Further, the memory 502 may also include both internal storage units and external storage devices. The memory 502 may be used to temporarily store data that has been output or is to be output.
It will be clearly understood by those skilled in the art that, for convenience and brevity of description, the specific working process of each component described above may refer to the corresponding process in the foregoing method embodiment, which is not described herein again.
In summary, the electronic device provided by the embodiment of the invention performs track playback by adopting a mode of double-layer superposition display of the background track and the foreground track, keeps the background track motionless in the playback process, and enables the foreground track displayed above the background track to continuously and circularly move forward within a certain range according to the speed of 1 pixel each time, so that the relative positions of the background track and the foreground track on the upper layer continuously change, the flowing effect of the whole track is shown, the track direction of each section in the whole track can be completely shown, and the dynamic uniform smooth playback of the track can be realized under the condition that the map scale continuously changes.
In addition, an embodiment of the present invention further provides a computer readable storage medium containing computer executable instructions for performing the steps described in the embodiment of the track flow display method based on the electronic map. Or the computer-executable instructions are used to perform the functions of the units in the embodiments of the electronic map-based trajectory flow display described above.
The computer storage media of embodiments of the invention may take the form of any combination of one or more computer-readable media. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access Memory (Random Access Memory, RAM), a Read-Only Memory (ROM), an erasable programmable Read-Only Memory (Erasable Programmable Read Only Memory, EPROM), a flash Memory, an optical fiber, a portable CD-ROM, an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. A computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
The computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, either in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to: electromagnetic signals, optical signals, or any suitable combination of the preceding. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, radio Frequency (RF), and the like, or any suitable combination of the foregoing.
In addition, computer program code for carrying out operations of the present invention may be written in one or more programming languages, including an object oriented programming language such as Java, smalltalk, C ++ and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code 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 case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider).
Those of ordinary skill in the art will appreciate that the modules, units, and/or method steps of the various embodiments described in connection with the embodiments disclosed herein can be implemented as electronic hardware, or as a combination of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
In the several embodiments provided by the present application, it should be understood that the disclosed systems, devices, and methods may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the units is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
In addition, each functional unit in the embodiments of the present invention may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
In the foregoing embodiments of the present invention, the descriptions of the embodiments are emphasized, and for a portion of this disclosure that is not described in detail in this embodiment, reference is made to the related descriptions of other embodiments.
The foregoing description of the preferred embodiments of the invention is not intended to limit the invention to the precise form disclosed, and any such modifications, equivalents, and alternatives falling within the spirit and scope of the invention are intended to be included within the scope of the invention.