OpenLayers를 사용 중이며 내지도 용 레이어와 단일 벡터 레이어가 있습니다. 이 벡터 레이어에서 DrawFeature 컨트롤을 사용하여 사각형을 그립니다. 나는, 내 layer.features.size을 검사 할 때OpenLayers eraseFeatures가지도 화면에서 지형지 물을 지우지 않습니다.
polygonLayer.events.register("beforefeatureadded", feature, function(evt){
console.log("Clearing existing polygons");
console.log(polygonLayer.features.length);
polygonLayer.destroyFeatures();
polygonLayer.redraw();
});//end attempt at events registration
: 나는 청취자는 기능이 추가 될 때까지 대기 한 다음, (나는 한 번에 하나의 사각형을 원하는) 기존 기능을 삭제과 같이가 기대했던 것처럼 항상 1이라는 것을 알 수 있지만 화면의 사각형은 계속 표시됩니다. 레이어에서 .redraw()를 호출하더라도 사각형은 그대로 있습니다.
누락 된 추가 단계가 있습니까?
편집 : 그냥 실현 : 당신은 여기 내 코드를 찾을 수 있습니다 나는 기존의 좌표에서 사각형을 그리면을, 나는 그것이 잘 지울 수 있습니다. 컨트롤러에서 그린 정사각형 인 것 같습니다.
대답을 확인하는 것을 잊지 마십시오. –