|
13.11.2012., 12:21 | #1 |
Premium
Datum registracije: Jan 2006
Lokacija: Zagreb
Postovi: 87
|
Mape
Nisam siguran postam li na pravom mjestu pa ako treba admin neka slobodno makne. Htio bi "google" mapu skinut za offline gledanje. Da budem konkretniji, htio bih ovu map skinut u cijelosti Koliko sam uspio primijetiti to je u biti custom google mapa gdje su slike razmještene po 0,1,2,3... folderima. Dakle standard. Kako doći do toga (ne trebaju mi anotacije na mapama samo tileovi)? Zahvaljujem! |
13.11.2012., 14:10 | #2 |
Premium
Datum registracije: Nov 2006
Lokacija: RI-KR
Postovi: 789
|
Mape su u folderima po zoom levelu. Ime datoteke je column_row.png. Column je 0..x, Row 0..y. Dakle format je: /tiles/%zoom_level%/%column%_%row%.png Server: http://static.dayzdb.com/ Prvi zoom level ima 2 stupca i 2 reda, dakle /tiles/1/0_0.png /tiles/1/0_1.png /tiles/1/1_0.png /tiles/1/1_1.png Zadnji, sesti zoom level ima 64 stupca, 54 reda, dakle: /tiles/6/0_0.png .. /tiles/6/63_53.png Ostali zoom leveli su izmedu. Eto, sad napiši skriptu sa 3 for petlje, jedna ide od 1 do 6, druga od 0 do 63, treca od 0 do 53, i sa wget-om sejvaj png fajlove Edit: buduci da sam danas jako dobar, evo BAT skripta, treba ti samo wget.exe u istom folderu. Kad skripta zavrsi (cca 10-30min), imat ces subfoldere 1,2,3,4,5,6 i unutra PNG fajlove. Code:
@echo off SET /a i=1 :loop1 IF %i%==7 GOTO END REM echo This is iteration %i% >> out SET /a j=0 SET /a maxj=1000 SET /a maxk=1000 GOTO LOOP2 :loop1next SET /a i=%i%+1 GOTO LOOP1 :loop2 IF %j%==64 GOTO LOOP1NEXT IF %j% GTR %maxj% GOTO LOOP1NEXT REM echo This is iteration %i% %j% >> out SET /a k=0 GOTO LOOP3 :loop2next SET /a j=%j%+1 GOTO LOOP2 :loop3 IF %k%==54 GOTO LOOP2NEXT IF %k% GTR %maxk% GOTO LOOP2NEXT REM echo This is iteration %i% %j% %k% >> out wget -P %i% http://static.dayzdb.com/tiles/%i%/%j%_%k%.png IF %ERRORLEVEL% NEQ 0 GOTO SETMAX :loop3next SET /a k=%k%+1 GOTO LOOP3 :setmax REM echo setmax IF %maxk% EQU 1000 GOTO LOOP3MAX IF %maxj% EQU 1000 GOTO LOOP2MAX :loop2max REM echo loop2max SET /a maxj=%j%-1 GOTO :loop2next :loop3max REM echo loop3max SET /a maxk=%k%-1 GOTO :loop3next :end echo Done!
__________________
Zadnje izmijenjeno od: SilentException. 13.11.2012. u 15:30. |
|
|
Oglas
|
|
13.11.2012., 18:45 | #3 | |
Premium
Datum registracije: Jan 2006
Lokacija: Zagreb
Postovi: 87
|
Citiraj:
Nikako da ti odgovorim. S obzirom da nisam bas na ti s skriptama isao sam to rijesit u c#. Desetak linija koda ali sporo za poludit jer nisam bas isao optimizirat. Ostavio sam da to radi i otisao na faks pa se evo s faksa javljam Nadam se da ce bit gotovo kad dodjem Javim ti. Jebiga da sam se prije javio ne bi te mucio da pises skriptu, moje isprike. Pusa |
|
14.11.2012., 21:59 | #4 |
Premium
Datum registracije: Jan 2006
Lokacija: Zagreb
Postovi: 87
|
Samo da javim da sam sredio sve što sam htio. U biti sam htio prebaciti tu cijelu mapu u .mbtiles datoteku jer mi to treba za daljnji rad. Za sada sve radi. SilentException hvala ti još jednom! |
|
|
Oglas
|
|
|
|