如何解决在 Flutter 中,如何通过点击屏幕或单击按钮在 openstreetmap 上添加标记?
应该很简单,但我似乎找不到怎么做。
在 Flutter / openstreetmap 中,我需要: (1) 通过点击地图和/或单击按钮在地图上放置标记; (2) 用一条线连接这些标记中的两个。
任何想法将不胜感激。
解决方法
1) 添加标记:
List<Marker> markers = [];
内部构建方法:
FlutterMap(
mapController: _mapController,options: MapOptions(
center: LatLng(41.238250,69.342939),zoom: 9.6,onTap: (latlng) {
setState(() {
markers.add(
Marker(
width: 150.0,height: 150.0,point: latlng,builder: (ctx) => const Icon(
Icons.location_on,color: Colors.red,size: 35.0,),);
});
}),layers: [
MarkerLayerOptions(
markers: [
for (int i = 0; i < markers.length; i++) markers[i]
],],
2) 如果您想查询两点之间的路线,您可以使用这项服务,它是免费的。 http://project-osrm.org
我用来获取两点之间路线的链接。
需要 API 密钥和起点经纬度和结束点经纬度。
响应为您提供多个经纬度点,如果您将这些点提供给地图的 polyLine 参数,它将在两点之间绘制一条道路线
如果您需要对我回答的某些部分进行澄清,请告诉我
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。