OLC: различия между версиями
[непроверенная версия] | [непроверенная версия] |
Rubinbot (обсуждение | вклад) м Бот: добавление заголовков в сноски; исправление двойных сносок, см. ЧаВо |
РобоСтася (обсуждение | вклад) м превращение в прямую ссылку, чтобы было доступно iwrm, replaced: [https://en.wikipedia.org/wiki/World_Geodetic_System#Longitudes_on_WGS_84 WGS84] →... |
||
(не показано 12 промежуточных версий 7 участников) | |||
Строка 1: | Строка 1: | ||
'''Открытый код местоположения''' ('''Open Location Code''' — '''OLC''') — система геокодирования для определения области любой точки Земли<ref>{{cite web|url=http://plus.codes|title=Plus codes|website=Plus.codes|access-date= |
'''Открытый код местоположения''' ('''Open Location Code''' — '''OLC''') — система геокодирования для определения области любой точки Земли<ref>{{cite web|url=http://plus.codes|title=Plus codes|website=Plus.codes|access-date=2018-11-03|archive-date=2021-05-02|archive-url=https://web.archive.org/web/20210502034542/https://plus.codes/|deadlink=no}}</ref>. |
||
Код был разработан в инженерном офисе [[Google]] в Цюрихе<ref>{{cite web|url=http://openlocationcode.com/|title=Open Location Code|website=Openlocationcode.com|archive-url=https://web.archive.org/web/20180301114837/http://openlocationcode.com/ |archive-date= |
Код был разработан в инженерном офисе [[Google (компания)|Google]] в Цюрихе<ref>{{cite web|url=http://openlocationcode.com/|title=Open Location Code|website=Openlocationcode.com|archive-url=https://web.archive.org/web/20180301114837/http://openlocationcode.com/ |archive-date=2018-03-01}}</ref>, и опубликован в конце октября 2014 года<ref>See [https://github.com/google/open-location-code/commits/master Open Location Code Github] {{Wayback|url=https://github.com/google/open-location-code/commits/master |date=20170510154041 }} and [https://groups.google.com/d/forum/open-location-code Open Location Code forum] {{Wayback|url=https://groups.google.com/d/forum/open-location-code |date=20210504231052 }}.</ref>. Коды местоположения, созданные системой OLC, называются «'''плюсовыми кодами'''», или «'''плюскодами'''». |
||
Открытый код местоположения — способ кодирования местоположения в символы, которые проще использовать, чем координаты в виде широты и долготы. |
Открытый код местоположения — способ кодирования местоположения в символы, которые проще использовать, чем координаты в виде широты и долготы. Плюсовые коды предназначены для использования в качестве уличных адресов и особенно полезны в случаях, когда нет официальной системы идентификации зданий — названия улиц, номеров домов и почтовых индексов<ref>The [http://openlocationcode.com/ Open Location Code website] {{Wayback|url=http://openlocationcode.com/ |date=20180301114837 }} provides an overview. The document [https://github.com/google/open-location-code/blob/master/docs/comparison.adoc «An Evaluation of Location Encoding Systems»] {{Wayback|url=https://github.com/google/open-location-code/blob/master/docs/comparison.adoc |date=20191122070554 }} provides a rationale.</ref>. |
||
Коды OLC получаются преобразованием координат [[широта|широты]] и [[долгота|долготы]], поэтому любая точка на Земле уже адресуется плюскодом<ref>Specification: [https://github.com/google/open-location-code/blob/master/docs/olc_definition.adoc «Open Location Code: An Open Source Standard for Addresses, Independent of Building Numbers And Street Names»] {{Wayback|url=https://github.com/google/open-location-code/blob/master/docs/olc_definition.adoc |date=20160130141704 }}</ref>. По длине они похожи на телефонный номер — например, 849VCWC8+R9 — но зачастую сокращаются до четырёх или шести цифр в сочетании с наименованием местности (CWC8+R9, Mountain View). Расположенные рядом места имеют схожие коды. Их можно кодировать или декодировать в автономном режиме. Набор символов для кодирования кодов OLC составлен таким образом, чтобы исключить применение похожих на вид символов для уменьшения путаницы и ошибок, так же исключены гласные, чтобы исключить совпадение плюскода с существующими словами. Kоды OLC не чувствительны к регистру, поэтому их можно легко передать по телефону<ref>{{cite web|url=http://google-opensource.blogspot.ch/2015/04/open-location-code-addresses-for.html|title=Open Location Code: Addresses for everything, everywhere|website=Google-opensource.blogspot.ch|access-date=2018-11-03|archive-date=2016-08-17|archive-url=https://web.archive.org/web/20160817114027/http://google-opensource.blogspot.ch/2015/04/open-location-code-addresses-for.html|deadlink=no}}</ref>. |
|||
С августа 2015 года [[Google Maps|карты Google]] поддерживают |
С августа 2015 года [[Google Maps|карты Google]] поддерживают коды OLC в своей поисковой системе<ref>{{cite web|url=http://google-latlong.blogspot.in/2015/08/plus-codes-new-way-to-help-pinpoint.html|title=Plus codes: A new way to help pinpoint places on the map|website=Google-latlong.blogspot.in|access-date=2018-11-03|archive-date=2016-03-06|archive-url=https://web.archive.org/web/20160306020638/http://google-latlong.blogspot.in/2015/08/plus-codes-new-way-to-help-pinpoint.html|deadlink=no}}</ref>. Алгоритм находится под лицензией Apache License 2.0<ref>{{cite web|url=https://github.com/google/open-location-code/blob/master/LICENSE|title=google/open-location-code|website=GitHub.com|access-date=2018-11-03|archive-date=2020-10-25|archive-url=https://web.archive.org/web/20201025051139/https://github.com/google/open-location-code/blob/master/LICENSE|deadlink=no}}</ref> и доступен на [[GitHub]]<ref>{{cite web|url=https://github.com/google/open-location-code|title=google/open-location-code|website=GitHub.com|access-date=2018-11-03|archive-date=2021-05-04|archive-url=https://web.archive.org/web/20210504231105/https://github.com/google/open-location-code|deadlink=no}}</ref>. |
||
Google заявляет, что |
Google заявляет, что коды OLC принимаются в качестве почтовых адресов в Кабо-Верде<ref>{{Cite web |url=https://plus.codes/benefits |title=Redirecting<!-- Заголовок добавлен ботом --> |access-date=2021-05-07 |archive-date=2021-05-07 |archive-url=https://web.archive.org/web/20210507110739/https://plus.codes/benefits |deadlink=no }}</ref>, частях Калькутты<ref>{{Cite web|url=https://www.youtube.com/watch?v=Hd3gGspgVGs|title=Plus Codes | Addressing in Kolkata|access-date=2021-05-07|archive-date=2021-05-07|archive-url=https://web.archive.org/web/20210507110738/https://www.youtube.com/watch?v=Hd3gGspgVGs|deadlink=no}}</ref> и в Навахо<ref>{{cite news | title=The Navajo Nation is getting addresses, thanks to an open-source mapping program used in urban India | newspaper=The Salt Lake Tribune | date=2019-10-25 | url=https://www.sltrib.com/news/2019/10/25/navajo-nation-is-getting/ | accessdate=2021-05-07 | archivedate=2021-05-06 | archiveurl=https://web.archive.org/web/20210506015430/https://www.sltrib.com/news/2019/10/25/navajo-nation-is-getting/ }}</ref>. |
||
== Спецификация == |
== Спецификация == |
||
Система открытого кода местоположения<ref>{{cite web|url=https://github.com/google/open-location-code/blob/master/docs/olc_definition.adoc|title=google/open-location-code|website=GitHub|access-date= |
Система открытого кода местоположения<ref>{{cite web|url=https://github.com/google/open-location-code/blob/master/docs/olc_definition.adoc|title=google/open-location-code|website=GitHub|access-date=2018-11-03|archive-date=2016-01-30|archive-url=https://web.archive.org/web/20160130141704/https://github.com/google/open-location-code/blob/master/docs/olc_definition.adoc|deadlink=no}}</ref> основана на широте и долготе в координатах [[:en:World Geodetic System#Longitudes on WGS 84|WGS84]]. Каждый код описывает область, ограниченную двумя параллелями и двумя меридианами фиксированной сетки, указывая широту, долготу и размер области. Самая большая сетка состоит из блоков 20 на 20 градусов (9 строк и 18 столбцов) и делится на подблоки 20 на 20 до четырёх раз. С этого уровня и далее деление происходит на подблоки 5 на 4. В таблице показаны блоки различных размеров, максимально приближённые к экватору. Ширина блока уменьшается с удалением от экватора. |
||
{| class="wikitable" |
{| class="wikitable" |
||
|+Размеры блоков открытого кода местоположения |
|+Размеры блоков открытого кода местоположения |
||
! style="text-align: |
! style="text-align: right" | Длина кода |
||
| 2 || 4 || 6 || 8 || + || 10 || 11 |
| 2 || 4 || 6 || 8 || + || 10 || 11 |
||
|- |
|- |
||
! style="text-align: |
! style="text-align: right" | Размер блока |
||
| 20° || 1° || 0 |
| 20° || 1° || 0,05° (3′) || 0,0025° (9″) || || 0,000125° (0,45″) || 0,00003125° × 0,000025° |
||
|- |
|- |
||
! style="text-align: |
! style="text-align: right" | Примерная точность |
||
| 2200 км || 110 км || 5 |
| 2200 км || 110 км || 5,6 км || 277 м || || 14 м || 3 м |
||
|- |
|||
! style="text-align: right" | Примерная площадь возле широты 75° |
|||
| 1290 393 км² || 3 226 км² || 8 км² || 20 162 м² || || 50 м² || 3 м² |
|||
|- |
|||
! style="text-align: right" | Примерная площадь возле широты 60° |
|||
| 2486 716 км² || 6 217 км² || 16 км² || 38 855 м² || || 97 м² || 5 м² |
|||
|- |
|||
! style="text-align: right" | Примерная площадь возле широты 45° |
|||
| 3505 001 км² || 8 763 км² || 22 км² || 54 766 м² || || 137 м² || 7 м² |
|||
|- |
|||
! style="text-align: right" | Примерная площадь возле широты 30° |
|||
| 4278 266 км² || 10 696 км² || 27 км² || 66 848 м² || || 167 м² || 8 м² |
|||
|- |
|||
! style="text-align: right" | Примерная площадь возле широты 15° |
|||
| 4760 164 км² || 11 900 км² || 30 км² || 74 378 м² || || 186 м² || 9 м² |
|||
|- |
|||
! style="text-align: right" | Примерная площадь возле экватора |
|||
| 4923 639 км² || 12 309 км² || 31 км² || 76 932 м² || || 192 м² ||10 м² |
|||
|} |
|} |
||
Полная сетка использует смещения от Южного полюса (-90°) и антимеридиана (-180°), выраженные в [[Двадцатеричная система счисления|двадцатеричной системе счисления]]. Чтобы избежать неправильного прочтения или написания нежелательных слов, кодировка исключает гласные и символы, которые можно легко спутать друг с другом. В следующей таблице показано соответствие. |
Полная сетка использует смещения от Южного полюса (-90°) и антимеридиана (-180°), выраженные в [[Двадцатеричная система счисления|двадцатеричной системе счисления]]. Чтобы избежать неправильного прочтения или написания нежелательных слов, кодировка исключает гласные и символы, которые можно легко спутать друг с другом. В следующей таблице показано соответствие. |
||
Строка 53: | Строка 71: | ||
== Пример == |
== Пример == |
||
Рассмотрим, для примера, определение плюс-кода Мерлиона (N 1.286785, E 103.854503) в Сингапуре. Он расположен в области вокруг экватора, ограниченного −10° южной широты и +10° северной широты между 100° и 120° восточной долготы. Он смещен на 80° от Южного полюса и на 280° от антимеридиана, что соответствует 4 и 14 для первой пары цифр, по основанию 20 они кодируются как «6» и «P». Таким образом мы получили плюс-код «6P». Он может быть дополнен до [http://plus.codes/6P000000+ 6P000000+]. |
|||
Теперь уточним этот блок до подблока между 1° и 2° северной широты и 103° и 104° восточной долготы. Это добавляет 11° и 3° к юго-западному углу. Таким образом, вторая пара координат в двадцатеричной системе — «H» и «5». Результат дополнился до [http://plus.codes/6PH50000+ 6PH50000+]. |
|||
После четырёх дополнительных уточнений парке Мерлион будет закодирован как [http://plus.codes/6PH57VP3+PR 6PH57VP3+PR]. |
|||
Следующий шаг требует от нас уточнения положения в сетке 4 на 5 и определения ячейки, на которую указывают координаты. Это ячейка с цифрой «6». Следовательно, итоговый открытый код местоположения: [http://plus.codes/6PH57VP3+PR6 6PH57VP3+PR6]. |
|||
== Обычное применение == |
|||
== Типовое использование == |
|||
== Другие системы геокодирования == |
|||
При использовании кода вместе с Google Maps или сайтом [http://plus.codes Plus.codes] обычно пропускают первые 4 символа кода и добавляют приблизительное местоположение, например город, штат или страну. Таким образом, приведенный выше пример превращается в [http://plus.codes/7VP3+PR6%20Singapore 7VP3+PR6 Singapore]. Необходимо позаботиться о том, чтобы обозначение данного местоположения было достаточно маленьким, чтобы определить уникальное место. Картографические приложения могут использовать местоположение устройства для устранения неоднозначности сокращенных кодов. |
|||
== Примечания == |
== Примечания == |
||
{{примечания}} |
{{примечания}} |
||
{{изолированная статья}} |
|||
== Ссылки == |
|||
[[Категория:Геокоды]] |
|||
== Ссылки == |
Текущая версия от 07:36, 14 сентября 2024
Открытый код местоположения (Open Location Code — OLC) — система геокодирования для определения области любой точки Земли[1].
Код был разработан в инженерном офисе Google в Цюрихе[2], и опубликован в конце октября 2014 года[3]. Коды местоположения, созданные системой OLC, называются «плюсовыми кодами», или «плюскодами».
Открытый код местоположения — способ кодирования местоположения в символы, которые проще использовать, чем координаты в виде широты и долготы. Плюсовые коды предназначены для использования в качестве уличных адресов и особенно полезны в случаях, когда нет официальной системы идентификации зданий — названия улиц, номеров домов и почтовых индексов[4].
Коды OLC получаются преобразованием координат широты и долготы, поэтому любая точка на Земле уже адресуется плюскодом[5]. По длине они похожи на телефонный номер — например, 849VCWC8+R9 — но зачастую сокращаются до четырёх или шести цифр в сочетании с наименованием местности (CWC8+R9, Mountain View). Расположенные рядом места имеют схожие коды. Их можно кодировать или декодировать в автономном режиме. Набор символов для кодирования кодов OLC составлен таким образом, чтобы исключить применение похожих на вид символов для уменьшения путаницы и ошибок, так же исключены гласные, чтобы исключить совпадение плюскода с существующими словами. Kоды OLC не чувствительны к регистру, поэтому их можно легко передать по телефону[6].
С августа 2015 года карты Google поддерживают коды OLC в своей поисковой системе[7]. Алгоритм находится под лицензией Apache License 2.0[8] и доступен на GitHub[9].
Google заявляет, что коды OLC принимаются в качестве почтовых адресов в Кабо-Верде[10], частях Калькутты[11] и в Навахо[12].
Спецификация
[править | править код]Система открытого кода местоположения[13] основана на широте и долготе в координатах WGS84. Каждый код описывает область, ограниченную двумя параллелями и двумя меридианами фиксированной сетки, указывая широту, долготу и размер области. Самая большая сетка состоит из блоков 20 на 20 градусов (9 строк и 18 столбцов) и делится на подблоки 20 на 20 до четырёх раз. С этого уровня и далее деление происходит на подблоки 5 на 4. В таблице показаны блоки различных размеров, максимально приближённые к экватору. Ширина блока уменьшается с удалением от экватора.
Длина кода | 2 | 4 | 6 | 8 | + | 10 | 11 |
---|---|---|---|---|---|---|---|
Размер блока | 20° | 1° | 0,05° (3′) | 0,0025° (9″) | 0,000125° (0,45″) | 0,00003125° × 0,000025° | |
Примерная точность | 2200 км | 110 км | 5,6 км | 277 м | 14 м | 3 м | |
Примерная площадь возле широты 75° | 1290 393 км² | 3 226 км² | 8 км² | 20 162 м² | 50 м² | 3 м² | |
Примерная площадь возле широты 60° | 2486 716 км² | 6 217 км² | 16 км² | 38 855 м² | 97 м² | 5 м² | |
Примерная площадь возле широты 45° | 3505 001 км² | 8 763 км² | 22 км² | 54 766 м² | 137 м² | 7 м² | |
Примерная площадь возле широты 30° | 4278 266 км² | 10 696 км² | 27 км² | 66 848 м² | 167 м² | 8 м² | |
Примерная площадь возле широты 15° | 4760 164 км² | 11 900 км² | 30 км² | 74 378 м² | 186 м² | 9 м² | |
Примерная площадь возле экватора | 4923 639 км² | 12 309 км² | 31 км² | 76 932 м² | 192 м² | 10 м² |
Полная сетка использует смещения от Южного полюса (-90°) и антимеридиана (-180°), выраженные в двадцатеричной системе счисления. Чтобы избежать неправильного прочтения или написания нежелательных слов, кодировка исключает гласные и символы, которые можно легко спутать друг с другом. В следующей таблице показано соответствие.
Вес цифры двадцатеричной системы | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Обозначение цифры двадцатеричной системы | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | C | F | G | H | J | M | P | Q | R | V | W | X |
Код начинается с пяти пар цифр, каждая из которых состоит из цифры, представляющей широту, и цифры, представляющей долготу. Самые большие блоки состоят из двух цифр. После 8-й цифры код содержит знак «+» в качестве разделителя для облегчения визуального анализа. После 10 цифр в каждом подразделе подблоки кодируются одной цифрой кода следующим образом:
долгота → | ||||
---|---|---|---|---|
широта ↑ | R | V | W | X |
J | M | P | Q | |
C | F | G | H | |
6 | 7 | 8 | 9 | |
2 | 3 | 4 | 5 |
Области, превышающие 8-значный блок, могут быть указаны путем замены чётного числа конечных цифр перед знаком + на цифру 0, без указания символов после знака «+».
Пример
[править | править код]Рассмотрим, для примера, определение плюс-кода Мерлиона (N 1.286785, E 103.854503) в Сингапуре. Он расположен в области вокруг экватора, ограниченного −10° южной широты и +10° северной широты между 100° и 120° восточной долготы. Он смещен на 80° от Южного полюса и на 280° от антимеридиана, что соответствует 4 и 14 для первой пары цифр, по основанию 20 они кодируются как «6» и «P». Таким образом мы получили плюс-код «6P». Он может быть дополнен до 6P000000+.
Теперь уточним этот блок до подблока между 1° и 2° северной широты и 103° и 104° восточной долготы. Это добавляет 11° и 3° к юго-западному углу. Таким образом, вторая пара координат в двадцатеричной системе — «H» и «5». Результат дополнился до 6PH50000+.
После четырёх дополнительных уточнений парке Мерлион будет закодирован как 6PH57VP3+PR.
Следующий шаг требует от нас уточнения положения в сетке 4 на 5 и определения ячейки, на которую указывают координаты. Это ячейка с цифрой «6». Следовательно, итоговый открытый код местоположения: 6PH57VP3+PR6.
Типовое использование
[править | править код]При использовании кода вместе с Google Maps или сайтом Plus.codes обычно пропускают первые 4 символа кода и добавляют приблизительное местоположение, например город, штат или страну. Таким образом, приведенный выше пример превращается в 7VP3+PR6 Singapore. Необходимо позаботиться о том, чтобы обозначение данного местоположения было достаточно маленьким, чтобы определить уникальное место. Картографические приложения могут использовать местоположение устройства для устранения неоднозначности сокращенных кодов.
Примечания
[править | править код]- ↑ Plus codes . Plus.codes. Дата обращения: 3 ноября 2018. Архивировано 2 мая 2021 года.
- ↑ Open Location Code . Openlocationcode.com. Архивировано 1 марта 2018 года.
- ↑ See Open Location Code Github Архивная копия от 10 мая 2017 на Wayback Machine and Open Location Code forum Архивная копия от 4 мая 2021 на Wayback Machine.
- ↑ The Open Location Code website Архивная копия от 1 марта 2018 на Wayback Machine provides an overview. The document «An Evaluation of Location Encoding Systems» Архивная копия от 22 ноября 2019 на Wayback Machine provides a rationale.
- ↑ Specification: «Open Location Code: An Open Source Standard for Addresses, Independent of Building Numbers And Street Names» Архивная копия от 30 января 2016 на Wayback Machine
- ↑ Open Location Code: Addresses for everything, everywhere . Google-opensource.blogspot.ch. Дата обращения: 3 ноября 2018. Архивировано 17 августа 2016 года.
- ↑ Plus codes: A new way to help pinpoint places on the map . Google-latlong.blogspot.in. Дата обращения: 3 ноября 2018. Архивировано 6 марта 2016 года.
- ↑ google/open-location-code . GitHub.com. Дата обращения: 3 ноября 2018. Архивировано 25 октября 2020 года.
- ↑ google/open-location-code . GitHub.com. Дата обращения: 3 ноября 2018. Архивировано 4 мая 2021 года.
- ↑ Redirecting . Дата обращения: 7 мая 2021. Архивировано 7 мая 2021 года.
- ↑ Plus Codes | Addressing in Kolkata . Дата обращения: 7 мая 2021. Архивировано 7 мая 2021 года.
- ↑ "The Navajo Nation is getting addresses, thanks to an open-source mapping program used in urban India". The Salt Lake Tribune. 2019-10-25. Архивировано 6 мая 2021. Дата обращения: 7 мая 2021.
- ↑ google/open-location-code . GitHub. Дата обращения: 3 ноября 2018. Архивировано 30 января 2016 года.
На эту статью не ссылаются другие статьи Википедии. |