【问题标题】:Android Google Map v2 draw static gridsAndroid Google Map v2 绘制静态网格
【发布时间】:2017-07-03 00:14:46
【问题描述】:

仅当缩放级别为 18 时,我才尝试在地图上绘制网格。我使用以下代码成功创建了网格。但是当我移动地图时,我遇到了一个问题,创建了新的网格并且位置发生了变化。您可以看到,在右图中的屏幕截图中,我将地图向左滑动,并且网格线不一样。我想要绘制固定的网格。代码发布在图片下方。 我从 GoogleMap 的 onCameraChange 监听器调用下面的代码。

double squareSize = 5.0d; //5.0d == 50feet
final double LONGITUDE_180 = 180.0d;
final double LATITUDE_90 = 90.0d;
final double PI = 3.141592653589793d;

代码删除了它的机密。

drawPolyline 函数绘制单线

private void drawPolyline(LatLng latLng, LatLng latLng2) {
        PolylineOptions polylineOptions = new PolylineOptions();
        polylineOptions.add(latLng, latLng2);
        polylineOptions.color(Color.argb(50, 0, 0, 100));
        polylineOptions.width(3.5f);
        polylineOptions.visible(true);
        polylineOptions.geodesic(true);
        Polyline polyline = googleMap.addPolyline(polylineOptions);

        this.polylines.add(polyline);
    }

【问题讨论】:

    标签: android android-maps-v2 android-maps-utils


    【解决方案1】:
    double squareSize = 5.0d; //5.0d == 50feet
    

    那不是方形的大小改成。

    double squareSize = 1.0d;
    

    然后它会正常工作,但网格大小将是 3 米,如三词地址。 为了使它接近 50 英尺的 15 米,将 1546.0d37104.0d5.

    分开

    37104.0d 等于 1546.0d * 24

    最好在变量中提取所有这些值并将它们用作。

    double var1 = 1546.0d / 5;   // replace with value 1546.0
    double var2 = var1 * 24; // replace with value 37104.0d
    

    希望这会对你有所帮助。

    【讨论】:

      猜你喜欢
      • 2016-03-31
      • 1970-01-01
      • 1970-01-01
      • 2015-01-01
      • 2012-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多