Exemplo n.º 1
0
from maperipy import App
App.log('script-dir: ' + App.script_dir)
App.run_command('change-dir dir="' + App.script_dir +'"')
App.run_command("run-script file=IsraelHiking.mscript")
# Map Created
App.run_command('change-dir dir="Site"')
App.run_command("generate-tiles minzoom=7 maxzoom=15 use-fprint=true")
App.log("=== Create a Zip file with new tiles ===")
App.run_command('zip zip-file="' + App.script_dir +'\output\TileUpdate.zip"')
App.log("=== Start uploading of tiles zoom 15 and below ===")
App.log('App.start_program("' + App.script_dir + '\UploadTiles.bat")')
App.start_program(App.script_dir + "\UploadTiles.bat")
App.log("=== Start creation of Oruxmap map ===")
App.log('App.start_program(App.script_dir + "\..\..\Mobile Atlas Creator\CreateIsraelHiking.bat", [])')
App.start_program(App.script_dir + "\..\..\Mobile Atlas Creator\CreateIsraelHiking.bat", [])
App.log("=== Create tiles for zoom 16 ===")
App.run_command("generate-tiles minzoom=16 maxzoom=16 use-fprint=true")
App.log("=== Create a Zip file with new tiles ===")
App.run_command('zip zip-file="' + App.script_dir +'\output\TileUpdate16.zip"')
App.log("=== Start uploading of tiles zoom 16 ===")
App.log('App.start_program("' + App.script_dir + '\UploadTiles.bat", "TileUpdate16.zip"])')
App.start_program(App.script_dir + "\UploadTiles.bat", ["TileUpdate16.zip"])
App.run_command('change-dir dir="' + App.script_dir +'"')
Exemplo n.º 2
0
os.chdir(IsraelHikingDir)

# Set bounds to match
# http://download.geofabrik.de/asia/israel-and-palestine-latest.osm.pbf
App.run_command("set-geo-bounds 34.07929,29.37711,35.91531,33.35091");

# Geo bounds in integer degrees
MinLon=Map.geo_bounds.min_x
MaxLon=Map.geo_bounds.max_x

MinLat=int(Map.geo_bounds.min_y)
MaxLat=int(math.ceil(Map.geo_bounds.max_y))

HGTDir = 'ASTER'

App.run_command('set-dem-source '+HGTDir)
App.run_command('set-setting name=scripts.completion-signal.min-duration-sec value=99999')

App.log("Generating contours {}-{} to {}-{}".format(MinLon, MinLat, MaxLon, MaxLat))

for Lat in range (MinLat, MaxLat, 1) :
#  for Lon in range (MinLon, MaxLon, 1) :
    App.run_command('clear-map')
    App.run_command('generate-contours interval=10 bounds={},{},{},{}'
                    .format(MinLon, max(Lat, Map.geo_bounds.min_y),
                            MaxLon, min(Lat+1, Map.geo_bounds.max_y)))
    App.run_command('save-source ' 
                    + os.path.join('Cache', '{}-N{}.contours'.format(HGTDir, Lat)))

# vim: shiftwidth=4 expandtab
Exemplo n.º 3
0
MinLon = int(Map.geo_bounds.min_x)
MaxLon = int(math.ceil(Map.geo_bounds.max_x))

MinLat = int(Map.geo_bounds.min_y)
MaxLat = int(math.ceil(Map.geo_bounds.max_y))

# Loop throu HGT files
# TODO: add support for South and West hemisphares
# if False: # 
for baseLat in range (MinLat, MaxLat, 1):
    for baseLon in range (MinLon, MaxLon, 1):
        fileName = "N{:02}E{:03}.hgt".format(baseLat, baseLon)
        # Determine number of 2-byte cells in the 1-degree square
        numCells = os.path.getsize(fileName)//2
        if numCells <> 3601*3601 and numCells <> 1201*1201:
            App.log("Unknown edge length: {}. File {} skipped,".format(
                edgeLen, fileName))
            continue
        # Number of cells on each edge of the square
        edgeLen = int(math.sqrt(numCells))
        App.log("Removing bathimetry in "+fileName)
        fileContent = array.array('h')
        with open(fileName, mode='rb') as file:
            # Read all cells to an array
            fileContent.fromfile(file, numCells)
            # Convert to little endian
            fileContent.byteswap()
            file.close()
            maxEle = -32768
            minEle = 32767
            for i in range(numCells):
                # Cells are arranged in rows from North to South
from maperipy import App
App.log('script-dir: ' + App.script_dir)
App.run_command('change-dir dir="' + App.script_dir + '"')
App.run_command("run-script file=IsraelHiking.mscript")
# Map Created
App.run_command("generate-tiles minzoom=7 maxzoom=15 use-fprint=true")
App.log("=== Create a Zip file with new tiles ===")
App.run_command("zip zip-file=output\TileUpdate.zip")
App.log("=== Start uploading of tiles zoom 15 and below ===")
App.log('App.start_program("' + App.script_dir + '\UploadTiles.bat")')
App.start_program(App.script_dir + "\UploadTiles.bat")
App.log("=== Start creation of Oruxmap map ===")
App.log(
    'App.start_program(App.script_dir + "\..\..\Mobile Atlas Creator\CreateIsraelHiking.bat", [])'
)
App.start_program(
    App.script_dir + "\..\..\Mobile Atlas Creator\CreateIsraelHiking.bat", [])
App.log("=== Create tiles for zoom 16 ===")
App.run_command("generate-tiles minzoom=16 maxzoom=16 use-fprint=true")
App.log("=== Create a Zip file with new tiles ===")
App.run_command("zip zip-file=output\TileUpdate16.zip")
App.log("=== Start uploading of tiles zoom 16 ===")
App.log('App.start_program("' + App.script_dir +
        '\UploadTiles.bat", "TileUpdate16.zip"])')
App.start_program(App.script_dir + "\UploadTiles.bat", ["TileUpdate16.zip"])
Exemplo n.º 5
0
from maperipy import App
import time
import os
import urllib

mobileAtlasCreatorPath = 'D:\Mobile Atlas Creator'
startPath = os.path.abspath(App.script_dir + '\..\\')
App.log('script-dir: ' + App.script_dir)
App.log('change-dir dir="' + startPath + '"')
App.run_command('change-dir dir="' + startPath + '"')

App.log('=== downloading if needed israel-and-palestine-latest.osm.pbf ===')
localFile = os.path.abspath(startPath +
                            '\cache\israel-and-palestine-latest.osm.pbf')
remoteFile = 'http://download.geofabrik.de/asia/israel-and-palestine-latest.osm.pbf'
urllibobject = urllib.urlopen(
    "http://download.geofabrik.de/asia/israel-and-palestine-latest.osm.pbf")
if os.path.isfile(localFile) == 0 or urllibobject.info(
)['Content-Length'] != str(os.stat(localFile).st_size):
    urllib.urlretrieve(remoteFile, localFile)
    App.log('=== download complete ===')

App.run_command("run-script file=Scripts\IsraelHiking.mscript")

sitePath = os.path.abspath(startPath + '\..\Site')
App.log('change-dir dir="' + sitePath + '"')
App.run_command('change-dir dir="' + sitePath + '"')
App.run_command("generate-tiles minzoom=7 maxzoom=15 use-fprint=true")
App.log("=== Create a Zip file with new tiles ===")
App.run_command('zip zip-file="TileUpdate.zip"')
Exemplo n.º 6
0
MinLon = int(Map.geo_bounds.min_x)
MaxLon = int(math.ceil(Map.geo_bounds.max_x))

MinLat = int(Map.geo_bounds.min_y)
MaxLat = int(math.ceil(Map.geo_bounds.max_y))

# Loop throu HGT files
# TODO: add support for South and West hemisphares
# if False: #
for baseLat in range(MinLat, MaxLat, 1):
    for baseLon in range(MinLon, MaxLon, 1):
        fileName = "N{:02}E{:03}.hgt".format(baseLat, baseLon)
        # Determine number of 2-byte cells in the 1-degree square
        numCells = os.path.getsize(fileName) // 2
        if numCells <> 3601 * 3601 and numCells <> 1201 * 1201:
            App.log("Unknown edge length: {}. File {} skipped,".format(
                edgeLen, fileName))
            continue
        # Number of cells on each edge of the square
        edgeLen = int(math.sqrt(numCells))
        App.log("Removing bathimetry in " + fileName)
        fileContent = array.array('h')
        with open(fileName, mode='rb') as file:
            # Read all cells to an array
            fileContent.fromfile(file, numCells)
            # Convert to little endian
            fileContent.byteswap()
            file.close()
            maxEle = -32768
            minEle = 32767
            for i in range(numCells):
                # Cells are arranged in rows from North to South
Exemplo n.º 7
0
# http://download.geofabrik.de/asia/israel-and-palestine-latest.osm.pbf
App.run_command("set-geo-bounds 34.07929,29.37711,35.91531,33.35091")

# Geo bounds in integer degrees
MinLon = Map.geo_bounds.min_x
MaxLon = Map.geo_bounds.max_x

MinLat = int(Map.geo_bounds.min_y)
MaxLat = int(math.ceil(Map.geo_bounds.max_y))

HGTDir = 'ASTER'

App.run_command('set-dem-source ' + HGTDir)
App.run_command(
    'set-setting name=scripts.completion-signal.min-duration-sec value=99999')

App.log("Generating contours {}-{} to {}-{}".format(MinLon, MinLat, MaxLon,
                                                    MaxLat))

for Lat in range(MinLat, MaxLat, 1):
    #  for Lon in range (MinLon, MaxLon, 1) :
    App.run_command('clear-map')
    App.run_command('generate-contours interval=10 bounds={},{},{},{}'.format(
        MinLon, max(Lat, Map.geo_bounds.min_y), MaxLon,
        min(Lat + 1, Map.geo_bounds.max_y)))
    App.run_command(
        'save-source ' +
        os.path.join('Cache', '{}-N{}.contours'.format(HGTDir, Lat)))

# vim: shiftwidth=4 expandtab
Exemplo n.º 8
0
from maperipy import App
import time
import os
import urllib

mobileAtlasCreatorPath = 'D:\Mobile Atlas Creator'
startPath = os.path.abspath(App.script_dir + '\..\\')
App.log('script-dir: ' + App.script_dir)
App.log('change-dir dir="' + startPath + '"')
App.run_command('change-dir dir="' + startPath + '"')

App.log('=== downloading if needed israel-and-palestine-latest.osm.pbf ===')
localFile = os.path.abspath(startPath + '\cache\israel-and-palestine-latest.osm.pbf')
remoteFile = 'http://download.geofabrik.de/asia/israel-and-palestine-latest.osm.pbf'
urllibobject = urllib.urlopen("http://download.geofabrik.de/asia/israel-and-palestine-latest.osm.pbf")
if os.path.isfile(localFile) == 0 or urllibobject.info()['Content-Length'] != str(os.stat(localFile).st_size) :
	urllib.urlretrieve(remoteFile, localFile)
	App.log('=== download complete ===')

App.run_command("run-script file=Scripts\IsraelHiking.mscript")

sitePath = os.path.abspath(startPath + '\..\Site')
App.log('change-dir dir="' + sitePath + '"')
App.run_command('change-dir dir="' + sitePath + '"')
App.run_command("generate-tiles minzoom=7 maxzoom=15 use-fprint=true")
App.log("=== Create a Zip file with new tiles ===")
App.run_command('zip zip-file="TileUpdate.zip"')

lastModified = sitePath + '\js\LastModified.js'
App.log('=== Create LastModified.js file and add it to zip file: ' +  lastModified + '===')
jsFile = open(lastModified, 'w')
Exemplo n.º 9
0
from maperipy import App
import os.path

App.log('script-dir: ' + App.script_dir)
App.run_command('change-dir dir="' + App.script_dir +'"')

ProgramFiles = os.path.dirname(os.path.dirname(App.script_dir))

App.log("=== Create Trails Overlay tiles ===")
App.run_command("run-script file=IsraelHikingOverlay.mscript")
if os.path.exists(App.script_dir + "\UploadTiles.bat"):
    App.log("=== Upload Trails Overlay tiles ===")
    App.log('App.start_program("' + App.script_dir + '\UploadTiles.bat", "OverlayTiles.zip"])')
    App.start_program(App.script_dir + "\UploadTiles.bat", ["OverlayTiles.zip"])
if os.path.exists(ProgramFiles + "\Mobile Atlas Creator\All IsraelHikingOverlay Maps.bat"):
    App.log("=== Launch creation of All IsraelHikingOverlay Maps ===")
    App.log('App.start_program(ProgramFiles + "\Mobile Atlas Creator\All IsraelHikingOverlay Maps.bat", [])')
    App.start_program(ProgramFiles + "\Mobile Atlas Creator\All IsraelHikingOverlay Maps.bat", [])

App.collect_garbage()

# vim: shiftwidth=4 expandtab
Exemplo n.º 10
0
from maperipy import App
import os.path

App.log('script-dir: ' + App.script_dir)
App.run_command('change-dir dir="' + App.script_dir + '"')

ProgramFiles = os.path.dirname(os.path.dirname(App.script_dir))

App.log("=== Create Trails Overlay tiles ===")
App.run_command("run-script file=IsraelHikingOverlay.mscript")
if os.path.exists(App.script_dir + "\UploadTiles.bat"):
    App.log("=== Upload Trails Overlay tiles ===")
    App.log('App.start_program("' + App.script_dir +
            '\UploadTiles.bat", "OverlayTiles.zip"])')
    App.start_program(App.script_dir + "\UploadTiles.bat",
                      ["OverlayTiles.zip"])
if os.path.exists(ProgramFiles +
                  "\Mobile Atlas Creator\All IsraelHikingOverlay Maps.bat"):
    App.log("=== Launch creation of All IsraelHikingOverlay Maps ===")
    App.log(
        'App.start_program(ProgramFiles + "\Mobile Atlas Creator\All IsraelHikingOverlay Maps.bat", [])'
    )
    App.start_program(
        ProgramFiles +
        "\Mobile Atlas Creator\All IsraelHikingOverlay Maps.bat", [])

App.collect_garbage()

# vim: shiftwidth=4 expandtab
Exemplo n.º 11
0
from maperipy import App
import os.path, datetime

App.log('script-dir: ' + App.script_dir)
App.run_command('change-dir dir="' + App.script_dir + '"')

ProgramFiles = os.path.dirname(os.path.dirname(App.script_dir))

if not os.path.exists(App.script_dir +
                      '\output\TileUpdate.zip') and not os.path.exists(
                          App.script_dir + '\output\TileUpdate16.zip'):
    App.log("=== Update israel-and-palestine-latest.osm.pbf ===")
    # wget for Windows: http://gnuwin32.sourceforge.net/packages/wget.htm
    App.run_program(ProgramFiles + '\wget\wget.exe', 1200, [
        "--timestamping", "--no-directories", "--no-verbose",
        '--directory-prefix="' + App.script_dir + '"',
        "http://download.geofabrik.de/asia/israel-and-palestine-latest.osm.pbf"
    ])
    LastModified = datetime.datetime.fromtimestamp(
        os.path.getmtime(App.script_dir +
                         '\israel-and-palestine-latest.osm.pbf'))
    if LastModified + datetime.timedelta(1) < datetime.datetime.today():
        App.log("=== pbf file not updated ===")
        App.run_command("pause 15000")
    # Create LastModified.js file and add it to zip file
    App.log("=== Create Last Update info:" +
            LastModified.strftime("%d-%m-%Y") + " ===")
    jsFile = open(App.script_dir + '\Site\js\LastModified.js', 'w')
    jsFile.write("function getLastModifiedDate() { return '" +
                 LastModified.strftime("%d-%m-%Y") + "'; }")
    jsFile.close()
Exemplo n.º 12
0
from maperipy import App
import os.path, datetime

App.log('script-dir: ' + App.script_dir)
App.run_command('change-dir dir="' + App.script_dir +'"')

ProgramFiles = os.path.dirname(os.path.dirname(App.script_dir))

if not os.path.exists(App.script_dir +'\output\TileUpdate.zip') and not os.path.exists(App.script_dir +'\output\TileUpdate16.zip'):
    App.log("=== Update israel-and-palestine-latest.osm.pbf ===")
    # wget for Windows: http://gnuwin32.sourceforge.net/packages/wget.htm
    App.run_program(ProgramFiles + '\wget\\bin\wget.exe', 1200,
                    ["--timestamping",
                     "--no-directories", "--no-verbose",
                     '--directory-prefix="' + App.script_dir +'"',
                     "http://download.geofabrik.de/asia/israel-and-palestine-latest.osm.pbf"])
    LastModified = datetime.datetime.fromtimestamp(os.path.getmtime('israel-and-palestine-latest.osm.pbf'))
    if LastModified + datetime.timedelta(1) < datetime.datetime.today():
	    App.log("=== pbf file not updated ===");
	    App.run_command("pause 15000")
    # Create LastModified.js file and add it to zip file
    App.log("=== Create Last Update info:" + LastModified.strftime("%d-%m-%Y") + " ===")
    jsFile = open(App.script_dir + '\Site\js\LastModified.js', 'w')
    jsFile.write("function getLastModifiedDate() { return '"
                 + LastModified.strftime("%d-%m-%Y")
                 + "'; }")
    jsFile.close()
    App.run_command('zip base-dir="' + App.script_dir + '\Site" files="' + App.script_dir + '\Site\js\LastModified.js" zip-file="' + App.script_dir +'\output\LastModified.zip"')
else :
    App.log('=== Continueing execution of the previous build ===')  
    App.run_command("pause 15000")