getDistance method

Future<String> getDistance(
  1. String gmapsApiKey, {
  2. required double startLatitude,
  3. required double startLongitude,
  4. required double destinationLatitude,
  5. required double destinationLongitude,
  6. required TravelModes travelMode,
})

Implementation

Future<String> getDistance(String gmapsApiKey,
    {required double startLatitude,
    required double startLongitude,
    required double destinationLatitude,
    required double destinationLongitude,
    required TravelModes travelMode}) async {
  // Initializing PolylinePoints
  polylinePoints = poly.PolylinePoints();
  // Generating the list of coordinates to be used for
  // drawing the polylines
  poly.PolylineResult result =
      await polylinePoints.getRouteBetweenCoordinates(
          '$gmapsApiKey', // Google Maps API Key
          poly.PointLatLng(startLatitude, startLongitude),
          poly.PointLatLng(destinationLatitude, destinationLongitude),
          travelMode: travelMode == TravelModes.bicycling
              ? poly.TravelMode.bicycling
              : travelMode == TravelModes.driving
                  ? poly.TravelMode.driving
                  : travelMode == TravelModes.walking
                      ? poly.TravelMode.walking
                      : poly.TravelMode.transit);
  // Adding the coordinates to the list
  if (result.points.isNotEmpty) {
    for (var point in result.points) {
      polylineCoordinates.add(Gmap.LatLng(point.latitude, point.longitude));
    }
  } else {
    print('Polylines are emplty');
  }
  return loopIt();
}