Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google maps 如何使用谷歌地图创建带有位置检测的销售区域地图?_Google Maps_Google Maps Api 3_Geolocation_Gis - Fatal编程技术网

Google maps 如何使用谷歌地图创建带有位置检测的销售区域地图?

Google maps 如何使用谷歌地图创建带有位置检测的销售区域地图?,google-maps,google-maps-api-3,geolocation,gis,Google Maps,Google Maps Api 3,Geolocation,Gis,我想把世界地图分成几个区域 我的地区数据以国家名称、州名称、县和邮政编码的形式存在 我计划使用谷歌地图API,除非有更好的工具 如何定义这些区域?我用覆盖层吗?我的不同地理数据是否可以合并到叠加中 一旦我定义了这些区域,我如何确定一个位置并检查它位于哪个区域 到目前为止,我只收集了定义地区的数据,并研究了“销售区域地图”和在线定制地图。谷歌地图本身就是一个片段。您可以在地图片段中覆盖形状 我正在就如何界定领土提出一些想法 https://developers.google.com/maps/do

我想把世界地图分成几个区域

我的地区数据以国家名称、州名称、县和邮政编码的形式存在

我计划使用谷歌地图API,除非有更好的工具

  • 如何定义这些区域?我用覆盖层吗?我的不同地理数据是否可以合并到叠加中

  • 一旦我定义了这些区域,我如何确定一个位置并检查它位于哪个区域


  • 到目前为止,我只收集了定义地区的数据,并研究了“销售区域地图”和在线定制地图。

    谷歌地图本身就是一个片段。您可以在地图片段中覆盖形状

    我正在就如何界定领土提出一些想法

    https://developers.google.com/maps/documentation/javascript/shapes#polylines
    
    1) 使用Bbox(边界框)——这是一个立方体。您可以定义此多维数据集的元中心。您可以提供对角线长度。您可以创建一个函数来创建Bbox多维数据集。每次将点与Bbox的元中心(X、Y、Z)进行比较时。如果你的点大于所有最低的X1、Y1、Z1,小于所有最高的X2、Y2、Z2,那么你就在这个区域内。这里,(X1,Y1,Z1)是您所在区域Bbox最低角落的地理坐标,(X1,Y1,Z1)是您所在区域bobox最高角落的地理坐标

    美国地质勘探局使用这一概念来定义领土。以下是链接:

    https://earthquake.usgs.gov/earthquakes/feed/v1.0/geojson.php
    

    2) 既然你已经说过了,你的领土是以州、城市名称为基础的。在您的场景中,BBOX似乎不起作用。因此,您必须定义自己的自定义区域。您可以使用反向地理编码器API获取一些地理坐标集。然后,使用这些地理坐标集,使用多边形绘制形状。下面介绍了如何绘制自定义形状(自定义区域)

    绘制自定义区域(区域)后,您现在需要检查标记(位置)是否属于该区域?
    Ans:在两个地理坐标之间画直线的每个点上找到两个。例如,如果使用10个地理坐标绘制形状,则可以有一对地理坐标{(坐标1,坐标6),(坐标2,坐标7),(坐标3,坐标8),(坐标4,坐标9),(坐标5,坐标10).现在,您将这对坐标放在ArrayList中。要知道,如果您的点在该区域内,您必须迭代比较您的点是否在ArrayList中的这对坐标内。为了获得更高的精度,您必须使用许多地理坐标来绘制区域。这就是方法。

    谢谢您的回答。关键是领土边界是否与地理边界对齐:州、县和国家边界。如果我自己绘制这些边界,将会出现错误,并且手工将世界划分为许多区域将花费很长时间。@Webster,让我浏览一下Google Maps API。