Drawing manager 에서 put으로 등록한 객체 이벤트

drag 관련한 이벤트는 제공하지 않습니다.

지금 사용하신 이벤트 타입은 drawend 로써,
사용자가 오버레이 그리기를 끝마쳤을 때 발생하는 이벤트이지 drag와 관련된 이벤트는 아닙니다.

state_changed 이벤트를 사용할 수도 있지만 여러 케이스에서 발생하는 이벤트이므로 특정행동을 할 때 잡아내기 힘들며
put 이벤트로 객체를 잡아내어 이벤트는 직접 걸어서 확인하는 것이 최선입니다.

대략적인 방식은 아래와 같습니다.

var manager = new kakao.maps.drawing.DrawingManager(options);
manager.addListener('put', function(event) {
    var readyToDrag = false;
    kakao.maps.event.addListener(event.target, 'mousedown', function() {
        readyToDrag = true;
    });
    kakao.maps.event.addListener(event.target, 'mouseup', function() {
        readyToDrag = false;
    });
    kakao.maps.event.addListener(event.target, 'mousemove', function() {
        if (readyToDrag) { 
            console.log('drag start');
            readyToDrag = false;
        }
    });
});
manager.put(kakao.maps.drawing.OverlayType.POLYLINE, polyline.getPath());
1개의 좋아요