如何在 javascript 中的 heremaps 中创建折线实例?

How to Create an instance of a polyline in heremaps in javascript?

所以我正在创建一条多段线以在另一个地方使用它,但是在创建实例之后多段线变得混乱,这可能是由于线串或什么原因造成的?

var points = [
      { lat: 52.5309825, lng: 13.3845921 },
      { lat: 52.5311923, lng: 13.3853495 }];

var linestring = new H.geo.LineString();
points.forEach(function(point) {
  linestring.pushPoint(point);
});

// Initialize a polyline with the linestring:
var routeLine = new H.map.Polyline(linestring);```

[![if i give multiple polyline inputs the previous one is geting attached][1]][1]

Image of mixed output polylines:
  [1]: https://i.stack.imgur.com/jPrHq.png

所以,我创建了一个 lineString 实例和一条多段线 instance.when 我想覆盖这条多段线 我已经将另一个新的 lineString 实例与之前的多段线实例一起使用。这使得我每次进入两个不同的地方时都会获得新的路由

我认为您要查找的是 H.map.Polyline 对象上的 setGeometry 方法。这是一个示例代码,它使用一个 LineString 创建 Polyline,然后在 2 秒后用第二个 LineString 更新 Polyline 的几何形状:

var points1 = [
      { lat: 52.5309825, lng: 13.3845921 },
      { lat: 52.5311923, lng: 13.3853495 }];
var points2 = [
      { lat:52.532015,lng:13.385634 },
      { lat:52.531441,lng:13.386225 }];
var linestring1 = new H.geo.LineString();
var linestring2 = new H.geo.LineString();

points1.forEach(function(point) {
  linestring1.pushPoint(point);
});

var routeLine = new H.map.Polyline(linestring1);

// update polyline's geometry 
setTimeout(function() {
  routeLine.setGeometry(linestring2);
}, 2000);