From 717375a2e248d36fc48429c3daca647b46a5a94a Mon Sep 17 00:00:00 2001 From: sasgis <> Date: Sat, 12 Dec 1970 12:00:00 +0000 Subject: [PATCH] update zmp --- Genshtab/ggc/karta_ggc_250m_png.zmp/18.bmp | Bin 0 -> 1062 bytes Genshtab/ggc/karta_ggc_250m_png.zmp/24.bmp | Bin 0 -> 1782 bytes .../karta_ggc_250m_png.zmp/GetUrlScript.txt | 56 ++++++++++++++++++ Genshtab/ggc/karta_ggc_250m_png.zmp/info.txt | 4 ++ .../ggc/karta_ggc_250m_png.zmp/params.txt | 20 +++++++ 5 files changed, 80 insertions(+) create mode 100644 Genshtab/ggc/karta_ggc_250m_png.zmp/18.bmp create mode 100644 Genshtab/ggc/karta_ggc_250m_png.zmp/24.bmp create mode 100644 Genshtab/ggc/karta_ggc_250m_png.zmp/GetUrlScript.txt create mode 100644 Genshtab/ggc/karta_ggc_250m_png.zmp/info.txt create mode 100644 Genshtab/ggc/karta_ggc_250m_png.zmp/params.txt diff --git a/Genshtab/ggc/karta_ggc_250m_png.zmp/18.bmp b/Genshtab/ggc/karta_ggc_250m_png.zmp/18.bmp new file mode 100644 index 0000000000000000000000000000000000000000..4985375db95e9d5eb72a31baec396979bccf75ea GIT binary patch literal 1062 zcmZXR&r4KM6vwaVUmyr(ih^d*N-ZYHoq{_-bmPKJs}{3yks!DdTUl*f1TETBObCuL zx=C=49%=>xzzI)!>ZhATIz4PuppY#3Rd%JpDtArdeyzk(t zj-CopE9cKD<>$ZG{E2~Rd-^y`4$}xC%C4n58mrCBYYqUI#L&oykTgSB2c%GjbW}EA zJ*9-XchBOGVHC*~uB@sP3SxU~Rp(S*HV#5TtOpbcCSh1NiChi|{DW9YLA(kSae87t z7<$=q`&J^6kb3B=G?-&0)e?!Zw#(4W@&-^Lbb|BiQ0n7{;jvM0njTxaZqE&<;06~& z6K@uoNN;={9D2m45Q^Xix;GFH<0(XZ;?dwC14W+s zO{aEIwOlm5Nj(q<+bLlMhn85{Vq<`^W>oD{xXJ?^q#pl)P+J*&F}-clUZGq`Ayo{b zUxxyD4SqIiat@&3{?6FI&k~JHg|}rzd!WAlfx7yJ_Ivj$ ODyy(X*25e1Li`2nQM=&) literal 0 HcmV?d00001 diff --git a/Genshtab/ggc/karta_ggc_250m_png.zmp/24.bmp b/Genshtab/ggc/karta_ggc_250m_png.zmp/24.bmp new file mode 100644 index 0000000000000000000000000000000000000000..dac12bde4761b0fb3c3733e597d733c1878b7af9 GIT binary patch literal 1782 zcmaKs-%FEG7{`^OKOhRsvD$RZpis=u@`QbITD5JdlYc50NYmK_GN4zgeT@ z;1Ea-A$Am)YlO5gyB^7GKESv$S=3fKsEVDNvnvt;)2r(4wssAWW7i{12E>la76T=A2(Z)x zfTnBD0-+K?wcY8w+VufpAp8eHwf>O__Jrv*CmKW#b}qCJ+X?hxrBXWH!50@> zn!zE8dSFZUlo43#c!(-8P|QslDw;G_l)?)k!8iKlOx<}=wPRO-l(wb3Mjji1b|oMj zc6c!zt@l2U|Kib=+mDESKIB7b*YA6=bY5#0F;dR5q43NaZ+0U9DENWjYEg^H6$AdS zMA6o}y!Zr^0f?4}BN99AXP+1V$fWtNV2+eBPdPxGi7F^;xO4-Nwa&q+TBpbWL0Zw= z_INC02Fm~?W>~9)GBjl@Y5IIPJ{MC!ox9wPGY~LE!+b&yMYYwG&a`dYi#S(x6;;-z zWZ|w?6VbEI9wB&!#(*0BJ|EV#NJ2{~J*Fojk;u2{nW^#Vr=EUGP5NFG#e2o#b9mqX zm|anGVN;>U|4~!P1p1*=<SsykyGy7EK)AXD_he#nDlj$u_MIP7t_A^2Gh*FX;_7EyHFcP;CGxiiCr_O&EGj;5@KFASjc5_| J{EJ`${s7_q@8tjh literal 0 HcmV?d00001 diff --git a/Genshtab/ggc/karta_ggc_250m_png.zmp/GetUrlScript.txt b/Genshtab/ggc/karta_ggc_250m_png.zmp/GetUrlScript.txt new file mode 100644 index 00000000..811fda3c --- /dev/null +++ b/Genshtab/ggc/karta_ggc_250m_png.zmp/GetUrlScript.txt @@ -0,0 +1,56 @@ +function GetCode(const url: AnsiString): Cardinal; +var + VResponseCode: Cardinal; + VResponseHeader, VResponseData: AnsiString; +begin + Result := 1; + if Assigned(Downloader) then begin + VResponseHeader := ''; + VResponseData := ''; + VResponseCode := Downloader.DoHttpRequest(url, '', '', VResponseHeader, VResponseData); + Result := VResponseCode; + end; +end; + +var + BaseUrl: string; + code: Cardinal; + z_ok, z_no: integer; + r: integer; +begin + ResultURL := ''; + z_ok := StrToIntDef(GetBefore(';', ScriptBuffer), 1); // Максимальный масштаб, который точно есть + z_no := StrToIntDef(GetAfter(';', ScriptBuffer), 25); // Минимальный масштаб, которого точно нет + + // Масштаба нет - говорить не о чем + if getz >= z_no then exit; + + // Выбор зеркала , если не указана версия + if version = '' then + r := random(2) + else + r := StrToInt(version); + + case r of + 0: BaseUrl := GetURLBase; + 1: BaseUrl := RegExprReplaceMatchSubStr(GetURLBase, '91.237.82.95:8088', 'maps.melda.ru'); + end; + + // Проверяем наличие масштаба + if getz > z_ok then begin + code := GetCode(BaseUrl+'z'+inttostr(getz)+'/'); + + // Внимание! Если сервер вернёт 403 - code почему-то будет 0. Так что выбор "404 или что-то иное" + // Если дело дошло до проверки наличия масштаба - значит какая-то граница (z_ok / z_no) точно подвинется. + if code = 404 then z_no := getz else z_ok := getz; + + // Сохраняем актуализированные границы для последующих вызовов + ScriptBuffer := inttostr(z_ok) + ';' + inttostr(z_no); + + // Масштаба нет (о чём могли только что при проверке узнать) - говорить не о чем + if getz >= z_no then exit; + end; + + // Ок, качаем тайлик + ResultURL:= BaseUrl+'z'+inttostr(getz)+'/'+inttostr(getx div 1024)+'/x'+inttostr(getx)+'/'+inttostr(gety div 1024)+'/y'+inttostr(gety)+'.png'; +end. diff --git a/Genshtab/ggc/karta_ggc_250m_png.zmp/info.txt b/Genshtab/ggc/karta_ggc_250m_png.zmp/info.txt new file mode 100644 index 00000000..b0ccd698 --- /dev/null +++ b/Genshtab/ggc/karta_ggc_250m_png.zmp/info.txt @@ -0,0 +1,4 @@ +
+ , garl@mail.ru
+ + diff --git a/Genshtab/ggc/karta_ggc_250m_png.zmp/params.txt b/Genshtab/ggc/karta_ggc_250m_png.zmp/params.txt new file mode 100644 index 00000000..862af1b6 --- /dev/null +++ b/Genshtab/ggc/karta_ggc_250m_png.zmp/params.txt @@ -0,0 +1,20 @@ + +[PARAMS] +pnum=245 +GUID={f1f94191-918c-490c-9d49-cead17db1140} +name_ru=ГосГисЦентр 250 м (*.png) +name=GosGisCentr 250 m (*.png) +name_uk=GosGisCentr 250 м (*.png) +NameInCache=genshtab250m +DefURLBase=http://91.237.82.95:8088/pub/ggc/250m.png/ +defaultContentType=image/png +IgnoreContentType=1 +ParentSubMenu_ru=Генштаб\ГГЦ +ParentSubMenu=Genshtab\GGC +ParentSubMenu_uk=Генштаб\GGC +Ext=.png +projection=1 +sradiusa=6378137 +sradiusb=6378137 +ContentType="image/png" +