다른 모양의 경계선과 교차 할 때 드래그 된 모양 중단을 드래그 (dragend
동작)하게하려면 어떻게합니까? 이미 충돌 감지를 테스트했습니다. 내가 지금 원하는 것은 을 실제로 멈추는 방법입니다. 움직이는 것은이며, 강제로 떨어 뜨립니다.kinetic에서 충돌이 감지 될 때 힘 드래그
중요 편집 : 모양 그룹을 조작해야하지만 그룹이있는 다른 솔루션이 필요합니다. 어떤 제안?
사실 셰이프에 대한 도움을 얻었으며 그룹과 함께 작동하도록했습니다. 바이올린은 http://jsfiddle.net/PFH55/12/입니다. 콘솔 오류가 발생합니다. 운동이 정의되지 않은 반면 운동이 정의되지 않았습니다.
다른 편집 : 나는 KineticJS에서 그룹의 드래그 가능한 클론에 대해 작업 할 솔루션이 필요합니다. (여기서 한 가지 의미는 원래 레이어를 한 레이어에 드래그하면 두 번째 레이어에만 드롭 할 수있는 복제본을 만듭니다. 충돌 탐지 마법을 사용합니다.
예! 나는 그 방법에 대해 몰랐다. 고마워! 하지만 이제는 stopDrag()를 호출 한 후 다시 드래그 할 때 동작이 "무거워"집니다./chek this fiddle please http://jsfiddle.net/PFH55/4/ –
stopDrag()를 호출하면), 두 객체는 몇 픽셀 겹쳐 있습니다 (특히 빠른 마우스 움직임에서 발생 함). 다시 드래그하기 시작하면 즉각적인 충돌이 발생하고 stopDrag()가 다시 호출됩니다. 이 문제를 해결하려면 드래그 된 객체의 x 및 y 좌표가 다른 객체와 겹치지 않도록 설정해야합니다. 그걸 위해 몇 가지 지오메트리 수학을 사용해야합니다 :-) 그 도움이 필요하면 알려주세요. – Sjiep
그럼 완벽하게 작동하지 않습니다 (특히 빠른 마우스 동작과 다시 한번 초점이 맞지 않기 때문에). 그러나 충돌 객체를 이전 위치로 되돌릴 수 있습니다. 이 피들 http://jsfiddle.net/PFH55/6/를 참조하십시오. 나는 이것을 최적화 할 여지가 충분하다고 생각하지만 그것은 시작이다. – Sjiep