在数据库中搜索属于给定(多个)lat和lon值的位置

时间:2017-04-27 11:40:26

标签: javascript php mysql google-maps

我正在尝试使用Google的绘图工具(https://developers.google.com/maps/documentation/javascript/examples/drawing-tools),这样我就可以在地图上绘制并获得坐标。

这是小提琴 - https://jsfiddle.net/mg0t5x8n/2/

function initMap() {
  var map = new google.maps.Map(document.getElementById('map'), {
    center: {lat: 52.908978, lng: -1.451871},
    zoom: 14
  });


  var drawingManager = new google.maps.drawing.DrawingManager({
    drawingMode: google.maps.drawing.OverlayType.POLYLINE,
    drawingControl: true,
    drawingControlOptions: {
      position: google.maps.ControlPosition.TOP_CENTER,
      // drawingModes: ['marker', 'circle', 'polygon', 'polyline', 'rectangle']
      drawingModes: ['polyline']
    },
    markerOptions: {icon: 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png'},
    circleOptions: {
      fillColor: '#ffff00',
      fillOpacity: 1,
      strokeWeight: 5,
      clickable: false,
      editable: true,
      zIndex: 1
    }
  });
  drawingManager.setMap(map);

  google.maps.event.addListener(drawingManager, 'polylinecomplete', function(line) {
    console.log(line.getPath().getArray().toString());
    alert(line.getPath().getArray().toString());
  });
};
initMap();

将最后一行连接到您绘制的第一行的开头后,您将获得坐标列表。 获得这些坐标后,我需要在数据库中运行一个查询(其中我有位置列表,每个都有lat和lon值),它检索属于给定点的所有位置。

我不确定这是否可以使用sql或需要不同的东西。

很抱歉,如果这个问题有点模糊,我会在很早的阶段对此进行处理,并希望获得一些信息,看看它是否可行,如果可以的话,我将如何处理它。

******更新******

在检索多边形的lat和lon值之后 - 我遇到了这个php函数(http://assemblysys.com/php-point-in-polygon-algorithm/#comment-1243)。它正在做我想做的事情 - 需要一些修改。可能对希望实现类似功能的其他人有所帮助。

0 个答案:

没有答案