2012-04-04 27 views
6

Tôi có một drawingManager cho phép người dùng vẽ một đa giác. Khi người dùng vẽ xong đa giác đó, tôi tính diện tích của đa giác đó. Tất cả điều này hoạt động hoàn hảo ngoại trừ việc chỉnh sửa xử lý sự kiện đa giác. Tôi sử dụng mã sau đâySự kiện chỉnh sửa đa giác api v3 của Google Maps không được kích hoạt trên tất cả các tay cầm

google.maps.event.addListener(path, "set_at", function(){ 
    //my code here 
}); 

Vì vậy, loại tác phẩm này chỉ hoạt động cho "góc" của đa giác. Có các chốt điều chỉnh trung gian, khó nhìn thấy (hình vuông) ở giữa các chốt màu trắng chính. Nếu tôi chỉnh sửa đa giác bằng cách kéo một trong các tay cầm này, sự kiện sẽ không kích hoạt.

Bất kỳ ý tưởng nào về hành vi này? Đây có phải là dự định hoặc một số loại lỗi với api hoặc mã của tôi không?

Cảm ơn bạn đã được trợ giúp.

Greg

Trả lời

9

Sự kiện "set_at" được kích hoạt khi một LatLng trên đường dẫn được cập nhật. Điều này xảy ra khi bạn di chuyển các nút vuông hiện có (thay đổi LatLng của nút đó). Các 'hình vuông hơi xám' trên các cạnh của lớp phủ cho phép người dùng thêm LatLng mới vào đường dẫn, thay vì chỉnh sửa một đường dẫn hiện có (bạn sẽ thấy di chuyển một nút màu xám với tạo một góc khác). Trong trường hợp này, hãy thêm một eventListener cho "insert_at" thay vì "set_at" để xử lý khi các LatLng mới được thêm vào đường dẫn hình dạng.

+0

Giải thích hoàn hảo. Cảm ơn nhiều. Làm việc như người ở. – geraldcor

Các vấn đề liên quan