Skip to content

Commit

Permalink
Merge branch 'master' of github.com:mapnik/node-mapnik
Browse files Browse the repository at this point in the history
  • Loading branch information
Dane Springmeyer committed Jul 1, 2011
2 parents 920b86f + 67d82c4 commit fa9e2fd
Show file tree
Hide file tree
Showing 22 changed files with 178 additions and 233 deletions.
6 changes: 4 additions & 2 deletions examples/js_datasource/osm_xapi.js
Expand Up @@ -47,8 +47,10 @@ map.fromStringSync(s);
var dl = new get("http://pipes.yahoo.com/pipes/pipe.run?_id=313bef20b9a083d22241c59211b04a91&_render=json")
dl.asString(function(err,str){
// Loop through pub list
// WARNING - this API will change!
var pubs = JSON.parse(str).value.items[0].node;
var items = JSON.parse(str).value.items;
if (!items.length >= 1)
throw new Error("whoops looks like the data changed upstream and this demo no longer works");
var pubs = items[0].node;
var pub;
var next = function() {
while (pub = pubs.pop()) {
Expand Down
8 changes: 5 additions & 3 deletions examples/js_datasource/simple.js
Expand Up @@ -75,12 +75,14 @@ var feat;
var next = function() {
while (feat = featureset.next(true)) {
// center longitude of polygon bbox
var x = (feat._extent[0]+feat._extent[2])/2;
var e = feat.extent();
var x = (e[0]+e[2])/2;
// center latitude of polygon bbox
var y = (feat._extent[1]+feat._extent[3])/2;
var y = (e[1]+e[3])/2;
var attr = feat.attributes();
return { 'x' : x,
'y' : y,
'properties' : { 'NAME':feat.NAME,'POP2005':feat.POP2005 }
'properties' : { 'NAME':attr.NAME,'POP2005':attr.POP2005 }
};
}
}
Expand Down
2 changes: 1 addition & 1 deletion examples/js_datasource/usgs_quakes.js
Expand Up @@ -46,7 +46,7 @@ s += '</Map>';
var map = new mapnik.Map(800,600);
var merc = new mapnik.Projection('+init=epsg:3857');
map.loadSync(path.join(__dirname, '../stylesheet.xml'));
map.from_string(s,'.');
map.fromStringSync(s);

// Latest 30 days of earthquakes > 2.5 from USGS (http://earthquake.usgs.gov/earthquakes/catalogs/)
// CSV munged into json using Yahoo pipes
Expand Down
41 changes: 17 additions & 24 deletions examples/memory_datasource/simple.js
Expand Up @@ -26,7 +26,7 @@ s += '</Map>';

// create map object
var map = new mapnik.Map(256,256);
map.from_string(s,'.');
map.fromStringSync(s);

// go get some arbitrary data that we can stream
var shp = path.join(__dirname,'../data/world_merc');
Expand All @@ -45,13 +45,15 @@ var mem_datasource = new mapnik.MemoryDatasource(

// build up memory datasource
while (feat = featureset.next(true)) {
var e = feat.extent();
// center longitude of polygon bbox
var x = (feat._extent[0]+feat._extent[2])/2;
var x = (e[0]+e[2])/2;
// center latitude of polygon bbox
var y = (feat._extent[1]+feat._extent[3])/2;
var y = (e[1]+e[3])/2;
var attr = feat.attributes();
mem_datasource.add({ 'x' : x,
'y' : y,
'properties' : { 'feat_id':feat.__id__, 'NAME':feat.NAME,'POP2005':feat.POP2005 }
'properties' : { 'feat_id':feat.id(), 'NAME':attr.NAME,'POP2005':attr.POP2005 }
});
}

Expand All @@ -76,24 +78,15 @@ map.zoomAll();
// render it! You should see a bunch of red and blue points reprenting
map.renderFileSync('memory_points.png');

if (mapnik.supports.grid) {
var options = { resolution:4,
key:'feat_id',
fields: ['POP2005','NAME','feat_id']
};
map.render_grid(0,options,function(err, data) {
if (err) throw err;
fs.writeFileSync('memory_points.json',JSON.stringify(data));
});
} else {
map._render_grid(
0,
4,
'feat_id',
true,
['POP2005','NAME','feat_id'], function(err, data) {
if (err) throw err;
fs.writeFileSync('memory_points.json',JSON.stringify(data));
});
}
var options = {
layer:0,
fields: ['POP2005','NAME','feat_id']
};

var grid = new mapnik.Grid(map.width,map.height,{key:'feat_id'});
map.render(grid,options,function(err, grid) {
if (err) throw err;
fs.writeFileSync('memory_points.json',JSON.stringify(grid.encode('utf',{resolution:4})));
});

console.log('rendered to memory_points.png and memory_points.json' );
5 changes: 3 additions & 2 deletions examples/simple/simple.js
Expand Up @@ -16,13 +16,14 @@ http.createServer(function(req, res) {
var map = new mapnik.Map(256, 256);
map.loadSync(path.join(__dirname, '../stylesheet.xml'));
map.zoomAll();
map.render(map.extent(), 'png', function(err,buffer) {
var im = new mapnik.Image(map.width,map.height);
map.render(im, function(err,im) {
if (err) {
res.writeHead(500, {'Content-Type': 'text/plain'});
res.end(err.message);
} else {
res.writeHead(200, {'Content-Type': 'image/png'});
res.end(buffer);
res.end(im.encode('png'));
}
});
}).listen(port);
Expand Down
9 changes: 6 additions & 3 deletions examples/simple/simple_express.js
Expand Up @@ -15,14 +15,17 @@ app.get('/', function(req, res) {
var map = new mapnik.Map(256, 256);
map.loadSync(path.join(__dirname, '../stylesheet.xml'));
map.zoomAll();
map.render(map.extent(), 'png', function(err,buffer) {
var im = new mapnik.Image(map.width,map.height);
map.render(im, function(err,im) {
if (err) {
res.contentType('.txt');
res.send(err.message);
} else {
res.send(buffer, {'Content-Type': 'image/png'});
res.send(im.encode('png'), {'Content-Type': 'image/png'});
}
});
}).listen(port);
})

app.listen(port);

console.log("server running on port " + port);
5 changes: 3 additions & 2 deletions examples/simple/simple_pool.js
Expand Up @@ -52,7 +52,8 @@ http.createServer(function(req, res) {
// zoom to full extent
map.zoomAll();
// real example we would pass a bbox
map.render(map.extent(), 'png', function(err, buffer) {
var im = new mapnik.Image(map.width,map.height);
map.render(im, function(err, im) {
maps.release(stylesheet, map);
if (err) {
res.writeHead(500, {
Expand All @@ -63,7 +64,7 @@ http.createServer(function(req, res) {
res.writeHead(200, {
'Content-Type': 'image/png'
});
res.end(buffer);
res.end(im.encode('png'));
}
});
}
Expand Down
17 changes: 8 additions & 9 deletions examples/tile/database/app.js
Expand Up @@ -17,13 +17,10 @@ var mapnik = require('mapnik')
, TMS_SCHEME = false;

var postgis_settings = {
'dbname' : 'YOUR DATABASE',
'table' : 'YOUR TABLE',
'dbname' : 'test2',
'table' : 'world_merc',
'user' : 'postgres',
'host' : '127.0.0.1',
'type' : 'postgis',
'geometry_field' : 'YOUR GEOMETRY FIELD (normally the_geom)',
'srid' : 'YOUR GEOMETRY SRID (web mercator is 3785)',
'extent' : '-20005048.4188,-9039211.13765,19907487.2779,17096598.5401', //change this if not merc
'max_size' : 1
};
Expand All @@ -45,19 +42,21 @@ http.createServer(function(req, res) {
layer.datasource = postgis;
layer.styles = ['point'];

map.buffer_size(50);
map.load('point_vector.xml', {strict:true}, function(err,map) {
map.bufferSize = 64;
map.load(path.join(__dirname,'point_vector.xml'), {strict:true}, function(err,map) {
if (err) throw err;
map.add_layer(layer);

// console.log(map.toXML()); // Debug settings

map.render(bbox, 'png', function(err, buffer) {
map.extent = bbox;
var im = new mapnik.Image(map.width,map.height);
map.render(im, function(err, im) {
if (err) {
throw err;
} else {
res.writeHead(200, {'Content-Type': 'image/png'});
res.end(buffer);
res.end(im.encode('png'));
}
});
});
Expand Down
6 changes: 4 additions & 2 deletions examples/tile/elastic/app.js
Expand Up @@ -130,7 +130,9 @@ http.createServer(function(req, res) {
l.styles = ["style"];
l.datasource = mem_ds;
map.add_layer(l);
map.render(bbox, 'png', function(err, buffer) {
map.extent = bbox;
var im = new mapnik.Image(map.width,map.height);
map.render(im, function(err, im) {
if (err) {
res.writeHead(500, {
'Content-Type': 'text/plain'
Expand All @@ -140,7 +142,7 @@ http.createServer(function(req, res) {
res.writeHead(200, {
'Content-Type': 'image/png'
});
res.end(buffer);
res.end(im.encode('png'));
}
});
}
Expand Down
6 changes: 4 additions & 2 deletions examples/tile/pool/app.js
Expand Up @@ -75,7 +75,9 @@ http.createServer(function(req, res) {
// bbox for x,y,z
var bbox = mercator.xyz_to_envelope(params.x, params.y, params.z, TMS_SCHEME);

map.render(bbox, 'png', function(err, buffer) {
map.extent = bbox;
var im = new mapnik.Image(map.width,map.height);
map.render(im, function(err, im) {
maps.release(stylesheet, map);
if (err) {
res.writeHead(500, {
Expand All @@ -86,7 +88,7 @@ http.createServer(function(req, res) {
res.writeHead(200, {
'Content-Type': 'image/png'
});
res.end(buffer);
res.end(im.encode('png'));
}
});
}
Expand Down
7 changes: 4 additions & 3 deletions examples/tile/simple/app.js
Expand Up @@ -36,16 +36,17 @@ var server = connect.createServer(
// create map
var map = new mapnik.Map(256, 256, mercator.proj4);
map.load(stylesheet, {strict:true}, function(err, map) {
map.zoomAll();

// render map
map.render(bbox, 'png', function(err, buffer) {
var im = new mapnik.Image(map.width,map.height);
map.extent = bbox;
map.render(im, function(err, im) {
if (err) {
throw err;
} else {
res.statusCode = 200;
res.setHeader('Content-Type', 'image/png');
res.end(buffer);
res.end(im.encode('png'));
}
});
});
Expand Down
66 changes: 0 additions & 66 deletions examples/tile/tilelive/app.js

This file was deleted.

19 changes: 10 additions & 9 deletions examples/wms/wms.js
Expand Up @@ -32,7 +32,6 @@ for (i = 0; i < pool_size; i++) {
var map = new mapnik.Map(256, 256);
map.loadSync(stylesheet);
console.log('adding new map to pool: ' + i);
map.buffer_size(128);
render_pool[i] = map;
}

Expand All @@ -50,9 +49,9 @@ function get_map()
}

http.createServer(function(req, res) {
var query = url.parse(req.url, true).query;
if (query && query.BBOX !== undefined) {
var bbox = query.BBOX.split(',');
var query = url.parse(req.url.toLowerCase(), true).query
if (query && query.bbox !== undefined) {
var bbox = query.bbox.split(',');
res.writeHead(200, {'Content-Type': 'image/png'});
var map;

Expand All @@ -61,23 +60,25 @@ http.createServer(function(req, res) {
}
else {
map = new mapnik.Map(256, 256);
map.load(stylesheet);
map.buffer_size(128);
map.loadSync(stylesheet);
}

if (query.width !== undefined && query.height !== undefined) {
map.resize(parseInt(query.width), parseInt(query.height));
}

if (async_render) {
map.render(bbox, 'png', function(err, image) {
var im = new mapnik.Image(map.width,map.height);
map.bufferSize = 128;
map.extent = bbox;
map.render(im, function(err, im) {
if (err) {
res.writeHead(500, {
'Content-Type': 'text/plain'
});
res.end(err.message);
} else {
res.end(image);
res.end(im.encode('png'));
}
});
}
Expand All @@ -90,7 +91,7 @@ http.createServer(function(req, res) {
res.writeHead(200, {
'Content-Type': 'text/html'
});
res.end('No BBOX provided! Try a request like <a href="http://127.0.0.1:' + port + '/?BBOX=-20037508.34,-5009377.085697313,-5009377.08569731,15028131.25709193">this</a>');
res.end('No bbox provided! Try a request like <a href="http://127.0.0.1:' + port + '/?BBOX=-20037508.34,-5009377.085697313,-5009377.08569731,15028131.25709193">this</a>');
}
}).listen(port);

Expand Down

0 comments on commit fa9e2fd

Please sign in to comment.