2016-05-06 5 views
0

私は現在Android用のMaps SDKをテストしています。マーカーがあり、画面に収まるようにズームインする必要があります。私は現在、GeoBoundingBoxを使ってみましたが、一度に2つの場所(コーナー)を挿入する必要があります。ドキュメントを検索しましたが、関連する情報が見つかりませんでした。 これは可能なのですか?どうすればいいですか?私はそれをここでSDK Androidはいくつかのマーカーにズームします

GeoBoundingBox geoBoundingBox = hereMap.getBoundingBox(); 
    if (data != null && data.getItemGroups() != null) { 
     for (ItemGroup itemGroup: data.getItemsGroups()) { 
      ClusterLayer clusterLayer = new ClusterLayer(); 
      for (Item item : itemGroup.getItems()) { 
       if (item != null && item.isLatLngOk()) { 
        GeoCoordinate coordinate = new GeoCoordinate(item .getLat(), item .getLng()); 
        clusterLayer.addMarker(new MapMarker(coordinate, image)); 
        geoBoundingBox.merge(new GeoBoundingBox(coordinate, coordinate)); 
       } 
      } 
      hereMap.addClusterLayer(clusterLayer); 
      hereMap.zoomTo(geoBoundingBox, Map.Animation.LINEAR, 0); // This does not work 
     } 
    } 
+0

なぜ質問が下落したのかをご確認ください。ありがとう –

答えて

3

主な問題は、ここでSDKのマージメソッドが新しい値を古いものに設定するのではなく、新しいgeoBoundingボックスを返すことでした。したがって、主な変更点は次のとおりです。

geoBoundingBox = geoBoundingBox.merge(new GeoBoundingBox(coordinate, coordinate)); 
+0

喜んでそれは助けました:) –

1

を実行しようとしましたどのように

あなたが特異点との最初の空のバウンディングボックスをマージしようとしているように見えますか?

最初の2つのマーカーからなる境界ボックスから開始し、追加のGeocoordinateに合わせて拡大することをお勧めします。

+0

それも試してみましたが、それは助けになりません –

+0

各ポイントを追加した後、境界ボックスのtopLeft()とbottomRight()を印刷してください。問題の内容を教えてください。 –

+0

お返事ありがとうございました。主な問題は異なっていましたが、 –

関連する問題