コントロールボタンがクリックされたときにプログラムでレイヤーを切り替えたい。
これを行うと、マップが正しく機能しなくなり、非常にバグが多くなります。より正確には、その後、描画ハンドラーがまったく正しく機能しません。
レイヤーを切り替えてプログラムで制御する方法を誰か教えてもらえますか?なぜこれが機能しないのですか?
コードは次のとおりです。
find_control(editing_toolbar_polygon.getControlsByClass(new RegExp(".*DrawFeature")),"Point").events.register("activate",null,function(e){
map.removeControl(editing_toolbar_polygon);
polygon_layer.setVisibility(false);
vectors.setVisibility(true);
map.addControl(editing_toolbar_vector);
});
これ:
find_control(editing_toolbar_polygon.getControlsByClass(new RegExp(".*DrawFeature")),"Point")
コールバック関数を設定したコントロールを返すだけactivate
です。