Create camera, layers and projection if not specified

This commit is contained in:
Tom Payne
2012-07-10 20:52:32 +02:00
committed by Tom Payne
parent a6ea18c4fc
commit cf9a41f77e
2 changed files with 16 additions and 14 deletions

View File

@@ -1,5 +1,6 @@
goog.provide('ol.Map');
goog.require('goog.object');
goog.require('ol.Array');
goog.require('ol.Camera');
goog.require('ol.DOMMapRenderer');
@@ -68,9 +69,19 @@ ol.Map = function(target, opt_values) {
goog.asserts.assert(!goog.isNull(this.mapRenderer_));
if (goog.isDef(opt_values)) {
this.setValues(opt_values);
var values = goog.isDef(opt_values) ? goog.object.clone(opt_values) : {};
if (!(ol.MapProperty.CAMERA in values)) {
values[ol.MapProperty.CAMERA] = new ol.Camera();
}
if (!(ol.MapProperty.LAYERS in values)) {
values[ol.MapProperty.LAYERS] = new ol.Array();
}
if (!(ol.MapProperty.PROJECTION in values)) {
values[ol.MapProperty.PROJECTION] = ol.Projection.createFromCode('EPSG:3857');
}
this.setValues(values);
};
goog.inherits(ol.Map, ol.Object);