如何在 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);
所以我正在创建一条多段线以在另一个地方使用它,但是在创建实例之后多段线变得混乱,这可能是由于线串或什么原因造成的?
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);