Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 将图层/平铺添加到地图_Flutter_Mapbox_Layer - Fatal编程技术网

Flutter 将图层/平铺添加到地图

Flutter 将图层/平铺添加到地图,flutter,mapbox,layer,Flutter,Mapbox,Layer,我正在使用Mapbox进行一个项目,我正在寻找一种方法将图层或瓷砖导入到我的地图中,如以下示例(在JS中): 到目前为止,我能够绘制地图: import 'package:mapbox_gl/mapbox_gl.dart'; class MapsDemo extends StatelessWidget { static const String ACCESS_TOKEN = "..."; MapboxMapController mapController;

我正在使用Mapbox进行一个项目,我正在寻找一种方法将图层或瓷砖导入到我的地图中,如以下示例(在JS中):

到目前为止,我能够绘制地图:

import 'package:mapbox_gl/mapbox_gl.dart';

class MapsDemo extends StatelessWidget {

  static const String ACCESS_TOKEN = "...";
  MapboxMapController mapController;

  static const LatLng SOURCE_LOCATION = LatLng(0.0, 0.0);

  void _onMapCreated(MapboxMapController controller) {
    mapController = controller;
  }

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
        body: MapboxMap(
      accessToken: MapsDemo.ACCESS_TOKEN,
      onMapCreated: _onMapCreated,
      initialCameraPosition: const CameraPosition(target: SOURCE_LOCATION),
    ));
  }
}

void main() {
  runApp(MaterialApp(home: MapsDemo()));
}
这是我的完整问题: 有没有办法获得给定位置的x*x正方形(或圆形)图层/瓷砖,并在地图上以正确的坐标显示


谢谢

我不确定mapbox\u gl包是否支持图层,但有一个完整的包可以在地图上查找添加图层。也许你可以看看这个

编辑: MapboxMapController中有两种方法。你可以使用它们

Future<List> queryRenderedFeatures(
     Point<double> point, List<String> layerIds, List<Object> filter) async {
   return MapboxGlPlatform.getInstance(_id)
       .queryRenderedFeatures(point, layerIds, filter);
 }

 Future<List> queryRenderedFeaturesInRect(
     Rect rect, List<String> layerIds, String filter) async {
   return MapboxGlPlatform.getInstance(_id)
       .queryRenderedFeaturesInRect(rect, layerIds, filter);
 }
未来的queryRenderedFeatures(
点、列表层、列表过滤器)异步{
返回MapboxGlPlatform.getInstance(\u id)
.queryRenderedFeatures(点、图层、过滤器);
}
未来查询相关功能直接(
Rect Rect、列表层、字符串过滤器)异步{
返回MapboxGlPlatform.getInstance(\u id)
.QueryRenderedFeaturesRect(rect、层、过滤器);
}

最好的方法是使用Akif推荐的颤振图:


在他们的示例中,“叠加图像”页面完全符合我的要求。

很好,可以完成这项工作!知道怎么用吗?