Как долго может быть широта и долгота?
Я получаю очень длинную длину, отправленную устройством Windows Phone:
Latitude=-63572375290155
Longitude=106744840359415
Это превышает размер столбца таблицы, и я получаю ошибки.
Как долго может быть широта и долгота?
Я получаю очень длинную длину, отправленную устройством Windows Phone:
Latitude=-63572375290155
Longitude=106744840359415
Это превышает размер столбца таблицы, и я получаю ошибки.
Допустимый диапазон широты в градусах составляет -90 и +90 для южного и северного полушария соответственно. Долгота находится в диапазоне -180 и +180, указывая координаты к западу и востоку от меридиана, соответственно.
Для справки: экватор Equator имеет широту 0 °, северный полюс North pole имеет широту 90 ° северной широты (написано 90 ° с.ш. или +90 °) и Южный полюс имеет широту -90 °.
Первичный меридиан Prime Meridian имеет долготу 0 °, которая проходит через Гринвич, Англия. Международная линия дат (IDL) примерно следует 180 ° долготы. Долгота с положительным значением падает в восточном полушарии, а отрицательное значение падает в западном полушарии.
Точность десятичных градусов
Точность в шести (6) десятичных разрядах в координатах с использованием записи в десятичных градусах составляет 10 см (или 0,1 метра). Каждая разница в .000001 в десятичном градусе составляет примерно 10 см в длину. Например, изображения Google Earth и Google Maps обычно имеют разрешение 1 метр, а в некоторых местах разрешение выше 1 дюйма на пиксель. Разрешение в один метр может быть представлено с использованием 5 десятичных знаков, так что более 6 десятичных знаков не имеют значения для этого разрешения. Расстояние между долготами на экваторе такое же, как и широта, но расстояние между долготами достигает нулей на полюсах, когда линии меридиана сходятся в этой точке.
Если значение широты указано как -6.3572375290155 или -6 3.572375290155, вы можете округлить и сохранить до 6 десятичных знаков с точностью 10 см (или 0,1 метра).
Для точности в миллиметрах (мм) представьте широту/долготу с 8 десятичными разрядами в формате десятичных градусов. Поскольку большинству приложений такой уровень точности не нужен, для большинства случаев достаточно 6 десятичных знаков.
В другом направлении целые десятичные градусы представляют расстояние ~ 111 км (или 60 морских миль), а разница в 0,1 десятичного градуса представляет площадь ~ 11 кв. Км.
Вот таблица разницы в # десятичных разрядов по широте с дельта-градусами и расчетным расстоянием в метрах с использованием 0,0 в качестве начальной точки.
decimal decimal distance
places degrees (in meters)
------- --------- -----------
1 0.1000000 11,057.43 11 km
2 0.0100000 1,105.74 1 km
3 0.0010000 110.57
4 0.0001000 11.06
5 0.0000100 1.11
6 0.0000010 0.11 11 cm
7 0.0000001 0.01 1 cm
Представление градусов-минут-секунд (DMS)
Для обозначения DMS 1 секунда дуги = 1/60/60 градусов = длина ~ 30 метров, а дельта 0,1 секунды составляет ~ 3 метра.
Пример:
1 минута дуги = 1/60 градуса = ~ 2000 м (2 км)
ОБНОВИТЬ: Вот забавный пост в блоге о точности координат.
Локатор: макс/мин +90
до -90
Долгота: макс/мин +180
до -180
Действительные долготы от -180 до 180 градусов.
Широта должна быть от -90 градусов до 90 градусов, но области, очень близкие к полюсам, не являются индексируемыми.
Точные пределы, указанные EPSG: 900913/EPSG: 3785/OSGEO: 41001, следующие:
Максимальный максимум: 9 (12.3456789), долгота 10 (123.4567890), оба они имеют максимум 7 десятичных знаков (по крайней мере, я могу найти в Google Maps),
Например, оба столбца в Rails и Postgresql выглядят примерно так:
t.decimal :latitude, precision: 9, scale: 7
t.decimal :longitude, precision: 10, scale: 7
Идеальный тип данных для хранения значений Lat Long в SQL Server является десятичным (9,6)
Как уже говорили другие, это с точностью около 10 см, при этом используется только 5 байтов памяти.
например, CAST(123.456789 as decimal(9,6)) as [LatOrLong]
Пожалуйста, проверьте систему координат UTM https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system.
Эти значения должны быть в метрах для конкретной проекции карты. Например, пик горы Ассинибойн (при 50 ° 52′10 ″ с.ш. 115 ° 39′03 ″ з.д.) в зоне 11 UTM представлен 11U 594934.108296 5636174.091274, где (594934.108296, 5636174.091274) в метрах.