0

DBクエリに基づいてkmlを動的に追加するマップアプリケーションを作成しています。LineStringsのセットになります-時には10個、時には1000個です。
より効率的なもの:

  1. すべての要素とスタイリングを備えた1つの大きなkmlを作成する

  2. 各行に1つの小さなkmlを作成します(OLメニューでチェックマークを付ける/チェックを外すことができるという利点があります)

  3. javascriptを介してそれらを追加するには:
    addFeature('LINESTRING(20.0367 50.0727,20.0366 50.0727,20.0326 50.0757)');

4

2 に答える 2

1

最も効率的なのは、(ジオサーバー経由で)WMSを使用し、CQLを使用して回線をフィルタリングすることです。1つのマップに数千の機能を表示すると、アプリケーションの速度が低下する可能性があります

于 2012-08-06T09:05:15.460 に答える
0

個人的には、1行のXレイヤーを配置して数千のレイヤーを作成するのは良い考えではないと思います...レイヤースイッチャーの制御が圧倒され、最終的にブラウザーは同じ量のベクトルを処理する必要があります...

ポイント1と3でも同様の結果が得られる可能性がありますが、とにかく、ブラウザはそれほど多くのデータを簡単に処理できないため、マップに同時に表示されるベクトル/線の数を減らす方法を見つけることをお勧めします...特にIE。

OpenLayers.Strategy.BBOXを使用すると、マップの現在の範囲で必要なベクトルのみをデータベースから抽出するのに役立つ場合があります...

よろしく

エティエンヌ

于 2012-08-02T17:47:25.013 に答える