CN108074009B - Motion route generation method and device, mobile terminal and server - Google Patents

Motion route generation method and device, mobile terminal and server Download PDF

Info

Publication number
CN108074009B
CN108074009B CN201611042147.2A CN201611042147A CN108074009B CN 108074009 B CN108074009 B CN 108074009B CN 201611042147 A CN201611042147 A CN 201611042147A CN 108074009 B CN108074009 B CN 108074009B
Authority
CN
China
Prior art keywords
graph
motion
length
movement
edge
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201611042147.2A
Other languages
Chinese (zh)
Other versions
CN108074009A (en
Inventor
赵文超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cainiao Smart Logistics Holding Ltd
Original Assignee
Cainiao Smart Logistics Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cainiao Smart Logistics Holding Ltd filed Critical Cainiao Smart Logistics Holding Ltd
Priority to CN201611042147.2A priority Critical patent/CN108074009B/en
Publication of CN108074009A publication Critical patent/CN108074009A/en
Application granted granted Critical
Publication of CN108074009B publication Critical patent/CN108074009B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • G06Q10/047Optimisation of routes or paths, e.g. travelling salesman problem
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Automation & Control Theory (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Navigation (AREA)

Abstract

The embodiment of the application provides a method, a device, a mobile terminal and a server for generating a movement route, wherein the method comprises the steps of receiving a movement route generation request, wherein the generation request comprises a movement graph and a movement distance; planning a movement line with a shape matched with the movement pattern and a length matched with the movement distance in the electronic map; displaying the movement route in an electronic map. The embodiment of the application realizes automatic planning of the movement route, avoids manual planning of the movement route by a user, is simple and convenient to operate, consumes short time, improves efficiency, and ensures that the length of a road meets the expectation of the user and the user moves in a proper amount.

Description

Motion route generation method and device, mobile terminal and server
Technical Field
The present application relates to the field of computer processing technologies, and in particular, to a method and an apparatus for generating a movement route, a mobile terminal, and a server.
Background
During the exercise process, for example, running, riding and the like, the user can record the position information to generate the exercise track and share the exercise track with other users.
For some needs, users often need to generate motion rules of specific shapes, and for this reason, the users call a map, and manually traverse appropriate roads on the map to plan a route.
This manual route planning usually requires many times of road calibration, which is cumbersome and time consuming, resulting in low efficiency, and the length of the road is difficult to reach the expectation of the user, which is likely to cause insufficient or excessive movement.
Disclosure of Invention
In view of the above problems, embodiments of the present application are proposed to provide a method for generating a movement route and a corresponding device for generating a movement route, a mobile terminal, and a server, which overcome or at least partially solve the above problems.
According to an aspect of the present application, there is provided a method for generating a movement route, including:
receiving a motion route generation request, wherein the generation request comprises a motion graph and a motion distance;
planning a movement line with a shape matched with the movement pattern and a length matched with the movement distance in the electronic map;
displaying the movement route in an electronic map.
According to another aspect of the present invention, there is provided a movement route generation apparatus including:
the generating request receiving module is used for receiving a generating request of a movement route, wherein the generating request comprises a movement graph and a movement distance;
the movement route planning module is used for planning a movement route with the shape matched with the movement graph and the length matched with the movement distance in the electronic map;
and the movement route display module is used for displaying the movement route in the electronic map.
According to another aspect of the present invention, there is provided a mobile terminal including:
one or more processors;
a memory; and
one or more programs, wherein the one or more programs are stored in the memory and configured for execution by the one or more processors to include instructions for:
receiving a motion route generation request, wherein the generation request comprises a motion graph and a motion distance;
planning a movement line with a shape matched with the movement pattern and a length matched with the movement distance in the electronic map;
displaying the movement route in an electronic map.
According to another aspect of the present invention, there is provided a server comprising:
one or more processors;
a memory; and
one or more modules stored in the memory and configured to be executed by the one or more processors, wherein the one or more modules have functionality to: when a service request sent by a terminal is received, searching a service object according to the service request, wherein the terminal is provided with a user identifier, and the service object comprises service data and one or more candidate interactive information;
receiving a motion route generation request, wherein the generation request comprises a motion graph and a motion distance;
and planning a movement line with a shape matched with the movement pattern and a length matched with the movement distance in the electronic map.
The embodiment of the application has the following advantages:
according to the method and the device, the movement route with the shape matched with the movement graph and the length matched with the movement distance is planned in the electronic map according to the movement graph and the movement distance, automatic planning of the movement route is achieved, the user is prevented from manually planning the movement route, the operation is simple and convenient, the consumed time is short, the efficiency is improved, the length of the road meets the expectation of the user, and the proper movement of the user is guaranteed.
Drawings
FIG. 1 is a flow chart of steps of an embodiment of a method for generating a movement path of the present application;
FIG. 2 is a flow chart illustrating steps of another embodiment of a method for generating a movement path according to the present application;
FIGS. 3A-3C are diagrams of exemplary connections of a graph edge according to embodiments of the present application;
FIG. 4 is a flowchart illustrating exemplary steps for generating a motion profile according to an embodiment of the present application;
FIG. 5 is an exemplary graph of one type of undulating distance in accordance with embodiments of the present application;
6A-6F are diagrams of examples of generation of a motion profile according to embodiments of the present application;
FIG. 7 is a block diagram of an embodiment of an apparatus for generating a motion path according to the present application;
fig. 8 is a schematic structural diagram of a mobile terminal according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a server according to an embodiment of the present application.
Detailed Description
In order to make the aforementioned objects, features and advantages of the present application more comprehensible, the present application is described in further detail with reference to the accompanying drawings and the detailed description.
Referring to fig. 1, a flowchart illustrating steps of an embodiment of a method for generating a movement route according to the present application is shown, and specifically, the method may include the following steps:
step 101, a motion route generation request is received.
In a specific implementation, the embodiment of the present application may be applied to a mobile terminal, for example, a mobile phone, a PDA (Personal Digital Assistant), an intelligent wearable device (such as a smart band, smart glasses, etc.), and the embodiment of the present application is not limited thereto.
The mobile terminals may be installed with operating systems such as Windows, Android (Android), IOS, Windows phone, and the like, and the operating systems may generally support the running of the electronic map.
Electronic maps generally use vector images to store map data, and the map scale can be enlarged, reduced or rotated without affecting the display effect.
When the electronic map is drawn, the electronic map may be configured to be matched with a plurality of map layers, and the map layers of the electronic map may include basic geographic information (such as rivers, mountains, plains, and the like), city infrastructure building and road information, POI (Point of Interest) labeling information, and the like.
In a specific implementation, a User may trigger a motion route generation request through an operation of a User Interface (UI), such as clicking a certain control, speaking a certain voice instruction, and the like.
The motion route is a route which a user expects to pass through by moving (such as running and riding).
In the embodiment of the present application, the generation request includes a movement pattern and a movement distance.
The movement pattern is a pattern formed by a route which a user expects to pass through during movement (such as running and riding), such as a heart shape, a constellation, daily necessities and the like.
The movement distance is the length of the route that the user expects to travel (e.g., run, ride).
In a specific implementation, the mobile terminal may configure a motion graphic library, select a plurality of candidate motion graphics from the motion graphic library, display the candidate motion graphics on the UI for the user to select, and the user may click and select a certain motion graphic on the UI to confirm the motion graphic.
Alternatively, the user may draw the motion graphic directly in the UI, thereby confirming the motion graphic.
In addition, the mobile terminal may determine the motion graph in other manners, such as external import, which is not limited in this embodiment of the application.
The movement distance may be input by the user, or may be a distance suitable for the movement of the user calculated based on the movement data and/or the physiological data of the user, and the like, which is not limited in this embodiment of the application.
And 102, planning a movement line with a shape matched with the movement pattern and a length matched with the movement distance in the electronic map.
And step 103, displaying the movement route in an electronic map.
If the mobile terminal receives the generation request of the movement route, the electronic map can be called to plan the movement route.
In specific implementation, the mobile terminal traverses the electronic map and plans a suitable movement route, wherein the shape of the movement route is the same as or similar to that of the movement graph, and the length of the movement route conforms to the movement distance.
If the movement route is planned, the movement route can be displayed in an electronic map for a user to browse.
In one embodiment of the application, when a plurality of movement routes are generated, prompt information is generated for the plurality of movement routes and displayed in one or more interfaces, for example, thumbnails of the movement routes, areas where the movement routes are located, actual lengths of the movement routes, heat of the movement routes (which may be calculated based on the same road segments in different cloud-end routes), expected movement time, expected movement consumption (such as calories), building information around the movement routes (such as shops, views, and the like), and the like.
The user can browse the prompt information to assist in selecting a proper movement route and confirm the movement route through clicking and the like.
And when the confirmation operation aiming at a certain prompt message is detected, displaying the movement route corresponding to the prompt message in the electronic map.
Thereafter, the user may move along the movement route.
According to the method and the device, the movement route with the shape matched with the movement graph and the length matched with the movement distance is planned in the electronic map according to the movement graph and the movement distance, automatic planning of the movement route is achieved, the user is prevented from manually planning the movement route, the operation is simple and convenient, the consumed time is short, the efficiency is improved, the length of the road meets the expectation of the user, and the proper movement of the user is guaranteed.
Referring to fig. 2, a flowchart illustrating steps of another embodiment of the method for generating a movement route according to the present application is shown, and specifically, the method may include the following steps:
step 201, a motion route generation request is received.
Wherein, the generation request includes a motion graph and a motion distance.
Step 202, converting the motion graph into a graph model.
The graphic model is a model structure abstracted from a moving graphic, and is expressed in a regular form.
In one embodiment of the present application, step 202 may include the following sub-steps:
substep 2021, converting said motion graph into at least two graph edges;
and a substep 2022, calculating the side length proportion and the side included angle between the edges of the graph to obtain a graph model.
In the embodiment of the present application, the motion graph may be converted into a normalized graph edge (e.g., line segment) expression, the graph edges have a length ratio (i.e., a side length ratio), and each two graph edges form an included angle (i.e., an edge included angle).
If the motion patterns themselves are connected, then the two adjacent (i.e., positionally adjacent) pattern edges after the transition are also connected.
If the motion patterns themselves are not connected, then the adjacent (i.e., adjacent in position) two pattern edges after the transition are also not connected.
For regular expression, after sub-step 2021, when two adjacent graph edges are not connected, the new graph edge is used to connect the two adjacent graph edges.
In one connection, a new graph edge may be added in the extension direction of the original graph edge.
In another connection mode, the new graph edge can be directly adopted to connect the end points of the original graph edge.
For example, as shown in FIG. 3A, a certain motion pattern has a pattern edge L1、L2And L3Wherein L is1And L2Adjacent but not connected, L2And L3Adjacent but connected.
In one connection, as shown in FIG. 3B, may be at L1Is extended, a new graphic edge L is added4At L2Is extended, a new graphic edge L is added5,L4And L5Are connected.
In another connection, as shown in FIG. 3C, a new graph edge L can be directly used6Connection L1And L2The endpoint of (1).
Of course, the above connection manner is only an example, and when the embodiment of the present application is implemented, other connection manners may be set according to actual situations, and the embodiment of the present application is not limited to this. In addition, besides the above connection modes, a person skilled in the art may also use other connection modes according to actual needs, and the embodiment of the present application is not limited to this.
It should be noted that, when the mobile terminal configures a motion graphic library for selection by a user, a graphic model may be abstracted from a motion graphic in advance, and after determining a motion graphic, a graphic model corresponding to the motion graphic may be obtained locally at the mobile terminal or from a server.
In the case that a user directly draws a motion graphic in the UI, etc., the mobile terminal may abstract the motion graphic out of a graphic model in real time.
And step 203, generating a movement route with the distribution matched with the graphic model and the length matched with the movement distance in the electronic map.
In specific implementation, the mobile terminal can call the electronic map, traverse the electronic map, and plan a suitable movement route, wherein the distribution of the movement route conforms to the specification of the graphic model, and the length of the movement route conforms to the movement distance.
In one embodiment of the application, the graph model comprises at least two graph edges, and the graph edges have side length proportion and edge included angles; then, in the embodiment of the present application, step 203 may include the following sub-steps:
substep 2031, distributing the movement distance to the graph edge according to the side length ratio to obtain the edge length;
and a substep 2032 of searching for at least two roads with the lengths matched with the side lengths and the road angles matched with the side included angles in the electronic map and generating a movement route.
In the embodiment of the application, the moving distance can be calculated according to the length ratio (namely, the side length ratio) to calculate the actual distance (namely, the side length) of each graph side.
And traversing the electronic map, and planning a suitable movement route, wherein the movement route comprises at least two roads, each road is in one-to-one correspondence with each graph edge, namely the actual length (namely the road length) of each road is matched with the edge length of each graph edge, and the included angle (namely the road angle) between every two roads is matched with the edge included angle between the two corresponding graph edges.
It should be noted that, a new graph edge connecting two adjacent graph edges may be included in the movement distance to allocate the edge length, or may not be included in the movement distance to allocate an additional edge length, which is not limited in the embodiment of the present application.
In addition, the corresponding road may not be displayed when displayed, or may be displayed in a manner not used for other roads, for example, the other roads are solid lines, and the corresponding road is a dashed line, which is not limited in this embodiment of the present application.
In one example of an embodiment of the present application, as shown in fig. 4, the sub-step 2032 further may comprise the steps of:
step S11, determining an original starting point in the electronic map;
when the electronic map is initially traversed, the mobile terminal can be positioned to obtain the current position of the user, and an original starting point is searched within a certain range of the current position.
In subsequent traversals of the electronic map, an offset may be performed based on the last original starting point to obtain the original starting point of the core.
In practical applications, the original starting point is generally the intersection of the road.
Step S12, planning a first section of path along the road from the original starting point;
in practical applications, the road may be matched with the movement pattern of the user, that is, if the movement pattern of the user is running, the road is a pedestrian path, if the movement pattern of the user is riding, the road may be a bicycle path, and the like.
Along the road plan, a section of path can be drawn as a movement route.
Step S13, judging whether the road length of the first section of path is matched with the side length of the first graph side; if yes, go to step S14, otherwise, go back to step S11;
in a specific implementation, the length of the first section of path on the electronic map can be converted into the actual road length by adopting a scale, and the actual road length is matched with the side length of the first graph side; the length of the first graph edge may also be converted into a length on the electronic map by using a scale, and the length is matched with the length of the first segment of the path on the electronic map, which is not limited in this embodiment of the present application.
And if the actual length of the first section of path does not meet the requirement of the graph edge, re-determining the original starting point and re-planning.
If the actual length of the first segment of path meets the requirement of the graph edge, the next segment of path can be searched.
Step S14, judging whether a next graph edge exists; if yes, go to step S15, otherwise go to step S18;
step S15, using the end of the current section path as the middle initial point, searching the target road according to the target included angle; when the search is finished, executing the step S16, and when the search is not finished, returning to execute the step S11;
in this example, the target angle is the edge angle between the current graph edge and the previous graph edge.
It should be noted that the current segment path, the current graph edge, and the previous graph edge are relative to the circularly planned path.
For example, if the second segment path is planned, when the third segment path is planned, the second segment path is the current segment path, the graph edge corresponding to the second segment path (i.e., the second graph edge) is the current graph edge, and the graph edge corresponding to the first segment path (i.e., the first graph edge) is the previous graph edge.
If the road with the proper included angle is found, the next section of the path can be planned.
And if the road with the proper included angle is not found, re-determining the original starting point and re-planning.
Step S16, planning the next section of path along the target road from the middle starting point;
step S17, judging whether the road length of the next section of path is matched with the side length of the next graph side; if yes, returning to the step S14, otherwise, returning to the step S11;
and step S18, generating a movement route by using the planned path.
If all the graph edges correspond to the planned paths in the roads, the movement route can be generated by adopting the planned paths.
In one embodiment of the present application, sub-step 2032 may comprise the following sub-steps:
a substep S21, configuring a side length error for the side length to obtain a side length range;
and a substep S22, configuring included angle errors for the side included angles to obtain a side included angle range.
And a substep S23 of searching at least two roads with the road length within the side length range and the road angle within the included angle range in the electronic map and generating a movement route.
Because the distribution of the roads is generally disordered, in order to increase the fault-tolerant rate of matching and improve the success rate of matching, in the embodiment of the application, the proportion error can be configured for the side length proportion of the graph edge, and the included angle error can be configured for the side included angle of the graph edge.
In a specific implementation, the side length error may be assigned to the movement distance according to a proportional error.
And on the basis of the side length, adding and subtracting the side length error to obtain a side length range.
For example, assuming a side length of L and a side length error of Δ L, the side length range is [ L- Δ L, L + Δ L ].
Therefore, in step S15, a point of the path within the range of the side length may be regarded as an end.
And on the basis of the edge included angle, adding and subtracting the included angle error to obtain the edge included angle range.
For example, assuming that the included angle is O DEG and the included angle error is Delta O DEG, the included angle is in the range of [ O DEG to Delta O DEG, O DEG + Delta O deg ].
In another embodiment of the present application, sub-step 1032 may comprise the sub-steps of:
substep S31, when a road is found, calculating a fluctuation distance of the road in a target direction;
the target direction is a direction perpendicular to the original direction, and the original direction is a direction to which the graph side corresponding to the road belongs.
A substep S32 of determining whether the fluctuation distance is less than or equal to a preset distance threshold; if yes, performing the substep S33, otherwise, performing the substep S34;
a substep S33 of determining that the road is valid;
and a substep S34 of determining that the road is invalid.
Because the actual distribution of roads is usually disordered, in order to increase the matching fault tolerance and improve the matching success rate, in the embodiment of the application, the roads can be allowed to fluctuate within a certain range, when planning, the end of a certain road is reached, the length of the road is not matched with the length of the side, and then the path planning can be continued on the connected roads.
If the fluctuation is within the range, the road is indicated to be valid, and if the fluctuation exceeds the range, the road is indicated to be invalid, and planning is carried out again.
For example, as shown in FIG. 5, if the graphic edge L7The corresponding road is L8At the pattern edge L7In the vertical direction, road L8The two extreme points (i.e. the points farthest away) are m and n, respectively, and m is set according to L7M 'is obtained after the direction translation, namely m' n is a road L8The fluctuation distance of (2).
And step 204, displaying the movement route in the electronic map.
Step 205, collecting a plurality of geographic location data.
And step 206, generating a motion track on the electronic map according to the plurality of geographic position data.
In the embodiment of the application, after the user views the movement path in the electronic map, the user can move according to the movement path.
During the movement, the mobile terminal may perform a positioning operation every certain time (e.g. 1s) to obtain the geographic position data.
Of course, if the mobile terminal (e.g., a mobile phone) is connected to a device dedicated for exercise (e.g., a bracelet), the mobile terminal can perform positioning operation at a certain interval (e.g., 1s) in the device dedicated for exercise, obtain geographic location data, and transmit the geographic location data to the mobile terminal.
And connecting the geographic position data, obtaining the motion trail and displaying the motion trail on the electronic map.
It should be noted that, a new graph edge connecting two adjacent graph edges, and in addition, the corresponding motion trajectory may not be displayed when displaying, or may be displayed in a manner that is not used for other motion trajectories, for example, other motion trajectories are solid lines, and the corresponding motion trajectory is a dashed line, which is not limited in this embodiment of the present application.
And step 207, receiving information which is pushed by the server and is matched with the motion trail.
In a specific implementation, the mobile terminal may upload the motion trajectory to the server, and the server may push information matched with the motion trajectory.
In a push mode, a set of word banks and associated word banks with similar semantics are maintained in a server, words with similar semantics can be selected from the word banks and associated words of the words can be selected from the associated word banks according to the meaning of the motion trail of the user, for example, if the motion trail is heart-shaped, the words with similar semantics are love, and the associated words are girls, flowers and the like.
Searching words and associated words with similar semantics by a search engine, screening to obtain consultation information and pushing commodity information by a shopping platform,
further, the server may record the browsing preference of the user and collect browsing feedback of the user, such as the amount of information recommended by the user when the user clicks, the staying time, and the like, to continuously optimize the push information.
In another pushing mode, the motion track can be matched with the closest object or constellation, the situation of the user is analyzed and pushed to the mobile terminal through a self-maintained situation library or a situation library of a third-party website, and the interest of the motion is increased.
Of course, the above pushing manner is only an example, and when the embodiment of the present application is implemented, other pushing manners may be set according to actual situations, which is not limited in this embodiment of the present application. In addition, besides the above pushing manners, a person skilled in the art may also adopt other pushing manners according to actual needs, and the embodiment of the present invention is not limited thereto.
In order to make the person skilled in the art better understand the embodiment of the present application, the following describes a method for generating a movement route in the embodiment of the present application by a specific example.
As shown in fig. 6A, the user opens the mobile terminal, selects some motion graphics from the motion graphics library, and displays the motion graphics as candidate in the UI interface, including heart-shaped, circular, triangular, square, and so on.
If the motion graph wanted by the user exists, the motion graph can be clicked to select.
If the motion graph wanted by the user does not exist, the user can click the 'drawing by oneself' control and jump to a new page for drawing.
Assuming that the user clicks the heart shape as the motion graph, as shown in fig. 6B, the user may input a motion distance, for example, 6 km, and then click the "determination" control, so that the application in the mobile terminal plans the motion route.
As shown in FIG. 6C, the graph model is abstracted from the heart shape, and comprises graph edges AB, BC, CD, DE, EF, and FA, which form a closed graph.
Wherein, the side length ratio of AB, BC, CD, DE, EF and FA is 1:1:2:2:1:1, and the ratio error is 0.5.
The angles of the angle of side angle a, angle b, angle c, angle d, angle e and angle f are respectively 270 degrees, 100 degrees, 90 degrees, 70 degrees, 90 degrees and 100 degrees, and the error of the angle is 20 degrees.
Therefore, the edge lengths of AB, BC, CD, DE, EF, FA are 0.75, 1.5, 0.75, respectively, in kilometers.
AB. The side length ranges of BC, CD, DE, EF and FA are [0.375-1.125], [1.125-1.875], [0.375-1.125] and [0.375-1.125] respectively, and the unit is kilometer.
The edge included angle a, the angle b, the angle c, the angle d, the angle e and the angle f are respectively in the range of [ 250-290 DEG ], [ 80-120 DEG ], [ 70-110 DEG ], [ 50-90 DEG ], [ 70-110 DEG ], [ 80-120 DEG ].
As shown in fig. 6D, the mobile terminal is located to know that the current location of the user is a lucky north star hotel.
As shown in fig. 6E, within a certain range of the position, a point a' is found as an original starting point, and a path is planned in the northeast direction along the scholar road.
Planning to the intersection B ' of the Shenhua road and the Moshan trunk road, the length between the paths A ' B ' is 0.6 kilometer and is within the length range [0.375-1.125] of the graph edge AB.
And B 'is taken as an intermediate starting point, a next section of path is planned along the Moshan dry road in the southeast direction, the road angle B' is 100 degrees, and the range of the side included angle B is within (80-120 degrees).
Planning to the intersection C ' of the Moshan trunk road and the Nu water street, wherein the length between the paths B ' C ' is 0.6 kilometer and is within the length range [0.375-1.125] of the graph side BC.
And C 'is taken as an intermediate starting point, and a next section of path is planned along the duckweed water street in the southwest direction, so that the road angle C' is 89 degrees and is within the side included angle range of the side included angle C (70-110 degrees).
Planning to the intersection D ' of the minor street and the quan road, wherein the length between the paths C ' D ' is 1.8 km and is within the length range [1.125-1.875] of the graph edge CD.
And D 'is taken as an intermediate starting point, a next section of path is planned along the west-north direction of the quagmire road, and the road angle D' is 78 degrees and is within the range of the side included angle D (50-90 degrees).
Planning to the intersection E ' of the quan road and the Yingyang road, wherein the length between the paths D ' E ' is 1.5 km and is within the length range [1.125-1.875] of the graph edge DE.
And planning a next section of path in the northeast direction along the bearing road by taking the E 'as an intermediate starting point, wherein the road angle E' is 83 degrees and is within the range of the side included angle E (70-110 degrees).
When planning to the crossing point F ' of the English-bearing road and the north road of the college, the length between the paths E ' F ' is 0.5 km and is within the length range [0.375-1.125] of the graph edge EF.
And F 'is taken as an intermediate starting point, a next section of path is planned along the northeast direction of the college, and the road angle F' is 118 degrees and is within the side included angle range of the side included angle F [ 80-120 degrees ].
Planning to the intersection A 'of the quartz breeding road and the cotton milling road, wherein the length between the paths F' A 'is 0.7 km, the road angle & lt a' is 265 degrees within the length range [0.375-1.125] of the graph edge EF, and the side included angle range [ 250-290 degrees ] of the side included angle & lt a.
To this end, a movement route may be generated from the paths a 'B', B 'C', C 'D', D 'E', E 'F', F 'a', as shown in fig. 6F, and the movement route may be displayed on an electronic map, including the position of the start point, the position of the end point, the direction of the movement route, and so on.
When the user runs according to the movement route, continuously collecting the geographic position data to generate a movement track, wherein the movement track has high similarity with the movement route and is basically overlapped.
The mobile terminal sends the motion trail to the server, and the server recognizes that the motion trail is heart-shaped, extracts words 'love' with similar semantics and associated words 'girl friend', 'flower' and the like, so that consultation information such as date skills and the like can be screened out in search, commodity information such as roses and the like can be searched on a shopping platform, and the commodity information can be pushed to the mobile terminal for a user to refer to.
In an embodiment of the application, the mobile terminal may generate a motion route generation request according to the motion graph and the motion distance, and send the motion route generation request to the server, and the server may receive the motion route generation request (the generation request includes the motion graph and the motion distance), plan a motion route in the electronic map, the shape of which is matched with the motion graph, and the length of which is matched with the motion distance according to the generation request, and return the generated motion route to the mobile terminal for display.
In addition, the server can receive a motion trail generated by the mobile terminal based on the collected multiple geographic position data, search information matched with the motion trail, and push the information to the mobile terminal.
It should be noted that, in the embodiment of the present application, since the application is basically similar to that of steps 101 to 102, 201 to 203, and 205 to 207, the description is relatively simple, and for the relevant points, reference may be made to the partial description of the embodiment of the method for generating a movement route, which is not described in detail herein.
It should be noted that, for simplicity of description, the method embodiments are described as a series of acts or combination of acts, but those skilled in the art will recognize that the embodiments are not limited by the order of acts described, as some steps may occur in other orders or concurrently depending on the embodiments. Further, those skilled in the art will also appreciate that the embodiments described in the specification are presently preferred and that no particular act is required of the embodiments of the application.
Referring to fig. 7, a block diagram of an embodiment of a motion route generation device according to the present application is shown, and specifically, the motion route generation device may include the following modules:
a generation request receiving module 701, configured to receive a generation request of a movement route, where the generation request includes a movement pattern and a movement distance;
a motion route planning module 702, configured to plan a motion route with a shape matching the motion pattern and a length matching the motion distance in an electronic map;
and a motion route display module 703, configured to display the motion route in the electronic map.
In one embodiment of the present application, the motion path planning module 702 includes:
the graphic model conversion sub-module is used for converting the motion graphics into a graphic model;
and the movement route matching submodule is used for generating a movement route which is distributed and matched with the graphic model and the movement distance.
In one embodiment of the present application, the graphics model conversion sub-module includes:
a graph edge conversion unit for converting the motion graph into at least two graph edges;
and the graph edge parameter calculating unit is used for calculating the side length proportion and the side included angle between the graph edges to obtain the graph model.
In an embodiment of the application, the graphics model conversion sub-module further includes:
and the graph edge connecting unit is used for connecting two adjacent graph edges by adopting a new graph edge when the two adjacent graph edges are not connected.
In one embodiment of the application, the graph model comprises at least two graph edges, and the graph edges have side length proportion and edge included angles;
the movement route matching sub-module includes:
the side length calculating unit is used for distributing the movement distance to the graph side according to the side length proportion to obtain the side length;
and the road matching unit is used for searching at least two roads with the lengths matched with the side lengths and the road angles matched with the side included angles in the electronic map to generate a movement route.
In one example of an embodiment of the present application, the road matching unit includes:
an original starting point determining subunit, configured to determine an original starting point in the electronic map;
a first section path planning subunit, configured to plan a first section path along the road from the original starting point;
the first edge length matching subunit is used for judging whether the road length of the first section of path is matched with the edge length of the first graph edge; if yes, calling the next graph edge to judge the subunit, and if not, returning to calling the original starting point to determine the subunit;
a next graph edge judging subunit, configured to judge whether there is a next graph edge; if yes, calling a target road searching subunit, and if not, calling a route generating subunit;
the target road searching subunit is used for searching a target road according to a target included angle by taking the tail end of the current segment path as an intermediate starting point, wherein the target included angle is an edge included angle between the current graph edge and the previous graph edge; when the path is found out, the next section of path planning subunit is called, and when the path is not found out, the original starting point determining subunit is returned to be called;
a next section of path planning subunit, configured to plan a next section of path along the target road from the intermediate starting point;
the second side length matching subunit is used for judging whether the road length of the next section of path is matched with the side length of the next graph side or not; if yes, returning to call the next graph edge judgment subunit, and if not, returning to call the original starting point to determine the subunit;
and the route generating subunit is used for generating the motion route by adopting the planned route.
In one embodiment of the present application, the road matching unit includes:
the side length range calculating subunit is used for configuring a side length error for the side length to obtain a side length range;
the side included angle range calculating subunit is used for configuring included angle errors for the side included angles to obtain a side included angle range;
and the error route generating subunit is used for searching at least two roads with the road length within the side length range and the road angle within the side included angle range in the electronic map to generate a movement route.
In one embodiment of the present application, the road matching unit includes:
the device comprises a fluctuation distance calculation subunit, a fluctuation distance calculation unit and a control unit, wherein the fluctuation distance calculation subunit is used for calculating the fluctuation distance of a road in a target direction when the road is found, the target direction is a direction perpendicular to an original direction, and the original direction is a direction to which a graph side corresponding to the road belongs;
a distance threshold judgment subunit, configured to judge whether the fluctuation distance is smaller than or equal to a preset distance threshold; if yes, calling a first determining subunit, and if not, calling a second determining subunit;
a first determining subunit, configured to determine that the road is valid;
a second determining subunit, configured to determine that the road is invalid.
In an embodiment of the present application, the motion line display module 703 includes:
the prompt information generation submodule is used for generating prompt information for a plurality of movement routes when the movement routes are generated;
and the movement route determining submodule is used for displaying the movement route corresponding to the prompt information in the electronic map when the confirmation operation aiming at certain prompt information is detected.
In one embodiment of the present application, the apparatus further comprises:
the geographic position data acquisition module is used for acquiring a plurality of geographic position data;
and the motion trail generation module is used for generating a motion trail on the electronic map according to the plurality of geographic position data.
In one embodiment of the present application, the apparatus further comprises:
and the push information receiving module is used for receiving the information which is pushed by the server and is matched with the motion trail.
For the device embodiment, since it is basically similar to the method embodiment, the description is simple, and for the relevant points, refer to the partial description of the method embodiment.
Fig. 8 is a schematic structural diagram of a mobile terminal according to an embodiment of the present application. Referring to fig. 8, the mobile terminal may be configured to implement the service data loading method provided in the foregoing embodiment. Wherein, this mobile terminal can be cell-phone, panel, wearable equipment (like intelligent wrist-watch) etc..
The mobile terminal 800 may include components such as a communication unit 810, a memory 820 including one or more computer-readable storage media, an input unit 830, a display unit 840, a sensor 850, audio circuitry 860, a WiFi (wireless fidelity) module 870, a processor 880 including one or more processing cores, and a power supply 890. Those skilled in the art will appreciate that the mobile terminal architecture shown in fig. 8 is not intended to be limiting of mobile terminals and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components. Wherein:
the communication unit 810 may be used for receiving and transmitting information or signals during a call, and the communication unit 810 may be an RF (Radio Frequency) circuit, a router, a modem, or other network communication devices. Specifically, when the communication unit 810 is an RF circuit, downlink information of a base station is received and then delivered to the one or more processors 880 for processing; in addition, data relating to uplink is transmitted to the base station. Generally, the RF circuit as a communication unit includes, but is not limited to, an antenna, at least one Amplifier, a tuner, one or more oscillators, a Subscriber Identity Module (SIM) card, a transceiver, a coupler, an LNA (Low Noise Amplifier), a duplexer, and the like. In addition, the communication unit 810 can also communicate with a network and other devices through wireless communication. The wireless communication may use any communication standard or protocol, including but not limited to GSM (Global System for Mobile communications), GPRS (General Packet Radio Service), CDMA (Code Division Multiple Access), WCDMA (Wideband Code Division Multiple Access), LTE (Long Term Evolution), email, SMS (Short Messaging Service), and the like. The memory 820 may be used to store software programs and modules, and the processor 880 executes various functional applications and data processing by operating the software programs and modules stored in the memory 820. The memory 820 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required by at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may store data (such as audio data, a phonebook, etc.) created according to the use of the mobile terminal 800, and the like. Further, the memory 820 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device. Accordingly, the memory 820 may also include a memory controller to provide the processor 880 and the input unit 830 access to the memory 820.
The input unit 830 may be used to receive input numeric or character information and generate keyboard, mouse, joystick, optical or trackball signal inputs related to user settings and function control. Optionally, the input unit 830 may include a touch-sensitive surface 831 as well as other input devices 832. The touch-sensitive surface 831, also referred to as a touch display screen or a touch pad, may collect touch operations by a user on or near the touch-sensitive surface 831 (e.g., operations by a user on or near the touch-sensitive surface 831 using a finger, a stylus, or any other suitable object or attachment) and drive the corresponding connection device according to a predefined program. Alternatively, the touch-sensitive surface 831 can include two portions, a touch detection device and a touch controller. The touch detection device detects the touch direction of a user, detects a signal brought by touch operation and transmits the signal to the touch controller; the touch controller receives touch information from the touch sensing device, converts it to touch point coordinates, and sends the touch point coordinates to the processor 880, and can receive and execute commands from the processor 880. In addition, the touch-sensitive surface 831 can be implemented using various types of resistive, capacitive, infrared, and surface acoustic waves. The input unit 830 may include other input devices 832 in addition to the touch-sensitive surface 831. Optionally, other input devices 832 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, and the like.
The display unit 840 may be used to display information input by or provided to the user and various graphical user interfaces of the mobile terminal 800, which may be made up of graphics, text, icons, video, and any combination thereof. The Display unit 840 may include a Display panel 841, and the Display panel 841 may be configured in the form of an LCD (Liquid Crystal Display), an OLED (Organic Light-Emitting Diode), or the like, as an option. Further, touch-sensitive surface 831 can overlay display panel 841 and, upon detecting a touch operation on or near touch-sensitive surface 831, communicate to processor 880 to determine the type of touch event, whereupon processor 880 can provide a corresponding visual output on display panel 841 in accordance with the type of touch event. Although in FIG. 8, touch-sensitive surface 831 and display panel 841 are implemented as two separate components to implement input and output functions, in some embodiments, touch-sensitive surface 831 may be integrated with display panel 841 to implement input and output functions.
The mobile terminal 800 may also include at least one sensor 850, such as light sensors, motion sensors, and other sensors. Alternatively, the light sensor may include an ambient light sensor that adjusts the brightness of the display panel 841 according to the brightness of ambient light, and a proximity sensor that turns off the display panel 841 and/or backlight when the mobile terminal 800 is moved to the ear. As one of the motion sensors, the gravity acceleration sensor can detect the magnitude of acceleration in each direction (generally, three axes), can detect the magnitude and direction of gravity when the mobile phone is stationary, and can be used for applications of recognizing the posture of the mobile phone (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer and tapping), and the like; as for other sensors such as a gyroscope, a barometer, a hygrometer, a thermometer, and an infrared sensor, which may be further configured on the mobile terminal 800, further description is omitted here.
Audio circuitry 860, speaker 861, microphone 862 may provide an audio interface between a user and the mobile terminal 800. The audio circuit 860 can transmit the electrical signal converted from the received audio data to the speaker 861, and the electrical signal is converted into a sound signal by the speaker 861 and output; on the other hand, the microphone 862 converts collected sound signals into electrical signals, which are received by the audio circuit 860 and converted into audio data, which are then processed by the audio data output processor 880 and transmitted to, for example, another mobile terminal via the RF circuit 810, or output to the memory 820 for further processing. The audio circuitry 860 may also include an earbud jack to provide communication of a peripheral headset with the mobile terminal 800.
To enable wireless communication, the mobile terminal may be configured with a wireless communication unit 870, and the wireless communication unit 870 may be a WiFi module. WiFi belongs to a short-range wireless transmission technology, and the mobile terminal 800 may help a user send and receive e-mails, browse web pages, access streaming media, and the like through the wireless communication unit 870, and provide the user with wireless broadband internet access. Although fig. 8 shows the wireless communication unit 870, it is understood that it does not belong to the essential constitution of the mobile terminal 800, and may be omitted entirely within the scope not changing the essence of the invention as needed.
The processor 880 is a control center of the mobile terminal 800, connects various parts of the entire mobile phone using various interfaces and lines, and performs various functions of the mobile terminal 800 and processes data by operating or executing software programs and/or modules stored in the memory 820 and calling data stored in the memory 820, thereby integrally monitoring the mobile phone. Optionally, processor 880 may include one or more processing cores; preferably, the processor 880 may integrate an application processor, which mainly handles operating systems, user interfaces, applications, etc., and a modem processor, which mainly handles wireless communications. It will be appreciated that the modem processor described above may not be integrated into processor 880.
The mobile terminal 800 further includes a power supply 890 (e.g., a battery) for supplying power to the various components, which may be logically connected to the processor 880 via a power management system that may be configured to manage charging, discharging, and power consumption. Power supply 890 may also include any component of one or more dc or ac power sources, recharging systems, power failure detection circuitry, power converters or inverters, power status indicators, and the like.
Although not shown, the mobile terminal 800 may further include a camera, a bluetooth module, etc., which will not be described herein. Specifically, in this embodiment, the display unit of the mobile terminal is a touch screen display, the mobile terminal further includes a memory, and one or more programs, where the one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs include instructions for:
receiving a motion route generation request, wherein the generation request comprises a motion graph and a motion distance;
planning a movement line with a shape matched with the movement pattern and a length matched with the movement distance in the electronic map;
displaying the movement route in an electronic map.
Optionally, the memory further includes instructions to:
converting the motion graph into a graph model;
and generating movement lines with the distribution matched with the graphic model and the length matched with the movement distance in the electronic map.
Optionally, the memory further includes instructions to:
converting the motion graph into at least two graph edges;
and calculating the side length proportion and the side included angle between the edges of the graph to obtain a graph model.
Optionally, the memory further includes instructions to:
and when some two adjacent graph edges are not connected, connecting the two adjacent graph edges by using a new graph edge.
Optionally, the graphic model comprises at least two graphic edges, and the graphic edges have side length ratios and edge included angles; the memory further includes instructions to:
distributing the movement distance to the graph edge according to the edge length proportion to obtain the edge length;
and searching at least two roads with the lengths matched with the side lengths and the road angles matched with the side included angles in the electronic map to generate a movement route.
Optionally, the memory further includes instructions to:
step S11, determining an original starting point in the electronic map;
step S12, planning a first section of path along the road from the original starting point;
step S13, judging whether the road length of the first section of path is matched with the side length of the first graph side; if yes, go to step S14, otherwise, go back to step S11;
step S14, judging whether a next graph edge exists; if yes, go to step S15, otherwise go to step S18;
step S15, searching a target road according to a target included angle by taking the tail end of the current segment path as an intermediate starting point, wherein the target included angle is an edge included angle between the edge of the current graph and the edge of the previous graph; when the search is finished, executing the step S16, and when the search is not finished, returning to execute the step S11;
step S16, planning the next section of path along the target road from the middle starting point;
step S17, judging whether the road length of the next section of path is matched with the side length of the next graph side; if yes, returning to the step S14, otherwise, returning to the step S11;
and step S18, generating a movement route by using the planned path.
Optionally, the memory further includes instructions to:
configuring a side length error for the side length to obtain a side length range;
configuring an included angle error for the side included angle to obtain a side included angle range;
and searching at least two roads with the road length within the side length range and the road angle within the side included angle range in the electronic map to generate a movement route.
Optionally, the memory further includes instructions to:
when a road is found, calculating the fluctuation distance of the road in a target direction, wherein the target direction is a direction vertical to an original direction, and the original direction is a direction to which a graphic side corresponding to the road belongs;
judging whether the fluctuation distance is smaller than or equal to a preset distance threshold value;
if yes, determining that the road is valid;
if not, determining that the road is invalid.
Optionally, the memory further includes instructions to:
when a plurality of movement routes are generated, prompt information is generated for the plurality of movement routes;
and when the confirmation operation aiming at a certain prompt message is detected, displaying the movement route corresponding to the prompt message in the electronic map.
Optionally, the memory further includes instructions to:
collecting a plurality of geographical location data;
and generating a motion trail on the electronic map according to the plurality of geographic position data.
Optionally, the memory further includes instructions to:
and receiving information which is pushed by the server and is matched with the motion trail.
Fig. 9 is a schematic structural diagram of a server according to an embodiment of the present application. The server 900 may vary widely in configuration or performance and may include one or more Central Processing Units (CPUs) 922 (e.g., one or more processors) and memory 932, one or more storage media 930 (e.g., one or more mass storage devices) storing applications 942 or data 944. Memory 932 and storage media 930 may be, for example, transitory or persistent. The program stored on the storage medium 930 may include one or more modules (not shown), each of which may include a series of instruction operations for the server. Still further, a central processor 922 may be provided in communication with the storage medium 930 to execute a series of instruction operations in the storage medium 930 on the server 900.
The server 900 may also include one or more power supplies 926, one or more wired or wireless network interfaces 950, one or more input-output interfaces 958, one or more keyboards 956, and/or one or more operating systems 941, such as Windows Server, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc. Central processor 922 may execute the following instructions on server 900:
receiving a motion route generation request, wherein the generation request comprises a motion graph and a motion distance;
and planning a movement line with a shape matched with the movement pattern and a length matched with the movement distance in the electronic map.
Optionally, the one or more modules may have the following functions:
converting the motion graph into a graph model;
and generating movement lines with the distribution matched with the graphic model and the length matched with the movement distance in the electronic map.
Optionally, the one or more modules may have the following functions:
converting the motion graph into at least two graph edges;
and calculating the side length proportion and the side included angle between the edges of the graph to obtain a graph model.
Optionally, the one or more modules may have the following functions:
and when some two adjacent graph edges are not connected, connecting the two adjacent graph edges by using a new graph edge.
Optionally, the graphic model comprises at least two graphic edges, and the graphic edges have side length ratios and edge included angles; the one or more modules may have the following functionality:
distributing the movement distance to the graph edge according to the edge length proportion to obtain the edge length;
and searching at least two roads with the lengths matched with the side lengths and the road angles matched with the side included angles in the electronic map to generate a movement route.
Optionally, the memory further includes instructions to:
step S11, determining an original starting point in the electronic map;
step S12, planning a first section of path along the road from the original starting point;
step S13, judging whether the road length of the first section of path is matched with the side length of the first graph side; if yes, go to step S14, otherwise, go back to step S11;
step S14, judging whether a next graph edge exists; if yes, go to step S15, otherwise go to step S18;
step S15, searching a target road according to a target included angle by taking the tail end of the current segment path as an intermediate starting point, wherein the target included angle is an edge included angle between the edge of the current graph and the edge of the previous graph; when the search is finished, executing the step S16, and when the search is not finished, returning to execute the step S11;
step S16, planning the next section of path along the target road from the middle starting point;
step S17, judging whether the road length of the next section of path is matched with the side length of the next graph side; if yes, returning to the step S14, otherwise, returning to the step S11;
and step S18, generating a movement route by using the planned path.
Optionally, the one or more modules may have the following functions:
configuring a side length error for the side length to obtain a side length range;
configuring an included angle error for the side included angle to obtain a side included angle range;
and searching at least two roads with the road length within the side length range and the road angle within the side included angle range in the electronic map to generate a movement route.
Optionally, the one or more modules may have the following functions:
when a road is found, calculating the fluctuation distance of the road in a target direction, wherein the target direction is a direction vertical to an original direction, and the original direction is a direction to which a graphic side corresponding to the road belongs;
judging whether the fluctuation distance is smaller than or equal to a preset distance threshold value;
if yes, determining that the road is valid;
if not, determining that the road is invalid.
Optionally, the memory further includes instructions to:
when a plurality of movement routes are generated, prompt information is generated for the plurality of movement routes;
and when the confirmation operation aiming at a certain prompt message is detected, displaying the movement route corresponding to the prompt message in the electronic map.
Optionally, the one or more modules may have the following functions:
and returning the motion route to the mobile terminal.
Optionally, the one or more modules may have the following functions:
receiving a motion trail generated by the mobile terminal based on the collected multiple geographical position data;
searching information matched with the motion trail;
and pushing the information to the mobile terminal.
The embodiments in the present specification are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other.
As will be appreciated by one of skill in the art, embodiments of the present application may be provided as a method, apparatus, or computer program product. Accordingly, embodiments of the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
In a typical configuration, the computer device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory. The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium. Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include non-transitory computer readable media (fransitory media), such as modulated data signals and carrier waves.
Embodiments of the present application are described with reference to flowchart illustrations and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing terminal to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing terminal to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing terminal to cause a series of operational steps to be performed on the computer or other programmable terminal to produce a computer implemented process such that the instructions which execute on the computer or other programmable terminal provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present application have been described, additional variations and modifications of these embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including the preferred embodiment and all such alterations and modifications as fall within the true scope of the embodiments of the application.
Finally, it should also be noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or terminal that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or terminal. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or terminal that comprises the element.
The detailed description is given above to a method for generating a movement route, a device for generating a movement route, a mobile terminal and a server provided by the present application, and specific examples are applied herein to explain the principle and the implementation of the present application, and the description of the above embodiments is only used to help understand the method and the core idea of the present application; meanwhile, for a person skilled in the art, according to the idea of the present application, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present application.

Claims (17)

1. A method for generating a movement route, comprising:
receiving a motion route generation request, wherein the generation request comprises a motion graph and a motion distance;
planning at least one movement route which is matched with the movement graph in shape and the movement distance in length in an electronic map;
displaying the movement route in an electronic map;
wherein the planning of at least one motion route with a shape matched with the motion graph and a length matched with the motion distance in the electronic map comprises:
acquiring the edge length and the edge included angle of the motion graph;
and determining at least one motion route matched with the motion pattern by sequentially adopting the edge length and the edge included angle.
2. The method according to claim 1, wherein the step of planning at least one movement route with a shape matching the movement pattern and a length matching the movement distance in the electronic map comprises:
converting the motion graph into a graph model;
and generating a movement route which is matched with the graphic model in distribution and matched with the movement distance in length in the electronic map.
3. The method of claim 2, wherein the step of converting the motion map into a graphical model comprises:
converting the motion graph into at least two graph edges;
and calculating the side length proportion and the side included angle between the edges of the graph to obtain a graph model.
4. The method as claimed in claim 3, wherein before the step of calculating the side length ratio and the side angle between the graph sides to obtain the graph model, the method further comprises:
and when some two adjacent graph edges are not connected, connecting the two adjacent graph edges by using a new graph edge.
5. The method of claim 2, wherein the graphical model comprises at least two graphical edges having a side length ratio, an edge included angle, between the graphical edges;
the step of generating a movement route with a shape matched with the graphic model and a length matched with the movement distance in the electronic map comprises the following steps:
distributing the movement distance to the graph edge according to the edge length proportion to obtain the edge length;
and searching at least two roads with the lengths matched with the side lengths and the road angles matched with the side included angles in the electronic map to generate a movement route.
6. The method as claimed in claim 5, wherein the step of searching at least two roads with a length matching with the side length and a road angle matching with the side included angle in the electronic map to generate the movement route comprises:
step S11, determining an original starting point in the electronic map;
step S12, planning a first section of path along the road from the original starting point;
step S13, judging whether the road length of the first section of path is matched with the side length of the first graph side; if yes, go to step S14, otherwise, go back to step S11;
step S14, judging whether a next graph edge exists; if yes, go to step S15, otherwise go to step S18;
step S15, searching a target road according to a target included angle by taking the tail end of the current segment path as an intermediate starting point, wherein the target included angle is an edge included angle between the edge of the current graph and the edge of the previous graph; when the search is finished, executing the step S16, and when the search is not finished, returning to execute the step S11;
step S16, planning the next section of path along the target road from the middle starting point;
step S17, judging whether the road length of the next section of path is matched with the side length of the next graph side; if yes, returning to the step S14, otherwise, returning to the step S11;
and step S18, generating a movement route by using the planned path.
7. The method as claimed in claim 5 or 6, wherein the step of searching at least two roads with a length matching with the side length and a road angle matching with the side included angle in the electronic map to generate the movement route comprises:
configuring a side length error for the side length to obtain a side length range;
configuring an included angle error for the side included angle to obtain a side included angle range;
and searching at least two roads with the road length within the side length range and the road angle within the side included angle range in the electronic map to generate a movement route.
8. The method as claimed in claim 5 or 6, wherein the step of searching at least two roads with a length matching with the side length and a road angle matching with the side included angle in the electronic map to generate the movement route comprises:
when a road is found, calculating the fluctuation distance of the road in a target direction, wherein the target direction is a direction vertical to an original direction, and the original direction is a direction to which a graphic side corresponding to the road belongs;
judging whether the fluctuation distance is smaller than or equal to a preset distance threshold value;
if yes, determining that the road is valid;
if not, determining that the road is invalid.
9. The method according to any one of claims 1-6, wherein the step of displaying the movement route in an electronic map comprises:
when a plurality of movement routes are generated, prompt information is generated for the plurality of movement routes;
and when the confirmation operation aiming at a certain prompt message is detected, displaying the movement route corresponding to the prompt message in the electronic map.
10. The method of any one of claims 1-6, further comprising:
collecting a plurality of geographical location data;
and generating a motion trail on the electronic map according to the plurality of geographic position data.
11. The method of claim 10, further comprising:
and receiving information which is pushed by the server and is matched with the motion trail.
12. An apparatus for generating a movement route, comprising:
the generating request receiving module is used for receiving a generating request of a movement route, wherein the generating request comprises a movement graph and a movement distance;
the movement route planning module is used for planning at least one movement route which is matched with the movement graph in shape and the movement distance in length in an electronic map;
the movement route display module is used for displaying the movement route in an electronic map;
wherein the movement route planning module is specifically configured to:
acquiring the edge length and the edge included angle of the motion graph;
and determining at least one motion route matched with the motion pattern by sequentially adopting the edge length and the edge included angle.
13. The apparatus of claim 12, wherein the motion profile planning module comprises:
the graphic model conversion sub-module is used for converting the motion graphics into a graphic model;
and the movement route matching submodule is used for generating a movement route which is distributed and matched with the graphic model and the movement distance.
14. The apparatus of claim 13, wherein the graphical model comprises at least two graphical edges having a side length ratio, an edge included angle, between the graphical edges;
the movement route matching sub-module includes:
the side length calculating unit is used for distributing the movement distance to the graph side according to the side length proportion to obtain the side length;
and the road matching unit is used for searching at least two roads with the lengths matched with the side lengths and the road angles matched with the side included angles in the electronic map to generate a movement route.
15. The apparatus of claim 14, wherein the road matching unit comprises:
an original starting point determining subunit, configured to determine an original starting point in the electronic map;
a first section path planning subunit, configured to plan a first section path along the road from the original starting point;
the first edge length matching subunit is used for judging whether the road length of the first section of path is matched with the edge length of the first graph edge; if yes, calling the next graph edge to judge the subunit, and if not, returning to calling the original starting point to determine the subunit;
a next graph edge judging subunit, configured to judge whether there is a next graph edge; if yes, calling a target road searching subunit, and if not, calling a route generating subunit;
the target road searching subunit is used for searching a target road according to a target included angle by taking the tail end of the current segment path as an intermediate starting point, wherein the target included angle is an edge included angle between the current graph edge and the previous graph edge; when the path is found out, the next section of path planning subunit is called, and when the path is not found out, the original starting point determining subunit is returned to be called;
a next section of path planning subunit, configured to plan a next section of path along the target road from the intermediate starting point;
the second side length matching subunit is used for judging whether the road length of the next section of path is matched with the side length of the next graph side or not; if yes, returning to call the next graph edge judgment subunit, and if not, returning to call the original starting point to determine the subunit;
and the route generating subunit is used for generating the motion route by adopting the planned route.
16. A mobile terminal, comprising:
one or more processors;
a memory; and
one or more programs, wherein the one or more programs are stored in the memory and configured for execution by the one or more processors to include instructions for:
receiving a motion route generation request, wherein the generation request comprises a motion graph and a motion distance;
planning at least one movement route which is matched with the movement graph in shape and the movement distance in length in an electronic map;
displaying the movement route in an electronic map;
wherein the planning of at least one motion route with a shape matched with the motion graph and a length matched with the motion distance in the electronic map comprises:
acquiring the edge length and the edge included angle of the motion graph;
and determining at least one motion route matched with the motion pattern by sequentially adopting the edge length and the edge included angle.
17. A server, comprising:
one or more processors;
a memory; and
one or more modules stored in the memory and configured to be executed by the one or more processors, wherein the one or more modules have functionality to: when a service request sent by a terminal is received, searching a service object according to the service request, wherein the terminal is provided with a user identifier, and the service object comprises service data and one or more candidate interactive information;
receiving a motion route generation request, wherein the generation request comprises a motion graph and a motion distance;
planning at least one movement route which is matched with the movement graph in shape and the movement distance in length in an electronic map;
wherein the planning of at least one motion route with a shape matched with the motion graph and a length matched with the motion distance in the electronic map comprises:
acquiring the edge length and the edge included angle of the motion graph;
and determining at least one motion route matched with the motion pattern by sequentially adopting the edge length and the edge included angle.
CN201611042147.2A 2016-11-11 2016-11-11 Motion route generation method and device, mobile terminal and server Active CN108074009B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611042147.2A CN108074009B (en) 2016-11-11 2016-11-11 Motion route generation method and device, mobile terminal and server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611042147.2A CN108074009B (en) 2016-11-11 2016-11-11 Motion route generation method and device, mobile terminal and server

Publications (2)

Publication Number Publication Date
CN108074009A CN108074009A (en) 2018-05-25
CN108074009B true CN108074009B (en) 2022-03-22

Family

ID=62161495

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611042147.2A Active CN108074009B (en) 2016-11-11 2016-11-11 Motion route generation method and device, mobile terminal and server

Country Status (1)

Country Link
CN (1) CN108074009B (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111915047A (en) * 2019-05-09 2020-11-10 阿里巴巴集团控股有限公司 Movement route determining method and device
CN110926486B (en) * 2019-11-26 2021-06-11 百度在线网络技术(北京)有限公司 Route determining method, device, equipment and computer storage medium
CN114323048A (en) * 2021-12-31 2022-04-12 深圳市大数据研究院 Method for constructing interactive running path
CN114323049A (en) * 2021-12-31 2022-04-12 深圳市大数据研究院 Running interaction method
CN114322992A (en) * 2022-01-18 2022-04-12 武汉元科技术有限公司 Motion path planning method, motion path generation device, motion path planning equipment and storage medium
CN117664159A (en) * 2022-08-24 2024-03-08 华为技术有限公司 Path planning method and device
CN117565065B (en) * 2023-03-28 2024-04-19 仲恺农业工程学院 Famous tea picking robot

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102012230A (en) * 2010-08-27 2011-04-13 杭州妙影微电子有限公司 Road live view navigation method
CN103512581A (en) * 2012-06-28 2014-01-15 北京搜狗科技发展有限公司 Path planning method and device
CN103575281A (en) * 2012-07-27 2014-02-12 比亚迪股份有限公司 Navigation group member displaying method and displaying apparatus thereof
CN103596263A (en) * 2013-09-27 2014-02-19 北京邮电大学 Method and device for position acquisition in indoor positioning
US8880346B2 (en) * 2012-08-23 2014-11-04 Mitac International Corp. Navigation device and control method thereof
CN104354656A (en) * 2014-10-20 2015-02-18 同济大学 Obstacle detection and garage position distinguishing method of intelligent parking system and implement system thereof
CN105547311A (en) * 2015-12-08 2016-05-04 深圳天珑无线科技有限公司 Route planning method, mobile terminal, and system
CN105989196A (en) * 2015-02-27 2016-10-05 中国移动通信集团公司 Method and system for carrying out social contact on the basis of movement information acquisition
CN106017493A (en) * 2016-05-16 2016-10-12 乐视控股(北京)有限公司 Exercise recording method and device

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102012230A (en) * 2010-08-27 2011-04-13 杭州妙影微电子有限公司 Road live view navigation method
CN103512581A (en) * 2012-06-28 2014-01-15 北京搜狗科技发展有限公司 Path planning method and device
CN103575281A (en) * 2012-07-27 2014-02-12 比亚迪股份有限公司 Navigation group member displaying method and displaying apparatus thereof
US8880346B2 (en) * 2012-08-23 2014-11-04 Mitac International Corp. Navigation device and control method thereof
CN103596263A (en) * 2013-09-27 2014-02-19 北京邮电大学 Method and device for position acquisition in indoor positioning
CN104354656A (en) * 2014-10-20 2015-02-18 同济大学 Obstacle detection and garage position distinguishing method of intelligent parking system and implement system thereof
CN105989196A (en) * 2015-02-27 2016-10-05 中国移动通信集团公司 Method and system for carrying out social contact on the basis of movement information acquisition
CN105547311A (en) * 2015-12-08 2016-05-04 深圳天珑无线科技有限公司 Route planning method, mobile terminal, and system
CN106017493A (en) * 2016-05-16 2016-10-12 乐视控股(北京)有限公司 Exercise recording method and device

Also Published As

Publication number Publication date
CN108074009A (en) 2018-05-25

Similar Documents

Publication Publication Date Title
CN108074009B (en) Motion route generation method and device, mobile terminal and server
US9915548B2 (en) Method and apparatus for providing a contextual menu in a map display
US10237692B2 (en) Systems, devices, and methods for sharing geographic location
US8825377B2 (en) Mobile navigation to a moving destination
CN109556621B (en) Route planning method and related equipment
Emmanouilidis et al. Mobile guides: Taxonomy of architectures, context awareness, technologies and applications
CN105740291B (en) Map interface display method and device
KR102027899B1 (en) Method and apparatus for providing information using messenger
US10455360B2 (en) Real-time path suggestion for a location-enabled mobile device
KR101752825B1 (en) Location-based searching
CN109556612B (en) Navigation information processing method, device, server, terminal and storage medium
US9677900B2 (en) Method and apparatus for providing route guidance using reference points
WO2014004529A1 (en) Adaptive clustering of locations
CN106575142A (en) Multi-device sensor subsystem joint optimization
CN104112213A (en) Method and apparatus of recommendation information
US20200088533A1 (en) Navigation Method, Navigation Device, and Storage Medium
CN105008858A (en) User-in-the-loop architecture for indoor positioning
CN103069370A (en) Methods, apparatuses and computer program products for automatically generating suggested information layers in augmented reality
US20150002539A1 (en) Methods and apparatuses for displaying perspective street view map
US8751426B2 (en) Apparatus and method for generating context-aware information using local service information
CN106126160B (en) A kind of effect adjusting method and user terminal
CN107532913B (en) Navigation method and equipment for navigation
CN104770054A (en) Location-aware management of lists of uniform resource locators (URL) for mobile devices
CN105608095B (en) Multimedia playing method and device and mobile terminal
CN106980654B (en) Road condition updating method, device and computer equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant