Страница 3 из 6
Re: Скрипты для On-Line сервисов
Добавлено: 29 мар 2013, 13:14
DarkDiver
Fencer_Silver писал(а):
Можно. Надо в скрипт допилить процедуры. По мере добавления, будут и WMS.
P.S. Я так думаю, пора документацию на скрипт оформлять?
Да, документация нужна. Ну и рабочий пример скрипта для какой-нибудь из существующих WMS карт хотелось бы...
Re: Скрипты для On-Line сервисов
Добавлено: 31 мар 2013, 12:13
Fencer_Silver
Документация и пример создания скриптов для On-Line сервисов
Re: Скрипты для On-Line сервисов
Добавлено: 31 мар 2013, 17:51
DarkDiver
Fencer_Silver писал(а):Документация и пример создания скриптов для On-Line сервисов
Спасибо, будем разбираться.
Добавлено спустя 1 минуту 17 секунд:
Добавил скрипт еще для одного сервиса: map.vl.ru.
Re: Скрипты для On-Line сервисов
Добавлено: 31 мар 2013, 19:24
Fencer_Silver
Yahoo спутник и карта
Re: Скрипты для On-Line сервисов
Добавлено: 31 мар 2013, 20:32
Fencer_Silver
Кадастровые границы Украины (кадастр карта)
Re: Скрипты для On-Line сервисов
Добавлено: 01 апр 2013, 01:52
DarkDiver
А вот этот сервис прикрутить возможно?
http://www.navionics.com/en/webapp
Здесь похоже координаты тайлов зашифрованы...
Re: Скрипты для On-Line сервисов
Добавлено: 01 апр 2013, 08:28
dr.b
Обновление гуглоспутника до 126 версии . Зоны обновлений:
http://mw1.gstatic.com/mw-earth-vectord ... Update.kmz
Re: Скрипты для On-Line сервисов
Добавлено: 01 апр 2013, 08:47
User_tester
Изменения в 126-ой версии гугла от 21 марта 2013 г. можно посмотреть
онлайн.

Re: Скрипты для On-Line сервисов
Добавлено: 01 апр 2013, 13:02
Fencer_Silver
Проверил все... Сейчас, наверное, умер. Еще в феврале для него работал адрес
http://ec2-54-234-79-86.compute-1.amazo ... =256&BBOX=
Сейчас он не отвечает (по крайней мере сегодня)...
А вот запрос из самого сервиса
http://webviewer-api.navionics.com/getm ... 1234567890
Он шифруется.
Re: Скрипты для On-Line сервисов
Добавлено: 02 апр 2013, 15:41
DarkDiver
Добавил топокарты с веб-сервиса marshruty.ru
Добавлено спустя 7 минут 46 секунд:
Ну, значит не судьба.
Re: Скрипты для On-Line сервисов
Добавлено: 12 апр 2013, 05:11
DarkDiver
Добавил три веб-карты:
- карты mail.ru
- карты rambler.ru
- карты Геоцентр-Консалтинг
Re: Скрипты для On-Line сервисов
Добавлено: 17 апр 2013, 01:54
DarkDiver
В GPSMаpЕdit используется скрипт для снимков гугл более сложной структуры чем в MGE:
Код: Выделить всё
.web_map 1
.name @r8800
.image GoogleMaps.ico
.class google-maps-sat
.cache_subfolder "sat"
.cache2_subfolder ""
.hotkey Shift+G
.def_version 126
.tile_referer https://maps.google.com/
.tile_size 256
.tile_ext .jpg
.tile_header "Accept: */*"
;.tile_header "Accept-Language: en"
.tile_header "Accept-Encoding: gzip, deflate"
; Max bitrate, in kbits/s. 0 means no limit.
.limit_rate 500
; Period of authorization, in munutes.
.auth_period 30
.include_script StdLib.js
.include_script ProjGoogle.js
.script JScript
////////////////////////////////////////////
function OnStart () {
WebMap.Browse ("root", "https://maps.google.com/", true);
}
var m_cMirrorServers = 2;
var m_strCookieKH = "";
function OnPageComplete (_strBrowser, _strURL, _pHTMLDocument2, _RawData) {
if (_strBrowser == "root" && _strURL == "https://maps.google.com/") {
var strScripts = _ExtractScripts (_pHTMLDocument2);
strScripts = strScripts.replace (/\s/, "");
strScripts = strScripts.replace (/'/, "\"");
var matchRequestPattern = strScripts.match (/"https:\/\/khms0.google.com\/kh/);
if (matchRequestPattern != null) {
//
// Determine version.
//
var strPostRequestPattern = strScripts.substr (matchRequestPattern.lastIndex, 256);
strPostRequestPattern = unescape (strPostRequestPattern);
strPostRequestPattern = WebMap.UndecorateCStringLiteral (strPostRequestPattern);
var matchVer = strPostRequestPattern.match (/v=[^&"]*/);
if (matchVer != null) {
var strVer = strPostRequestPattern.substr (matchVer.index + 2, matchVer.lastIndex - matchVer.index - 2);
WebMap.SetVersion (strVer);
} else {
WebMap.Log ("Failed to determine version!");
}
//
// Determine the number of mirror servers.
//
if (strScripts.search (/"https:\/\/khms3.google.com\/kh/) != -1) m_cMirrorServers = 4;
else if (strScripts.search (/"https:\/\/khms2.google.com\/kh/) != -1) m_cMirrorServers = 3;
else if (strScripts.search (/"https:\/\/khms1.google.com\/kh/) != -1) m_cMirrorServers = 2;
else if (strScripts.search (/"https:\/\/khms0.google.com\/kh/) != -1) m_cMirrorServers = 1;
else
WebMap.Log ("Failed to determine number of mirror servers!");
WebMap.Log ("Mirror servers = " + m_cMirrorServers);
}
//
// Determine cookies (not used now).
//
var matchCookieKH = strScripts.match (/"fzwq[^"]*/);
if (matchCookieKH != null) {
m_strCookieKH = strScripts.substr (matchCookieKH.index + 1, matchCookieKH.lastIndex - matchCookieKH.index - 1);
WebMap.Log ("CookieKH = " + m_strCookieKH);
}
var strCookiePID = WebMap.GetCookie ("http://maps.google.com/", "");
WebMap.Log ("CookiePID = " + strCookiePID);
WebMap.SetReady ();
}
}
function GetMaxLevel () {return 21;}
function GetMinLevel () {return 0;}
function MakeTileURL (_x, _y, _level, _version) {
var cMirror = ((_x + _y*2) % m_cMirrorServers);
var strSecureWord = "Galileo";
var strSpecial = (_y >= 10000 && _y < 100000) ? "&s=" : "";
return "https://khms" + cMirror + ".google.com/kh/v=" + _version + "&src=app&x=" + _x + strSpecial + "&y=" + _y + "&z=" + _level + "&s=" + strSecureWord.substr (0, (3*_x + _y) & 0x7);
}
Bо многих местах этот скрипт грузит более детальные снимки чем тот, который используется в MGE.
К сожалению моих знаний не хватает, чтобы адаптировать этот скрипт для MGE. Поэтому прошу помочь.
Re: Скрипты для On-Line сервисов
Добавлено: 17 апр 2013, 08:12
Fencer_Silver
DarkDiver писал(а):В GPSMаpЕdit используется скрипт для снимков гугл более сложной структуры чем в MGE:
Bо многих местах этот скрипт грузит более детальные снимки чем тот, который используется в MGE.
К сожалению моих знаний не хватает, чтобы адаптировать этот скрипт для MGE. Поэтому прошу помочь.
Ответ:
В этом скрипте используется версия - 126.
В нашем, DAT файле используется 123
http://khm1.google.com.ua/kh/v=123
Замените на
http://khm1.google.com.ua/kh/v=126
Следим!
Не забываем после замены - удалить или заархивировать старый кеш.
Re: Скрипты для On-Line сервисов
Добавлено: 17 апр 2013, 08:54
DarkDiver
Версию я разумеется поменял, кэш почистил.
Специально сделал для ГМЕ дополнительный скрипт как в МГЕ (с базовым url "http://khm1.google.com.ua/kh/v=126").
Код: Выделить всё
.web_map 1
.name "Google Sat 126"
.image GoogleSat2.ico
.class GoogleSat2
.cache_subfolder GoogleSat2
.hotkey Shift+S
.def_version ""
.tile_referer https://maps.google.com/
.tile_size 256
.tile_ext .jpg
.include_script ProjGoogle.js
.script JScript
////////////////////////////////////////////
function OnStart () {WebMap.SetReady ();}
function OnPageComplete (_strBrowser, _strURL, _pHTMLDocument2, _RawData) {}
function GetMaxLevel () {return 18;}
function GetMinLevel () {return 0;}
function MakeTileURL (_x, _y, _level, _version) {
var rn;
var substr;
var zoom;
var strSecureWord = "Galileo";
rn=Math.floor(Math.random() * 4);
substr=strSecureWord.substr (0, (3*_x + _y) & 0x7)
zoom=_level;
return "http://khm1.google.com.ua/kh/v=126"+"&x="+_x+"&y="+_y+"&z="+zoom+"&s="+substr
}
И этот скрипт грузит разные снимки по сравнению со встроенным скриптом из ГМЕ. Судя по всему в ГМЕ скрипт анализирует несколько кешей гугл, в том числе кеш с зимними снимками и когда нет детальных летних снимков, то подгружаются более детальные зимние - как то так...
Если надо, могу скриншоты сделать для примера.
Re: Скрипты для On-Line сервисов
Добавлено: 17 апр 2013, 09:04
Fencer_Silver
Для того, что бы написать именно такой скрипт, надо добавить (зарегистрировать) новые функции в наш Pascal Script.