Create ol.Coordinate around goog.math.Coordinate
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
goog.provide('ol.tilegrid.createOpenStreetMap');
|
||||
|
||||
goog.require('goog.math.Coordinate');
|
||||
goog.require('goog.math.Size');
|
||||
goog.require('ol.Coordinate');
|
||||
goog.require('ol.Projection');
|
||||
goog.require('ol.TileGrid');
|
||||
|
||||
@@ -19,7 +19,7 @@ ol.tilegrid.createOpenStreetMap = function(maxZoom) {
|
||||
}
|
||||
|
||||
var extent = ol.Projection.EPSG_3857_EXTENT;
|
||||
var origin = new goog.math.Coordinate(
|
||||
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);
|
||||
|
||||
|
||||
+11
-13
@@ -2,8 +2,8 @@ goog.provide('ol.TileGrid');
|
||||
|
||||
goog.require('goog.array');
|
||||
goog.require('goog.asserts');
|
||||
goog.require('goog.math.Coordinate');
|
||||
goog.require('goog.math.Size');
|
||||
goog.require('ol.Coordinate');
|
||||
goog.require('ol.Extent');
|
||||
goog.require('ol.TileBounds');
|
||||
goog.require('ol.TileCoord');
|
||||
@@ -14,7 +14,7 @@ goog.require('ol.TileCoord');
|
||||
* @constructor
|
||||
* @param {!Array.<number>} resolutions Resolutions.
|
||||
* @param {ol.Extent} extent Extent.
|
||||
* @param {goog.math.Coordinate|!Array.<goog.math.Coordinate>} origin Origin.
|
||||
* @param {ol.Coordinate|!Array.<ol.Coordinate>} origin Origin.
|
||||
* @param {goog.math.Size=} opt_tileSize Tile size.
|
||||
*/
|
||||
ol.TileGrid = function(resolutions, extent, origin, opt_tileSize) {
|
||||
@@ -42,17 +42,17 @@ ol.TileGrid = function(resolutions, extent, origin, opt_tileSize) {
|
||||
|
||||
/**
|
||||
* @private
|
||||
* @type {goog.math.Coordinate}
|
||||
* @type {ol.Coordinate}
|
||||
*/
|
||||
this.origin_ = null;
|
||||
|
||||
/**
|
||||
* @private
|
||||
* @type {Array.<goog.math.Coordinate>}
|
||||
* @type {Array.<ol.Coordinate>}
|
||||
*/
|
||||
this.origins_ = null;
|
||||
|
||||
if (origin instanceof goog.math.Coordinate) {
|
||||
if (origin instanceof ol.Coordinate) {
|
||||
this.origin_ = origin;
|
||||
} else if (goog.isArray(origin)) {
|
||||
goog.asserts.assert(origin.length == this.numResolutions_);
|
||||
@@ -101,17 +101,15 @@ ol.TileGrid.prototype.getExtent = function() {
|
||||
* @return {ol.TileBounds} Tile bounds.
|
||||
*/
|
||||
ol.TileGrid.prototype.getExtentTileBounds = function(z, extent) {
|
||||
var min =
|
||||
this.getTileCoord(z, new goog.math.Coordinate(extent.minX, extent.minY));
|
||||
var max =
|
||||
this.getTileCoord(z, new goog.math.Coordinate(extent.maxX, extent.maxY));
|
||||
var min = this.getTileCoord(z, new ol.Coordinate(extent.minX, extent.minY));
|
||||
var max = this.getTileCoord(z, new ol.Coordinate(extent.maxX, extent.maxY));
|
||||
return new ol.TileBounds(min.x, min.y, max.x, max.y);
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @param {number} z Z.
|
||||
* @return {goog.math.Coordinate} Origin.
|
||||
* @return {ol.Coordinate} Origin.
|
||||
*/
|
||||
ol.TileGrid.prototype.getOrigin = function(z) {
|
||||
if (!goog.isNull(this.origin_)) {
|
||||
@@ -144,7 +142,7 @@ ol.TileGrid.prototype.getResolutions = function() {
|
||||
|
||||
/**
|
||||
* @param {number} z Z.
|
||||
* @param {goog.math.Coordinate} coordinate Coordinate.
|
||||
* @param {ol.Coordinate} coordinate Coordinate.
|
||||
* @return {ol.TileCoord} Tile coordinate.
|
||||
*/
|
||||
ol.TileGrid.prototype.getTileCoord = function(z, coordinate) {
|
||||
@@ -160,7 +158,7 @@ ol.TileGrid.prototype.getTileCoord = function(z, coordinate) {
|
||||
|
||||
/**
|
||||
* @param {ol.TileCoord} tileCoord Tile coordinate.
|
||||
* @return {goog.math.Coordinate} Tile center.
|
||||
* @return {ol.Coordinate} Tile center.
|
||||
*/
|
||||
ol.TileGrid.prototype.getTileCoordCenter = function(tileCoord) {
|
||||
var origin = this.getOrigin(tileCoord.z);
|
||||
@@ -168,7 +166,7 @@ ol.TileGrid.prototype.getTileCoordCenter = function(tileCoord) {
|
||||
var tileSize = this.tileSize_;
|
||||
var x = origin.x + (tileCoord.x + 0.5) * tileSize.width * resolution;
|
||||
var y = origin.y + (tileCoord.y + 0.5) * tileSize.height * resolution;
|
||||
return new goog.math.Coordinate(x, y);
|
||||
return new ol.Coordinate(x, y);
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
goog.require('goog.math.Coordinate');
|
||||
goog.require('goog.math.Size');
|
||||
goog.require('goog.testing.jsunit');
|
||||
goog.require('ol.Coordinate');
|
||||
goog.require('ol.Extent');
|
||||
goog.require('ol.TileCoord');
|
||||
goog.require('ol.TileGrid');
|
||||
@@ -16,7 +16,7 @@ var tileSize;
|
||||
function setUp() {
|
||||
resolutions = [1000, 500, 250, 100];
|
||||
extent = new ol.Extent(0, 0, 100000, 100000);
|
||||
origin = new goog.math.Coordinate(0, 0);
|
||||
origin = new ol.Coordinate(0, 0);
|
||||
origins = [];
|
||||
tileSize = new goog.math.Size(100, 100);
|
||||
}
|
||||
@@ -74,27 +74,26 @@ function testCreateTooManyOrigins() {
|
||||
|
||||
function testGetTileCoord() {
|
||||
|
||||
origin = new goog.math.Coordinate(0, 0);
|
||||
origin = new ol.Coordinate(0, 0);
|
||||
var tileGrid = new ol.TileGrid(resolutions, extent, origin, tileSize);
|
||||
var tileCoord;
|
||||
|
||||
tileCoord = tileGrid.getTileCoord(3, new goog.math.Coordinate(0, 0));
|
||||
tileCoord = tileGrid.getTileCoord(3, new ol.Coordinate(0, 0));
|
||||
assertEquals(3, tileCoord.z);
|
||||
assertEquals(0, tileCoord.x);
|
||||
assertEquals(0, tileCoord.y);
|
||||
|
||||
tileCoord = tileGrid.getTileCoord(3, new goog.math.Coordinate(0, 100000));
|
||||
tileCoord = tileGrid.getTileCoord(3, new ol.Coordinate(0, 100000));
|
||||
assertEquals(3, tileCoord.z);
|
||||
assertEquals(0, tileCoord.x);
|
||||
assertEquals(10, tileCoord.y);
|
||||
|
||||
tileCoord = tileGrid.getTileCoord(3, new goog.math.Coordinate(100000, 0));
|
||||
tileCoord = tileGrid.getTileCoord(3, new ol.Coordinate(100000, 0));
|
||||
assertEquals(3, tileCoord.z);
|
||||
assertEquals(10, tileCoord.x);
|
||||
assertEquals(0, tileCoord.y);
|
||||
|
||||
tileCoord =
|
||||
tileGrid.getTileCoord(3, new goog.math.Coordinate(100000, 100000));
|
||||
tileCoord = tileGrid.getTileCoord(3, new ol.Coordinate(100000, 100000));
|
||||
assertEquals(3, tileCoord.z);
|
||||
assertEquals(10, tileCoord.x);
|
||||
assertEquals(10, tileCoord.y);
|
||||
@@ -104,27 +103,26 @@ function testGetTileCoord() {
|
||||
|
||||
function testGetTileCoordYSouth() {
|
||||
|
||||
origin = new goog.math.Coordinate(0, 100000);
|
||||
origin = new ol.Coordinate(0, 100000);
|
||||
var tileGrid = new ol.TileGrid(resolutions, extent, origin, tileSize);
|
||||
var tileCoord;
|
||||
|
||||
tileCoord = tileGrid.getTileCoord(3, new goog.math.Coordinate(0, 0));
|
||||
tileCoord = tileGrid.getTileCoord(3, new ol.Coordinate(0, 0));
|
||||
assertEquals(3, tileCoord.z);
|
||||
assertEquals(0, tileCoord.x);
|
||||
assertEquals(-10, tileCoord.y);
|
||||
|
||||
tileCoord = tileGrid.getTileCoord(3, new goog.math.Coordinate(0, 100000));
|
||||
tileCoord = tileGrid.getTileCoord(3, new ol.Coordinate(0, 100000));
|
||||
assertEquals(3, tileCoord.z);
|
||||
assertEquals(0, tileCoord.x);
|
||||
assertEquals(0, tileCoord.y);
|
||||
|
||||
tileCoord = tileGrid.getTileCoord(3, new goog.math.Coordinate(100000, 0));
|
||||
tileCoord = tileGrid.getTileCoord(3, new ol.Coordinate(100000, 0));
|
||||
assertEquals(3, tileCoord.z);
|
||||
assertEquals(10, tileCoord.x);
|
||||
assertEquals(-10, tileCoord.y);
|
||||
|
||||
tileCoord =
|
||||
tileGrid.getTileCoord(3, new goog.math.Coordinate(100000, 100000));
|
||||
tileCoord = tileGrid.getTileCoord(3, new ol.Coordinate(100000, 100000));
|
||||
assertEquals(3, tileCoord.z);
|
||||
assertEquals(10, tileCoord.x);
|
||||
assertEquals(0, tileCoord.y);
|
||||
|
||||
Reference in New Issue
Block a user