Create ol.Size around goog.math.Size

This commit is contained in:
Tom Payne
2012-07-19 10:46:43 +02:00
parent c547404615
commit 513d8e7268
8 changed files with 47 additions and 24 deletions

View File

@@ -15,7 +15,6 @@ goog.require('goog.events.MouseWheelHandler');
goog.require('goog.events.MouseWheelHandler.EventType');
goog.require('goog.fx.anim');
goog.require('goog.fx.anim.Animated');
goog.require('goog.math.Size');
goog.require('goog.object');
goog.require('ol.Array');
goog.require('ol.Control');
@@ -24,6 +23,7 @@ goog.require('ol.Extent');
goog.require('ol.LayerRenderer');
goog.require('ol.Object');
goog.require('ol.Projection');
goog.require('ol.Size');
goog.require('ol.TransformFunction');
@@ -372,11 +372,10 @@ ol.Map.prototype.getResolutionForExtent = function(extent) {
/**
* @return {goog.math.Size|undefined} Size.
* @return {ol.Size|undefined} Size.
*/
ol.Map.prototype.getSize = function() {
return /** @type {goog.math.Size|undefined} */ (
this.get(ol.MapProperty.SIZE));
return /** @type {ol.Size|undefined} */ this.get(ol.MapProperty.SIZE);
};
@@ -573,8 +572,7 @@ ol.Map.prototype.handleUserProjectionChanged = function() {
* @protected
*/
ol.Map.prototype.handleViewportResize = function() {
var size = new goog.math.Size(
this.target_.clientWidth, this.target_.clientHeight);
var size = new ol.Size(this.target_.clientWidth, this.target_.clientHeight);
this.setSize(size);
};
@@ -725,11 +723,11 @@ ol.Map.prototype.setResolution = function(resolution) {
/**
* @param {goog.math.Size} size Size.
* @param {ol.Size} size Size.
*/
ol.Map.prototype.setSize = function(size) {
var currentSize = this.getSize();
if (!goog.isDef(currentSize) || !goog.math.Size.equals(size, currentSize)) {
if (!goog.isDef(currentSize) || !currentSize.equals(size)) {
this.set(ol.MapProperty.SIZE, size);
}
};

View File

@@ -1,8 +1,8 @@
goog.provide('ol.Rectangle');
goog.require('goog.asserts');
goog.require('goog.math.Size');
goog.require('ol.Coordinate');
goog.require('ol.Size');
@@ -90,10 +90,10 @@ ol.Rectangle.prototype.getHeight = function() {
/**
* @return {goog.math.Size} Size.
* @return {ol.Size} Size.
*/
ol.Rectangle.prototype.getSize = function() {
return new goog.math.Size(this.getWidth(), this.getHeight());
return new ol.Size(this.getWidth(), this.getHeight());
};

25
src/ol/size.js Normal file
View File

@@ -0,0 +1,25 @@
goog.provide('ol.Size');
goog.require('goog.math.Size');
/**
* @constructor
* @extends {goog.math.Size}
* @param {number} width Width.
* @param {number} height Height.
*/
ol.Size = function(width, height) {
goog.base(this, width, height);
};
goog.inherits(ol.Size, goog.math.Size);
/**
* @param {ol.Size} size Size.
* @return {boolean} Equals.
*/
ol.Size.prototype.equals = function(size) {
return this.width == size.width && this.height == size.height;
};

View File

@@ -1,7 +1,6 @@
goog.provide('ol.TileBounds');
goog.require('goog.asserts');
goog.require('goog.math.Size');
goog.require('ol.Rectangle');
goog.require('ol.TileCoord');

View File

@@ -1,8 +1,8 @@
goog.provide('ol.tilegrid.createOpenStreetMap');
goog.require('goog.math.Size');
goog.require('ol.Coordinate');
goog.require('ol.Projection');
goog.require('ol.Size');
goog.require('ol.TileGrid');
@@ -21,7 +21,7 @@ ol.tilegrid.createOpenStreetMap = function(maxZoom) {
var extent = ol.Projection.EPSG_3857_EXTENT;
var origin = new ol.Coordinate(
-ol.Projection.EPSG_3857_HALF_SIZE, ol.Projection.EPSG_3857_HALF_SIZE);
var tileSize = new goog.math.Size(256, 256);
var tileSize = new ol.Size(256, 256);
return new ol.TileGrid(resolutions, extent, origin, tileSize);

View File

@@ -2,9 +2,9 @@ goog.provide('ol.TileGrid');
goog.require('goog.array');
goog.require('goog.asserts');
goog.require('goog.math.Size');
goog.require('ol.Coordinate');
goog.require('ol.Extent');
goog.require('ol.Size');
goog.require('ol.TileBounds');
goog.require('ol.TileCoord');
@@ -15,7 +15,7 @@ goog.require('ol.TileCoord');
* @param {!Array.<number>} resolutions Resolutions.
* @param {ol.Extent} extent Extent.
* @param {ol.Coordinate|!Array.<ol.Coordinate>} origin Origin.
* @param {goog.math.Size=} opt_tileSize Tile size.
* @param {ol.Size=} opt_tileSize Tile size.
*/
ol.TileGrid = function(resolutions, extent, origin, opt_tileSize) {
@@ -63,10 +63,10 @@ ol.TileGrid = function(resolutions, extent, origin, opt_tileSize) {
/**
* @private
* @type {goog.math.Size}
* @type {ol.Size}
*/
this.tileSize_ = goog.isDef(opt_tileSize) ?
opt_tileSize : new goog.math.Size(256, 256);
opt_tileSize : new ol.Size(256, 256);
};
@@ -214,7 +214,7 @@ ol.TileGrid.prototype.getTileCoordResolution = function(tileCoord) {
/**
* @return {goog.math.Size} Tile size.
* @return {ol.Size} Tile size.
*/
ol.TileGrid.prototype.getTileSize = function() {
return this.tileSize_;

View File

@@ -1,7 +1,7 @@
goog.require('goog.math.Size');
goog.require('goog.testing.jsunit');
goog.require('ol.Coordinate');
goog.require('ol.Extent');
goog.require('ol.Size');
goog.require('ol.TileCoord');
goog.require('ol.TileGrid');
@@ -18,7 +18,7 @@ function setUp() {
extent = new ol.Extent(0, 0, 100000, 100000);
origin = new ol.Coordinate(0, 0);
origins = [];
tileSize = new goog.math.Size(100, 100);
tileSize = new ol.Size(100, 100);
}

View File

@@ -9,6 +9,7 @@ goog.require('goog.events.EventType');
goog.require('goog.vec.Mat4');
goog.require('goog.webgl');
goog.require('ol.Coordinate');
goog.require('ol.Size');
goog.require('ol.TileLayer');
goog.require('ol.webgl.LayerRenderer');
goog.require('ol.webgl.shader.Fragment');
@@ -122,7 +123,7 @@ ol.webgl.TileLayerRenderer = function(map, tileLayer) {
/**
* @private
* @type {goog.math.Size}
* @type {ol.Size}
*/
this.framebufferSize_ = null;
@@ -230,12 +231,12 @@ ol.webgl.TileLayerRenderer.prototype.redraw = function() {
var tileBoundsSize = tileBounds.getSize();
var tileSize = tileGrid.getTileSize();
var framebufferSize = new goog.math.Size(
var framebufferSize = new ol.Size(
tileSize.width * tileBoundsSize.width,
tileSize.height * tileBoundsSize.height);
if (goog.isNull(this.framebufferSize_) ||
!goog.math.Size.equals(this.framebufferSize_, framebufferSize)) {
!this.framebufferSize_.equals(framebufferSize)) {
gl.deleteFramebuffer(this.framebuffer_);
gl.deleteRenderbuffer(this.renderbuffer_);