geo_line_length()
적용 대상: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
지구상의 선 또는 여러 줄의 총 길이를 계산합니다.
구문
geo_line_length(
lineString)
구문 규칙에 대해 자세히 알아봅니다.
매개 변수
이름 | Type | 필수 | 설명 |
---|---|---|---|
lineString | dynamic |
✔️ | GeoJSON 형식의 LineString 또는 MultiLineString입니다. |
반품
지구에서 선 또는 여러 줄의 총 길이(미터)입니다. 줄 또는 여러 줄이 잘못된 경우 쿼리는 null 결과를 생성합니다.
참고 항목
- 지리 공간적 좌표는 WGS-84 좌표 참조 시스템에서 나타내는 것으로 해석됩니다.
- 지구 거리를 측정하는 데 사용되는 측지 데이텀은 구입니다. 선 가장자리는 구의 측지식 입니다.
- 입력 선 가장자리가 직선 카티전 선인 경우 평면 가장자리를 측지로 변환하기 위해 geo_line_densify()를 사용하는 것이 좋습니다.
- 입력이 여러 줄이고 둘 이상의 줄을 포함하는 경우 결과는 총 줄 합선 길이가 됩니다.
LineString 정의 및 제약 조건
dynamic({"type": "LineString","coordinates": [[lng_1,lat_1], [lng_2,lat_2], ..., [lng_N,lat_N]]})
dynamic({"type": "MultiLineString","coordinates": [[line_1, line_2, ..., line_N]]})
- LineString 좌표 배열에는 두 개 이상의 항목이 포함되어야 합니다.
- 좌표 [경도, 위도]는 경도가 [-180, +180] 범위의 실수이고 위도는 [-90, +90] 범위의 실수인 경우 유효해야 합니다.
- 가장자리 길이는 180도 미만이어야 합니다. 두 꼭짓점 사이의 가장 짧은 가장자리가 선택됩니다.
예제
다음 예제에서는 총 줄 길이(미터)를 계산합니다.
let line = dynamic({"type":"LineString","coordinates":[[-73.95807266235352,40.800426144169315],[-73.94966125488281,40.79691751000055],[-73.97317886352539,40.764486356930334]]});
print length = geo_line_length(line)
출력
length |
---|
4922.48016992081 |
다음 예제에서는 총 여러 줄 길이(미터)를 계산합니다.
let line = dynamic({"type":"MultiLineString","coordinates":[[[-73.95798683166502,40.800556090021466],[-73.98193359375,40.76819171855746]],[[-73.94940376281738,40.79691751000055],[-73.97317886352539,40.76435634049001]]]});
print length = geo_line_length(line)
출력
length |
---|
8262.24339753741 |
다음 예제에서는 잘못된 줄 때문에 True를 반환합니다.
print is_bad_line = isnull(geo_line_length(dynamic({"type":"LineString","coordinates":[[1, 1]]})))
출력
is_bad_line |
---|
True |