Слой Яндекс.Пробки

программа для загрузки и просмотра спутниковых снимков Земли, Луны, Марса предоставленных сервисами Google Maps и Космоснимки. Возможность работы с GPS приёмником.

Модераторы: Tolik, zed

Слой Яндекс.Пробки

Сообщение dsd_corp » 17 мар 2009, 18:04

Всем привет.
Недавно в ветке "Чего вы хотите?" было обсуждение сабжа.
По просьбам трудящихся создаю новую тему и скомпилирую результаты предыдущих обсуждений сюда.

Итак, вот что у нас уже есть. Первое сообщение данной ветки (этот пост) будет регулярно обновляться.

настройки для слоя пробок:
GetUrlScript.txt
Код: Выделить всё
function retrieve_ts(url: string; xstart: string; xend: string):integer; external 'ytrf_retrieve_ts@maps\YaTraf.dll stdcall';
function GetIntParam(key: string): Integer; external 'ytrf_GetIntParam@maps\YaTraf.dll stdcall';
function SetIntParam(key: string; val: Integer): integer; external 'ytrf_SetIntParam@maps\YaTraf.dll stdcall';
function GetUTS: Longint; external 'ytrf_GetUTS@maps\YaTraf.dll stdcall';

function ts_update_needed(delta: integer):integer;
var
  lts, ts : integer;
  lts_key: string;
begin
  result:=0;
  lts_key:='ytrf_lts';
  lts:=GetIntParam(lts_key);
  ts:=GetUTS;
  if (ts>lts+delta) then begin
    SetIntParam(lts_key, GetUTS);
    result:=1;
  end;
end;

function get_ts(delta: integer):integer;
var
  ts_key, url, data: string;
  pt : LongInt;
begin
result:=0;
ts_key:='ytrf_ts';
if (ts_update_needed(delta)>0) then begin
   url:='http://trf.maps.yandex.net/trf/stat.js';
   result:=retrieve_ts(url, 'timestamp:"', '"');
   SetIntParam(ts_key, result);
end else begin
   result:=GetIntParam(ts_key);
end;
end;

begin
ResultURL:='';
if (GetZ<>0) then ResultURL:=GetURLBase+inttostr(GetX)+'&y='+inttostr(GetY)+'&z='+inttostr(GetZ-1)+'&tm='+inttostr(get_ts(60));
end.


params.txt
Код: Выделить всё
[PARAMS]
GUID={C32B96AD-3AC5-4170-ADD7-47B2222AFC99}
asLayer=1
name=Пробки (Яндекс.Карты)
name_9=Traffic (Yandex.Maps)
NameInCache=yatraf
DefURLBase=http://trf.maps.yandex.net/tiles?l=trf&x=
ContentType=image/png
ParentSubMenu=
Ext=.png
projection=2
sradiusa=6378137
sradiusb=6356752
separator=0
UseDwn=1
Usestick=0
UseGenPrevious=0
Usedel=1
Usesave=0
UseAntiBan=0
Sleep=0
DefHotKey=54
BanIfLen=0
DelAfterShow=1

собственно готовый zmp-файл: http://cs.911.ru/traffic/YaTraf.zmp (GUID я ему сгенерил, а слизывал формат с яндекс-гибрида)
для работы слоя необходима внешняя библиотека дополнительных функций.
Скомпилированную библиотеку можно скачать тут: http://cs.911.ru/traffic/YaTraf.dll
Этот файл нужно бросить в папку maps, то есть туда же, где лежат zmp-файлы.

исходники библиотеки(для параноиков и просто интересующихся :D ):
Последний раз редактировалось dsd_corp 16 окт 2009, 10:15, всего редактировалось 3 раз(а).
dsd_corp
Новичок
 
Сообщения: 46
Зарегистрирован: 25 фев 2009, 19:30
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Слой Яндекс.Пробки

Сообщение slazar » 29 янв 2011, 15:29

Все одинаково переносится с одного на другой!
Даже переустановка не помогает
slazar
Новичок
 
Сообщения: 4
Зарегистрирован: 29 янв 2011, 11:54
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Слой Яндекс.Пробки

Сообщение Papazol » 29 янв 2011, 17:21

Надеюсь, другие-то карты и снимки скачиваются нормально?
Переустановка в таком случае не помогает. Только zmp.
Надо снифером посмотреть, какие запросы отсылает программа и какие ответы сервера.
Чудес не бывает.
Аватара пользователя
Papazol
Гуру
 
Сообщения: 1210
Зарегистрирован: 04 дек 2009, 01:39
Откуда: Рязань
Благодарил (а): 29 раз.
Поблагодарили: 147 раз.

Re: Слой Яндекс.Пробки

Сообщение slazar » 29 янв 2011, 19:36

Все качается без проблем, только яндекс пробки, правда пару дней назад грузились, а потом резко перестали !!!!!!!!!!!
slazar
Новичок
 
Сообщения: 4
Зарегистрирован: 29 янв 2011, 11:54
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Слой Яндекс.Пробки

Сообщение slazar » 29 янв 2011, 19:41

Papazol писал(а):Только zmp.
Надо снифером посмотреть, какие запросы отсылает программа и какие ответы сервера.
Чудес не бывает.

Я не такой продвинутый!!!!
Проверил txt в zmp все идентично!
slazar
Новичок
 
Сообщения: 4
Зарегистрирован: 29 янв 2011, 11:54
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Слой Яндекс.Пробки

Сообщение Parasite » 29 янв 2011, 22:05

slazar писал(а):Я не такой продвинутый!!!!

Харэ флудить. Правила, 2.4
The only difference between me and a mad man is that I am not mad. /Salvador Dali/
Аватара пользователя
Parasite
Администратор
 
Сообщения: 4532
ICQ: 15819243
Зарегистрирован: 23 окт 2008, 17:38
Благодарил (а): 57 раз.
Поблагодарили: 214 раз.

Re: Слой Яндекс.Пробки

Сообщение BustEd » 21 окт 2011, 11:34

Papazol писал(а):Придумал скрипты, помогающие обновлять пробки. Есть два варианта: по горячей клавише и по кнопке на экране. Первый вариант удобней при использовании ноутбука. Горячая клавиша - F8. Второй вариант удобнее при использовани тачскрина. Кнопка специально сделана крупной, чтобы попадать было проще. Экзешники нужно положить в папку с SAS.Планетой. По нажатию горячей/экранной кнопки происходит удаление всех папок кэша Яндекс.Пробок, затем эмулируется небольшое движение карты для обновления экрана. Вскоре после этого скачиваются новые тайлы.

Вот ещё один вариант: полностью автоматическое обновление. Каждую минуту.

Добавлена установка таймаута через ini-файл. Таймаут указывается в миллисекундах!


Если использовать автоматическое обновление - нужно просто вместе с картой запустить экзешник скрипта и все? И, собсна, каждый раз при перезапуске его запускать? А если через F8 или кнопки на экране? Тоже сначала запустить, потом уже кнопки жать?
BustEd
Новичок
 
Сообщения: 5
Зарегистрирован: 21 окт 2011, 10:51
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.

Re: Слой Яндекс.Пробки

Сообщение Papazol » 24 окт 2011, 01:04

BustEd писал(а):Если использовать автоматическое обновление - нужно просто вместе с картой запустить экзешник скрипта и все? И, собсна, каждый раз при перезапуске его запускать? А если через F8 или кнопки на экране? Тоже сначала запустить, потом уже кнопки жать?

Прошло некоторое время, и эти скрипты устарели. Дело в названии окна SAS.Планеты. Предлагаю опробовать свежий скрипт, автоматически обновляющий Яндекс.Пробки. Запускать его следует при запущенной SAS.Планете. Работает при любом установленном языке программы. В момент обновления пробок должен показываться тултип на курсоре.
Вложения
YaTraf_Auto.zip
(287.84 KiB) Скачиваний: 60
Аватара пользователя
Papazol
Гуру
 
Сообщения: 1210
Зарегистрирован: 04 дек 2009, 01:39
Откуда: Рязань
Благодарил (а): 29 раз.
Поблагодарили: 147 раз.

Re: Слой Яндекс.Пробки

Сообщение BustEd » 11 мар 2012, 22:19

Скрипт работает на ура. Работал. Пока я не скачал вот эту бету:
SAS.Planet.Nightly.120302.5140.7z

Сначала перестали обновляться яндекс-пробки. Появляется надпись "обновляю пробки" и все. Ничего не меняется. Потом я переключился на гугль и на мейл.ру пробки, они по разу загрузились и все. Ничего не происходит. Вопрос - это я как-то криво бету обновил или это в ней баг?
BustEd
Новичок
 
Сообщения: 5
Зарегистрирован: 21 окт 2011, 10:51
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.

Re: Слой Яндекс.Пробки

Сообщение defecator » 31 май 2012, 12:44

Народ, подскажите, пожалуйста, где можно скачать исходники YaTraf.dll ?

Вот это не открывается:

исходники библиотеки(для параноиков и просто интересующихся ):
проект Delphi в zip: http://cs.911.ru/traffic/YaTraf_dll_src.zip (2,6 кб zip)
defecator
Новичок
 
Сообщения: 6
Зарегистрирован: 24 окт 2011, 10:33
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Слой Яндекс.Пробки

Сообщение Papazol » 31 май 2012, 22:50

BustEd писал(а):Сначала перестали обновляться яндекс-пробки.

Да, теперь такая беда. Всё потому, что раньше экран обновлялся при однократном коротком нажатии любой кнопки со стрелкой, а теперь, чтобы обновить, нужно подвинуть изображение чуть ли не на половину экрана. Вот и не обновляется. Надо что-нибудь придумать...
.
.
.
.
Придумал.
Немного костыль, но работает. Горячие кнопки для зум ин и зум аут - по умолчанию.
Вложения
YaTraf_Auto.zip
(303.01 KiB) Скачиваний: 22
Аватара пользователя
Papazol
Гуру
 
Сообщения: 1210
Зарегистрирован: 04 дек 2009, 01:39
Откуда: Рязань
Благодарил (а): 29 раз.
Поблагодарили: 147 раз.

Пред.След.

Вернуться в SAS.Планета

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 25