Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.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 Mapbox js:基于特性更改多段线的不同板条_Javascript_Google Maps_Mapbox_Here Api_Google Polyline - Fatal编程技术网

Javascript Mapbox js:基于特性更改多段线的不同板条

Javascript Mapbox js:基于特性更改多段线的不同板条,javascript,google-maps,mapbox,here-api,google-polyline,Javascript,Google Maps,Mapbox,Here Api,Google Polyline,我有一个对象数组,每个对象包含坐标和不同的属性。现在,我想在地图上绘制这些板条对象的多段线,该多段线根据对象的特性更改颜色。但是因为我发现折线只有一个颜色对象。。因此,我无法为多段线上的不同点定义不同的颜色。。 这有可能吗?我在谷歌地图或这里API中也找不到类似的东西 非常感谢 使用HERE API时 只能有一种颜色。解决方法可能是画几条线,每条线都有自己的颜色。让我们试一试 下面的示例获取一个包含lat/long和颜色信息的数组,并使用该数组绘制一系列线。通过将所有线添加到一个对象,我们可以像

我有一个对象数组,每个对象包含坐标和不同的属性。现在,我想在地图上绘制这些板条对象的多段线,该多段线根据对象的特性更改颜色。但是因为我发现折线只有一个颜色对象。。因此,我无法为多段线上的不同点定义不同的颜色。。 这有可能吗?我在谷歌地图或这里API中也找不到类似的东西


非常感谢

使用HERE API时 只能有一种颜色。解决方法可能是画几条线,每条线都有自己的颜色。让我们试一试

下面的示例获取一个包含lat/long和颜色信息的数组,并使用该数组绘制一系列线。通过将所有线添加到一个对象,我们可以像处理单个对象一样处理它们

var matrix = [
  [new H.geo.Point(41.759876, 12.942710), 'red'],
  [new H.geo.Point(41.768711, 12.947602), 'orange'],
  [new H.geo.Point(41.772936, 12.956271), 'yellow'],
  [new H.geo.Point(41.773704, 12.964082), 'green'],
  [new H.geo.Point(41.770824, 12.975497), 'blue'],
  [new H.geo.Point(41.764230, 12.980647), 'indigo'],
  [new H.geo.Point(41.758596, 12.982965), 'violet']
];

var rainbowGroup = new H.map.Group();

function drawRainbow(map) {
  map.addObject(rainbowGroup);
  for (var i = 0, len = matrix.length-1; i < len; i++) {
    addRainbowSegment(matrix[i], matrix[i+1], map);
  }
}

function addRainbowSegment(point, nextPoint, map) {
  var strip = new H.geo.Strip();
  strip.pushPoint(point[0]);
  strip.pushPoint(nextPoint[0]);
  rainbowGroup.addObject(new H.map.Polyline(
    strip, { style: { lineWidth: 20, strokeColor: point[1] }}
  ));
}
var矩阵=[
[新H.geo.点(41.759876,12.942710),“红色”],
[新H.geo.Point(41.768711,12.947602),“橙色”],
[新H.geo.Point(41.772936,12.956271),“黄色”],
[新H.geo.Point(41.773704,12.964082),“绿色”],
[新H.geo.Point(41.77082412.975497),“蓝色”],
[新H.geo.Point(41.764230,12.980647),“靛蓝”],
[新H.geo.Point(41.758596,12.982965),“紫罗兰色”]
];
var rainbowGroup=新的H.map.Group();
功能图(地图){
map.addObject(rainbowGroup);
对于(变量i=0,len=matrix.length-1;i
最终结果应该看起来像一条连续的线,其中每个线段都有不同的颜色。大概是这样的:


看!彩虹!(独角兽单独出售。)

这真是太棒了!非常感谢。只是别忘了叫彩虹(地图);功能!