Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Мне нужно найти расстояние между населёнными пунктами на Земле. / 25 сообщений из 28, страница 1 из 2
13.07.2016, 16:22
    #39273247
Алиса С
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
При этом не кратчайшее, а которое выведет гугл для автомобиля. Как это сделать с помощью гугл апи? или любого другого сервиса с картой мира?
...
Рейтинг: 0 / 0
13.07.2016, 16:54
    #39273274
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
Алиса С,

Вот пример на Java: https://habrahabr.ru/post/148986/
...
Рейтинг: 0 / 0
13.07.2016, 21:58
    #39273428
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
...
Рейтинг: 0 / 0
14.07.2016, 11:19
    #39273619
hclubmk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
tchingizвизиком Этой карте можно верить? Актуальность предоставления данных вызывает вопросы, в частности - географические наименования объектов - не всегда соответствуют действительности, что уже говорить о дорогах/маршрутах?
альтернативный вариант: OSM , причем достаточно просто поднимается на своем сервере, что позволяет избежать ограничения по количеству запросов, присущее public GIS-серверам.
...
Рейтинг: 0 / 0
14.07.2016, 19:14
    #39274107
Алиса С
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
DarkMaster,

Спасибо! Думаю на php будет легко переписать.
...
Рейтинг: 0 / 0
20.07.2016, 13:49
    #39277086
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
hclubmktchingizвизиком Этой карте можно верить? Актуальность предоставления данных вызывает вопросы, в частности - географические наименования объектов - не всегда соответствуют действительности, что уже говорить о дорогах/маршрутах?
ну, найдите существенное отличие
тут яндекс
...
Рейтинг: 0 / 0
20.07.2016, 13:49
    #39277087
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
тут визиком
...
Рейтинг: 0 / 0
20.07.2016, 13:50
    #39277089
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
тут осм
...
Рейтинг: 0 / 0
20.07.2016, 14:09
    #39277105
hclubmk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
tchingizнайдите существенное отличие
Вот тебе пяток отличий (намеренно не искал - ориентировался по старой памяти в наименованиях).
46.966313,31.994577
46.95873,32.011088
46.964659,32.070547
46.966565,32.078767
46.970784,32.067781
Повторю вопрос: такой карте можно верить? Ты действительно считаешь ее актуальной?
...
Рейтинг: 0 / 0
20.07.2016, 15:23
    #39277153
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
hclubmktchingizнайдите существенное отличие
Вот тебе пяток отличий (намеренно не искал - ориентировался по старой памяти в наименованиях).
46.966313,31.994577
46.95873,32.011088
46.964659,32.070547
46.966565,32.078767
46.970784,32.067781
Повторю вопрос: такой карте можно верить? Ты действительно считаешь ее актуальной?
46.966313,31.994577 - проспект Ленина на Визикоме?
так не угонишься за этой зрадой.

а расстояния тут причем?
...
Рейтинг: 0 / 0
20.07.2016, 15:52
    #39277177
hclubmk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
tchingiz,

Дело не в наименованиях объектов, а в самом поддержании карты в актуальном состоянии. Если переименовать объекты - это достаточно просто, но не делается, то состояние путей/маршрутов/дорог - тем более вызывает сомнение. Для примера - возьму другие GIS - гугл - не знаю, не отслеживал, но мне кажется - достаточно стабильно отслеживают состояние объектов (особенно привлекает поддержка панорам в API), яндекс - ой туго: неоднократно указывал им на ошибки (касалось путей/дорог), но худо-бедно - исправляли, хотя и не всё. Лучше всего - ОСМ, и это не удивительно. Я так понимаю, ты строишь какую-то картографическую систему. Если в маршрутизации будут погрешности, или хуже - ошибки, транспортники назабивают большую кучу голов в твои ворота, поэтом будь бдителен в использовании GIS, которые не смогут например найти не существующий для них адрес, хотя этот адрес реально существует; проложат маршрут, по которому не существует дороги, или тем паче, как Сусанин поведут в такой обход...
Я не против использования тобой Визикома, но лично я не стал бы его использовать, поскольку "косяки" видны невооруженным глазом, а если копнуть поглубже, то, возможно, слюны не хватит отплеваться (шучу).
...
Рейтинг: 0 / 0
20.07.2016, 19:38
    #39277338
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
угу
...
Рейтинг: 0 / 0
20.07.2016, 19:53
    #39277340
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
hclubmk,
ты случаем не Москус с Хабры?
https://habrahabr.ru/users/Moskus/
...
Рейтинг: 0 / 0
20.07.2016, 22:08
    #39277378
hclubmk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
tchingizhclubmk,
ты случаем не Москус с Хабры?
https://habrahabr.ru/users/Moskus/
...
Рейтинг: 0 / 0
20.07.2016, 22:08
    #39277380
hclubmk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
tchingizhclubmk,
ты случаем не Москус с Хабры?
https://habrahabr.ru/users/Moskus/ нет, не мой профиль.
...
Рейтинг: 0 / 0
21.07.2016, 10:25
    #39277576
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
hclubmk,
а ты там чтото пишешь?
У Москуса приличные статьи, наверно, придется ссылаться, а я без фамилии не люблю.
А как на захабреных ссылаются?
...
Рейтинг: 0 / 0
21.07.2016, 13:36
    #39277810
hclubmk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
tchingiz,
Да я по статьям не ударяю.
авторУ Москуса приличные статьи, наверно, придется ссылаться, а я без фамилии не люблю.
А как на захабреных ссылаются?
Попробуй ч/з службу поддержки запросить
https://habrahabr.ru/feedback/
...
Рейтинг: 0 / 0
11.08.2016, 11:47
    #39290206
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
шо за язык

http://vasnake.blogspot.ru/2006/12/blog-post_15.html function nmea2DecDegree($nmeaCoord) { // decimal(9,7), convert nmea ddmm.mmmm (dddmm.mmmm) to decimal degree
$res = 0.0;
$pp = strpos($nmeaCoord, '.');
if ($pp === false || $pp <>

$d = substr($nmeaCoord, 0, $pp-2);
$m = substr($nmeaCoord, $pp-2);
$res = (double)$d + ((double)$m / 60.0);
return $res;
}


ну а теперь посчитаем расстояние в метрах и азимут в градусах:


function calcDistance ($StartLat, $StartLon, $EndLat, $EndLon) { // array, 'dist' => 'x' meters, 'bearing' => 'y' degree; from decimal degree coords
//~ 10 сантиметров точность, когда
//~ abs(lon1-lon2) <= 0.0000014
//~ abs(lat1-lat2) <= 0.0000008
$res = array('dist'=>0.0, 'bearing'=>0.0);
$StartLat = (double)str_replace(',', '.', $StartLat); $StartLon = (double)str_replace(',', '.', $StartLon);
$EndLat = (double)str_replace(',', '.', $EndLat); $EndLon = (double)str_replace(',', '.', $EndLon);

if ($StartLat == 0.0 || $StartLon == 0.0 || $EndLat == 0.0 || $EndLon == 0.0) return $res;
if ( abs($StartLon - $EndLon) <= 0.0000014 && abs($StartLat - $EndLat) <= 0.0000008 ) return $res;

$D2R = 0.01745329251994330; // Pi/180
$R2D = 57.29577951308230000; // 180/Pi
/*
// http://www.pcigeomatics.com/cgi-bin/pcihlp/PROJ|EARTH MODELS|ELLIPSOIDS
// ELLIPS Descriptor Semi-Major Axis (A) (metres) Semi-Minor Axis (B) (metres)
// 12 WGS 1984 6378137.000000 6356752.314245
// 15 Krassovsky 1940 6378245.000000 6356863.018800
*/
$a = 6378137.0; // Semi-major axis of ellipsoid in meters
// $b = 6356752.314245; // Semi-minor axis of ellipsoid
$e2 = 0.00673949674233346; // 2nd eccentricity squared Geocent_ep2 = (Geocent_a2 - Geocent_b2) / Geocent_b2

$fdLambda = ($StartLon - $EndLon) * $D2R;
$fdPhi = ($StartLat - $EndLat) * $D2R;
$fPhimean = ($StartLat + $EndLat) / 2.0 * $D2R;
$fTemp = 1 - $e2 * pow( sin($fPhimean), 2);
$fRho = $a * (1 - $e2) / pow($fTemp, 1.5);
$fNu = $a / sqrt(1 - $e2 * sin($fPhimean) * sin($fPhimean) );
$fz = 2 * asin(sqrt (
pow(sin( $fdPhi / 2.0), 2 ) + cos( $EndLat * $D2R )
* cos( $StartLat * $D2R ) * pow(sin($fdLambda / 2.0), 2)
) );

$fAlpha = asin(cos( $EndLat * $D2R ) * sin($fdLambda) / sin($fz) );
$fR = $fRho * $fNu / ($fRho * pow(sin($fAlpha), 2) + $fNu * pow(cos($fAlpha), 2));
$res['dist'] = $fz * $fR;

if ($res['dist'] <= 0.999) return $res;

$Bearing = abs($fAlpha * $R2D);
if (($StartLat <= $EndLat) and ($StartLon > $EndLon)) $Bearing = 360 - $Bearing;
elseif (($StartLat > $EndLat) and ($StartLon >= $EndLon)) $Bearing = 180 + $Bearing;
elseif (($StartLat > $EndLat) and ($StartLon < $EndLon)) $Bearing = 180 - $Bearing;

$res['bearing'] = $Bearing;
return $res;
}
...
Рейтинг: 0 / 0
11.08.2016, 12:13
    #39290231
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
tchingizшо за язык
PHP?
...
Рейтинг: 0 / 0
18.08.2016, 19:25
    #39294201
Areostar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
Алиса С,

Google maps API на пример
...
Рейтинг: 0 / 0
21.10.2016, 18:00
    #39331852
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
hclubmktchingiz,
проложат маршрут, по которому не существует дороги, или тем паче, как Сусанин поведут в такой обход...(шучу).
зачем мне эти дороги? (шучу)
...
Рейтинг: 0 / 0
22.10.2016, 16:14
    #39332131
hclubmk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
Он?

...
Рейтинг: 0 / 0
23.10.2016, 17:02
    #39332336
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
hclubmk
Он?


)) вообще говоря, не знаю.
Мне дают трек и фотки и требуют (только щас, быстро и все сразу) фотоплан сделать
...
Рейтинг: 0 / 0
25.10.2016, 11:32
    #39333389
hclubmk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
tchingiz,
Судя по скрину трека, речь идет о площади ~90 км². Представляю, сколько приходится обрабатывать фотографий (не думаю, что всё укладывается в несколько панорамных снимков). Фотоплан получается "накидной", или производятся ещё какие то преобразования для "безшовности"? И да, в плане академического изучения вопроса, не подскажешь, что стоит почитать, чтоб воды поменьше было?
...
Рейтинг: 0 / 0
27.10.2016, 11:31
    #39335142
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Мне нужно найти расстояние между населёнными пунктами на Земле.
пока никакого не получается. В качестве эксперимента пытались просто нагенерировать карту на тайлах из 19 зума. Не выходит каменный цветок ))

на этом треке больше чем 400 снимков
авторФотоплан получается "накидной", или производятся ещё какие то преобразования для "безшовности"
если сделать привязку каждой фотки к геодезической сети в той или иной форме, наверно,
получится безшовный

авторИ да, в плане академического изучения вопроса, не подскажешь, что стоит почитать, чтоб воды поменьше было?
не допонял?
мучаюсь со сфероидической геодезией
Гавриленко Ю.Н. Основы сфероидической геодезии -- вроде конкретная
Есть еще Морозов, Вахромеева и Серапинас.\

гдето попадались лабораторные вроде как от Гавриленко (по общему виду понравились, но попались после того как я все закончил), но не помню где
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Мне нужно найти расстояние между населёнными пунктами на Земле. / 25 сообщений из 28, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]