无法绘制直线折线扑谷歌地图

时间:2019-08-08 13:04:42

标签: google-maps flutter polyline

我已经使用GoogleMaps小部件实现了一个屏幕,并使用了

final Set<Polyline> _polyline = {};

List<LatLng> latlng = List();

带有

的示例
  latlng.add(LatLng(7.2008,79.8737));
  latlng.add(LatLng(7.2018,79.8737));
  latlng.add(LatLng(7.2028,79.8739));
  latlng.add(LatLng(7.2028,79.8707));
  latlng.add(LatLng(7.2008,79.8700));
  latlng.add(LatLng(7.1998,79.8695));

但是折线这样绘制

screen shot

这是谷歌地图的代码

    Widget _googlemap(BuildContext context) {
      Size size = MediaQuery.of(context).size;

      return Container(
        height: size.height,
        width: size.width,
        child: GoogleMap(
          compassEnabled: true,
          mapType: MapType.normal,
          myLocationButtonEnabled: true,
          myLocationEnabled: true,
          onMapCreated: (GoogleMapController controller) async {
            _controller.complete(controller);
            final GoogleMapController mapController = await _controller.future;
            Position position = await Geolocator()
                .getLastKnownPosition(desiredAccuracy: LocationAccuracy.high);

            controller.animateCamera(CameraUpdate.newCameraPosition(CameraPosition(
                target: LatLng(position.latitude, position.longitude), zoom: 15)));
          },
          markers: _markers.values.toSet(),
          initialCameraPosition: _initialCameraPosition,
          polylines: _polyline ,
        ),
      );
    }

,我期望直线不会出现连接端,而是重新开始。我很高兴有人可以帮助我,谢谢!

1 个答案:

答案 0 :(得分:1)

您使用的是6点,而不是4点,因此在“正方形”的“垂直”行中有3点。这正是您的问题!这3个点不是线性的。如果仅使用4点,您将获得“直线”线条!