From: Roman Bazalevskiy Date: Fri, 28 Apr 2017 18:02:21 +0000 (+0300) Subject: Разложили файлы по годам и месяцам. Много накопилось. X-Git-Url: https://git.rvb.name/pyrungps.git/commitdiff_plain/7b110d16b72ee2c5ce13a2a45de656390526ce81?ds=sidebyside;hp=331c723308cf84bd49197db16718a17cbaff18b3 Разложили файлы по годам и месяцам. Много накопилось. --- diff --git a/pyrungps.py b/pyrungps.py index 5290430..58dd344 100644 --- a/pyrungps.py +++ b/pyrungps.py @@ -42,7 +42,7 @@ def sync_folder(username,year,month,dir=".",verbose=False,force=False): training_list = get_page(username,year,month) for tr in training_list: - filename = "%s/%s_%s.gpx" % (dir,tr[0],tr[1]) + filename = "%s/%04d/%02d/%s_%s.gpx" % (dir,year,(month+1),tr[0],tr[1]) if os.path.exists(filename) and not force: diff --git a/render_tiles.py b/render_tiles.py old mode 100644 new mode 100755 index e229ead..1116287 --- a/render_tiles.py +++ b/render_tiles.py @@ -26,7 +26,7 @@ def queue_tiles(db,minlat,minlon,maxlat,maxlon,forced_max_zoom=None): conn = sqlite3.connect(db) # определяем примерный стартовый зум - + minzoom=8 if forced_max_zoom: @@ -36,19 +36,23 @@ def queue_tiles(db,minlat,minlon,maxlat,maxlon,forced_max_zoom=None): while True: minx,miny=deg2num(minlat,minlon,maxzoom) maxx,maxy=deg2num(maxlat,maxlon,maxzoom) + print maxzoom,':',minx,'-',maxx,'/',miny,'-',maxy if (maxx-minx>16) or (maxy-miny>12) or (maxzoom==16): break else: maxzoom=maxzoom+1 + if maxzoommaxx: + tx=minx + maxx=minx + minx=tx + + if miny>maxy: + ty=miny + maxy=miny + miny=ty + + print zoom,minx,miny,maxx,maxy - if force: - command = 'tirex-batch -n 0 '+command - else: - command = 'tirex-batch -n 0 '+command+' -f not-exists' + maps = map.split(',') + + for map_name in maps: + + command = 'render_list -a -m '+map+ \ + ' -z '+str(zoom)+' -Z '+str(zoom)+ \ + ' -x '+str(minx)+' -X '+str(maxx)+ \ + ' -y '+str(miny)+' -Y '+str(maxy) + if force: + command = command+ ' --force' - print command + print command - if system(command)==0: + if system(command)<>0: + return + dcur=conn.cursor() dcur.execute('delete from render_queue where id=?',(id,)) conn.commit() @@ -91,10 +137,10 @@ def main(): help="Maximal zoom (forced), used with coordinates pairs (minlat minlon maxlat maxlon) or filename in arguments", metavar="MAP") parser.add_option("-f", "--force", dest="force", help="Force tile regeneration (on/off), default off") + parser.add_option("-r", "--renderer", dest="renderer", + help="Rendering backend: tirex or renderd") (options, args) = parser.parse_args() - print options,args - db=options.directory+'/gpx.db' map=options.map zoom=options.zoom @@ -102,6 +148,12 @@ def main(): zoom=12 force=(options.force=='on') + if options.renderer: + renderer=options.renderer + else: + print "Using default rendering backend..." + renderer="default" + if len(args)==1: filename,=args print "Rendering file: "+filename+"\n" @@ -112,8 +164,8 @@ def main(): queue_tiles(db,float(minlat),float(minlon),float(maxlat),float(maxlon),int(zoom)) if map: - print "Processing map "+map+"\n" - process_queue(db,map,force) + print "Processing map(s) "+map+"\n" + process_queue(db,map,force,renderer) if __name__ == "__main__":