从 Firestore 获取折线

Getting Polyline from Firestore

我能否从不同文档中检索存储在 Firestore 中的所有坐标 LatLng,并使用这些坐标在 GoogleMap API 中使用多段线构建路线。或者我是否需要将它保存在 Firestore 的数组中才能这样做?我在 Firestore 中制作一条从 3 到 4 个坐标的路线是否可能,或者是否只有 2 个坐标是将 Polyline 作为目的地和起点的最大值。先感谢您。也感谢任何文档。

我的 Firestore 图片:

Can I retrieve all the coordinates as LatLng that is stored in Firestore from different documents and use the coordinates to build a route using the Polyline in GoogleMap API.

正如我在您的屏幕截图中看到的,您数据库中的位置字段是 GeoPoint 类型。因此您需要创建一个查询,遍历结果,为每个位置创建一个新的 LatLng 对象,并将它们全部添加到折线中。

Or do I need to save it in Array in Firestore to be able to do so.

这不是强制性的。仅当这些是您的要求时才将它们保存到数组中。

I am making a route from 3 to 4 coordinates in the Firestore is it possible or is it just 2 coordinates is the max in making the Polyline as the destination and starting point.

您可以在多段线中添加任意数量的坐标。

  • Google maps : limits on number of points, vertices and polygons

编辑:

如果您只使用起点和终点,则以下代码可以正常工作:

PolylinePoints polylinePoints = PolylinePoints();
PolylineResult result = await polylinePoints.getRouteBetweenCoordinates(googleAPiKey,
        _originLatitude, _originLongitude, _destLatitude, _destLongitude);
print(result.points);

但是,如果您需要的不止于此,您确实需要一个点列表:

List<PointLatLng> result = polylinePoints.decodePolyline("_p~iF~ps|U_ulLnnqC_mqNvxq`@");
print(result);

更多信息如下: