Skip to content

Commit d37ba51

Browse files
committed
Updated python to latest changes in mapnik for release canidate 2, updated visual tests, updated test data, changed layer attributes minzoom and maxzoom.
1 parent 82448a6 commit d37ba51

7 files changed

Lines changed: 32 additions & 36 deletions

File tree

src/mapnik_layer.cpp

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ struct layer_pickle_suite : boost::python::pickle_suite
6060
{
6161
s.append(style_names[i]);
6262
}
63-
return boost::python::make_tuple(l.clear_label_cache(),l.min_zoom(),l.max_zoom(),l.queryable(),l.datasource()->params(),l.cache_features(),s);
63+
return boost::python::make_tuple(l.clear_label_cache(),l.minimum_scale_denominator(),l.maximum_scale_denominator(),l.queryable(),l.datasource()->params(),l.cache_features(),s);
6464
}
6565

6666
static void
@@ -78,9 +78,9 @@ struct layer_pickle_suite : boost::python::pickle_suite
7878

7979
l.set_clear_label_cache(extract<bool>(state[0]));
8080

81-
l.set_min_zoom(extract<double>(state[1]));
81+
l.set_minimum_scale_denominator(extract<double>(state[1]));
8282

83-
l.set_max_zoom(extract<double>(state[2]));
83+
l.set_maximum_scale_denominator(extract<double>(state[2]));
8484

8585
l.set_queryable(extract<bool>(state[3]));
8686

@@ -176,14 +176,14 @@ void export_layer()
176176
)
177177

178178
.def("visible", &layer::visible,
179-
"Return True if this layer's data is active and visible at a given scale.\n"
179+
"Return True if this layer's data is active and visible at a given scale_denom.\n"
180180
"\n"
181181
"Otherwise returns False.\n"
182182
"Accepts a scale value as an integer or float input.\n"
183183
"Will return False if:\n"
184-
"\tscale >= minzoom - 1e-6\n"
184+
"\tscale_denom >= minimum_scale_denominator - 1e-6\n"
185185
"\tor:\n"
186-
"\tscale < maxzoom + 1e-6\n"
186+
"\tscale_denom < maximum_scale_denominator + 1e-6\n"
187187
"\n"
188188
"Usage:\n"
189189
">>> from mapnik import Layer\n"
@@ -282,33 +282,33 @@ void export_layer()
282282
">>> m.maximum_extent = Box2d(-180,-90,180,90)\n"
283283
)
284284

285-
.add_property("maxzoom",
286-
&layer::max_zoom,
287-
&layer::set_max_zoom,
288-
"Get/Set the maximum zoom lever of the layer.\n"
285+
.add_property("maximum_scale_denominator",
286+
&layer::maximum_scale_denominator,
287+
&layer::set_maximum_scale_denominator,
288+
"Get/Set the maximum scale denominator of the layer.\n"
289289
"\n"
290290
"Usage:\n"
291291
">>> from mapnik import Layer\n"
292292
">>> lyr = Layer('My Layer','+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs')\n"
293-
">>> lyr.maxzoom\n"
293+
">>> lyr.maximum_scale_denominator\n"
294294
"1.7976931348623157e+308 # default is the numerical maximum\n"
295-
">>> lyr.maxzoom = 1.0/1000000\n"
296-
">>> lyr.maxzoom\n"
295+
">>> lyr.maximum_scale_denominator = 1.0/1000000\n"
296+
">>> lyr.maximum_scale_denominator\n"
297297
"9.9999999999999995e-07\n"
298298
)
299299

300-
.add_property("minzoom",
301-
&layer::min_zoom,
302-
&layer::set_min_zoom,
303-
"Get/Set the minimum zoom lever of the layer.\n"
300+
.add_property("minimum_scale_denominator",
301+
&layer::minimum_scale_denominator,
302+
&layer::set_minimum_scale_denominator,
303+
"Get/Set the minimum scale demoninator of the layer.\n"
304304
"\n"
305305
"Usage:\n"
306306
">>> from mapnik import Layer\n"
307307
">>> lyr = Layer('My Layer','+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs')\n"
308-
">>> lyr.minzoom # default is 0\n"
308+
">>> lyr.minimum_scale_denominator # default is 0\n"
309309
"0.0\n"
310-
">>> lyr.minzoom = 1.0/1000000\n"
311-
">>> lyr.minzoom\n"
310+
">>> lyr.minimum_scale_denominator = 1.0/1000000\n"
311+
">>> lyr.minimum_scale_denominator\n"
312312
"9.9999999999999995e-07\n"
313313
)
314314

test/data

test/data-visual

Submodule data-visual updated 1124 files
-52 Bytes
Loading

test/python_tests/layer_test.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ def test_layer_init():
1717
eq_(l.active,True)
1818
eq_(l.datasource,None)
1919
eq_(l.queryable,False)
20-
eq_(l.minzoom,0.0)
21-
eq_(l.maxzoom > 1e+6,True)
20+
eq_(l.minimum_scale_denominator,0.0)
21+
eq_(l.maximum_scale_denominator > 1e+6,True)
2222
eq_(l.group_by,"")
2323
eq_(l.maximum_extent,None)
2424
eq_(l.buffer_size,None)

test/python_tests/webp_encoding_test.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,11 @@ def test_quality_threshold_invalid():
5757
def test_quality_threshold_invalid2():
5858
im = mapnik.Image(256,256)
5959
im.tostring('webp:quality=-1')
60+
61+
@raises(RuntimeError)
62+
def test_quality_threshold_invalid3():
63+
im = mapnik.Image(256,256)
64+
im.tostring('webp:quality=101.1')
6065

6166
generate = os.environ.get('UPDATE')
6267

test/visual.py

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ def render_cairo(m, output, scale_factor):
4343
mapnik.render_to_file(m, output, 'ARGB32', scale_factor)
4444
# open and re-save as png8 to save space
4545
new_im = mapnik.Image.open(output)
46-
new_im.save(output, 'png8:m=h')
46+
new_im.save(output, 'png32')
4747

4848
def render_grid(m, output, scale_factor):
4949
grid = mapnik.Grid(m.width, m.height)
@@ -52,7 +52,7 @@ def render_grid(m, output, scale_factor):
5252
open(output,'wb').write(json.dumps(utf1, indent=1))
5353

5454
def render_agg(m, output, scale_factor):
55-
mapnik.render_to_file(m, output, 'png8:m=h', scale_factor),
55+
mapnik.render_to_file(m, output, 'png32', scale_factor),
5656

5757
renderers = [
5858
{ 'name': 'agg',
@@ -110,16 +110,7 @@ def compare_pixels(pixel1, pixel2, alpha=True):
110110
def compare(actual, expected, alpha=True):
111111
im1 = mapnik.Image.open(actual)
112112
im2 = mapnik.Image.open(expected)
113-
diff = 0
114-
pixels = im1.width() * im1.height()
115-
delta_pixels = (im2.width() * im2.height()) - pixels
116-
if delta_pixels != 0:
117-
return delta_pixels
118-
for x in range(0,im1.width(),2):
119-
for y in range(0,im1.height(),2):
120-
if compare_pixels(im1.get_pixel(x,y),im2.get_pixel(x,y),alpha=alpha):
121-
diff += 1
122-
return diff
113+
return im1.compare(im2,COMPUTE_THRESHOLD, alpha)
123114

124115
def compare_grids(actual, expected, threshold=0, alpha=True):
125116
global errors

0 commit comments

Comments
 (0)