在传单中创建不同颜色的折线
create polylines with different colors in leaflet
我有一个函数创建多晶线&将折线添加到映射
function makeRoute(e)
{
if(pointsSelection.length > 0)
{
pointsSelection.push(e.target.getLatLng());
var firstpolyline = new L.Polyline(pointsSelection, {
color: 'blue',
weight: 5,
smoothFactor: 1
});
firstpolyline.addTo(map);
pointsArrayCollection.push(pointsSelection);
polyArrayCollection.push(firstpolyline);
selection = [];
pointsSelection = [];
}
else
{
alert("Please select more than one point");
}
}
我的问题是它每次都添加相同颜色的线。
我想每次都添加不同颜色的多聚线。
如何动态改变折线的颜色
对于改变颜色,我使用随机颜色生成器函数。
使用get_random_color()代替'blue':
function get_random_color()
{
var letters = '0123456789ABCDEF'.split('');
var color = '#';
for (var i = 0; i < 6; i++ )
{
color += letters[Math.round(Math.random() * 15)];
}
return color;
}
扩展viabhav shah的答案(这是正确的),你的总解决方案将是:
function makeRoute(e) {
if(pointsSelection.length > 0) {
pointsSelection.push(e.target.getLatLng());
var firstpolyline = new L.Polyline(pointsSelection, {
color: get_random_color(),
weight: 5,
smoothFactor: 1
});
firstpolyline.addTo(map);
pointsArrayCollection.push(pointsSelection);
polyArrayCollection.push(firstpolyline);
selection = [];
pointsSelection = [];
} else {
alert("Please select more than one point");
}
// Function to create a random color
function get_random_color() {
var letters = '0123456789ABCDEF'.split('');
var color = '#';
for (var i = 0; i < 6; i++ ) {
color += letters[Math.round(Math.random() * 15)];
}
return color;
}
}
Vaibhav Shah有正确答案,所以请为他的解决方案投票。
相关文章:
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 高亮显示时编辑文本大小和颜色
- 用与线条相同的颜色填充多折线图上的点
- 更改使用Chart.js创建的图表中的轴线颜色
- 如何使用jquery更改html中的背景颜色
- 动态更改高图中的系列颜色
- 跟踪jqplot垂直折线图的鼠标位置
- jsf中两个字符串的颜色代码差异
- 我们如何使用css或JavaScript在i/j上更改句点(点)的颜色
- charts js更改折线图轴的字体大小/颜色和背景线
- 为什么谷歌地图的折线笔触颜色总是黑色
- 折线图上的角图错误:无法解析颜色
- 改变折线的颜色和宽度- ESRI Javascript API
- 在传单中创建不同颜色的折线
- 在地图上用不同的颜色绘制多条折线
- 如何通过点击改变折线的颜色
- 改变折线图中圆圈的颜色
- nv无法更改折线图中线条的颜色
- 使用Google地图api V3 ASP.net绘制不同颜色的折线
- chart .js折线图设置背景颜色