Use ol.source.GeoJSON in vector-layer example

This commit is contained in:
Tom Payne
2013-12-04 19:18:25 +01:00
parent a814dd11ca
commit b31385fcb6

View File

@@ -1,31 +1,15 @@
goog.require('ol.Map'); goog.require('ol.Map');
goog.require('ol.RendererHint'); goog.require('ol.RendererHint');
goog.require('ol.View2D'); goog.require('ol.View2D');
goog.require('ol.format.GeoJSON');
goog.require('ol.layer.Tile'); goog.require('ol.layer.Tile');
goog.require('ol.layer.Vector'); goog.require('ol.layer.Vector');
goog.require('ol.proj'); goog.require('ol.source.GeoJSON');
goog.require('ol.source.MapQuestOpenAerial'); goog.require('ol.source.MapQuestOpenAerial');
goog.require('ol.source.Vector');
goog.require('ol.style.Fill'); goog.require('ol.style.Fill');
goog.require('ol.style.Stroke'); goog.require('ol.style.Stroke');
goog.require('ol.style.Style'); goog.require('ol.style.Style');
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuestOpenAerial()
})
],
renderer: ol.RendererHint.CANVAS,
target: 'map',
view: new ol.View2D({
center: [0, 0],
zoom: 2
})
});
var vectorSource = new ol.source.Vector();
var styleArray = [new ol.style.Style({ var styleArray = [new ol.style.Style({
fill: new ol.style.Fill({ fill: new ol.style.Fill({
color: 'rgba(255, 255, 255, 0.6)' color: 'rgba(255, 255, 255, 0.6)'
@@ -36,23 +20,28 @@ var styleArray = [new ol.style.Style({
}) })
})]; })];
var vectorLayer; var vectorLayer = new ol.layer.Vector({
$.getJSON('data/countries.geojson', function(data) { source: new ol.source.GeoJSON({
var format = new ol.format.GeoJSON(); url: 'data/countries.geojson'
var transformFn = ol.proj.getTransform('EPSG:4326', 'EPSG:3857'); }),
format.readObject(data, function(feature) {
var geometry = feature.getGeometry();
geometry.transform(transformFn);
feature.setGeometry(geometry);
vectorSource.addFeature(feature);
});
vectorLayer = new ol.layer.Vector({
source: vectorSource,
styleFunction: function(feature, resolution) { styleFunction: function(feature, resolution) {
return styleArray; return styleArray;
} }
}); });
map.getLayers().push(vectorLayer);
var map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.MapQuestOpenAerial()
}),
vectorLayer
],
renderer: ol.RendererHint.CANVAS,
target: 'map',
view: new ol.View2D({
center: [0, 0],
zoom: 2
})
}); });
var highlight; var highlight;