Slinger писал(а):Вопрос ещё по такой карте
урл
- Код: Выделить всё
http://maps.ngdc.noaa.gov/arcgis/rest/services/etopo1/MapServer/tile/xyz
макрос
- Код: Выделить всё
var
mapXYZ: string;
begin
mapXYZ := inttostr(GetZ-1)+'/'+inttostr(GetY)+'/'+inttostr(GetX);
ResultURL := RegExprReplaceMatchSubStr(GetURLBase, 'xyz', mapXYZ);
end.
Ругается на unexpected image type. Что не так ?
Зачем так усложнять код?
можно же вот так
DefURLBase
- Код: Выделить всё
http://maps.ngdc.noaa.gov/arcgis/rest/services/etopo1/MapServer/tile/
GetUrlScript
- Код: Выделить всё
begin
ResultURL:=GetURLBase+inttostr(GetZ-1)+'/'+inttostr(GetY)+'/'+inttostr(GetX);
end.
Но это пол дела, дело в том что сервер врзвращает мегатайл (тайл размерами 512х512)
К тому же у него z/y/x не стандартные
В то вермя как обычный 0/0/0 тайл - это вся Земля (тайл 256х256)
http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/0/0/0то тайл 0/0/0 данной карты - это западная часть Земли
http://maps.ngdc.noaa.gov/arcgis/rest/services/etopo1/MapServer/tile/0/0/00/0/1 - восточная
http://maps.ngdc.noaa.gov/arcgis/rest/services/etopo1/MapServer/tile/0/0/1соотвественно GetUrlScript будет явно сложнее
UPD:Попробовал сделать скрипт вот что получилось. Работать будет с зума 3
GetUrlScript
- Код: Выделить всё
VAR
TL,BR:TPoint;
topLeftM,bottomrightM:TDoublePoint;
Ver : string;
begin
tl.x:=GetX;
tl.y:=GetY;
br.x:=GetX+2;
br.y:=GetY+2;
ResultURL:=GetURLBase+inttostr(GetZ-2)+'/'+inttostr(GetY-2^(GetZ-3))+'/'+inttostr(GetX);
end.
Единственное, я не знаю Паскаль, поэтому как будет запись:
2^(GetZ-3) я не знаю (скрипт из-за этого нерабочий)
Поэтому прошу спецов дополнить скрипт.
Но если в ручную вычислить значение выражения
2^(GetZ-3) и подставить его в скрипт вместо выражения, то для
вычисленного зума карта будет работать.
таблица
зум |
2^(GetZ-3)3 | 1
4 | 2
5 | 4
6 | 8
7 | 16
8 | 32
и тд.
params
- Код: Выделить всё
[PARAMS]
pnum=1
GUID={C961AD9B-45FF-4DC5-8C70-58462064AF3E}
name=TEST
name_en=TEST
name_uk=TEST
ParentSubMenu=TEST
ParentSubMenu_en=TEST
ParentSubMenu_uk=TEST
asLayer=0
DefURLBase=http://maps.ngdc.noaa.gov/arcgis/rest/services/etopo1/MapServer/tile/
projection=1
EPSG=4326
NameInCache=TEST
separator=0
Ext=.jpeg
UseDwn=1
Sleep=0
DefHotKey="q"
ContentType=image/jpeg