2

数秒ごとに位置を変更し、ベクターレイヤーを再描画してポイントを移動しようとしています。これは数回機能しますが、ドットが消えます - マップから外れていません (数ブロックを回るだけです)。 getVisibility() と onScreen() でさえ true を返します - 画面に表示されません。

zIndex:9999 を StyleMap に追加しましたが、動作は変わりませんでした。

私は feature_point 変数 (OpenLayers.Geometry.Point) を持っています。これがその場所を変更する方法です (位置は座標の配列から取得されます)。

feature_point.geometry.x = position.lon;
feature_point.geometry.y = position.lat;
vector_layer.redraw();

なぜ消えるのですか?

4

1 に答える 1

1

ネイティブmoveメソッドOpenLayers.Geometry.Point.moveを使用してみてください

UPD

または、drawFeature代わりにメソッドを使用しますredraw();

feature_point.geometry.x = position.lon;
feature_point.geometry.y = position.lat;
vector_layer.drawFeature(feature_point);
于 2012-10-08T11:44:23.803 に答える