웹API사용 중입니다. 지도범위에 해당되는 마커만 노출을 시키려고 합니다.
마커를 변수에 할당시키고 setMap(null);을 이용하여
지도범위 변화시에 모든 마커를 제거하고 재 출력하는 형태로 사용하고 있습니다.
문제는 이런식으로 사용하면 모든 마커가 지도변화시 깜빡이게 되는데요. 영역안에 있는 마커는 제거없이 유지시키려고 합니다.
별도 함수없이 다른방법으로 구성을 할 수 있다면 조언을 주시면 감사하겠습니다.
웹API사용 중입니다. 지도범위에 해당되는 마커만 노출을 시키려고 합니다.
마커를 변수에 할당시키고 setMap(null);을 이용하여
지도범위 변화시에 모든 마커를 제거하고 재 출력하는 형태로 사용하고 있습니다.
문제는 이런식으로 사용하면 모든 마커가 지도변화시 깜빡이게 되는데요. 영역안에 있는 마커는 제거없이 유지시키려고 합니다.
별도 함수없이 다른방법으로 구성을 할 수 있다면 조언을 주시면 감사하겠습니다.
map 함수 중에 getBounds() 라는 함수가 있는데요
현재 지도 좌표정보를 불러 올 수 있습니다.
전 현재 좌표 정보를 불러온 뒤 범위 내에 있는 좌표를 찾아서 해결 했습니다.
제 질문은 지도 범위안에 마커가 존재하는지 여부를 확인하는 방법인데요
getBounds()를 써서 지도 범위를 알아냈다고 하면 그안에 마커가 있는지 없는지를 확인하는 방법이 궁금합니다.
체크하는 방법이 있다면 답변 부탁드리겠습니다(__)
생성한 마커의 참조는 다 들고 계셔야 하며
지도의 bounds를 얻은 시점에
마커들의 배열을 돌면서
var pos = marker.getPosition();
bounds.contain(pos); // true or false
로 확인할 수 있습니다.
http://apis.map.daum.net/web/documentation/#LatLngBounds_contain
감사합니다!