2

StackExchange を数年間使用しているにもかかわらず、これは私の最初の投稿された質問です。OpenLayers でこの問題を解決しようとして、かなり長い間立ち往生してきました。問題は次のとおりです。

マップ上にプロットされた多数のフィーチャがあり、さまざまな方法でフィーチャを選択できます (たとえば、それらの周りにボックスを描画する、個々のフィーチャをクリックする、その郵便番号内のすべてのフィーチャを選択する郵便番号を入力するなど)。これはすべてうまくいきます。問題は、機能レイヤーにクラスタリング戦略があり、ズームアウトすると、現在選択されている機能が選択されていない機能と一緒にクラスター化され、ズームインすると選択されていない機能が選択されることです。私が達成しようとしているのは以前に選択されていなかった機能がクラスタリング後に選択されないようにしてください。

ここに画像の説明を入力

4

1 に答える 1

1

この動作 (選択したクラスターでズームインした後もサブ機能の選択を維持する) は、Strategy.Cluster コードの奥深くに埋め込まれています。解決策の 1 つは、Strategy.Cluster のコードを深く掘り下げて、実際に選択された機能を記憶し、ズームイン (実際には - 再クラスタリングまたは Strategy.Cluster.cluster() の呼び出し) でそれらのみを選択するようにすることです。2 つ目は、イベント featureselected をサブスクライブし、zoomend でフィーチャを再選択することにより、openlayers の外部で選択されたフィーチャを追跡することです。

于 2013-04-25T00:44:12.803 に答える