英国地理编码的邮政编码

时间:2014-04-23 13:13:11

标签: google-maps geolocation postal-code

我早上大部分时间环顾四周,并没有找到一种合适的方法,可以使用谷歌地图从他们的地理位置(经度/纬度)找到英国邮政编码,有没有人有这方面的经验?< / p>

据我所知,皇家邮政有一个用于从地理位置进行邮政编码搜索的API,但这种数据的价格非常昂贵,当然还有另一种方法吗?

要注意,我想要实现的功能是:http://www.rightmove.co.uk/draw-a-search.html。创建形状时,必须提供英国邮政编码列表(邮政编码的前3/4位数字)。

提前致谢。

1 个答案:

答案 0 :(得分:2)

您至少有3项要求

  1. 带有坐标的英国邮政编码列表。
  2. 在地图上绘制多边形。
  3. 在多边形内找到邮政编码。
  4. 谷歌#1(英国邮政编码坐标免费)。存储数据库中所需的数据

    将Google Shape库用于#2

    对于#3你

    使用以下查询消除多边形以外的大部分邮政编码。(服务器端)

    SELECT  name, lat, lng FROM table WHERE (lat BETWEEN minLat 
                          AND minLat )AND (lng BETWEEN minLng AND minLng)
    

    然后使用多边形中的点来消除多边形(客户端)之外的点

    function pointInPolygon(polySides,polyX,polyY,x,y) {
     var j = polySides-1 ;
      oddNodes = 0;
      for (i=0; i<polySides; i++) {
        if (polyY[i]<y && polyY[j]>=y  ||  polyY[j]<y && polyY[i]>=y) {
            if (polyX[i]+(y-polyY[i])/(polyY[j]-polyY[i])*(polyX[j]-polyX[i])<x)  {
                oddNodes=!oddNodes; 
            }
        }
       j=i; }
    
      return oddNodes;
    }
    

    Link显示#2&amp; #3