CN107437122B - 确定商家配送范围的方法及装置 - Google Patents
确定商家配送范围的方法及装置 Download PDFInfo
- Publication number
- CN107437122B CN107437122B CN201610363612.6A CN201610363612A CN107437122B CN 107437122 B CN107437122 B CN 107437122B CN 201610363612 A CN201610363612 A CN 201610363612A CN 107437122 B CN107437122 B CN 107437122B
- Authority
- CN
- China
- Prior art keywords
- node
- distance
- businessman
- dispatching
- datum mark
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 230000015572 biosynthetic process Effects 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 20
- 238000010586 diagram Methods 0.000 description 17
- 230000015654 memory Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000012466 permeate Substances 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- Development Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Theoretical Computer Science (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Game Theory and Decision Science (AREA)
- Image Generation (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Vehicle Cleaning, Maintenance, Repair, Refitting, And Outriggers (AREA)
Abstract
本发明实施例提供一种确定商家配送范围的方法及装置,所述方法包括:以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的位于道路上的多个道路基准点;根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围。所述方法避免了确定商家配送范围的人工干预过程,减少了由于人的主观性而带来的配送范围确定的不科学性,由于整个过程无需人工干预,显著提高了配送范围的确定效率;所述方法以道路作为划分的边界,提高了配送范围划分的合理性。
Description
技术领域
本发明涉及计算机应用领域,具体而言,涉及一种确定商家配送范围的方法及装置。
背景技术
当前确定商家配送范围的方式,主要是把收集到的地理位置分割成多个小块区域,对于每个小块区域,用该区域中心点的经纬度进行编码,得到一个哈希码群,随后由商家选择希望配送的区域,将选中的区域对应的哈希码构成一个新哈希码群,从而确定商家的配送范围。这种方式中,商家的选择过程存在较大的主观性,效率低,而且人工干预过程主观性大,影响配送范围确定的科学性,并且最后得到的配送区域较为破碎,不以道路等要素作为配送区域划分的边界,会出现将一栋建筑划分在两个配送区域等现象。
发明内容
有鉴于此,本发明实施例的目的在于提供一种确定商家配送范围的方法及装置,以解决上述问题。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种确定商家配送范围的方法,所述方法包括:以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的位于道路上的多个道路基准点;根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围。
第二方面,本发明实施例提供了一种确定商家配送范围的装置,所述装置包括:配送基准点确定模块,用于以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;道路基准点确定模块,用于根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的位于道路上的多个道路基准点;配送范围确定模块,用于根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围。
与现有技术相比,本发明实施例提供的一种确定商家配送范围的方法,整个过程避免了确定商家配送范围的人工干预过程,减少了由于人的主观性而带来的配送范围确定的不科学性,由于整个过程无需人工干预,显著提高了配送范围的确定效率;通过根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的位于道路上的多个道路基准点,以及根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围的方式,使配送范围以道路作为划分的边界,不存在一栋建筑被划分为两个不同配送范围等情况,提高了配送范围划分的合理性。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明实施例提供的用户终端与服务器进行交互的示意图。
图2是本发明实施例提供的服务器的结构示意图。
图3是本发明第一实施例提供的一种确定商家配送范围的方法流程图。
图4是商家配送范围的示意图。
图5是本发明第二实施例提供的一种确定商家配送范围的方法流程图。
图6是本发明第二实施例提供的确定道路基准点的原理示意图。
图7是本发明第三实施例提供的一种确定商家配送范围的方法流程图。
图8是本发明第四实施例提供的一种确定商家配送范围的方法流程图。
图9是本发明第五实施例提供的一种确定商家配送范围的方法流程图。
图10是本发明第六实施例提供的一种确定商家配送范围的方法流程图。
图11是本发明第七实施例提供的一种确定商家配送范围的方法流程图。
图12是本发明第八施例提供的一种确定商家配送范围的装置结构框图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
图1示出了本发明实施例提供的服务器200与用户终端100进行交互的示意图。所述服务器200通过网络300与一个或多个用户终端100进行通信连接,以进行数据通信或交互。所述服务器200可以是网络服务器、数据库服务器等。所述用户终端100可以是个人电脑(personal computer,PC)、平板电脑、智能手机、个人数字助理(personal digitalassistant,PDA)、车载设备、穿戴设备等。
如图2所示,是所述服务器200的方框示意图。所述服务器200包括存储器201、处理器202以及网络模块203。
存储器201可用于存储软件程序以及模块,如本发明实施例中的确定商家配送范围的方法及装置,处理器202通过运行存储在存储器201内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现本发明实施例中的确定商家配送范围的方法。存储器201可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。进一步地,上述存储器201内的软件程序以及模块还可包括:操作***221以及服务模块222。其中操作***221,例如可为LINUX、UNIX、WINDOWS,其可包括各种用于管理***任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通讯,从而提供其他软件组件的运行环境。服务模块222运行在操作***221的基础上,并通过操作***221的网络服务监听来自网络的请求,根据请求完成相应的数据处理,并返回处理结果给客户端。也就是说,服务模块222用于向客户端提供网络服务。
网络模块203用于接收以及发送网络信号。上述网络信号可包括无线信号或者有线信号。
可以理解,图2所示的结构仅为示意,服务器200还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。
于本发明实施例中,用户终端100中安装有客户端,该客户端可以是第三方应用软件,与服务器(Server)端相对应,共同遵循同一套数据协议,使得服务端跟客户端能够互相解析出对方的数据。
图3示出了本发明第一实施例提供的一种确定商家配送范围的方法的流程图,请参阅图3,本实施例描述的是服务器的处理流程,所述方法包括:
步骤S301,以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;
所述多个配送方向以商家在地图上的点为起点向四周发散。其中,可以根据预设的配送方向个数确定所述多个配送方向。例如,假设预设的配送方向个数为n,则将360度进行均分,得到所述多个配送方向,即相邻两个配送方向之间的夹角为360/n度。
也可以根据预设的配送距离以及预设弧度阈值确定所述多个配送方向。例如,假设配送距离为r,以所述商家在地图上的位置为圆心,以所述配送距离r为半径,则对应的圆的周长为2*π*r,假设预定弧长阈值为m,将所述2*π*r每隔m划分出一个点,将圆心与所述点连接起来形成配送方向。
当然,可以理解的时,确定所述配送方向的实施方法有多种,并不局限于上述实施方式。
当确定所述配送方向后,获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点,也就是说每个配送基准点都对应的在一个配送方向上,且每个配送点与商家之家的距离都为第一预设距离。
优选的,所述第一预设距离大于由商家预设的配送距离。商家预设的配送距离也是以商家为起点的。例如,商家预设的配送距离为3km,则所述第一预设距离可以在3km的基础上增加一定长度,例如200m,即将3200m作为第一预设距离。
假设所述预设配送方向的个数为4,在一种实施方式中,所述配送方向可以为正东,正西,正北,正南,所述配送基准点的个数也对应为4个,分别位于所述商家的正东,正西,正北,正南方向上,距离所述商家3200m的位置上。
步骤S302,根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的位于道路上的多个道路基准点;
可以理解的是,通过步骤S301获得的配送基准点可能不在道路上,可能会出现配送范围不是以道路为边界线的情况,因此需要确定与所述多个配送基准点分别对应的多个道路基准点,使得配送范围是以道路为边界进行划分的。
其中,根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的多个道路基准点的实施方式有多种,例如可以根据商家与当前配送基准点的第一导航距离和第一直线距离,商家与第二基准点的第二导航距离和第二直线距离来判断当前配送基准点是否在道路上。这里所说的第二基准点指的是当前配送基准点沿所述当前配送基准点所在的所述配送方向,向所述商家移动第二预设距离后所达到的点。其中,可以理解的是,所述第二预设距离的值可以取5m、10m等较小的值,使得根据所述当前基准点获得的第二基准点更容易落在最接近的道路上。
如果第一导航距离与所述第二导航距离的导航距离差以及第一直线距离与所述第二直线距离的直线距离差之间的比值大于第一阈值,将所述第二基准点的位置作为道路基准点的位置,否则,将所述第二基准点作为所述当前配送基准点再进行上述运算直到确定道路基准点的位置。
步骤S303,根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围。
服务器可以根据道路基准点的位置信息(例如经纬度)获取预先存储的服务器中的相邻两个道路基准点之间的导航路径,也可以向第三方导航服务提供商获取。所获得的导航路径包括位于其上的多个节点,这些节点连接起来构成了导航路径,可以理解的是拐点处或环型道路等比较复杂的道路的导航路径上的节点比直线型道路的导航路径上的节点多。
服务器可以直接将相邻两个道路基准点之间的导航路径连接所形成的封闭区域确定为商家的配送范围,也可以将相邻两个道路基准点之间的导航路径上节点的数量进行调整(例如,压缩节点)后形成的封闭区域确定为商家的配送范围。
服务器可以将道路基准点以及相邻两个道路基准点之间的导航路径上的节点作为商家的配送范围信息发送到客户端,以使所述客户端收到后,分别将相邻节点连接形成一个封闭多边形,并在地图上显示。采用这种方式能够简单、直观的展现商家的配送范围,提升用户体验。
请参阅图4,图4中黑色的点为客户端接收到的多个道路基准点以及相邻两个道路基准点之间的导航路径上的节点,客户端将相邻的黑色的点相连形成的封闭多边形,即所述商家的配送范围。
其中,将所述多个道路基准点以及相邻两个道路基准点之间的导航路径上的节点发送到客户端,可以是指将所述多个道路基准点以及节点对应的经纬度坐标发送到客户端,客户端再将各节点映射到地图上,也可以是将多个道路基准点以及节点在地图上的位置坐标发送给客户端。
可以理解的是,服务器也可以将封闭多边形,也就是商家的配送范围,绘制在地图上以图像传输的方式直接发给客户端。
服务器将道路基准点及导航路径上的节点发送到客户端的数据量小于发送图形的数据量,更加有利于传输,并且由客户端进行绘制,用户可以通过调整各节点的位置对***推荐的配送范围进行自定义,更符合用户的需求。
本发明实施例提供的一种确定商家配送范围的方法,整个过程避免了确定商家配送范围的人工干预过程,减少了由于人的主观性而带来的配送范围确定的不科学性,由于整个过程无需人工干预,显著提高了配送范围的确定效率;通过根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的位于道路上的多个道路基准点,以及根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围的方式,使配送范围以道路作为划分的边界,不存在一栋建筑被划分为两个不同配送范围等情况,提高了配送范围划分的合理性。
图5示出了本发明第二实施例提供的一种确定商家配送范围的方法的流程图,请参阅图5,本实施例描述的是服务器的处理流程,所述方法包括:
步骤S401,以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;
步骤S402,计算所述商家与当前配送基准点之间的第一导航距离、所述商家与第二基准点之间的第二导航距离、以及第一导航距离与所述第二导航距离的导航距离差,第二基准点指的是当前配送基准点沿所述当前配送基准点所在的所述配送方向,向所述商家移动第二预设距离后所达到的点;
例如,假设在第一配送方向上的配送基准点距离商家的距离为3200m,假设所述第二预设距离为10m,则第二基准点的位置为在第一配送方向上距离商家的距离为3190m的地方。
步骤S403,计算所述商家与当前配送基准点之间的第一直线距离、所述商家与第二基准点之间的第二直线距离、以及第一直线距离与所述第二直线距离的直线距离差;
步骤S404,判断所述导航距离差以及所述直线距离差的比值是否大于第一阈值,
如果大于所述第一阈值,则执行步骤S406至S407,否则执行步骤S405;
步骤S405,将所述第二基准点作为所述当前配送基准点,返回步骤S402。
步骤S406,将所述第二基准点作为道路基准点;
例如,假设所述商家与当前配送基准点之间的第一导航距离为a1、所述商家与第二基准点之间的第二导航距离我a2、第一导航距离与所述第二导航距离的导航距离差为|a1-a2|,所述商家与当前配送基准点之间的第一直线距离b1、所述商家与第二基准点之间的第二直线距离b2、以及第一直线距离与所述第二直线距离的直线距离差|b1-b2|,此时判断|a1-a2|/|b1-b2|的值是否大于第一阈值,如果大于,则所述当前配送基准点则为道路基准点,否则以所述第二基准点作为当前配送基准点,继续计算,直到找到所述配送方向上的道路基准点。
可以理解的是,例如,请参阅图6,当出现|a1-a2|/|b1-b2|的值大于第一阈值时,有可能是出现了当前配送基准点到达第二基准点根据导航路径需要去绕路才能到达第二基准点的情况,因此可以判断所述第二基准点在路上,因此所述第二基准点为道路基准点。
步骤S407,根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围。
图7示出了本发明第三实施例提供的一种确定商家配送范围的方法的流程图,请参阅图7,本实施例描述的是服务器的处理流程,所述方法包括:
步骤S501,以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;
步骤S502,根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的多个道路基准点;
步骤S503,将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;
步骤S504,获取所述封闭多边形上的节点,形成第一节点集合;
例如,可以通过第三方软件的api接口获取所述封闭多边形上的节点,例如高德导航提供的api接口。其中,获取到的所述封闭多边形上的节点包括所述多个道路基准点,也就是说,所述第一节点集合中包括了所述多个道路基准点,在后续的移除冗余节点的过程中,也有可能将所述多个道路基准点从第一集合中移除。
步骤S505,根据以所述第一节点集合中的节点的前一节点为起点,以所述第一节点集合中的节点为终点形成的第一向量,以及以所述第一节点集合中的节点为起点,以其下一节点为终点形成的第二向量之间的向量夹角,依次判定所述第一节点集合中的节点是否为冗余节点,如果为冗余节点,则将所述冗余节点从第一节点集合中移除;
其中,所述依次判定所述第一节点集合中的节点是否为冗余节点,具体包括:将所述第一节点集合中的一个节点作为当前节点,以所述当前节点的前一节点为起点、所述当前节点为终点形成第一向量,以所述当前节点为起点、所述当前节点的下一节点形成第二向量,计算所述第一向量与所述第二向量之间的向量夹角;判断所述向量夹角是否小于第二阈值;如果是,则确定所述当前节点为冗余节点。
例如,假设当前节点为p1,p1的前一节点为p0,p1的下一节点为p2,则所述第一向量为p0p1,所述第二向量为p1p2,则如果p0p1与p1p2之间的向量夹角小于第二阈值,假设为10度,则当前节点p1点为冗余节点。也就是说,如果当前节点p1与其前一个节点p0、下一个节点p2近似在一条直线上,那么就可以认为当前节点p1为冗余节点。
步骤S506,重复执行步骤S505直到所述第一节点集合中的节点全部判定完毕,剩余的节点所形成的多边形为商家的配送范围。
将剩余的节点发送到客户端,以使所述客户端收到后,分别将相邻的两个节点相连,形成一个封闭多边形显示在地图对应的位置上。
本实施例通过去掉冗余节点的方式,使得发送到客户端的节点变少了,进一步提高了客户端绘制封闭多边形的速度,用户体验进一步提升;同时,由于去掉了第一节点集合中的冗余节点,使得存储在服务器的节点数减少,减轻了服务器的存储压力。
图8示出了本发明第四实施例提供的一种确定商家配送范围的方法的流程图,请参阅图8,本实施例描述的是服务器的处理流程,所述方法包括:
步骤S601,以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;
步骤S602,根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的多个道路基准点;
步骤S603,将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;
步骤S604,获取所述封闭多边形上的节点,形成第二节点集合;
其中,获取到的所述封闭多边形上的节点包括所述多个道路基准点,也就是说,所述第二节点集合中包括了所述多个道路基准点,在后续的将冗余节点进行合并的过程中,也有可能将所述多个道路基准点从第二节点集合中移除。
步骤S605,根据相邻两个节点之间的距离,依次判定所述第二节点集合中相邻的两个节点是否可以合并为新的节点,如果是,则将相邻的两个节点的平均位置作为新的节点,将所述新的节点加入第二节点集合中,将所述相邻的两个节点从所述第二节点集合中移除。
所述判定所述第二节点集合中相邻的两个节点是否可以合并为新的节点,具体包括:所述第二节点集合中相邻的两个节点之间的直线距离是否小于第三阈值,如果是,则确定所述相邻的两个节点可以合并为新的节点。
可以理解的是,在道路拐角处,可能会出现大量的节点,这些节点对于确定配送范围的封闭多边形而言是冗余的,因此需要将这些冗余的节点进行合并,形成新的节点来代替,起到对所述第二节点集合的节点实现去冗余对效果。
例如:假设相邻两个点为p0和p1,其中,p0点的坐标为(x0,y0),p1点的坐标为(x1,y1),首先获取p0和p1的直线距离p0p1,判定p0p1是否小于第三阈值,如果小于,则p0和p1可以融合为一个新的节点,假设为p0’,此时p0’的坐标为((x0+x1)/2,(y0+y1)/2),此时,假设p1在第二节点集合中的下一节点为p2,将p0和p1从第二节点集合中移除,将p0’放入第二节点集合中,此时将p0’与p2作为相邻的两个节点,再次进行判定是否需要进行合并,依次类推,直到将所述第二节点集合中的点全部判定完毕。
可以理解的是,对第二节点集合中的节点,通过合并冗余节点形成新的节点的方式,使得发送到客户端的节点变少了,进一步提高了客户端绘制封闭多边形的速度,用户体验进一步提升;同时,由于去掉了第一节点集合中的冗余节点,使得存储在服务器的节点数减少,减轻了服务器的存储压力。
步骤S606,重复执行步骤S605直到所述第二节点集合中的节点全部判定完毕,剩余的节点所形成的多边形为商家的配送范围。
将剩余的节点发送到客户端,以使所述客户端收到后,分别将相邻的两个节点相连,形成一个封闭多边形显示在地图对应的位置上。
本实施例通过合并冗余节点形成新的节点的方式,使得发送到客户端的更新后的道路基准点变少了,进一步提高了客户端绘制封闭多边形的速度,用户体验进一步提升;同时,由于去掉了第一节点集合中的冗余节点,使得存储在服务器的节点数减少,减轻了服务器的存储压力。
图9示出了本发明第五实施例提供的一种确定商家配送范围的方法的流程图,请参阅图9,本实施例描述的是服务器的处理流程,所述方法包括:
步骤S701,以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;
步骤S702,根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的多个道路基准点;
步骤S703,将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;
步骤S704,获取所述封闭多边形上的节点,形成第三节点集合;
步骤S705,分别计算第三节点集合中的当前节点与所述当前节点之后的多个连续的节点中每个节点之间的距离,所述多个连续的节点包括所述当前节点的下一节点;
在第一次计算时可以取第三节点集合中的任意节点作为当前节点。
步骤S706,判断是否出现距离值的变化从增大变为减少再变为增大的情况,如果是,将距离值的变化由减少变为增大对应的第一个节点记为最小节点,将距离最大值对应的节点记为最大节点,所述最小节点到所述当前节点之间的距离记为最小距离,所述最大节点到所述当前节点之间的距离记为最大距离,判断是否最大距离与最小距离的比值大于第四阈值和/或最小距离小于第五阈值;
如果出现距离值的变化从增大变为减少再变为增大、且最大距离与最小距离的比值大于第四阈值和/或最小距离小于第五阈值的情况,执行步骤S707,否则执行步骤S710;
步骤S707,将所述当前节点到所述最小节点之间的所有节点从所述第三节点集合中移除;
步骤S708,判断所述第三节点集合中的节点是否全部判定完毕;如果是,则执行步骤S712,否则,执行步骤S709并返回步骤S705;
步骤S710,判断所述第三节点集合中的节点是否全部判定完毕;如果是,则执行步骤S712,否则,执行步骤S711并返回步骤S705。
步骤S712,剩余的节点所形成的多边形为商家的配送范围。
例如,假设当前节点为p0,所述当前节点p0之后的多个连续的节点分别为p1,p2,p3,p4,其中,p1是p0的下一个相邻节点、p2是p1的下一个相邻节点,p3是p2的下一个相邻节点、p4是p3的下一个相邻节点。所述当前节点p0与p1,p2,p3,p4之间的距离分别为p0p1,p0p2,p0p3,p0p4,假设此时p0p2大于p0p1,p0p3小于p0p2,p0p4大于p0p3,p0p2大于p0p4,则此时出现了距离值的变化从增大变为减少再变为增大的情况,由于距离值的变化由减少变为增大对应的第一个节点为p3点,因此p3点为最小节点,而距离最大值对应的节点为p2,因此p2点为最大节点,此时p0p3为最小距离,p0p2为最大距离,此时判定p0p2/p0p3是否大于第四阈值和/或p0p3是否小于第五阈值,如果是,则将p0至p3之间的点移除,即将p1,p2两个节点从所述第二集合中移除,并以p3为当前节点,继续计算。
可以理解的是,直接用获取到的多个道路基准点以及导航路径上的节点绘制的封闭多边形,可能会出现突刺部分,即这个封闭多边形并不平滑,通过判断所述出现距离值的变化从增大变为减少再变为增大的情况,可以判断是否存在突刺部分,当判断存在突刺部分时,可以将所述突刺部分从所述封闭多边形中去掉,使得最终形成的封闭多边形更加光滑,即所述商家的配送范围能够更加合理,使得配送时出现的绕路现象能够减少。
本实施例通过将所述突刺部分从所述封闭多边形中去掉,使得最终形成的封闭多边形更加光滑,即所述商家的配送范围能够更加合理。
图10示出了本发明第六实施例提供的一种确定商家配送范围的方法的流程图,请参阅图10,本实施例描述的是服务器的处理流程,所述方法包括:
步骤S801,以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;
步骤S802,根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的多个道路基准点;
步骤S803,将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;
步骤S804,获取所述封闭多边形上的节点,形成第一节点集合;根据以所述第一节点集合中的节点的前一节点为起点,以所述第一节点集合中的节点为终点形成的第一向量,以及以所述第一节点集合中的节点为起点,以其下一节点为终点形成的第二向量之间的向量夹角,依次判定所述第一节点集合中的节点是否为冗余节点,如果为冗余节点,则将所述冗余节点从第一节点集合中移除,直到所述第一节点集合中的节点全部判定完毕,得到第三节点集合;
步骤S805,分别计算第三节点集合中的当前节点与所述当前节点之后的多个连续的节点中每个节点之间的距离,所述多个连续的节点包括所述当前节点的下一节点;
在第一次计算时可以取第三节点集合中的任意节点作为当前节点。
步骤S806,判断是否出现距离值的变化从增大变为减少再变为增大的情况,如果是,将距离值的变化由减少变为增大对应的第一个节点记为最小节点,将距离最大值对应的节点记为最大节点,所述最小节点到所述当前节点之间的距离记为最小距离,所述最大节点到所述当前节点之间的距离记为最大距离,判断是否最大距离与最小距离的比值大于第四阈值和/或最小距离小于第五阈值;
如果出现距离值的变化从增大变为减少再变为增大且最大距离与最小距离的比值大于第四阈值和/或最小距离小于第五阈值,执行步骤S807,否则执行步骤S810;
步骤S807,将所述当前节点到所述最小节点之间的所有节点从所述第三节点集合中移除;
步骤S808,判断所述第三节点集合中的节点是否全部判定完毕;
如果是,则执行步骤S812,否则,执行步骤S809并返回步骤S805;
步骤S810,判断所述第三节点集合中的节点是否全部判定完毕;
如果是,则执行步骤S812,否则,执行步骤S811并返回步骤S805;
步骤S812,剩余的节点所形成的多边形为商家的配送范围。
可以理解的是,首先对第一节点集合中的节点,通过去掉冗余节点的方式,形成第三节点集合,在此基础上,进一步的去掉可能出现的突刺部分,进一步使得发送到客户端的更新后的道路基准点变得更少,且使得最终形成的封闭多边形更加光滑,即所述商家的配送范围能够更加合理。
可以理解的是,在步骤S804中,进一步的,还可包括在所述第一节点集合中的节点全部判定完毕后,得到第二节点集合的步骤,即,依次判定所述第二节点集合中相邻的两个节点是否可以合并为新的节点,如果是,则将相邻的两个节点的平均位置作为新的节点,将所述新的节点加入第二节点集合中,将所述相邻的两个节点从所述第二节点集合中移除,将所述新的节点与所述相邻的两个节点的下一节点形成两个相邻的两个节点,继续判定是否可以合并为新的节点,直到所述第二节点集合中的节点全部判定完毕,得到第三节点集合,以进一步的合并冗余节点。
图11示出了本发明第七实施例提供的一种确定商家配送范围的方法的流程图,请参阅图11,本实施例描述的是服务器的处理流程,所述方法包括:
步骤S901,以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;
步骤S902,根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的多个道路基准点;
步骤S903,将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;
步骤S904,获取所述封闭多边形上的节点,形成第二节点集合;依次判定所述第二节点集合中相邻的两个节点是否可以合并为新的节点,如果是,则将相邻的两个节点的平均位置作为新的节点,将所述新的节点加入第二节点集合中,将所述相邻的两个节点从所述第二节点集合中移除,将所述新的节点与所述相邻的两个节点的下一节点形成两个相邻的两个节点,继续判定是否可以合并为新的节点,直到所述第二节点集合中的节点全部判定完毕,得到第三节点集合;
步骤S905,分别计算第三节点集合中的当前节点与所述当前节点之后的多个连续的节点中每个节点之间的距离,所述多个连续的节点包括所述当前节点的下一节点;
在第一次计算时可以取第三节点集合中的任意节点作为当前节点。
步骤S906,判断是否出现距离值的变化从增大变为减少再变为增大的情况,如果是,将距离值的变化由减少变为增大对应的第一个节点记为最小节点,将距离最大值对应的节点记为最大节点,所述最小节点到所述当前节点之间的距离记为最小距离,所述最大节点到所述当前节点之间的距离记为最大距离,判断是否最大距离与最小距离的比值大于第四阈值和/或最小距离小于第五阈值;
如果出现距离值的变化从增大变为减少再变为增大且最大距离与最小距离的比值大于第四阈值和/或最小距离小于第五阈值,执行步骤S907,否则执行步骤S910;
步骤S907,将所述当前节点到所述最小节点之间的所有节点从所述第三节点集合中移除;
步骤S908,判断所述第三节点集合中的节点是否全部判定完毕;
如果是,则执行步骤S912,否则,执行步骤S909并返回步骤S905;
步骤S910,判断所述第三节点集合中的节点是否全部判定完毕;
如果是,则执行步骤S912,否则,执行步骤S911并返回步骤S905;
步骤S912,剩余的节点所形成的多边形为商家的配送范围。
可以理解的是,首先对第二节点集合中的节点,通过合并冗余节点形成新的节点的方式,在此基础上,进一步的去掉可能出现的突刺部分,进一步使得发送到客户端的更新后的道路基准点变得更少,且使得最终形成的封闭多边形更加光滑,即所述商家的配送范围能够更加合理,使得配送时出现的绕路现象能够减少。
可以理解的是,在步骤S904中,进一步的,在依次判定所述第二节点集合中相邻的两个节点是否可以合并为新的节点之前,还可以包括:获取所述封闭多边形上的节点,形成第一节点集合;根据以所述第一节点集合中的节点的前一节点为起点,以所述第一节点集合中的节点为终点形成的第一向量,以及以所述第一节点集合中的节点为起点,以其下一节点为终点形成的第二向量之间的向量夹角,依次判定所述第一节点集合中的节点是否为冗余节点,如果为冗余节点,则将所述冗余节点从第一节点集合中移除,直到所述第一节点集合中的节点全部判定完毕,得到第二节点集合,以去掉冗余节点。
请参阅图12,是本发明实施例提供的确定商家配送范围的装置的功能模块示意图。所述确定商家配送范围的装置包括配送基准点确定模块211,道路基准点确定模块212,配送范围确定模块213。
所述配送基准点确定模块211,用于以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;
所述道路基准点确定模块212,用于根据所述多个配送基准点以及所述多个配送方向,确定与所述多个配送基准点分别对应的位于道路上的多个道路基准点;
所述配送范围确定模块213,用于根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围。
其中,所述道路基准点确定模块212,具体包括:第一计算模块2121、第二计算模块2122以及判断模块2123。
所述第一计算模块2121,用于计算所述商家与当前配送基准点之间的第一导航距离、所述商家与第二基准点之间的第二导航距离、以及第一导航距离与所述第二导航距离的导航距离差,所述第二基准点为当前配送基准点沿所述当前配送基准点所在的所述配送方向,向所述商家移动第二预设距离后所达到的点;
所述第二计算模块2122,用于计算所述商家与当前配送基准点之间的第一直线距离、所述商家与第二基准点之间的第二直线距离、以及第一直线距离与所述第二直线距离的直线距离差;
所述判断模块2123,用于判断所述导航距离差以及所述直线距离差的比值是否大于第一阈值,如果大于所述第一阈值,则将所述第二基准点的位置作为道路基准点的位置;
优选的,所述配送范围确定模块213还用于将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;获取所述封闭多边形上的节点,形成第一节点集合;根据以所述第一节点集合中的节点的前一节点为起点,以所述第一节点集合中的节点为终点形成的第一向量,以及以所述第一节点集合中的节点为起点,以其下一节点为终点形成的第二向量之间的向量夹角,依次判定所述第一节点集合中的节点是否为冗余节点,如果为冗余节点,则将所述冗余节点从第一节点集合中移除,直到所述第一节点集合中的节点全部判定完毕,剩余的节点所形成的多边形为商家的配送范围。
优选的,所述配送范围确定模块213还用于将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;获取所述封闭多边形上的节点,形成第二节点集合;根据相邻两个节点之间的距离,依次判断所述第二节点集合中相邻的两个节点是否可以合并为新的节点,如果是,则将相邻的两个节点的平均位置作为新的节点,将所述新的节点加入第二节点集合中,将所述相邻的两个节点从所述第二节点集合中移除;重复上述步骤直到所述第二节点集合中的节点全部判定完毕,剩余的节点所形成的多边形为商家的配送范围。
优选的,配送范围确定模块213还用于将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;获取所述封闭多边形上的节点,形成第三节点集合;取所述第三节点集合中的一个点作为当前节点,分别计算当前节点与所述当前节点之后的多个连续的节点中每个节点之间的距离,所述多个连续的节点包括所述当前节点的下一节点,若出现距离值的变化从增大变为减少再变为增大时,此时将距离值的变化由减少变为增大对应的第一个节点记为最小节点,将距离最大值对应的节点记为最大节点,所述最小节点到所述当前节点之间的距离记为最小距离,所述最大节点到所述当前节点之间的距离记为最大距离,判断所述最大距离与所述最小距离的比值是否大于第四阈值和/或所述最小距离是否小于第五阈值;如果是,则将所述当前节点到所述最小节点之间的所有节点从所述第三节点集合中移除;重复上述步骤直到所述第三节点集合中的节点全部判定完毕,剩余的节点所形成的多边形为商家的配送范围。
进一步的,所述装置还可以包括发送模块214,所述发送模块214用于将所述商家的配送范围信息发送到客户端,以使所述客户端在地图对应的位置上显示所述商家的配送范围。
以上各模块可以是由软件代码实现,此时,上述的各模块可存储于服务器200的存储器201内。以上各模块同样可以由硬件例如集成电路芯片实现。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明实施例所提供的确定商家配送范围的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (12)
1.一种确定商家配送范围的方法,其特征在于,所述方法包括:
以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;
根据多个所述配送基准点以及所述多个配送方向,确定与多个所述配送基准点分别对应的位于道路上的多个道路基准点;
根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围;
其中,根据多个所述配送基准点以及所述多个配送方向,确定与多个所述配送基准点分别对应的位于道路上的多个道路基准点,具体包括:
计算所述商家与当前配送基准点之间的第一导航距离、所述商家与第二基准点之间的第二导航距离、以及第一导航距离与所述第二导航距离的导航距离差,所述第二基准点为当前配送基准点沿所述当前配送基准点所在的所述配送方向,向所述商家移动第二预设距离后所达到的点;
计算所述商家与当前配送基准点之间的第一直线距离、所述商家与第二基准点之间的第二直线距离、以及第一直线距离与所述第二直线距离的直线距离差;
判断所述导航距离差以及所述直线距离差的比值是否大于第一阈值,如果大于所述第一阈值,则将所述第二基准点的位置作为道路基准点的位置。
2.根据权利要求1所述的方法,其特征在于,根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围,包括:
将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;
获取所述封闭多边形上的节点,形成第一节点集合;
根据以所述第一节点集合中的节点的前一节点为起点,以所述第一节点集合中的节点为终点形成的第一向量,以及以所述第一节点集合中的节点为起点,以其下一节点为终点形成的第二向量之间的向量夹角,依次判定所述第一节点集合中的节点是否为冗余节点,如果为冗余节点,则将所述冗余节点从第一节点集合中移除;
重复上述步骤直到所述第一节点集合中的节点全部判定完毕,剩余的节点所形成的多边形为商家的配送范围。
3.根据权利要求2所述的方法,其特征在于,判定所述第一节点集合中的节点是否为冗余节点,包括:
判断所述向量夹角是否小于第二阈值;
如果是,则确定当前节点为冗余节点。
4.根据权利要求1-3中任一项所述的方法,其特征在于,根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围,包括:
将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;
获取所述封闭多边形上的节点,形成第二节点集合;
根据相邻两个节点之间的距离,依次判定所述第二节点集合中相邻的两个节点是否可以合并为新的节点,如果是,则将相邻的两个节点的平均位置作为新的节点,将所述新的节点加入第二节点集合中,将所述相邻的两个节点从所述第二节点集合中移除;
重复上述步骤直到所述第二节点集合中的节点全部判定完毕,剩余的节点所形成的多边形为商家的配送范围。
5.根据权利要求4所述的方法,其特征在于,所述判定所述第二节点集合中相邻的两个节点是否可以合并为新的节点,包括:
所述第二节点集合中相邻的两个节点之间的直线距离是否小于第三阈值,如果是,则为所述相邻的两个节点可以合并为新的节点。
6.根据权利要求1-3、5中任一项所述的方法,其特征在于,根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围,包括:
将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;
获取所述封闭多边形上的节点,形成第三节点集合;
取所述第三节点集合中的一个点作为当前节点,分别计算当前节点与所述当前节点之后的多个连续的节点中每个节点之间的距离,所述多个连续的节点包括所述当前节点的下一节点,若出现距离值的变化从增大变为减少再变为增大时,此时将距离值的变化由减少变为增大对应的第一个节点记为最小节点,将距离最大值对应的节点记为最大节点,所述最小节点到所述当前节点之间的距离记为最小距离,所述最大节点到所述当前节点之间的距离记为最大距离,判断所述最大距离与所述最小距离的比值是否大于第四阈值和/或所述最小距离是否小于第五阈值;
如果是,则将所述当前节点到所述最小节点之间的所有节点从所述第三节点集合中移除;
重复上述步骤直到所述第三节点集合中的节点全部判定完毕,剩余的节点所形成的多边形为商家的配送范围。
7.根据权利要求1-3、5中任一项所述的方法,其特征在于,所述根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围之后,还包括:
将所述商家的配送范围信息发送到客户端,以使所述客户端在地图对应的位置上显示所述商家的配送范围。
8.一种确定商家配送范围的装置,其特征在于,所述装置包括:
配送基准点确定模块,用于以商家在地图上的位置为起点,分别获取在多个配送方向中的每个配送方向上、且与所述起点距离为第一预设距离的多个点,作为配送基准点;
道路基准点确定模块,用于根据多个所述配送基准点以及所述多个配送方向,确定与多个所述配送基准点分别对应的位于道路上的多个道路基准点;
配送范围确定模块,用于根据所述多个道路基准点中相邻两个道路基准点之间的导航路径,确定所述商家的配送范围;
其中,所述道路基准点确定模块,具体包括:
第一计算模块,用于计算所述商家与当前配送基准点之间的第一导航距离、所述商家与第二基准点之间的第二导航距离、以及第一导航距离与所述第二导航距离的导航距离差,所述第二基准点为当前配送基准点沿所述当前配送基准点所在的所述配送方向,向所述商家移动第二预设距离后所达到的点;
第二计算模块,用于计算所述商家与当前配送基准点之间的第一直线距离、所述商家与第二基准点之间的第二直线距离、以及第一直线距离与所述第二直线距离的直线距离差;
判断模块,用于判断所述导航距离差以及所述直线距离差的比值是否大于第一阈值,如果大于所述第一阈值,则将所述第二基准点的位置作为道路基准点的位置。
9.根据权利要求8所述的装置,其特征在于,所述配送范围确定模块具体用于将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;获取所述封闭多边形上的节点,形成第一节点集合;根据以所述第一节点集合中的节点的前一节点为起点,以所述第一节点集合中的节点为终点形成的第一向量,以及以所述第一节点集合中的节点为起点,以其下一节点为终点形成的第二向量之间的向量夹角,依次判定所述第一节点集合中的节点是否为冗余节点,如果为冗余节点,则将所述冗余节点从第一节点集合中移除,直到所述第一节点集合中的节点全部判定完毕,剩余的节点所形成的多边形为商家的配送范围。
10.根据权利要求8或9所述的装置,其特征在于,所述配送范围确定模块具体用于将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;获取所述封闭多边形上的节点,形成第二节点集合;根据相邻两个节点之间的距离,依次判断所述第二节点集合中相邻的两个节点是否可以合并为新的节点,如果是,则将相邻的两个节点的平均位置作为新的节点,将所述新的节点加入第二节点集合中,将所述相邻的两个节点从所述第二节点集合中移除,直到所述第二节点集合中的节点全部判定完毕,剩余的节点所形成的多边形为商家的配送范围。
11.根据权利要求8或9所述的装置,其特征在于,配送范围确定模块具体用于将相邻的两个所述道路基准点之间的导航路径连接,形成一个封闭多边形;获取所述封闭多边形上的节点,形成第三节点集合;取所述第三节点集合中的一个点作为当前节点,分别计算当前节点与所述当前节点之后的多个连续的节点中每个节点之间的距离,所述多个连续的节点包括所述当前节点的下一节点,若出现距离值的变化从增大变为减少再变为增大时,此时将距离值的变化由减少变为增大对应的第一个节点记为最小节点,将距离最大值对应的节点记为最大节点,所述最小节点到所述当前节点之间的距离记为最小距离,所述最大节点到所述当前节点之间的距离记为最大距离,判断所述最大距离与所述最小距离的比值是否大于第四阈值和/或所述最小距离是否小于第五阈值;如果是,则将所述当前节点到所述最小节点之间的所有节点从所述第三节点集合中移除,直到所述第三节点集合中的节点全部判定完毕,剩余的节点所形成的多边形为商家的配送范围。
12.根据权利要求8或9所述的装置,其特征在于,所述装置还包括发送模块,所述发送模块用于将所述商家的配送范围信息发送到客户端,以使所述客户端在地图对应的位置上显示所述商家的配送范围。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610363612.6A CN107437122B (zh) | 2016-05-26 | 2016-05-26 | 确定商家配送范围的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610363612.6A CN107437122B (zh) | 2016-05-26 | 2016-05-26 | 确定商家配送范围的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107437122A CN107437122A (zh) | 2017-12-05 |
CN107437122B true CN107437122B (zh) | 2019-03-26 |
Family
ID=60454536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610363612.6A Active CN107437122B (zh) | 2016-05-26 | 2016-05-26 | 确定商家配送范围的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107437122B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108171412B (zh) * | 2017-12-26 | 2020-11-10 | 北京小度信息科技有限公司 | 任务配送方法、装置、电子设备及计算机可读存储介质 |
CN110570136B (zh) * | 2018-05-17 | 2021-11-02 | 北京三快在线科技有限公司 | 配送范围确定方法、装置、电子设备以及存储介质 |
CN108846513A (zh) * | 2018-06-07 | 2018-11-20 | 浪潮软件股份有限公司 | 一种基于gis的送货任务单首尾优化方法及*** |
CN110659849B (zh) * | 2018-06-28 | 2021-07-06 | 北京三快在线科技有限公司 | 业务覆盖区域的确定方法、装置及电子设备 |
CN110969382A (zh) * | 2018-09-28 | 2020-04-07 | 北京三快在线科技有限公司 | 一种配送范围的确定方法及装置 |
CN109242401B (zh) * | 2018-11-20 | 2020-12-15 | 拉扎斯网络科技(上海)有限公司 | 配送范围的设置方法、装置、电子设备和可读存储介质 |
CN112860837A (zh) * | 2018-12-20 | 2021-05-28 | 拉扎斯网络科技(上海)有限公司 | 信息展示方法、装置、电子设备及存储介质 |
CN109711789A (zh) * | 2019-01-22 | 2019-05-03 | 北京顺丰同城科技有限公司 | 一种配送范围的确定方法及装置 |
CN109978447A (zh) * | 2019-03-06 | 2019-07-05 | 北京三快在线科技有限公司 | 一种物流配送线路规划方法和装置 |
CN110210813B (zh) * | 2019-06-12 | 2020-09-08 | 拉扎斯网络科技(上海)有限公司 | 一种确定配送范围的方法、装置、电子设备及存储介质 |
CN110544159B (zh) * | 2019-09-09 | 2021-02-12 | 拉扎斯网络科技(上海)有限公司 | 一种地图信息处理方法、装置、可读存储介质和电子设备 |
CN111062658B (zh) * | 2019-12-04 | 2022-11-18 | 南京苏宁加电子商务有限公司 | 配送范围的生成方法、装置、计算机设备和存储介质 |
CN111275383B (zh) * | 2020-01-19 | 2023-04-07 | 腾讯云计算(北京)有限责任公司 | 一种配送范围生成方法、装置、计算机设备及存储介质 |
CN114077979B (zh) * | 2020-08-18 | 2024-05-28 | 北京三快在线科技有限公司 | 一种确定配送服务范围的方法及装置 |
CN113326452B (zh) * | 2021-06-29 | 2024-04-16 | 南京云联数科科技有限公司 | 线上店铺推送方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104200369A (zh) * | 2014-08-27 | 2014-12-10 | 北京京东尚科信息技术有限公司 | 一种确定商品配送范围的方法和装置 |
CN104751733A (zh) * | 2013-12-25 | 2015-07-01 | 携程计算机技术(上海)有限公司 | 地图的区域绘制方法及装置、路径距离分类方法及*** |
CN104851006A (zh) * | 2015-05-21 | 2015-08-19 | 北京京东尚科信息技术有限公司 | 配送范围确定方法以及装置 |
CN105160503A (zh) * | 2015-07-16 | 2015-12-16 | 绍兴越淘网络技术有限公司 | 一种网站运营商直接实现同城当天配送的方法 |
-
2016
- 2016-05-26 CN CN201610363612.6A patent/CN107437122B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104751733A (zh) * | 2013-12-25 | 2015-07-01 | 携程计算机技术(上海)有限公司 | 地图的区域绘制方法及装置、路径距离分类方法及*** |
CN104200369A (zh) * | 2014-08-27 | 2014-12-10 | 北京京东尚科信息技术有限公司 | 一种确定商品配送范围的方法和装置 |
CN104851006A (zh) * | 2015-05-21 | 2015-08-19 | 北京京东尚科信息技术有限公司 | 配送范围确定方法以及装置 |
CN105160503A (zh) * | 2015-07-16 | 2015-12-16 | 绍兴越淘网络技术有限公司 | 一种网站运营商直接实现同城当天配送的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107437122A (zh) | 2017-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107437122B (zh) | 确定商家配送范围的方法及装置 | |
US11922366B2 (en) | System and method for dynamic pairing function optimization | |
CN111044056B (zh) | 基于道路匹配的定位方法、芯片子***及电子设备 | |
JP6639640B2 (ja) | ナビゲーション参照点特定及びナビゲーション方法、装置並びに記憶媒体 | |
CN105674995A (zh) | 一种基于用户出行轨迹获取通勤路线的方法及装置 | |
US8170793B2 (en) | System and method for determining routing point placement for aiding in encoding and decoding a path | |
US20060116818A1 (en) | Method and system for multiple route navigation | |
CN110617831B (zh) | 生成导航路线的方法、装置及设备 | |
CN105744473A (zh) | 基于地理围栏的定位方法及装置 | |
CN111275383B (zh) | 一种配送范围生成方法、装置、计算机设备及存储介质 | |
CN106255056B (zh) | 用于增强与基于位置服务有关的隐私的***和方法 | |
CN105704195B (zh) | 确定路网分区边界线方法和设备 | |
CN113758496B (zh) | 路径的规划方法、装置、电子设备及存储介质 | |
CN105279207A (zh) | 一种用户推荐方法、装置和*** | |
CN104899647A (zh) | 城市物流配送地名地址*** | |
CN104715286A (zh) | 确定订单起点的方法和设备 | |
CN104090927A (zh) | 一种基于电子地图的划线搜索方法和装置 | |
CN105716622A (zh) | 一种导航方法及导航服务器 | |
Rigby et al. | A continuous representation of ad hoc ridesharing potential | |
US20220414712A1 (en) | Method and system for providing benefits for application, and non-transitory computer-readable recording medium | |
CN113108806A (zh) | 路径规划方法、装置、设备及介质 | |
CN108763374A (zh) | 一种行驶路径展示方法、装置及设备 | |
CN110889048B (zh) | 一种地图数据查询方法、***、终端和服务器 | |
CN104853315B (zh) | 一种室内定位的地图匹配方法和装置 | |
CN104180817A (zh) | 用于显示感兴趣点的方法及其设备 |
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 |