draw tiles fixed

parent e8f4d959
......@@ -29,12 +29,13 @@ function addImageLayer(labelDate) {
url: '/reports/tiles/tileinfo',
success: function (data) {
map.removeLayer(imagelayer)
console.log("response ", data);
console.log({purchase_id, zone, labelDate});
var xyz = new ol.layer.Tile({
opacity: 0.5,
opacity: 1,
source: new ol.source.XYZ({
projection: 'EPSG:3857',
url: getURL(purchase_id, zone, labelDate),
url: '/reports/tiles/'+purchase_id+'/'+zone+'/'+labelDate+'/{z}/{x}/{-y}.png',
tilePixelRatio: 2,
minZoom: data.zoom.min,
maxZoom: data.zoom.max
......@@ -51,14 +52,3 @@ function addImageLayer(labelDate) {
}
});
}
var getURL = function (id, report, date) {
var url = '/reports/tiles/'+id+'/'
if (report) {
url += report+'/'
}
return url+date+'/{z}/{x}/{-y}.png'
}
......@@ -4,13 +4,10 @@ from . import views
from reports import views
urlpatterns = [
url(r'^(?P<purchase_id>(\d+))/(?P<report>[\w\-]+)$', views.report_L2ASCL, name='report'),
url(r'^$', views.Reports, name='reports'),
url(r'^ws/process_progress$', views.wsProcessProgress, name='wsProcessProgress'),
url(r'^tiles/(?P<purchase_id>(\d+))/(?P<report>[\w\-]+)/(?P<date>[0-9]+)/(?P<z>[0-9]+)/(?P<x>[0-9]+)/(?P<y>[0-9]+).png$',
views.tiles, name='tile'),
url(r'^tiles/(?P<purchase_id>(\d+))/(?P<date>[0-9]+)/(?P<z>[0-9]+)/(?P<x>[0-9]+)/(?P<y>[0-9]+).png$',
views.mergedTiles, name='mergedTiles'),
url(r'^tiles/tileinfo$', views.tileinfo, name='tileinfo'),
]
......@@ -264,65 +264,35 @@ def wsProcessProgress(request):
# tiles
def tiles(request, purchase_id, report, date, z, x, y):
print("tiles!!!")
absolute_path = USERS_PATH + request.user.email + '/' + purchase_id + '/out'
tile_folder = '/' + report + '/TCI/tiles/' + date + '_TCI_60m'
image = '/' + z + '/' + x + '/' + y + '.png'
image_path = absolute_path + tile_folder + image
print(image_path)
image_path = "{}{}/{}/out/{}/TCI/tiles/{}_TCI_60m/{}/{}/{}.png".format(
USERS_PATH, request.user.email, purchase_id, report, date, z, x, y
)
if not os.path.exists(image_path):
# raise Http404
return HttpResponse(None, content_type="image/png")
# image_path = USERS_PATH + 'none.png'
image = open(image_path, "rb").read()
return HttpResponse(image, content_type="image/png")
def mergedTiles(request, purchase_id, date, z, x, y):
absolute_path = USERS_PATH + request.user.email + '/' + purchase_id + '/out'
tile_folder = '/mask/TCI/tiles/' + date + '_TCI_60m'
image = '/' + z + '/' + x + '/' + y + '.png'
image_path = absolute_path + tile_folder + image
if not os.path.exists(image_path):
# raise Http404
return HttpResponse(None, content_type="image/png")
# image_path = USERS_PATH + 'none.png'
image = open(image_path, "rb").read()
return HttpResponse(image, content_type="image/png")
# read a xml file with tiles info to display and return that info
@csrf_exempt
def tileinfo(request):
print("tileinfo!!!")
if request.is_ajax():
req = dict(request.POST)
resource_path = USERS_PATH + request.user.email + '/' + req['purchase_id'][0] + '/out'
print(req)
print(req['report'][0])
if req['report'][0]!="mask":
resource_path += '/' + req['report'][0] + '/TCI/tiles/'
else:
resource_path += '/mask/TCI/tiles/'
resource_path += req['date'][0] + '_TCI_60m/tilemapresource.xml'
print(resource_path)
resource_path = "{}{}/{}/out/{}/TCI/tiles/{}_TCI_60m/tilemapresource.xml".format(
USERS_PATH, request.user.email, req['purchase_id'][0], req['report'][0],
req['date'][0]
)
if not os.path.exists(resource_path):
raise Http404
tree = ET.parse(resource_path)
print(tree)
bounding_box = tree.find('BoundingBox')
sets = [set.get('order') for set in tree.findall('TileSets/TileSet')]
sets = [int(set.get('order')) for set in tree.findall('TileSets/TileSet')]
origin = tree.find('Origin')
return JsonResponse({
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment