CN106068656B - 由多个分量形状构成的虚拟地理周界 - Google Patents
由多个分量形状构成的虚拟地理周界 Download PDFInfo
- Publication number
- CN106068656B CN106068656B CN201580013021.XA CN201580013021A CN106068656B CN 106068656 B CN106068656 B CN 106068656B CN 201580013021 A CN201580013021 A CN 201580013021A CN 106068656 B CN106068656 B CN 106068656B
- Authority
- CN
- China
- Prior art keywords
- shapes
- computing device
- geofence
- shape
- geographic
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
- H04W64/006—Locating users or terminals or network equipment for network management purposes, e.g. mobility management with additional information processing, e.g. for direction or speed determination
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Instructional Devices (AREA)
- Navigation (AREA)
Abstract
一种计算装置包含一个或多个处理器、用户接口和存储用于确定特定地理位置是否处于地理地点的虚拟周界内的指令的非暂时性计算机可读介质。指令当在一个或多个处理器上执行时,致使计算装置:确定近似地构成地理地点的几何形状的多个分量形状;确定特定地理位置是否处于所述分量形状中的至少一个分量形状内;如果所述地理位置处于所述分量形状中的至少一个分量形状内,则生成所述地理位置处于虚拟周界内的指示;并且经由用户接口提供指示。
Description
技术领域
本公开涉及创建交互式数字地图,并且更明确地说,涉及生成和使用地理地点的虚拟边界。
背景技术
本文所提供的背景描述是出于大体上呈现本公开的上下文的目的。就“背景技术”部分所描述的程度而言,本申请署名的发明人的工作以及在提交时可能尚未限定为现有技术的各方面描述,既不明确地也不隐含地认为是本公开的现有技术。
数字地图可通过智能电话和许多其它手持式装置上的地图绘制应用来访问。这些装置中大部分配备例如全球定位系统(GPS)的定位传感器,其将用户的位置确定为地理坐标的集合。一些地图绘制应用可接着通过检查用户位置是否处于所谓的地理围栏内来确定用户是否处于感兴趣地点中。
地理围栏是围绕地点(例如,商业区、地标、住所等)创建的虚拟周界。虽然典型的地点几何形状不是圆形的,但地理围栏通常被设置为具有中心点和半径的圆。
发明内容
为了有效地确定特定地理位置是否处于具有可相对复杂的任意几何形状(例如,建筑轮廓)的地点的地理围栏(虚拟周界)内,软件系统标识构成地点的几何形状的多个相对简单的分量形状。为了确定地理位置是否处于周界内,计算装置接着确定地理位置是否由分量形状中的一个或多个分量形状围住。因为这些检查中的每一个检查是相对简单的操作,所以计算装置可以是例如智能电话或平板计算机等用户装置。
明确地说,在实施例中,计算装置包括一个或多个处理器、用户接口和存储指令的非暂时性计算机可读介质,所述指令用于确定特定地理位置是否处于地理地点的虚拟周界内。指令当在一个或多个处理器上执行时,致使计算装置:确定近似地构成地理地点的几何形状的多个分量形状;确定特定地理位置是否处于分量形状中的至少一个分量形状内;如果地理位置处于分量形状中的至少一个分量形状内,则生成地理位置处于虚拟周界内的指示;并且经由用户接口提供指示。
在另一实施例中,一种用于生成地理地点的虚拟周界的方法包括:接收地理地点的几何形状的指示;接收一个或多个形状的有限集合;将所述几何形状的近似表示生成为多个分量形状,每一个分量形状选自所述形状的所述有限集合;以及将几何形状的近似表示用作地理地点的虚拟周界。这些动作中的每一个可由一个或多个计算装置执行。
便携式计算装置包括:定位模块,所述定位模块被配置成确定计算装置的当前位置;以及处理硬件,所述处理硬件被耦合到定位模块。处理硬件被配置成接收地理地点的虚拟周界的指示,该指示包括近似地构成地理地点的几何形状的多个分量形状。处理硬件被进一步配置成确定与便携式计算装置的当前位置相对应的几何点是否处于分量形状中的一个或多个内分量形状,并且响应于确定几何点处于分量形状中的至少一个分量形状内,生成便携式计算装置处于地理地点的虚拟周界内的指示。
附图说明
图1是使用本公开的技术而创建并使用复合地理围栏的示例计算系统的框图;
图2A示意性地图示每个被限定为特定半径的圆的部分重叠的地理围栏对;
图2B示意性地图示复杂地点几何形状的圆形地理围栏;
图3A示意性地图示使用一个或若干个基本形状而创建的一地理围栏对;
图3B示意性地图示将一个或若干个基本形状用于复杂地点几何形状而创建的地理围栏;
图4是显示地点的内部复合地理围栏以及鉴于周围地点地形而生成的外部复合地理围栏的示意性图示;
图5是由基本三维形状或立体图形构成的三维复合地理围栏的示例;
图6是用于使用基本形状来生成复合地理围栏的示例性方法的流程图,其中该方法可实施在图1的动态地理围栏模块中;
图7是用于鉴于周围地点地形而生成外部复合地理围栏的示例性方法的流程图,其中该方法可实施在图1的动态地理围栏模块中;以及
图8是用于确定GPS坐标是否位于复合地理围栏内的示例性方法的流程图,其中该方法可实施在图1的动态地理围栏模块中。
具体实施方式
概述
在下文论述的实施例中,动态地理围栏系统创建具有相对复杂的几何形状的地理地点的复合地理围栏。为了这个目的,地理围栏系统将地点的几何形状分解为分量几何形状(圆、正方形、三角形等)的集合以形成复合地理围栏。分量形状可以是可相对容易地操纵的“基本”形状。因为将多边形用于使用点在多边形中或另一适当测试来确定位置是否处于地理围栏内在许多状况下可能是计算量巨大的,所以由若干基本形状构成的复合地理围栏允许网络服务器和用户装置有效地使用地理围栏。
为了生成地理地点的复合地理围栏,在一个实施方式中,动态地理围栏系统确定该地点的“边界长方形”,例如,刻画了限定地点的轮廓的多边形的长方形。动态地理围栏系统接着例如根据对圆的数目而设定的某些限制来以圆填充长方形。动态地理围栏系统接着消除完全处于地点的几何形状之外的那些圆。
在另一实施方式中,动态地理围栏系统通过布置特定形状(例如,六边形、长方形、三角形、平行四边形等)的多个实例以便将这些实例相互完美地排列而不重叠,来将地理地点的几何形状“图块化(tile)”。例如,动态地理围栏系统接着例如通过确定每一图块的中心并确定完全覆盖该图块的圆的半径而将这些图块中的每一个映射到圆中。
当使用这些或其它适当技术来生成复合地理围栏时,动态地理围栏系统可平移、缩放、旋转和以其他方式变换基本形状。
取决于实施例,地理围栏系统可为单个地点创建一个或多个地理围栏。多个地理围栏可提供不同信息。例如,地理围栏系统可为特定地点创建内部复合地理围栏和外部复合地理围栏。内部复合地理围栏可用于确定用户处于该地点内,而外部复合地理围栏可用于确定用户位于该地点附近。
一旦已创建复合地理围栏,地理围栏系统可使用GPS数据或其它适当定位数据来确定用户是否位于复合地理围栏中的任何复合地理围栏内。为了这个目的,地理围栏系统可检查用户位置是否处于形成复合地理围栏的基本几何形状中的任何基本几何形状内。如果确定用户处于该地点内或接近该地点,则地理围栏系统可例如向用户呈现关于该地点的信息。取决于实施例,地理围栏软件组件可在诸如智能电话或平板计算机等便携式计算装置上本地执行和/或在一个或多个网络服务器上执行。
示例系统、装置和方法
参照图1到图8,现将描述本公开的技术的若干示例。首先,图1图示其中地图绘制应用的地理围栏组件创建地理围栏的计算环境100的示例。如图1所图示,计算环境100包括连接到服务器105或设置在服务器105内的地图数据库103,而服务器105进而又经由网络125而连接到一个或多个客户端装置115。此外,地图应用/API服务器110可经由网络125而连接到一个或多个客户端装置115。网络125可包括LAN、MAN、WAN、移动网络、有线或无线网络、私有网络、或虚拟私有网络的任何适当组合。虽然在图1中仅图示一个客户端115以使描述简单和清楚,但应理解,任何数目的客户端装置被支持并且与服务器105和110通信。
服务器105和110以及客户端115是可包括CPU 130(仅在客户端中示出)、一个或多个计算机可读存储器模块132、一个或多个用户接口134(键盘、触摸屏等)、网络接口136、一个或多个外围设备接口和其它组件的计算装置。此外,可使用具有不同架构的其它类型的计算机。客户端装置115表示任何适当的手持式装置和/或移动装置,诸如移动电话、个人数字助理、膝上型计算机、平板型个人计算机、汽车导航系统、手持式GPS单元、或“智能”装置。更一般来说,客户端装置115表示具有用户接口和CPU并且能够显示从地图数据库103或地图数据的其它远程源访问的地图数据的视觉呈现的任何个人计算装置或任何其它处理装置。在至少一些所述实施例中,客户端装置115配备有定位模块,诸如GPS接收器、被配置成执行三角测距的无线区域网络(WLAN)接收器等。此外,虽然在一些示例中,网络125被描述为无线网络,但网络125可以是任何有线或无线网络,其中客户端115是网络上的装置。
服务器105、110和客户端115还适用于执行用于提供本文所述的功能性的计算机程序模块。如本文所使用,术语“模块”和“例程”是指用于提供指定功能性的计算机程序逻辑。因此,模块或例程可实施在硬件、固件、和/或软件中。在一个实施例中,程序模块和例程存储在存储装置上,加载到存储器中并由处理器执行,或可以是从有形计算机可读存储介质(例如,RAM、硬盘、光学介质/或磁性介质等)中所存储的计算机程序产品提供。
可存储在服务器105中或可与服务器105分开的地图数据库103包含可用于生成数字地图或可例如由应用用来从地点数据创建地理围栏的地图数据。物理道路、水路、公园、地标、和其它地理元素是可在地图数据中表示的示例地点。每一地点的数据表示通常包括用于每一顶点和中心的坐标(例如,纬度和经度)的集合。例如图书馆的数据表示可包括位置和许多属性,诸如物理几何形状、楼层数、每一楼层的高度、中心坐标、建筑类型等。
地图数据库103中所存储的地图数据可以是从若干不同源获得,诸如纽约市开放可访问空间信息系统(OASIS)和美国人口普查局拓扑集成地理编码和参考系统(TIGER)。此外,数据库103不需要在物理上位于服务器105内。例如,数据库103可存储在附接到服务器105的外部存储中,或可存储在网络附接存储中。此外,可存在连接到单个数据库103的多个服务器105。同样,地图数据库103可存储在多个不同或分立的物理数据存储装置中。
地图模块138可实施在客户端115上或地图应用服务器110上。地图模块138可解释并使用来自数据库103的地图数据以在用户接口134上显示数字地图。此外或替选地,地图模块138可在用户进入或接近特定位置时提供警报,显示与商业区相关联的广告、报价、优惠券等,提供驾驶、骑车、步行或其它指导等。在许多这些应用程序中,地图模块138依赖于本公开的动态地理围栏系统来准确地且有效地确定特定位置是否处于地理围栏内。
在此实施例中,动态地理围栏系统作为在地图模块138中操作的动态地理围栏模块140而实施。然而,更一般来说,动态地理围栏系统可实施在用户装置、网络服务器或两者中。在操作中,地理围栏模块140可将可以是任意多边形或复杂形状的地点几何形状分解为由基本形状的集合组成的复合地理围栏。将在剩余附图中更详细地提及动态地理围栏模块140的示例技术。
现参照图2A,图示200示意性地图示分别针对地理地点203和204而限定的单圆地理围栏201和202。地理围栏201和202是使用点与半径技术而创建的。更明确地说,在此状况下,地理围栏是由单个点和对应恒定半径限定的,以使得地理围栏中的每一个地理围栏围住圆形区域。每一地理围栏的对应中心坐标和半径可存储在每一地理地点的地图数据库103中。一般来说,需要相对少的计算能力来限定和使用圆形地理围栏。
图2B是围绕具有复杂几何形状的地点206的圆形地理围栏205的图示250。圆形地理围栏205是类似于上文在图2A所述的圆形地理围栏201和202而限定。
虽然可容易地限定圆形地理围栏,但在一些情形下,这些地理围栏不是极准确的,并且可产生不良结果。例如,地理围栏201延伸经过地点203的周界并且甚至部分覆盖地点204。类似地,地理围栏202延伸超过地点204的周界并且甚至部分覆盖地点203。图2B进一步演示圆形地理围栏不能够准确地表示地点几何形状。圆形地理围栏205不会准确地表示地点206的非寻常几何形状,并且覆盖超出地点206的边界的大量区域。
另一方面,图3A描绘具有分别使用基本形状的集合创建的复合地理围栏301和302的相同地点203和204。基本形状的集合可包含例如长方形、圆、三角形等。在此状况下,复合地理围栏203和204中的每一个是与对应地点的几何形状相符的单个正方形。在图3B中,复合地理围栏305是使用基本形状的集合而创建的。复合地理围栏305包括两个正方形和一个三角形。
在这些示例中,地点203、204、和206由复合地理围栏更准确地表示。不同于圆形地理围栏201和202,复合地理围栏301和302不重叠。此外,复合地理围栏301、302和305仅分别覆盖地点203、204和206之外的较小区域。
图4是具有内部复合地理围栏403以及鉴于周围地点地形而生成的外部复合地理围栏404的地点401的图示400。内部地理围栏和外部地理围栏可由地图绘制应用用来例如不仅检查用户是否位于地点中,而且检查用户是否接近地点。
在图示400中,地点401表示停车场402所围绕的体育馆。内部复合地理围栏403可包括若干基本形状。因为地点401具有非寻常、相对复杂的几何形状,所以动态地理围栏模块140可任意使用任何或全部所述基本形状。基本形状数据库被图示在界面400下方以限定可用于创建地理围栏的形状的集合。在示例实施方式中,基本形状数据库包含圆405、六边形406、三角形407和正方形408。也可使用图中未示的其它基本形状(例如,平行四边形)。在操作中,动态地理围栏模块140可将例如平移、缩放、旋转等操作应用到形状405-408。
当创建外部复合地理围栏404时,动态地理围栏模块140可分析周围地点几何形状的显著特征以确定应包括哪些特征。例如,在图示400中,停车场402是与体育馆401紧密相关的特征,并且位于停车场402内的用户应被视为接近体育馆401。外部复合地理围栏404也可以是使用基本形状的集合而创建的。
复合地理围栏也可以在三个维度上创建,如图5所图示。地点505可表示任何多层建筑的一部分。例如,地点505可表示购物中心的两个楼层。购物中心中的商店可主要位于一层,也可延伸到建筑的另一层上。
在实施例中,多个长方体可用于创建商店的三维复合地理围栏。在此实例中,长方体510涵盖商店的多层部分,并且长方体515覆盖单层上所含有的商店的部分。长方体510和515的组合创建表示商店的地点几何形状的三维地理围栏。其它基本三维形状(立方体、球体、角锥等)可用于创建三维复合地理围栏。
如上所述,为了生成复合地理围栏,根据一个实施方式的动态地理围栏模块140首先确定对应地点的“边界长方形”。更明确地说,当地理地点的轮廓通过具有使用(x,y)坐标元组而限定的N个顶点的多边形来描述时,动态地理围栏模块140首先使用本领域中已知的任何适当技术来确定多边形的边界三角形。在此实施例中,动态地理围栏模块140接着识别有效地覆盖长方形的圆的集合。因此,动态地理围栏模块140可例如实施“Discreteapplied Mathematics”2000年2月1日第1到4期第99卷J.B.M.Melissen和P.C.Shuur的“Covering a rectangle with six and seven Circles”中所述的技术。此外,动态地理围栏模块140可用任何期望数目的圆覆盖长方形。
一旦动态地理围栏模块140已用L个圆覆盖边界长方形,动态地理围栏模块140就可消除L个圆中完全处于地理地点的几何形状之外的那些圆,以使得剩余圆形限定复合地理围栏。
在另一实施例中,动态地理围栏模块140通过布置特定形状(诸如六边形、长方形、三角形、平行四边形等)的多个实例,来将地理地点的几何形状图块化。可以选择每一实例的大小以便将形状的多个实例相互完美地排列而不重叠。为了这个目的,动态地理围栏模块140可实施例如Branko Gruenbaum和G.C.Shephard在Tilings and Patterns中的Tilingand Patterns(W.H.Freeman and Co.1987)、D.Chavey在Computers and Mathematicswith Applications 17:147-165中的“Tilings by Regular Polygons–II:A Catalog ofTilings”(1989)中和/或D.M.Y.Sommerville的An Introduction to Geometry of NDimensions,“Chapter X:The Regular Polytopes”(E.P.Dutton 1958)中所述的一种或若干种技术。动态地理围栏系统可接着例如通过确定每一图块的中心并确定完全覆盖该图块的圆的半径来以圆表示这些图块中的每一个图块。
图6是用于使用基本形状来生成复合地理围栏的另一示例性方法600的流程图,其中该方法可例如实施在系统100中。在实施例中,方法600实施在客户端装置115中,并且由动态地理围栏模块140执行。然而,在另一实施例中,方法600实施在服务器105或另一适当网络装置中。为了方便起见,下文参照地理围栏模块140而论述方法600。
方法始于框601,其中动态地理围栏模块140经由网络125而从服务器105和110接收地点几何形状。一般来说,地点几何形状是描述地点的物理边界的数据。地点几何形状可例如存储在地图数据库103中。通常,地点几何形状可以是具有任何数目的顶点和角度的多边形或任何其它形状。
在框602中,动态地理围栏模块140可开始将地点几何形状分解为基本形状的集合。模块140可通过选择基本形状以覆盖地点几何形状的一部分而开始。模块140可基于一个或若干个因素而选择形状。一旦已选择基本形状,便在框603中,将基本形状添加到构成复合地理围栏的形状的集合。
在框604中,动态地理围栏模块140可检查地点几何形状是否已由构成复合地理围栏的基本形状的集合充分表示。在实施例中,一旦地点几何形状被完全覆盖,复合地理围栏就可被视为充分的。在另一实施例中,一旦地点几何形状的特定百分比(例如,99%)已被覆盖,复合地理围栏就可被视为充分的。
如果复合地理围栏不充分,模块140就可继续将基本形状添加到复合地理围栏。在实施例中,构成复合地理围栏的基本形状可重叠。在另一实施例中,复合地理围栏可仅由相互毗邻并且不允许重叠的形状组成。类似地,在某些实施例中,复合地理围栏可由延伸经过地点几何形状的周界的基本形状组成,而在其它实施例中,复合地理围栏必须保持完全处于地点几何形状的边界内。
在框605中,动态地理围栏模块140可存储充分完整的复合地理围栏。复合地理围栏可存储在客户端存储器132上,或经由网络125而发送以存储在服务器110和105上。
参照图7,本文所述的系统100可用于创建外部复合地理围栏的方法700中。外部复合地理围栏用于确定用户位置是否接近地点。例如,外部复合地理围栏可包括被动态地理围栏模块140确定为与诸如停车场、行车道、小巷、庭院等地点紧密关联的若干特征。替选地,动态地理围栏模块140可将某些附近位置从外部地理围栏排除。例如,可将高速公路从商店的外部地理围栏排除,这是因为高速公路上的大多数交通可能与商店不相关。
类似于上文所述的方法600,方法700可例如实施在客户端装置115中,并且由动态地理围栏模块140执行。在框701中,动态地理围栏模块140可经由网络125接收来自地图数据库103的地点数据以及关于周围环境数据的信息。动态地理围栏模块140可接着解释来自地点数据库的信息,诸如地点的类型(例如,商店、商业区、餐馆等)。
在框703中,动态地理围栏模块140可分析周围环境数据以确定周围环境是否与地点相关,如上文所论述。在框704中,动态地理围栏模块140可开始创建外部地点几何形状来包括所有相关周围环境。在实施例中,外部地点几何形状不包含地点几何形状的任何部分。类似于地点几何形状,外部地点几何形状可以是任何类型的多边形或复杂形状。
在框705中,动态地理围栏模块140可开始为外部地点几何形状创建复合地理围栏。动态地理围栏模块140可通过选择基本形状来覆盖外部地点几何形状的一部分而开始。一旦已选择基本形状,便在框706中,将该基本形状添加到构成外部复合地理围栏的形状的集合。
在框707中,动态地理围栏模块140可检查外部地点几何形状是否已由所选择的基本形状充分表示。在实施例中,一旦外部地点几何形状被完全覆盖,外部复合地理围栏就可被视为充分的。在另一实施例中,一旦外部地点几何形状的特定百分比已被覆盖,外部复合地理围栏就可被视为充分的。
如果外部复合地理围栏不充分,则模块140可继续将基本形状添加到外部复合地理围栏。在实施例中,构成外部复合地理围栏的基本形状可重叠。在另一实施例中,外部复合地理围栏可仅由相互毗邻而不重叠的形状组成。类似地,在某些实施例中,外部复合地理围栏可由延伸经过外部地点几何形状的周界的基本形状组成,而在其它实施例中,外部复合地理围栏必须保持完全处于外部地点几何形状的边界内。
在框708中,动态地理围栏模块140可存储充分完整的外部复合地理围栏。外部复合地理围栏可存储在客户端存储器132上,或经由网络125而发送以存储在服务器110和105上。
一旦针对所有地点完成外部和内部复合地理围栏并将其存储在数字地图中,动态地理围栏模块140便可使用复合地理围栏以检查用户位于地点内还是接近地点。
图8是用于确定定位坐标是否与复合地理围栏内的位置相对应的示例方法800的流程图。在框801中,地理围栏模块140接收复合地理围栏。复合地理围栏可以是从客户端装置上的存储器132或从服务器110和105取得。
在框802中,地理围栏模块140接收用户位置。在实施例中,用户位置是作为地图模块138所供应的GPS坐标的集合而接收的。
在框803中,地理围栏模块140将开始检查GPS坐标是否位于复合地理围栏内。地理围栏模块140可选择形成复合地理围栏的基本形状中的一个基本形状。
在框804中,地理围栏模块140检查用户GPS坐标是否位于所选择的基本形状内。可由于基本形状的简单几何形状而相对容易地执行计算。相比之下,计算点是否位于任意多边形或复杂形状内可需要显著更多的计算资源。在框805中,地理围栏模块140确定流程是否应继续到框806或框807。
在框806中,地理围栏模块140可生成用户位于复合地理围栏内的指示。地理围栏模块140可接着将此信息中继到服务器105和110。取决于实施例,地理围栏模块可接着向用户呈现关于地点的信息。
在框807中,地理围栏模块140可检查是否已检查来自复合地理围栏的所有基本形状。如果该集合中的任何基本形状保持未被检查,那么地理围栏模块140可选择要测试的另一基本形状。地理围栏模块140可继续测试该集合中的基本形状,直到确定用户位置落入基本形状中的一个基本形状的边界内为止,或直到该集合中的所有基本形状已被检查并传回否定结果为止。
如果用户位置没有被构成复合地理围栏的基本形状中的任一个基本形状围住,则用户的位置不处于地理围栏内。在框808中,地理围栏模块可推断用户不位于地理围栏内。地理围栏模块140可接着使用不同地理围栏来重新开始方法800。该过程可继续直到在数字地图中发现用户位于地理围栏内为止,或直到所有地理围栏已被检查并传回否定结果为止。
在本说明书全文中,多个实例可实施被描述为单个实例的组件、操作或结构。虽然将一种或更多种方法的个体操作说明和描述为分开的操作,但可同时执行个体操作中的一个或多个,并且不要求以所说明的次序来执行操作。可将在示例配置中呈现为分开的组件的结构和功能实施为组合的结构或组件。类似地,可将呈现为单个组件的结构和功能实施为分立的组件。这些和其它变化、修改、添加、和改进落入本文主题的范围内。
例如,网络125可包括但不限于LAN、MAN、WAN、移动网络、有线或无线网络、私有网络、或虚拟私有网络的任何组合。此外,虽然在图1中仅图示一个客户端115以使描述简单和清楚,但应理解,任何数目的客户端计算机被支持并且可与服务器105和110通信。
此外,某些实施例在本文中被描述为包含逻辑或许多组件、模块或机构。模块可构成软件模块(例如,体现在机器可读介质上或传输信号中的代码)或硬件模块。硬件模块是能够执行某些操作的有形单元,并且可按特定方式配置或布置。在示例实施例中,一个或多个计算机系统(例如,独立客户端或服务器计算机系统)或计算机系统的一个或多个硬件模块(例如,处理器或处理器群)可由软件(应用或应用部分)配置为操作以执行如本文所述的某些操作的硬件模块。
在各种实施例中,硬件模块可按机械或电子方式实施。例如,硬件模块可包括被永久配置以执行某些操作的专用电路或逻辑(例如,专用处理器,诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC))。硬件模块还可包括由软件暂时配置以执行某些操作的可编程逻辑或电路(例如,涵盖在通用处理器或其它可编程处理器内)。应了解,在专用的并且永久配置的电路或在暂时配置的电路(例如,由软件配置)中以机械方式实施硬件模块的决策可通过成本和时间考虑因素来推动。
因此,术语“硬件模块”应被理解为涵盖有形实有物,无论是被物理地构造、永久地配置(例如,硬连线)还是暂时地配置(例如,编程)而以特定方式操作或执行本文所述的某些操作的实有物。如本文所使用,“硬件实施模块”表示硬件模块。考虑硬件模块被暂时配置(例如,编程)的实施例,硬件模块中的每一个硬件模块不需要在任何一个时刻进行配置或实例化。例如,当硬件模块包括使用软件而配置的通用处理器时,通用处理器可以在不同时间配置为相应的不同硬件模块。因此,软件可以配置处理器,例如以在一个时刻构成特定硬件模块并且在另一不同时刻构成不同硬件模块。
硬件模块可将信息提供给其它硬件模块并从其它硬件模块接收信息。因此,所描述的硬件模块可被视为以通信方式耦合。当同时存在多个这种硬件模块时,可通过连接硬件模块的信号传输(例如,通过适当电路和总线)来实现通信。在多个硬件模块在不同时间进行配置或实例化的实施例中,这些硬件模块之间的通信可例如通过多个硬件模块所访问的存储器结构中的信息的存储和检索来实现。例如,一个硬件模块可执行操作并且将该操作的输出存储到该硬件以通信方式耦合到的存储器装置中。另一硬件模块可接着在稍后时间访问存储器装置以检索并处理所存储的输出。硬件模块还可起始与输入或输出装置的通信,并且可对资源(例如,信息的集合)进行操作。
本文所述的示例方法的各种操作可至少部分由一个或多个处理器执行,其中所述一个或多个处理器被暂时配置为(例如,由软件)或永久配置为执行相关操作。不论是暂时地配置还是永久地配置,这些处理器都可构成进行操作以执行一个或多个操作或功能的处理器实施模块。在一些示例实施例中,本文所述的模块可包括处理器实施模块。
类似地,本文所述的方法或例程可至少部分是处理器实施的。例如,一种方法的操作中的至少一些可由一个或多个处理器或处理器实施硬件模块执行。某些所述操作的执行可分布在不仅驻留在单个机器内而且跨越许多机器部署的一个或多个处理器之间。在一些实例实施例中,所述一个或多个处理器可位于单个位置中(例如,家庭环境内、办公室环境内或作为服务器群组),而在其它实施例中,处理器可跨越许多位置而分布。
所述一个或多个处理器还可操作以支持在“云计算”环境中或作为“软件即服务(SaaS)”执行相关操作。例如,至少一些所述操作可由一群计算机(作为包括处理器的机器的示例)执行,这些操作可经由网络(例如,因特网)以及经由一个或多个适当接口(例如,应用程序接口(API))来访问。
某些所述操作的执行可分布在不仅驻留在单个机器内而且跨越许多机器部署的一个或多个处理器之间。在一些实例实施例中,所述一个或多个处理器或处理器实施模块可位于单个地理位置中(例如,在家庭环境、办公室环境或服务器群组内)。在其它实例实施例中,所述一个或更多个处理器或处理器实施模块可跨越许多地理位置而分布。
本说明书的一些部分是在对作为比特或二进制数字信号存储在机器存储器(例如,计算机存储器)内的数据进行的操作的算法或符号表示的方面来呈现。这些算法或符号表示是数据处理领域的技术人员用来将其工作的实质传达给本领域的技术人员的技术的示例。如本文所使用,“算法”是导致期望结果的操作或类似处理的自洽序列。在此上下文中,算法和操作涉及物理量的物理操纵。通常,但未必,这些量可采用能够由机器存储、访问、传送、组合、比较或以其他方式操纵的电信号、磁信号、或光学信号的形式。有时,主要出于通用的原因,方便的是,使用诸如“数据”、“内容”、“比特”、“值”、“元素”、“符号”、“字符”、“项”、“数字”、“数值”等用词来称呼这些信号。然而,这些用词仅是方便标记,并且与适当的物理量相关联。
除非另外具体叙述,否则本文中使用诸如“处理”、“计算”、“确定”、“呈现”、“显示”等用词进行的论述可指机器(例如,计算机)的动作或过程,其中该机器(例如,计算机)操纵或变换被表示为一个或多个存储器(例如,易失性存储器、非易失性存储器、或其组合)、寄存器或接收、存储、发送或显示信息的其它机器组件内的物理(例如,电子、磁性、或光学)量的数据。
如本文所使用,对“一个实施例”或“实施例”的任何引用意味结合该实施例描述的特定元件、特征、结构、或特性包括在至少一个实施例中。本说明书中各种位置处的用语“在一个实施例中”的出现未必全部指同一实施例。
可使用表述“耦合”和“连接”与其衍生词来描述一些实施例。例如,可使用术语“耦合”来描述一些实施例以指示两个或更多个元件直接物理接触或电接触。然而,术语“耦合”也可意味两个或更多个元件彼此不直接接触,而是仍彼此共同操作或交互。在此上下文中,实施例不受限制。
如本文所使用,术语“包括”、“包含”、“具有”或其任何其它变化旨在涵盖非排他性包含。例如,包括元素的列表的过程、方法、物品、或设备未必仅限于那些元素,而是可包含未明确列出或此过程、方法、物品或设备固有的其它元素。此外,除非相反地进行描述,否则“或”是指包含性的或,且不是排他性的或。例如,条件A或B由以下情形中的任一者满足:A为真(或存在)并且B为假(或不存在)、A为假(或不存在)并且B为真(或存在),以及A与B两者为真(或存在)。
此外,“一”的使用用于描述本文中的实施例的元件和组件。这仅是为了方便而进行并且给出描述的一般意义。此描述应被视为包括一个或至少一个,并且除非明显另有所指,否则单数形式还包含复数形式。
此外,附图仅出于说明的目的而描绘地图编辑器系统的优选实施例。本领域的技术人员将容易从下文论述认识到,可在不偏离本文所述的原理的情况下使用本文所说明的结构和方法的替选实施例。
在查阅本公开之后,本领域的技术人员将通过本文中的所公开的原理而了解用于生成和使用复合地理围栏的系统和过程的附加替选结构和功能设计。因此,虽然已说明和描述特定实施例和应用,但应理解,所公开的实施例不限于本文所公开的精确构造和组件。可在不偏离随附权利要求书中所限定的精神和范围的情况下对本文中所公开的方法和设备的布置、操作和细节进行对本领域的技术人员而言显而易见的各种修改、改变和变化。
Claims (11)
1.一种用于在移动计算装置上生成地理地点的虚拟周界的方法,所述方法包括:
在移动计算装置处经由无线通信网络从地图数据服务器接收描述地理地点的几何形状的单个复杂形状;
在所述移动计算装置处获得一个或多个可缩放基本形状的有限集合;
在所述移动计算装置处将所述几何形状的近似表示生成为多个分量形状,每一个分量形状选自所述可缩放基本形状的所述有限集合,包括:
确定所述几何形状的边界形状,
确定填充所述边界形状的多个非重叠基本形状,以及
从所述多个非重叠的基本形状中消除完全在所述几何形状之外的基本形状;其中,剩余的非重叠形状限定了近似构成所述地理地点的几何形状的多个分量形状;
在所述移动计算装置处将所述几何形状的所述近似表示用作所述地理地点的虚拟周界,包括:
确定与所述移动计算装置的当前位置相对应的地理点是否位于所述虚拟周界内,以及
生成所述地理点是否在所述虚拟周界内的指示。
2.根据权利要求1所述的方法,其中,所述几何形状的所述边界形状是边界长方形,并且其中所述多个非重叠的基本形状是填充所述边界长方形的圆的初始多个非重叠实例。
3.根据权利要求1所述的方法,其中,生成所述几何形状的所述近似表示包括:
确定多个图块,所述多个图块中的每一个至少部分地由所述几何形状覆盖;
确定完全覆盖所述图块的相应圆的半径;以及
将所述多个图块中的每一个映射到所述相应圆中。
4.根据权利要求1所述的方法,其中,所述可缩放基本形状的所述有限集合包括以下中的一个或多个:(i)六边形,(ii)三角形,(iii)长方形,(iv)平行四边形,或(v)圆。
5.根据权利要求1所述的方法,其中:
所述单个复杂形状描述了3D轮廓;以及
所述形状的所述有限集合包括一个或多个3D实体。
6.根据权利要求1所述的方法,其中,所述地理地点的所述虚拟周界是所述地理地点的内部虚拟周界;所述方法还包括:
由所述一个或多个计算装置接收与所述地理地点相关联的多个特征的几何形状的描述;
由所述一个或多个计算装置将所述地理地点的几何形状连同所述多个特征的几何形状的近似表示生成为第二多个分量形状,所述第二多个分量形状中的每一个分量形状选自所述形状的所述有限集合,其中,所述第二多个分量形状与所述地理地点的外部虚拟周界相对应。
7.一种便携式计算装置,包括:
定位模块,所述定位模块被配置成确定所述计算装置的当前位置;以及
处理硬件,所述处理硬件耦合到所述定位模块并且被配置成:
经由通过无线通信网络将所述计算装置耦合到地图数据服务器的网络接口接收地理地点的虚拟周界的描述,所述描述包括近似地构成所述地理地点的几何形状的多个分量形状,其中,通过下述方式从一个或多个可缩放基本形状的有限集合中选择所述分量形状:(i)确定所述几何形状的边界形状,(ii)确定填充所述边界形状的多个非重叠基本形状,以及(iii)从所述多个非重叠基本形状中消除完全在所述几何形状之外的基本形状;其中,剩余的非重叠形状限定了近似构成所述地理地点的几何形状的所述多个分量形状;
确定与所述便携式计算装置的所述当前位置相对应的几何点是否处于所述多个分量形状中的一个或多个分量形状内;以及
响应于确定所述几何点处于所述多个分量形状中的至少一个分量形状内,生成所述便携式计算装置处于所述地理地点的所述虚拟周界内的指示。
8.根据权利要求7所述的便携式计算装置,其中,所述虚拟周界是内部周界,所述处理硬件被进一步被配置成:
经由通过无线通信网络将所述便携式计算装置耦合到地图数据服务器的网络接口接收所述地理地点的外部周界的描述,所述描述包括第二多个分量形状,所述第二多个分量形状近似地构成所述地理地点的所述几何形状连同与所述地理地点相关联的多个特征的几何形状;
确定与所述便携式计算装置的所述当前位置相对应的所述几何点是否处于所述第二多个分量形状中的一个或多个内;以及
响应于确定所述几何点处于所述第二多个分量形状中的至少一个内,而生成所述便携式计算装置处于所述地理地点的所述外部周界内的指示。
9.根据权利要求7所述的便携式计算装置,其中,所述多个分量形状包括圆的多个实例。
10.根据权利要求7所述的便携式计算装置,其中,所述可缩放基本形状的所述有限集合包括:(i)六边形,(ii)三角形,(iii)长方形,(iv)平行四边形,和(v)圆。
11.根据权利要求7所述的便携式计算装置,其中,所述虚拟周界是3D轮廓,并且其中,所述多个分量形状中的每一个分量形状是3D实体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461938537P | 2014-02-11 | 2014-02-11 | |
US61/938,537 | 2014-02-11 | ||
PCT/US2015/015168 WO2015123186A1 (en) | 2014-02-11 | 2015-02-10 | Virtual geographic perimeters made up of multiple component shapes |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106068656A CN106068656A (zh) | 2016-11-02 |
CN106068656B true CN106068656B (zh) | 2020-11-06 |
Family
ID=52589791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580013021.XA Active CN106068656B (zh) | 2014-02-11 | 2015-02-10 | 由多个分量形状构成的虚拟地理周界 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9668097B2 (zh) |
EP (1) | EP3105948B1 (zh) |
CN (1) | CN106068656B (zh) |
DE (1) | DE202015009195U1 (zh) |
WO (1) | WO2015123186A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10657768B2 (en) | 2012-06-22 | 2020-05-19 | Zonal Systems, Llc | System and method for placing virtual geographic zone markers |
US10360760B2 (en) | 2012-06-22 | 2019-07-23 | Zonal Systems, Llc | System and method for placing virtual geographic zone markers |
US9317996B2 (en) | 2012-06-22 | 2016-04-19 | II Robert L. Pierce | Method for authenticating a wager using a system and method for interacting with virtual geographic zones |
US10237349B1 (en) * | 2015-05-11 | 2019-03-19 | Providence IP, LLC | Method and system for the organization and maintenance of social media information |
US10068476B2 (en) | 2016-11-22 | 2018-09-04 | International Business Machines Corporation | Vehicle location discrepancy detection and mitigation |
CN106792538A (zh) * | 2016-12-29 | 2017-05-31 | 哈尔滨海能达科技有限公司 | 信息上报方法、终端模式切换方法及数字通信系统 |
US10231167B2 (en) | 2017-06-30 | 2019-03-12 | Otis Elevator Company | Building access zone specification for mobile applications |
US10433107B1 (en) | 2018-05-23 | 2019-10-01 | Futurewei Technologies, Inc. | System and method for enabling polygon geofence services on mobile devices |
EP3804361A1 (en) * | 2018-05-28 | 2021-04-14 | HERE Global B.V. | Complex geofence definition |
EP3672206A1 (en) | 2018-12-20 | 2020-06-24 | Sony Mobile Communications Inc. | A method for determining a geofence parameter of a geofence area related to a point of interest and related electronic device |
US20210248776A1 (en) * | 2020-02-07 | 2021-08-12 | Omnitracs, Llc | Image processing techniques for identifying location of interest |
EP3879438A1 (en) * | 2020-03-10 | 2021-09-15 | YARA International ASA | Method for preparing a representation of a geographical polygon |
CN115454434A (zh) * | 2021-06-09 | 2022-12-09 | 华为技术有限公司 | 基于组合围栏的控制方法、装置、电子设备和服务器 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060126556A1 (en) * | 2004-12-14 | 2006-06-15 | Roundbox, Inc. | Territory mapping for efficient content distribution in wireless networks using broadcast/multicast |
AU2006220547B2 (en) * | 2005-03-07 | 2010-12-02 | Telecommunication Systems, Inc. | Method and system for identifying and defining geofences |
US20110055290A1 (en) * | 2008-05-16 | 2011-03-03 | Qing-Hu Li | Provisioning a geographical image for retrieval |
KR101210597B1 (ko) * | 2008-12-11 | 2012-12-11 | 한국전자통신연구원 | 이동체의 맵 매칭 장치 및 그 방법 |
US20110178811A1 (en) * | 2010-01-19 | 2011-07-21 | Telenav, Inc. | Navigation system with geofence validation and method of operation thereof |
US8489127B2 (en) * | 2010-04-20 | 2013-07-16 | Apple Inc. | Context-based reverse geocoding |
WO2012050392A2 (ko) | 2010-10-15 | 2012-04-19 | 서울대학교산학협력단 | 생물막 형성 억제 미생물 고정화 용기 및 이를 이용한 분리막 수처리 장치 |
US20120172027A1 (en) * | 2011-01-03 | 2012-07-05 | Mani Partheesh | Use of geofences for location-based activation and control of services |
JP2012215963A (ja) * | 2011-03-31 | 2012-11-08 | Hitachi Consumer Electronics Co Ltd | 映像表示装置 |
US8471701B2 (en) * | 2011-05-30 | 2013-06-25 | Microsoft Corporation | Asymmetric dynamic geo-fencing |
US8941489B2 (en) * | 2011-10-20 | 2015-01-27 | Qualcomm Incorporated | Method and/or apparatus for geofence management |
US20130117266A1 (en) * | 2011-11-09 | 2013-05-09 | Microsoft Corporation | Geo-fence based on geo-tagged media |
WO2014072510A2 (en) | 2012-11-09 | 2014-05-15 | Doro AB | Improved geofencing |
CN103391503A (zh) * | 2013-07-16 | 2013-11-13 | 上海即加信息科技有限公司北京分公司 | 一种确定虚拟地理范围的方法 |
US9936346B2 (en) * | 2013-11-28 | 2018-04-03 | Microsoft Technology Licensing, Llc | Geofences from context and crowd-sourcing |
-
2015
- 2015-02-10 DE DE202015009195.4U patent/DE202015009195U1/de active Active
- 2015-02-10 EP EP15706606.9A patent/EP3105948B1/en active Active
- 2015-02-10 WO PCT/US2015/015168 patent/WO2015123186A1/en active Application Filing
- 2015-02-10 US US14/618,653 patent/US9668097B2/en active Active
- 2015-02-10 CN CN201580013021.XA patent/CN106068656B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106068656A (zh) | 2016-11-02 |
WO2015123186A1 (en) | 2015-08-20 |
EP3105948B1 (en) | 2018-12-05 |
DE202015009195U1 (de) | 2016-11-15 |
EP3105948A1 (en) | 2016-12-21 |
US9668097B2 (en) | 2017-05-30 |
US20150230054A1 (en) | 2015-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106068656B (zh) | 由多个分量形状构成的虚拟地理周界 | |
US20220019344A1 (en) | Integrating Maps and Street Views | |
EP2737279B1 (en) | Variable density depthmap | |
US9417777B2 (en) | Enabling quick display transitions between indoor and outdoor map data | |
CN105190239B (zh) | 用于使用移动装置的导航的方向性及x射线视图技术 | |
CN105164500B (zh) | 用于在数字地图上指示用户位置以及面对方向的系统和方法 | |
Alam et al. | Implementation of haversine formula for counting event visitor in the radius based on Android application | |
US9134886B2 (en) | Providing indoor facility information on a digital map | |
CN109416258B (zh) | 用于在数字地图接口中的自适应性场地缩放的方法、设备和计算机程序产品 | |
US9583074B2 (en) | Optimization of label placements in street level images | |
CN104331423B (zh) | 一种基于电子地图的定位方法和装置 | |
US8823734B1 (en) | Indicating availability of indoor content on a digital map | |
US10878278B1 (en) | Geo-localization based on remotely sensed visual features | |
US9196151B2 (en) | Encoding location-based reminders |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: American California Applicant after: Google limited liability company Address before: American California Applicant before: Google Inc. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |