Completed
Push — master ( e9db99...08ced9 )
by Steven
01:06
created

gen_bbox()   A

Complexity

Conditions 2

Size

Total Lines 17

Duplication

Lines 0
Ratio 0 %
Metric Value
cc 2
dl 0
loc 17
rs 9.4285
1
#!/usr/bin/python
2
3
# Author: Steven D. Lander, RGi
4
# March 18, 2016
5
6
# This script assumes world-referenced tile coordinates
7
8
def gen_bbox(bbox, tiles):
9
    if tiles == 1:
10
        return ["&BBOX={},{},{},{}".format(bbox[0],
11
            bbox[1], bbox[2], bbox[3])]
12
    else:
13
        sub_count = tiles / 4
14
        min_x, min_y, max_x, max_y = bbox[0], bbox[1], bbox[2], bbox[3]
15
        middle_x = ((max_x - min_x) / 2) + min_x
16
        middle_y = ((max_y - min_y) / 2) + min_y
17
        bbox_ul = [min_x,    middle_y, middle_x, max_y]
18
        bbox_ur = [middle_x, middle_y, max_x, max_y]
19
        bbox_ll = [min_x,    min_y, middle_x, middle_y]
20
        bbox_lr = [middle_x, min_y, max_x, middle_y]
21
        return gen_bbox(bbox_ul, sub_count) + \
22
                gen_bbox(bbox_ur, sub_count) + \
23
                gen_bbox(bbox_ll, sub_count) + \
24
                gen_bbox(bbox_lr, sub_count)
25
26
base_url = "http://localhost/GPEP/Hybrid-Performance-Test/service?"
27
base_url += "VERSION=1.3.0&REQUEST=GetMap&CRS=CRS:84&WIDTH=256&HEIGHT=256"
28
base_url += "&LAYERS=2&STYLES=,,,,&EXCEPTIONS=xml&FORMAT=image/png"
29
base_url += "&BGCOLOR=0xFEFFFF&TRANSPARENT=TRUE"
30
z_min = 0
31
z_max = 7
32
tasks = [(2**x) * (2**x) for x in range(z_min, z_max+1)]
33
bbox = [50.92, 20.63, 78.12, 41.62]
34
35
bbox_list = []
36
for task in tasks:
37
    for entry in gen_bbox(bbox, task):
38
        print(base_url + entry)
39