GeoRouter is a Flutter package that provides an easy-to-use API to request directions between points using OpenStreetMap Route Service Machine (OSRM).
- Request directions between two or more points using different travel modes (driving, walking, cycling, or transit).
- Decode polylines returned by OSRM into a list of latitude/longitude points.
- Handles errors and exceptions thrown by OSRM.
- Add the following to your pubspec.yaml file: In your pubspec.yaml file, add the following dependency:
dependencies:
georouter: <lastest>
- Import the package
import 'package:georouter/georouter.dart';
- Use package:
final georouter = GeoRouter(mode: TravelMode.driving);
final coordinates = [
PolylinePoint(latitude: 51.5074, longitude: -0.1278), // London, UK
PolylinePoint(latitude: 48.8566, longitude: 2.3522), // Paris, France
];
try {
final directions = await georouter.getDirectionsBetweenPoints(coordinates);
// Do something with the directions
} on GeoRouterException catch (e) {
// Handle GeoRouterException
} on HttpException catch (e) {
// Handle HttpException
}
http: ^0.13.5