728x90
반응형
이 코드는 지도상에 다각형을 그리고, 버퍼 영역을 생성한 후 그 경계선을 따라 일정한 간격으로 포인트를 배치하는 방법을 보여줍니다.
1. 기본 지도 설정
var map = L.map("map").setView([-26, 128], 5);
L.tileLayer('https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png', {...});
- 호주 중심부(-26°, 128°)를 초기 뷰포인트로 설정
- Carto의 밝은 스타일 베이스맵 사용
2. 다각형 생성
const polygon = turf.polygon([...]);
- 호주 내륙 일부를 포함하는 사각형 다각형 생성
- 좌표: 위도 -28° ~ -20°, 경도 126° ~ 140°
3. 버퍼 생성
const polygon1 = turf.buffer(polygon, -50, {units: "kilometers"})
- 원본 다각형에서 안쪽으로 50km 버퍼 생성
4. 포인트 생성 방식
4.1 개수 기반 포인트 생성
const count = 10;
var stepLength = lineLength / count;
- 버퍼 경계선을 10개의 균등한 구간으로 나누어 포인트 생성
- 각 포인트는 동일한 거리 간격으로 배치
4.2 거리 기반 포인트 생성
const dist = 100; // 100km 간격
- 버퍼 경계선을 따라 100km 간격으로 포인트 생성
- 전체 경계선 길이에 도달할 때까지 포인트 생성
주요 특징
- 두 가지 다른 방식으로 포인트를 생성하여 비교 가능
- turf.along() 함수를 사용하여 라인을 따라 정확한 거리 계산
- 생성된 모든 지오메트리는 지도에 시각적으로 표시
이 코드는 GIS 분석에서 자주 사용되는 버퍼 분석과 등간격 포인트 생성을 웹 환경에서 구현한 좋은 예시입니다.
전체 코드는 아래 첨부파일을 참고하세요.
728x90
반응형
'코딩 강좌 > 웹 지도 만들기' 카테고리의 다른 글
자체 호스팅 LLM을 이용한 자연어 검색 질의 (0) | 2025.02.04 |
---|---|
폴리곤 내부 일정간격 안에 또 다른 폴리곤 만들기 (2) | 2024.11.13 |
Leaflet과 Turf.js를 활용한 폴리곤 차집합 구현하기 (1) | 2024.11.06 |
지도 위에 경로를 그리고 회전시키는 웹 앱 만들기 (0) | 2024.11.05 |
다각형 외부의 점에서 가장 가까운 점 다각형 내 위치 찾기 (1) | 2024.11.04 |