@rousen/gpxparser
v0.1.4
Published
A TypeScript library for parsing and processing GPX files. Extract track and waypoint information, analyze distance, elevation, slope, and more.
Downloads
117
Readme
GPX Parser
GPX 파일을 파싱하고 처리하기 위한 TypeScript 라이브러리입니다. 트랙과 웨이포인트 정보를 추출하고, 거리, 고도, 경사도 등의 데이터를 분석할 수 있습니다.
주요 기능
- GPX 파일 파싱 (URL, File, Text 형식 지원)
- 트랙 정보 추출
- 트랙 포인트 (위도, 경도, 고도, 시간)
- 거리 계산
- 고도 분석 (최대, 최소, 상승, 하강, 평균)
- 경사도 계산
- 경계 상자 (bounds) 정보 [minlat, minlon, maxlat, maxlon]
- 웨이포인트 정보 추출
- 위치 정보 (위도, 경도, 고도)
- 메타데이터 (이름, 설명, 시간 등)
- 커스텀 확장 데이터 지원
- 전체 GPX 파일의 경계 상자 정보
설치
npm install @rousen/gpxparser사용 방법
기본 사용법
import GPXParser from "@rousen/gpxparser";
// URL에서 GPX 파일 파싱
const result = await GPXParser.parse({
url: "https://example.com/track.gpx",
});
// 로컬 파일에서 GPX 파일 파싱
const result = await GPXParser.parse({
file: fileObject,
});
// 텍스트에서 GPX 파일 파싱
const result = await GPXParser.parse({
text: gpxString,
});결과 데이터 구조
interface ParseResult {
tracks: Track[]; // 트랙 정보 배열
waypoints: Waypoint[]; // 웨이포인트 정보 배열
bounds?: [number, number, number, number]; // 전체 GPX 파일의 경계 상자 정보 [minlat, minlon, maxlat, maxlon]
}
interface Track {
name: string; // 트랙 이름
points: Point[]; // 트랙 포인트 배열
distance: Distance; // 거리 정보
elevation: Elevation; // 고도 정보
slopes: number[]; // 경사도 배열
bounds?: [number, number, number, number]; // 트랙의 경계 상자 정보 [minlat, minlon, maxlat, maxlon]
// ... 기타 메타데이터
}
interface Waypoint {
name: string; // 웨이포인트 이름
lat: number; // 위도
lon: number; // 경도
ele: number; // 고도
time: Date; // 시간
// ... 기타 메타데이터
}