Skip to content

aDAVISk/xyztilefile

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xyztilefile

Samples

Basic usage sample.

from xyztilefile import *
xyz = calc_xyz_from_lonlat

x, y, z = calc_xyz_from_lonlat(135.0,35.0,15)

test_txt = XYZTileFile("./tile_sample/{z}/{x}/{y}.txt")
txt = test_txt.get(*xyz(135.0,35.0,15))
test_txt.set(x,y,z,txt+"\nNew line is added")
test_txt.save(x,y,z)

Usage sample of XYZTileManager

from xyztilefile import *
xyz = calc_xyz_from_lonlat

test_json = XYZTileManager("https://raw.githubusercontent.com/aDAVISk/xyztilefile/dev/tile_sample/{z}/{x}/{y}.json", "./tile_sample2/{z}/{x}/{y}.json")
data = test_json.get(*xyz(135.0,35.0,15))

XYZTileManager first check the locally saved cache which is the second argument. If such local file is missing, then XYZTileManager will try to retrieve data from the online source which is the first argument.

please check './test/' for more sample codes

currently supported file formats

  • txt : encoding must be UTF-8

  • json : encoding must be UTF-8

  • png : with skit-image (tested with ./test/test_png.py)

  • npy : with numpy (tested with ./test/test_npy.py)

  • pickle/pkl : only for local file with extra keyword setting at the initialization XYZTileFile(basepath, allow_pickle=True) (tested with ./test/test_pickle.py)

  • (generic : this format is basic but your customization is needed.)