Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Przełączanie usług przy użyciu listy rozwijanej Wersja . Dowiedz się więcej o nawigacji.
Dotyczy: ✅ Microsoft Fabric ✅ Azure Data Explorer ✅ Azure Monitor ✅ Microsoft Sentinel
Oblicza związek linii lub wielu linii na Ziemi.
Składnia
geo_union_lines_array(
Linestrings)
Dowiedz się więcej na temat konwencji składni.
Parametry
| Nazwisko | Typ | Wymagania | opis |
|---|---|---|---|
| lineStrings | dynamic |
✔️ | Tablica wierszy lub wielu linii w formacie GeoJSON. |
Zwraca
Wiersz lub wielowierszowy format GeoJSON i dynamiczny typ danych. Jeśli którykolwiek z podanych wierszy lub wielowierszy jest nieprawidłowy, zapytanie zwróci wynik o wartości null.
Uwaga
- Współrzędne geoprzestrzenne są interpretowane jako reprezentowane przez system odniesienia współrzędnych WGS-84 .
- Geodetyczne datum używane do pomiarów na Ziemi jest sferą. Krawędzie wielokątne są geodesykami na sferze.
- Jeśli krawędzie linii wejściowej są liniami kartezjańskimi, rozważ użycie geo_line_densify() w celu przekonwertowania krawędzi planarnych na geodesiki.
Definicja i ograniczenia linestring
dynamic({"type": "LineString","coordinates": [[lng_1,lat_1], [lng_2,lat_2], ..., [lng_N,lat_N]]})
dynamic({"type": "MultiLineString","współrzędne": [[line_1, line_2, ..., line_N]]})
- Tablica współrzędnych LineString musi zawierać co najmniej dwa wpisy.
- Współrzędne [długość geograficzna, szerokość geograficzna] muszą być prawidłowe, gdzie długość geograficzna jest liczbą rzeczywistą w zakresie [-180, +180], a szerokość geograficzna jest liczbą rzeczywistą w zakresie [-90, +90].
- Długość krawędzi musi być mniejsza niż 180 stopni. Zostanie wybrana najkrótsza krawędź między dwoma wierzchołkami.
Przykłady
Poniższy przykład wykonuje unii geoprzestrzenne w wierszach.
datatable(lines:dynamic)
[
dynamic({"type":"LineString","coordinates":[[-73.95683884620665,40.80502891480884],[-73.95633727312088,40.8057171711177],[-73.95489156246185,40.80510200431311]]}),
dynamic({"type":"LineString","coordinates":[[-73.95633727312088,40.8057171711177],[-73.95489156246185,40.80510200431311],[-73.95537436008453,40.804413741624515]]}),
dynamic({"type":"LineString","coordinates":[[-73.95633727312088,40.8057171711177],[-73.95489156246185,40.80510200431311]]})
]
| summarize lines_arr = make_list(lines)
| project lines_union = geo_union_lines_array(lines_arr)
Wyjście
| lines_union |
|---|
| {"type": "LineString", "coordinates": [[-73.95683846206651, 40.805028914808844], [-73.95633727312088, 40.805717171177], [ -73.954891562461853, 40.80510200431312], [-73.955374373436084534, 40.80441374162452]} |
Poniższy przykład wykonuje unii geoprzestrzenne w kolumnach wierszy.
datatable(line1:dynamic, line2:dynamic)
[
dynamic({"type":"LineString","coordinates":[[-73.95683884620665,40.80502891480884],[-73.95633727312088,40.8057171711177],[-73.95489156246185,40.80510200431311]]}), dynamic({"type":"LineString","coordinates":[[-73.95633727312088,40.8057171711177],[-73.95489156246185,40.80510200431311],[-73.95537436008453,40.804413741624515]]})
]
| project lines_arr = pack_array(line1, line2)
| project lines_union = geo_union_lines_array(lines_arr)
Wyjście
| lines_union |
|---|
| {"type": "LineString", "współrzędne":[[-73.956838846206651, 40.805028914808844], [-73.95633727312088, 40.805717171177], [-73.954891562461853, 40.80510200431312], [-73.955374373436084534, 40.80441374162452]]} |
Poniższy przykład zwraca wartość True, ponieważ jeden z wierszy jest nieprawidłowy.
datatable(lines:dynamic)
[
dynamic({"type":"LineString","coordinates":[[-73.95683884620665,40.80502891480884],[-73.95633727312088,40.8057171711177],[-73.95489156246185,40.80510200431311]]}),
dynamic({"type":"LineString","coordinates":[[1, 1]]})
]
| summarize lines_arr = make_list(lines)
| project invalid_union = isnull(geo_union_lines_array(lines_arr))
Wyjście
| invalid_union |
|---|
| Prawda |