forwardGeocode method
- String address
//////////// //////////// Forward geocoding (address to coordinates)
Implementation
// II.C - Geocoding Methods
///////////////
/// Forward geocoding (address to coordinates)
Future<Map<String, dynamic>?> forwardGeocode(String address) async {
if (address.isEmpty) return null;
try {
final encodedAddress = Uri.encodeComponent(address);
final url = Uri.https(_baseUrl, '$_geocodingPath/$encodedAddress.json', {
'access_token': accessToken,
'limit': '1',
});
final response = await http.get(url);
if (response.statusCode == 200) {
final data = json.decode(response.body);
if (data['features'] != null && data['features'].isNotEmpty) {
return {
'coordinates': data['features'][0]['center'],
'place_name': data['features'][0]['place_name'],
'full_response': data,
};
}
}
return null;
} catch (e) {
print('Forward geocoding error: $e');
return null;
}
}