gpt4 book ai didi

google-maps - Flutter 绘制多条折线颜色

转载 作者:行者123 更新时间:2023-12-05 06:17:01 25 4
gpt4 key购买 nike

我有很多次旅行,每次旅行都有一个职位列表。我需要为每次旅行分配一种颜色,但发生的事情是,在绘制线条时,不是为每次旅行更改新颜色,而是为所有已绘制的折线更改颜色。我该如何为每次旅行做这件事?

getTrips() async {
await Future.forEach(trips, (element) async {

List positions = element['positions'] as List;
await Future.forEach(positions, (element) async {

latitude = element['coordinates'][0];
longitude = element['coordinates'][1];
direction = element['direction'] ?? 0;

//Current position
position = LatLng(latitude ?? 0, longitude ?? 0);
positionList.add(position);

addMarker();

});

});}

addMarker() async {

var m = markers.firstWhere((p) => p.markerId == MarkerId(equipmentId), orElse: () => null);
if (markers.isNotEmpty) {
markers.remove(m);
}

selectedMarker = MarkerId(equipmentId);
markers
..add(Marker(
visible: true,
markerId: selectedMarker,
position: position,
icon: customIcon,
anchor: Offset(0.5, 0.5),
rotation: direction,
));

_polyline.add(Polyline(
polylineId: PolylineId(_polylineIdCounter.toString()),
visible: true,
width: 6,
points: positionList,
color: tripColors[++colorIndex % tripColors.length],
));
_polylineIdCounter++;

cPosition = CameraPosition(
zoom: cameraZoom,
target: LatLng(position.latitude, position.longitude),
);

if (mounted) setState(() {});
_animateCamera(cPosition);
}

最佳答案

我知道这已经有一段时间了,但以防万一有人需要这个,那就给你吧。

理论上,polyline 属性是一个“Set{}”,这意味着您可以拥有多个折线,因此为每次旅行创建一条具有不同颜色的不同折线并将它们全部添加到集合中。

我相信应该可以解决它。

关于google-maps - Flutter 绘制多条折线颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61836447/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com