Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/436.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
Javascript 使用标记突出显示传单中的区域?_Javascript_Leaflet - Fatal编程技术网

Javascript 使用标记突出显示传单中的区域?

Javascript 使用标记突出显示传单中的区域?,javascript,leaflet,Javascript,Leaflet,我试图突出显示由节点标记包围的区域。目前,我正在通过创建多边形来实现这一点。数据库中的每个节点都指定了一个多边形ID,具有相同ID的节点将被推送到数组中作为同一多边形的顶点 但是,当数据按照输入表格的顺序从数据库中检索时,多边形自相交的情况如下图所示: 我试图通过从第一个节点开始查找最近的节点来对顶点进行排序,然后从该节点再次查找最近的节点,依此类推。它在某些情况下有效,但某些情况下仍具有如下自相交: 是否有任何传单插件可以让我突出显示由节点包围的区域?下面是我对顶点排序的代码。相同多边形I

我试图突出显示由节点标记包围的区域。目前,我正在通过创建多边形来实现这一点。数据库中的每个节点都指定了一个多边形ID,具有相同ID的节点将被推送到数组中作为同一多边形的顶点

但是,当数据按照输入表格的顺序从数据库中检索时,多边形自相交的情况如下图所示:

我试图通过从第一个节点开始查找最近的节点来对顶点进行排序,然后从该节点再次查找最近的节点,依此类推。它在某些情况下有效,但某些情况下仍具有如下自相交:

是否有任何传单插件可以让我突出显示由节点包围的区域?下面是我对顶点排序的代码。相同多边形ID的所有顶点在排序之前首先被推入数组“arr”

  var i;
  var j;
  var flag = 0;
  var sortedarray = [];
  var finalarray = [];

  for (j = 0; j < initiallength - 1; j++) {
    if (flag == 0) {
      finalarray.push(arr[0]);
      arr.splice(0, 1);
      flag++;
    }

    sortedarray = [];

    for (i = 0; i < arr.length; i++) {
      var x = L.GeometryUtil.distance(map, finalarray[j], arr[i]);
      sortedarray.push(x);
    }

    var smallest = Math.min.apply(Math, sortedarray);
    var x = sortedarray.indexOf(smallest);
    finalarray.push(arr[x]);

    arr.splice(x, 1);
  }
    var polygon = L.polygon(finalarray).setStyle(myStyle).addTo(map);
vari;
var j;
var标志=0;
var-Darray=[];
var finalarray=[];
对于(j=0;j