diff --git a/Local/RoscosmGeo.zmp/18.bmp b/Local/RoscosmGeo.zmp/18.bmp new file mode 100644 index 00000000..47d65f27 Binary files /dev/null and b/Local/RoscosmGeo.zmp/18.bmp differ diff --git a/Local/RoscosmGeo.zmp/24.bmp b/Local/RoscosmGeo.zmp/24.bmp new file mode 100644 index 00000000..595f438b Binary files /dev/null and b/Local/RoscosmGeo.zmp/24.bmp differ diff --git a/Local/RoscosmGeo.zmp/GetUrlScript.txt b/Local/RoscosmGeo.zmp/GetUrlScript.txt new file mode 100644 index 00000000..ce4b5e7e --- /dev/null +++ b/Local/RoscosmGeo.zmp/GetUrlScript.txt @@ -0,0 +1,76 @@ +function dec2bin(x:integer):string; +var s:string; +begin + s:=''; + repeat + s:=chr($30 + x and 1) + s; + x:=x shr 1; + until x=0; + result:=s; +end; + +var binX,binY:string; + i,posSRC,posDATE,posTYPE,posFirstAND,lenbinXY:integer; +begin + posFirstAND:=pos('&',GetUrlBase)-1; + if posFirstAND<=0 then begin + posFirstAND:=length(GetUrlBase); + end; + posSRC:=pos('&src=',GetUrlBase); + posDATE:=pos('&date=',GetUrlBase); + posTYPE:=pos('&type=',GetUrlBase); + + ResultURL:=copy(GetUrlBase,1,posFirstAND); + + if posSRC>0 then begin + i:=posSRC+5; + while (GetUrlBase[i]<>'&') do begin + i:=i+1; + if (i>length(GetUrlBase)) then break; + end; + ResultURL:=ResultURL+copy(GetUrlBase,posSRC+5,i-(posSRC+5)); + end; + + ResultURL:=ResultURL+'/'+inttostr(GetZ-1)+'/'; + + if posDATE>0 then begin + i:=posDATE+6; + while (GetUrlBase[i]<>'&') do begin + i:=i+1; + if (i>length(GetUrlBase)) then break; + end; + if (i-(posDATE+6))>0 then begin + ResultURL:=ResultURL+copy(GetUrlBase,posDATE+6,i-(posDATE+6))+'/'; + end; + end; + + binX:=dec2bin(GetX); + binY:=dec2bin(GetY); + lenbinXY:=length(binX); + for i:=1 to ((GetZ-1)-lenbinXY) do begin + binX:='0'+binX; + end; + lenbinXY:=length(binY); + for i:=1 to ((GetZ-1)-lenbinXY) do begin + binY:='0'+binY; + end; + + for i:=7 to GetZ-1 do begin + ResultURL:=ResultURL+copy(binY,1,i-6)+'-'+copy(binX,1,i-6)+'/'; + end; + ResultURL:=ResultURL+binY+'-'+binX; + + if posTYPE>0 then begin + i:=posTYPE+6; + while (GetUrlBase[i]<>'&') do begin + inc(i); + if (i>length(GetUrlBase)) then break; + end; + if (i-(posTYPE+6))>0 then begin + ResultURL:=ResultURL+'.'+copy(GetUrlBase,posTYPE+6,i-(posTYPE+6)); + end; + end else begin + ResultURL:=ResultURL+'.jpg'; + end; + +end. \ No newline at end of file diff --git a/Local/RoscosmGeo.zmp/info.txt b/Local/RoscosmGeo.zmp/info.txt new file mode 100644 index 00000000..3825dfc2 --- /dev/null +++ b/Local/RoscosmGeo.zmp/info.txt @@ -0,0 +1,13 @@ +Данный zmp предназначен для загрузки снимков с ресурса http://geoportal.ntsomz.ru. +Особенности данного zmp в том, что применены "виртуальные" параметры в поле URL, т.е. параметры в запросе на самом деле являются командами для скрипта самого zmp а не для ресурса. +Описание параметра ссылки (URL): +- "http://geoportal.ntsomz.ru/coverages/" - базовая часть, не меняется. +- "&src=" - "Виртуальный" параметр, отвечает за выбор растрового слоя геопортала, на данный момент известны следующие слои: + images_lansat - снимки landsat, 1-14 зумы. (для данного источника параметр &date не заполняется) + images_ortho_region - снимки landsat + ALOS по Московской области (для данного источника параметр &date не заполняется) + images - снимки landsat + Ресурс-ДК1 (не все) (для данного источника параметр &date не заполняется) + images_new_structure - Ресурс-ДК1 (для данного источника параметр &date обязательно заполняется) +- "&date=" - "Виртуальный" параметр, заполняется датой если выбран источник images_new_structure, дату можно узнать только снифером( +- "&type=" - тип запрашиваемого тайла, jpg или png. Нужен при источнике images_new_structure, т.к. на границах снимков грузятся png. + +Многие снимки для загрузки требуют авторизацию на geoportal.ntsomz.ru, поэтому прежде чем начинать загружать - зарегистрируйтесь и авторизуйтесь на этом сайте! (Хотя, может быть и нет, требует проверки) \ No newline at end of file diff --git a/Local/RoscosmGeo.zmp/params.txt b/Local/RoscosmGeo.zmp/params.txt new file mode 100644 index 00000000..d2dfaaae --- /dev/null +++ b/Local/RoscosmGeo.zmp/params.txt @@ -0,0 +1,26 @@ +[PARAMS] +pnum=17 +GUID={5A1A7E89-112D-406F-855D-5B1D1E323422} +name=Спутник (Геопортал Роскосмоса) +name_en=Satellite (Geoportal Roscosmos) +ParentSubMenu=Локальные карты +ParentSubMenu_en=Local maps +ParentSubMenu_uk=Локальні карти +asLayer=0 +DefURLBase=http://geoportal.ntsomz.ru/coverages/&src=images&date=&type=jpg +projection=1 +sradiusa=6378137 +sradiusb=6378137 +NameInCache=RoscosmosGeo +separator=1 +Ext=.jpg +UseDwn=1 +Usestick=1 +UseGenPrevious=1 +Usedel=1 +Usesave=1 +UsePreloadPage=0 +Sleep=0 +DefHotKey= +ContentType="image/jpeg";"image/png" +BanIfLen=0 \ No newline at end of file