저는 1000개 이상의 좌표값을받아 순서대로 나열하여 경로를 그리는데요
(1번 좌표값에서 2번좌표값으로 2번좌표값에서 3번좌표값으로…1000개 이상)
그려지는데 생각보다 부하가 많이 걸리는거 같아 문의드립니다.
혹시 부하를 줄일수있는방법을 알수있을까요?
속도를 빠르게 할 수 있는 방법을 찾고싶습니다.
1000개의 Polyline을 생성하는 것 보다.
하나의 Polyline 객체에 path를 배열로 넣고 생성하시면 조금 더 빠를 겁니다.
죄송합니다 이해하기 어려워서 다시 질문드리겠습니다.
path에 1000개의 배열을 넣는건가요?
https://apis.map.kakao.com/web/sample/drawShape/
위 예제의 linePath
처럼 좌표 배열을
var linePath = [
new kakao.maps.LatLng(33.452344169439975, 126.56878163224233),
new kakao.maps.LatLng(33.452739313807456, 126.5709308145358),
new kakao.maps.LatLng(33.45178067090639, 126.5726886938753)
];
var polyline = new kakao.maps.Polyline({
path: linePath,
//...
});
이렇게 넣어주면 됩니다.
그런데 유념해야 하실 것이,
무엇이든 1000개+ 가 되면
브라우저가 렌더링 하는데 느릴 수 밖에 없습니다.
이는 데이터를 간소화 해야 함을 의미합니다.
line simplify 알고리즘을 적용하여 특징점들만 뽑아서
좌표 갯수를 줄이는 것이 더 좋은 방향이라 볼 수 있습니다.
친절히 알려주셔서 감사합니다 바로 이해했습니다:
1개의 좋아요