5

MapView指定された座標に線を引く方法は?

私の知る限り、iPhoneでは可能です。

お知らせ下さい。

前もって感謝します。

4

2 に答える 2

21

MapViewを使用するには、アクティビティでMapActivityを拡張する必要があります。

描画したい線(または実際には他のもの)ごとに、オーバーレイOverlayをサブクラス化し、のonDraw()メソッドで描画を行う必要があります。作成したら、のようなものを使用Overlayしてに追加します。MapViewmMapView.getOverlays().add(new MyOverlay());

カスタム内では、のようなものでプロジェクションOverlayを取得する必要があります。から、 toPixels( GeoPoint 、Point)メソッドを使用してGPS座標を画面座標に変換し、通常のAndroid2D描画メソッドを使用して渡されたCanvasに描画することができます。Projection p = mapView.getProjection();ProjectionProjection

それが基本です...他に何か必要な場合は、質問してください。

于 2009-12-21T11:46:01.767 に答える
0

このコード、サンプル座標、およびその使用法を使用できます。

    //...setting map and starting 

    ArrayList<LatLng> list = new ArrayList<>();
    list.add(new LatLng(41.020244, 29.045663));
    list.add(new LatLng(41.019904, 29.045448));
    list.add(new LatLng(41.019451, 29.044397));
    list.add(new LatLng(41.019710, 29.043474));


    PolylineOptions options = new PolylineOptions().width(5).color(Color.BLUE).geodesic(true);
    for (int z = 0; z < list.size(); z++) {
        LatLng point = list.get(z);
        options.add(point);
    }
    mGoogleMap.addPolyline(options);

    CameraPosition cameraPosition;
    cameraPosition = new CameraPosition.Builder().target(new LatLng(41.020811, 29.046113)).zoom(15).build();

    mGoogleMap.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
于 2015-12-14T12:09:06.147 に答える