既に表示されているFeature.Vectorの外観を変更する方法は?


9

Pointオブジェクトから一連のFeature.Vectorsを作成し、それらにスタイルを割り当てました。次に、機能の1つの外観をリアルタイムで動的に変更します。たとえば、赤から青に変更します。(私は機能の上にホバーしていません。)スタイルを変更してから、レイヤーに対してrefresh()を実行したり、redraw()などを実行したりしましたが、何も起こらないか、機能が消えてしまいます。助言がありますか?ありがとう。


この問題をすでに保存しましたか?

回答:


12

Redrawメソッドは問題を解決するはずです。私の小さな例を参照してください:OpenLayers:フィーチャスタイルの変更

UPD:サンプルを少し変更しました:OpenLayers:1つのフィーチャスタイルを変更します


おかげで、これはレイヤー内の多くの機能の特定の1つの外観ではなく、レイヤー全体の外観を変更するように見えますよね?
bethesdaboys

あなたは新しい例を見ることができますか、それはあなたが必要としているものですか?
drnextgis

@drnextgis:いい例です。+1
シモ

1

私は再描画が行う@drnextgisに同意します(素晴らしいサンプルの場合は+1)。あなたの状況では、1つの機能を再描画したいだけなので、次のサンプルでfeature.layer.drawFeature(feature);紹介されている機能を使用します

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.