は、多くのグラフィカルオブジェクトの表示を最適化しようとすると膨大な質問です。 一般的に、この領域には2つの古典的な解があります。
1)低ズームレベルでは、表示するオブジェクトが多数あります。しかし、私たちが遠く離れているので、私たちはそれらを単純化しようとすることができます。 代表的なソリューション:マーカーのクラスタリング、ポリライン/ポリゴンの簡略化。
=>マーカークラスタリングはOBPで利用できますが、KMLではデフォルトではオーバーレイ変換には使用されません。
=> DouglasPeuckerReducerでポリライン/ポリゴン簡約化を利用できます。
=>ズームレベルに応じて動的な単純化はありません。コンテキスト内で改善が得られると思われる場合は、ポリゴン/ポリラインをサブクラス化して描画メソッドを適用して実装するのは大したことではありません。
2)高いズームレベルでは、いくつかのオブジェクトの近くにあります。しかし、多くのオブジェクトは完全にビューの外側です。 典型的な解決方法:境界ボックスを使用したクイックチェック。オブジェクトまたはオブジェクトのグループを排除します(適切にグループ化されていることを前提とします)。
=>これは現在osmdroid/OSMBonusPackでは実装されていません。実装は、バウンディングボックス属性を維持し、このバウンディングボックスをマップビューのバウンディングボックスに対してチェックするdrawメソッドを用いて、修正されたFolderOverlayによって行うことができる。 これは、オブジェクトの論理的なグループではなく、オブジェクトの空間グループ(空間的に近いオブジェクト)に対してこのフォルダを使用する場合にのみ効率的です。
マップビューオブジェクトから画面外のオーバーレイを削除することを検討してください。また、ポリゴンのポイントを減らすことは役に立ちます – spy