可以使用以下代码计算多段折线的折中点:

function getMultipolylineMidpoints(multipolyline) {
  var midpoints = [];
  for (var i = 0; i < multipolyline.length; i++) {
    var polyline = multipolyline[i];
    var points = polyline.getPath();
    var numPoints = points.length;
    if (numPoints > 1) {
      var midpointIndex = Math.floor(numPoints / 2);
      var midpoint = points[midpointIndex];
      midpoints.push(midpoint);
    }
  }
  return midpoints;
}

// 示例用法
var multipolyline = [
  new qq.maps.Polyline({
    path: [
      new qq.maps.LatLng(39.984702,116.318417),
      new qq.maps.LatLng(39.981900,116.318417),
      new qq.maps.LatLng(39.981900,116.316200)
    ]
  }),
  new qq.maps.Polyline({
    path: [
      new qq.maps.LatLng(39.981900,116.316200),
      new qq.maps.LatLng(39.981900,116.314000),
      new qq.maps.LatLng(39.984702,116.314000)
    ]
  })
];
var midpoints = getMultipolylineMidpoints(multipolyline);
console.log(midpoints);

该函数接受一个 multipolyline 参数,该参数是一个由多个 qq.maps.Polyline 对象组成的数组。函数将返回一个由多个 qq.maps.LatLng 对象组成的数组,表示每个折中点的位置

js 求腾讯地图multipolyline 折中点

原文地址: http://www.cveoy.top/t/topic/hv5p 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录