Interested Article - OLC

Открытый код местоположения ( Open Location Code OLC ) — система геокодирования для определения области любой точки Земли .

Код был разработан в инженерном офисе Google в Цюрихе , и опубликован в конце октября 2014 года . Коды местоположения, созданные системой OLC, называются « плюсовыми кодами », или « плюскодами ».

Открытый код местоположения — способ кодирования местоположения в символы, которые проще использовать, чем координаты в виде широты и долготы. Плюсовые коды предназначены для использования в качестве уличных адресов и особенно полезны в случаях, когда нет официальной системы идентификации зданий — названия улиц, номеров домов и почтовых индексов .

Коды OLC получаются преобразованием координат широты и долготы , поэтому любая точка на Земле уже адресуется плюскодом . По длине они похожи на телефонный номер — например, 849VCWC8+R9 — но зачастую сокращаются до четырёх или шести цифр в сочетании с наименованием местности (CWC8+R9, Mountain View). Расположенные рядом места имеют схожие коды. Их можно кодировать или декодировать в автономном режиме. Набор символов для кодирования кодов OLC составлен таким образом, чтобы исключить применение похожих на вид символов для уменьшения путаницы и ошибок, так же исключены гласные, чтобы исключить совпадение плюскода с существующими словами. Kоды OLC не чувствительны к регистру, поэтому их можно легко передать по телефону .

С августа 2015 года карты Google поддерживают коды OLC в своей поисковой системе . Алгоритм находится под лицензией Apache License 2.0 и доступен на GitHub .

Google заявляет, что коды OLC принимаются в качестве почтовых адресов в Кабо-Верде , частях Калькутты и в Навахо .

Спецификация

Система открытого кода местоположения основана на широте и долготе в координатах . Каждый код описывает область, ограниченную двумя параллелями и двумя меридианами фиксированной сетки, указывая широту, долготу и размер области. Самая большая сетка состоит из блоков 20 на 20 градусов (9 строк и 18 столбцов) и делится на подблоки 20 на 20 до четырёх раз. С этого уровня и далее деление происходит на подблоки 5 на 4. В таблице показаны блоки различных размеров, максимально приближённые к экватору. Ширина блока уменьшается с удалением от экватора.

Размеры блоков открытого кода местоположения
Длина кода 2 4 6 8 + 10 11
Размер блока 20° 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». Он может быть дополнен до .

Теперь уточним этот блок до подблока между 1° и 2° северной широты и 103° и 104° восточной долготы. Это добавляет 11° и 3° к юго-западному углу. Таким образом, вторая пара координат в двадцатеричной системе — «H» и «5». Результат дополнился до .

После четырёх дополнительных уточнений парке Мерлион будет закодирован как .

Следующий шаг требует от нас уточнения положения в сетке 4 на 5 и определения ячейки, на которую указывают координаты. Это ячейка с цифрой «6». Следовательно, итоговый открытый код местоположения: .

Типовое использование

При использовании кода вместе с Google Maps или сайтом обычно пропускают первые 4 символа кода и добавляют приблизительное местоположение, например город, штат или страну. Таким образом, приведенный выше пример превращается в . Необходимо позаботиться о том, чтобы обозначение данного местоположения было достаточно маленьким, чтобы определить уникальное место. Картографические приложения могут использовать местоположение устройства для устранения неоднозначности сокращенных кодов.

Примечания

  1. . Plus.codes . Дата обращения: 3 ноября 2018. 2 мая 2021 года.
  2. . Openlocationcode.com . 1 марта 2018 года.
  3. See от 10 мая 2017 на Wayback Machine and от 4 мая 2021 на Wayback Machine .
  4. The от 1 марта 2018 на Wayback Machine provides an overview. The document от 22 ноября 2019 на Wayback Machine provides a rationale.
  5. Specification: от 30 января 2016 на Wayback Machine
  6. . Google-opensource.blogspot.ch . Дата обращения: 3 ноября 2018. 17 августа 2016 года.
  7. . Google-latlong.blogspot.in . Дата обращения: 3 ноября 2018. 6 марта 2016 года.
  8. . GitHub.com . Дата обращения: 3 ноября 2018. 25 октября 2020 года.
  9. . GitHub.com . Дата обращения: 3 ноября 2018. 4 мая 2021 года.
  10. . Дата обращения: 7 мая 2021. 7 мая 2021 года.
  11. . Дата обращения: 7 мая 2021. 7 мая 2021 года.
  12. . The Salt Lake Tribune . 2019-10-25. из оригинала 6 мая 2021 . Дата обращения: 7 мая 2021 .
  13. . GitHub . Дата обращения: 3 ноября 2018. 30 января 2016 года.
Источник —

Same as OLC