ポリゴン(Googleマップのポリゴンオプションからなる)の大きなリストを持っています。描画する前に画面の境界内にあるかどうかを確認したいと思います。ポリゴンがマップ境界内にあるかどうかを確認する
ポリゴンが画面境界内にあるかどうかをどのように判断するのですか。このような
何か:
List<PolygonOptions> polygons = getPolygons();
LatLngBounds bounds = map.getProjection().getVisibleRegion().latLngBounds;
for (int l = 1; l <= polygons.size(); l++) {
if (bounds.Contains(polygons.get(l))) {
map.addPolygon(polygons.get(l));
}
}
'onCreate'メソッド?その場合、パフォーマンス上の問題はありますか? –
@ニコライ、私ははい、しかし、私は一度私はOSMDroidマップにそれを追加する約2秒間凍っている間凍結した。 Googleマップにはこの問題はありません。描画エンジンが異なる必要があると推測しています。ポリゴンが描画されると、フリーズすることなく問題なく移動できます。しかし、わかりやすくするために、さまざまなズームレベルでいくつかのシェイプを削除して追加する必要があります。非常に多くの形があるので、これを行うと2-3秒間フリーズします。ですから、必要な作業を減らすために、画面のポリゴンとウェイポイントを表示するだけです。見てみるのは大変です。 – Reafidy
私はDouglas-Peuckerアルゴリズムも試しましたが、ほとんど違いはありませんでした。 – Reafidy