Здесь показаны различия между двумя версиями данной страницы.
пример_порезки_на_тайлы [13/09/2012 20:13] garl |
пример_порезки_на_тайлы [12/02/2021 20:17] (текущий) radioxoma Syntax |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | запрашиваем с сервера большую картинку 1024*1024 | + | ===== Пример порезки на тайлы ===== |
- | это тайлы 4*4. | + | * **CutCountX=0** - число кусков по X, необязательный параметр |
+ | * **CutCountY=0** - соответственно по Y | ||
+ | * **CutSizeX=0** - размер куска по X, если не задано — берётся 256 из параметров | ||
+ | * **CutSizeY=0** - соответственно по Y | ||
+ | * **CutTileX=0** - положение запрошенного тайла в общей картинке по X | ||
+ | * **CutTileY=0** - соответственно по Y | ||
+ | * **CutToSkip=(0,0),(0,-1)** - перечень тайлов, которые нужно пропускать (относительно //CutTileX//, //CutTileY//) | ||
+ | |||
+ | Запрашиваем с сервера большую картинку 1024*1024 - это шестнадцать тайлов (4*4). | ||
{{:tiles_greed.jpg|}} | {{:tiles_greed.jpg|}} | ||
- | запрашиваемый тайл - левый верхний угол. | + | Запрашиваемый тайл - левый верхний угол. Устанавливаем параметры в ''params.txt'': |
+ | <code delphi> | ||
+ | CutCountX=4 // Тайлов по горизонтали | ||
+ | CutCountY=4 // Tайлов по горизонтали | ||
+ | CutSizeX=256 // Размер в пикселях | ||
+ | CutSizeY=256 | ||
+ | CutTileX=0 // Координата Х тайла от которого ведётся отсчёт) | ||
+ | CutTileY=0 // Координата Y тайла от которого ведётся отсчёт) | ||
+ | </code> | ||
- | устанавливаем параметры: | + | Так как нам не нужно пропускать тайлы с копирайтами, то параметр //CutToSkip// оставляем пустым. |
- | * CutCountX=4 | + | |
- | * CutCountY=4 | + | |
- | * CutSizeX=256 | + | |
- | * CutSizeY=256 | + | |
- | * CutTileX=0 | + | |
- | * CutTileY=0 | + | |
- | + | ||
- | + | ||
- | так как нам не нужно пропускать тайлы с копирайтами - то параметр CutToSkip оставляем пустым | + | |
- | + | ||
- | для этого примера | + | |
- | + | ||
- | GetUrlScript.txt выглядит так: | + | |
+ | Для этого примера [[Описание Паскаль скриптов|GetUrlScript.txt]] выглядит так: | ||
+ | <code delphi> | ||
VAR | VAR | ||
- | |||
TL,BR:TPoint; | TL,BR:TPoint; | ||
- | |||
topLeftM,bottomrightM:TDoublePoint; | topLeftM,bottomrightM:TDoublePoint; | ||
- | |||
Ver : string; | Ver : string; | ||
- | |||
begin | begin | ||
- | |||
tl.x:=GetX; | tl.x:=GetX; | ||
- | |||
tl.y:=GetY; | tl.y:=GetY; | ||
- | |||
br.x:=GetX+4; | br.x:=GetX+4; | ||
- | |||
br.y:=GetY+4; | br.y:=GetY+4; | ||
- | |||
topLeftM := Converter.Pos2LonLat(tl,GetZ-1); | topLeftM := Converter.Pos2LonLat(tl,GetZ-1); | ||
- | |||
bottomrightM := Converter.Pos2LonLat(br,GetZ-1); | bottomrightM := Converter.Pos2LonLat(br,GetZ-1); | ||
- | |||
ResultURL:=GetURLBase+'&BBOX='+RoundEx(topLeftM.x,10)+','+RoundEx(bottomrightM.y,10)+','+RoundEx(bottomrightM.x,10)+','+RoundEx(topLeftM.y,10); | ResultURL:=GetURLBase+'&BBOX='+RoundEx(topLeftM.x,10)+','+RoundEx(bottomrightM.y,10)+','+RoundEx(bottomrightM.x,10)+','+RoundEx(topLeftM.y,10); | ||
- | |||
end. | end. | ||
+ | </code> | ||