안녕하세요.
마커 클러스터 클릭 시
클러스터에 포함된 마커들의 중심으로 이동되는거 같은데요,
이때 좌측에 컨트롤 패널이 있어서 좌측에 패딩을 두고
나머지 뷰에 대해서 중심으로 이동시키고 싶습니다.
방법이 없을까요?
만약 방법이 없다면,
해당 클러스터 클릭 시 클러스터에 속한 마커들의 중심을 반환받을 수 있는 방법이라도 있을까요? 그럼 제가 직접 이동시키면 되니깐요. ㅠㅠ
좋은 방법있으면 꼭 좀 공유부탁드립니다ㅠㅠㅠㅠ부탁드립니다.
안녕하세요.
마커 클러스터 클릭 시
클러스터에 포함된 마커들의 중심으로 이동되는거 같은데요,
이때 좌측에 컨트롤 패널이 있어서 좌측에 패딩을 두고
나머지 뷰에 대해서 중심으로 이동시키고 싶습니다.
방법이 없을까요?
만약 방법이 없다면,
해당 클러스터 클릭 시 클러스터에 속한 마커들의 중심을 반환받을 수 있는 방법이라도 있을까요? 그럼 제가 직접 이동시키면 되니깐요. ㅠㅠ
좋은 방법있으면 꼭 좀 공유부탁드립니다ㅠㅠㅠㅠ부탁드립니다.
클러스터러 생성자에
disableClickZoom: true,
를 주어서 클릭시 줌이 되게 하는 것을 막은 다음에,
클릭 이벤트를 직접 받아서 처리하는 방법이 있을 것 같습니다
kakao.maps.event.addListener(clusterer, 'clusterclick', function(cluster) {
var center = cluster.getCenter();
//클러스터의 center 값을 이용하여
//map.getProjection() 객체의 containerPointFromCoords 함수리턴값인
//point에서 point.x값을 변경한 후에 coordsFromContainerPoint 함수를 통해 새로운 센터 값을 구한후에
//map 에 적용.
var proj = map.getProjection();
var point = proj.containerPointFromCoords(center);
point.x -= 100;
map.setCenter(proj.coordsFromContainerPoint(point));
map.setLevel(map.getLevel() - 1);
//또는 cluster의 bounds 값을 가져온후, map에 setBounds 할때 패딩값을 지정하는 방법
map.setBounds(cluster.getBounds(), 32, 32, 32, 232);
});
위 문서들을 참고해 보시기 바랍니다.
제가 적은 내용 말고도 여러가지 방법이 있을 수 있습니다.
참고해 보세요.
감사합니다. 잘 됩니다. setBounds로 컨트롤 하니 패딩도 쉽게 줄 수 있고 좋네요 !!