Merge pull request #7575 from ahocevar/named-exports-extent

Add named exports for extent
This commit is contained in:
Tim Schaub
2017-12-13 09:34:44 -07:00
committed by GitHub
80 changed files with 557 additions and 544 deletions
+4 -5
View File
@@ -2,7 +2,7 @@
* @module ol/Graticule * @module ol/Graticule
*/ */
import _ol_coordinate_ from './coordinate.js'; import _ol_coordinate_ from './coordinate.js';
import _ol_extent_ from './extent.js'; import {intersects, getCenter} from './extent.js';
import _ol_geom_GeometryLayout_ from './geom/GeometryLayout.js'; import _ol_geom_GeometryLayout_ from './geom/GeometryLayout.js';
import _ol_geom_LineString_ from './geom/LineString.js'; import _ol_geom_LineString_ from './geom/LineString.js';
import _ol_geom_Point_ from './geom/Point.js'; import _ol_geom_Point_ from './geom/Point.js';
@@ -254,7 +254,7 @@ _ol_Graticule_.intervals_ = [90, 45, 30, 20, 10, 5, 2, 1, 0.5, 0.2, 0.1, 0.05,
_ol_Graticule_.prototype.addMeridian_ = function(lon, minLat, maxLat, squaredTolerance, extent, index) { _ol_Graticule_.prototype.addMeridian_ = function(lon, minLat, maxLat, squaredTolerance, extent, index) {
var lineString = this.getMeridian_(lon, minLat, maxLat, var lineString = this.getMeridian_(lon, minLat, maxLat,
squaredTolerance, index); squaredTolerance, index);
if (_ol_extent_.intersects(lineString.getExtent(), extent)) { if (intersects(lineString.getExtent(), extent)) {
if (this.meridiansLabels_) { if (this.meridiansLabels_) {
var textPoint = this.getMeridianPoint_(lineString, extent, index); var textPoint = this.getMeridianPoint_(lineString, extent, index);
this.meridiansLabels_[index] = { this.meridiansLabels_[index] = {
@@ -302,7 +302,7 @@ _ol_Graticule_.prototype.getMeridianPoint_ = function(lineString, extent, index)
_ol_Graticule_.prototype.addParallel_ = function(lat, minLon, maxLon, squaredTolerance, extent, index) { _ol_Graticule_.prototype.addParallel_ = function(lat, minLon, maxLon, squaredTolerance, extent, index) {
var lineString = this.getParallel_(lat, minLon, maxLon, squaredTolerance, var lineString = this.getParallel_(lat, minLon, maxLon, squaredTolerance,
index); index);
if (_ol_extent_.intersects(lineString.getExtent(), extent)) { if (intersects(lineString.getExtent(), extent)) {
if (this.parallelsLabels_) { if (this.parallelsLabels_) {
var textPoint = this.getParallelPoint_(lineString, extent, index); var textPoint = this.getParallelPoint_(lineString, extent, index);
this.parallelsLabels_[index] = { this.parallelsLabels_[index] = {
@@ -632,8 +632,7 @@ _ol_Graticule_.prototype.updateProjectionInfo_ = function(projection) {
this.toLonLatTransform_ = _ol_proj_.getTransform( this.toLonLatTransform_ = _ol_proj_.getTransform(
projection, epsg4326Projection); projection, epsg4326Projection);
this.projectionCenterLonLat_ = this.toLonLatTransform_( this.projectionCenterLonLat_ = this.toLonLatTransform_(getCenter(extent));
_ol_extent_.getCenter(extent));
this.projection_ = projection; this.projection_ = projection;
}; };
+2 -2
View File
@@ -6,7 +6,7 @@ import _ol_ImageBase_ from './ImageBase.js';
import _ol_ImageState_ from './ImageState.js'; import _ol_ImageState_ from './ImageState.js';
import _ol_events_ from './events.js'; import _ol_events_ from './events.js';
import _ol_events_EventType_ from './events/EventType.js'; import _ol_events_EventType_ from './events/EventType.js';
import _ol_extent_ from './extent.js'; import {getHeight} from './extent.js';
/** /**
* @constructor * @constructor
@@ -88,7 +88,7 @@ _ol_Image_.prototype.handleImageError_ = function() {
*/ */
_ol_Image_.prototype.handleImageLoad_ = function() { _ol_Image_.prototype.handleImageLoad_ = function() {
if (this.resolution === undefined) { if (this.resolution === undefined) {
this.resolution = _ol_extent_.getHeight(this.extent) / this.image_.height; this.resolution = getHeight(this.extent) / this.image_.height;
} }
this.state = _ol_ImageState_.LOADED; this.state = _ol_ImageState_.LOADED;
this.unlistenImage_(); this.unlistenImage_();
+2 -2
View File
@@ -8,7 +8,7 @@ import _ol_OverlayPositioning_ from './OverlayPositioning.js';
import _ol_css_ from './css.js'; import _ol_css_ from './css.js';
import _ol_dom_ from './dom.js'; import _ol_dom_ from './dom.js';
import _ol_events_ from './events.js'; import _ol_events_ from './events.js';
import _ol_extent_ from './extent.js'; import {containsExtent} from './extent.js';
/** /**
* @classdesc * @classdesc
@@ -363,7 +363,7 @@ _ol_Overlay_.prototype.panIntoView = function() {
[_ol_dom_.outerWidth(element), _ol_dom_.outerHeight(element)]); [_ol_dom_.outerWidth(element), _ol_dom_.outerHeight(element)]);
var margin = this.autoPanMargin; var margin = this.autoPanMargin;
if (!_ol_extent_.containsExtent(mapRect, overlayRect)) { if (!containsExtent(mapRect, overlayRect)) {
// the overlay is not completely inside the viewport, so pan the map // the overlay is not completely inside the viewport, so pan the map
var offsetLeft = overlayRect[0] - mapRect[0]; var offsetLeft = overlayRect[0] - mapRect[0];
var offsetRight = mapRect[2] - overlayRect[2]; var offsetRight = mapRect[2] - overlayRect[2];
+8 -8
View File
@@ -20,7 +20,7 @@ import _ol_dom_ from './dom.js';
import _ol_events_ from './events.js'; import _ol_events_ from './events.js';
import _ol_events_Event_ from './events/Event.js'; import _ol_events_Event_ from './events/Event.js';
import _ol_events_EventType_ from './events/EventType.js'; import _ol_events_EventType_ from './events/EventType.js';
import _ol_extent_ from './extent.js'; import {createEmpty, clone, createOrUpdateEmpty, equals, getForViewAndSize, isEmpty} from './extent.js';
import _ol_functions_ from './functions.js'; import _ol_functions_ from './functions.js';
import _ol_has_ from './has.js'; import _ol_has_ from './has.js';
import _ol_layer_Group_ from './layer/Group.js'; import _ol_layer_Group_ from './layer/Group.js';
@@ -1135,7 +1135,7 @@ _ol_PluggableMap_.prototype.renderFrame_ = function(time) {
var size = this.getSize(); var size = this.getSize();
var view = this.getView(); var view = this.getView();
var extent = _ol_extent_.createEmpty(); var extent = createEmpty();
var previousFrameState = this.frameState_; var previousFrameState = this.frameState_;
/** @type {?olx.FrameState} */ /** @type {?olx.FrameState} */
var frameState = null; var frameState = null;
@@ -1175,7 +1175,7 @@ _ol_PluggableMap_.prototype.renderFrame_ = function(time) {
} }
if (frameState) { if (frameState) {
frameState.extent = _ol_extent_.getForViewAndSize(viewState.center, frameState.extent = getForViewAndSize(viewState.center,
viewState.resolution, viewState.rotation, frameState.size, extent); viewState.resolution, viewState.rotation, frameState.size, extent);
} }
@@ -1191,24 +1191,24 @@ _ol_PluggableMap_.prototype.renderFrame_ = function(time) {
if (previousFrameState) { if (previousFrameState) {
var moveStart = !this.previousExtent_ || var moveStart = !this.previousExtent_ ||
(!_ol_extent_.isEmpty(this.previousExtent_) && (!isEmpty(this.previousExtent_) &&
!_ol_extent_.equals(frameState.extent, this.previousExtent_)); !equals(frameState.extent, this.previousExtent_));
if (moveStart) { if (moveStart) {
this.dispatchEvent( this.dispatchEvent(
new _ol_MapEvent_(_ol_MapEventType_.MOVESTART, this, previousFrameState)); new _ol_MapEvent_(_ol_MapEventType_.MOVESTART, this, previousFrameState));
this.previousExtent_ = _ol_extent_.createOrUpdateEmpty(this.previousExtent_); this.previousExtent_ = createOrUpdateEmpty(this.previousExtent_);
} }
} }
var idle = this.previousExtent_ && var idle = this.previousExtent_ &&
!frameState.viewHints[_ol_ViewHint_.ANIMATING] && !frameState.viewHints[_ol_ViewHint_.ANIMATING] &&
!frameState.viewHints[_ol_ViewHint_.INTERACTING] && !frameState.viewHints[_ol_ViewHint_.INTERACTING] &&
!_ol_extent_.equals(frameState.extent, this.previousExtent_); !equals(frameState.extent, this.previousExtent_);
if (idle) { if (idle) {
this.dispatchEvent( this.dispatchEvent(
new _ol_MapEvent_(_ol_MapEventType_.MOVEEND, this, frameState)); new _ol_MapEvent_(_ol_MapEventType_.MOVEEND, this, frameState));
_ol_extent_.clone(frameState.extent, this.previousExtent_); clone(frameState.extent, this.previousExtent_);
} }
} }
+5 -5
View File
@@ -6,7 +6,7 @@ import _ol_Tile_ from './Tile.js';
import _ol_TileState_ from './TileState.js'; import _ol_TileState_ from './TileState.js';
import _ol_dom_ from './dom.js'; import _ol_dom_ from './dom.js';
import _ol_events_ from './events.js'; import _ol_events_ from './events.js';
import _ol_extent_ from './extent.js'; import {getHeight, getIntersection, getWidth} from './extent.js';
import _ol_events_EventType_ from './events/EventType.js'; import _ol_events_EventType_ from './events/EventType.js';
import _ol_featureloader_ from './featureloader.js'; import _ol_featureloader_ from './featureloader.js';
@@ -93,14 +93,14 @@ var _ol_VectorImageTile_ = function(tileCoord, state, sourceRevision, format,
var resolution = tileGrid.getResolution(tileCoord[0]); var resolution = tileGrid.getResolution(tileCoord[0]);
var sourceZ = sourceTileGrid.getZForResolution(resolution); var sourceZ = sourceTileGrid.getZForResolution(resolution);
sourceTileGrid.forEachTileCoord(extent, sourceZ, function(sourceTileCoord) { sourceTileGrid.forEachTileCoord(extent, sourceZ, function(sourceTileCoord) {
var sharedExtent = _ol_extent_.getIntersection(extent, var sharedExtent = getIntersection(extent,
sourceTileGrid.getTileCoordExtent(sourceTileCoord)); sourceTileGrid.getTileCoordExtent(sourceTileCoord));
var sourceExtent = sourceTileGrid.getExtent(); var sourceExtent = sourceTileGrid.getExtent();
if (sourceExtent) { if (sourceExtent) {
sharedExtent = _ol_extent_.getIntersection(sharedExtent, sourceExtent); sharedExtent = getIntersection(sharedExtent, sourceExtent);
} }
if (_ol_extent_.getWidth(sharedExtent) / resolution >= 0.5 && if (getWidth(sharedExtent) / resolution >= 0.5 &&
_ol_extent_.getHeight(sharedExtent) / resolution >= 0.5) { getHeight(sharedExtent) / resolution >= 0.5) {
// only include source tile if overlap is at least 1 pixel // only include source tile if overlap is at least 1 pixel
var sourceTileKey = sourceTileCoord.toString(); var sourceTileKey = sourceTileCoord.toString();
var sourceTile = sourceTiles[sourceTileKey]; var sourceTile = sourceTiles[sourceTileKey];
+7 -7
View File
@@ -13,7 +13,7 @@ import _ol_array_ from './array.js';
import _ol_asserts_ from './asserts.js'; import _ol_asserts_ from './asserts.js';
import _ol_coordinate_ from './coordinate.js'; import _ol_coordinate_ from './coordinate.js';
import _ol_easing_ from './easing.js'; import _ol_easing_ from './easing.js';
import _ol_extent_ from './extent.js'; import {getForViewAndSize, getCenter, getHeight, getWidth, isEmpty} from './extent.js';
import _ol_geom_GeometryType_ from './geom/GeometryType.js'; import _ol_geom_GeometryType_ from './geom/GeometryType.js';
import _ol_geom_Polygon_ from './geom/Polygon.js'; import _ol_geom_Polygon_ from './geom/Polygon.js';
import _ol_geom_SimpleGeometry_ from './geom/SimpleGeometry.js'; import _ol_geom_SimpleGeometry_ from './geom/SimpleGeometry.js';
@@ -614,7 +614,7 @@ _ol_View_.prototype.calculateExtent = function(opt_size) {
var rotation = /** @type {!number} */ (this.getRotation()); var rotation = /** @type {!number} */ (this.getRotation());
_ol_asserts_.assert(rotation !== undefined, 3); // The view rotation is not defined _ol_asserts_.assert(rotation !== undefined, 3); // The view rotation is not defined
return _ol_extent_.getForViewAndSize(center, resolution, rotation, size); return getForViewAndSize(center, resolution, rotation, size);
}; };
@@ -722,8 +722,8 @@ _ol_View_.prototype.getResolutions = function() {
*/ */
_ol_View_.prototype.getResolutionForExtent = function(extent, opt_size) { _ol_View_.prototype.getResolutionForExtent = function(extent, opt_size) {
var size = opt_size || this.getSizeFromViewport_(); var size = opt_size || this.getSizeFromViewport_();
var xResolution = _ol_extent_.getWidth(extent) / size[0]; var xResolution = getWidth(extent) / size[0];
var yResolution = _ol_extent_.getHeight(extent) / size[1]; var yResolution = getHeight(extent) / size[1];
return Math.max(xResolution, yResolution); return Math.max(xResolution, yResolution);
}; };
@@ -882,13 +882,13 @@ _ol_View_.prototype.fit = function(geometryOrExtent, opt_options) {
if (!(geometryOrExtent instanceof _ol_geom_SimpleGeometry_)) { if (!(geometryOrExtent instanceof _ol_geom_SimpleGeometry_)) {
_ol_asserts_.assert(Array.isArray(geometryOrExtent), _ol_asserts_.assert(Array.isArray(geometryOrExtent),
24); // Invalid extent or geometry provided as `geometry` 24); // Invalid extent or geometry provided as `geometry`
_ol_asserts_.assert(!_ol_extent_.isEmpty(geometryOrExtent), _ol_asserts_.assert(!isEmpty(geometryOrExtent),
25); // Cannot fit empty extent provided as `geometry` 25); // Cannot fit empty extent provided as `geometry`
geometry = _ol_geom_Polygon_.fromExtent(geometryOrExtent); geometry = _ol_geom_Polygon_.fromExtent(geometryOrExtent);
} else if (geometryOrExtent.getType() === _ol_geom_GeometryType_.CIRCLE) { } else if (geometryOrExtent.getType() === _ol_geom_GeometryType_.CIRCLE) {
geometryOrExtent = geometryOrExtent.getExtent(); geometryOrExtent = geometryOrExtent.getExtent();
geometry = _ol_geom_Polygon_.fromExtent(geometryOrExtent); geometry = _ol_geom_Polygon_.fromExtent(geometryOrExtent);
geometry.rotate(this.getRotation(), _ol_extent_.getCenter(geometryOrExtent)); geometry.rotate(this.getRotation(), getCenter(geometryOrExtent));
} else { } else {
geometry = geometryOrExtent; geometry = geometryOrExtent;
} }
@@ -1135,7 +1135,7 @@ _ol_View_.createResolutionConstraint_ = function(options) {
// use an extent that can fit the whole world if need be // use an extent that can fit the whole world if need be
360 * _ol_proj_.METERS_PER_UNIT[_ol_proj_Units_.DEGREES] / 360 * _ol_proj_.METERS_PER_UNIT[_ol_proj_Units_.DEGREES] /
projection.getMetersPerUnit() : projection.getMetersPerUnit() :
Math.max(_ol_extent_.getWidth(extent), _ol_extent_.getHeight(extent)); Math.max(getWidth(extent), getHeight(extent));
var defaultMaxResolution = size / DEFAULT_TILE_SIZE / Math.pow( var defaultMaxResolution = size / DEFAULT_TILE_SIZE / Math.pow(
defaultZoomFactor, DEFAULT_MIN_ZOOM); defaultZoomFactor, DEFAULT_MIN_ZOOM);
+7 -7
View File
@@ -17,7 +17,7 @@ import _ol_css_ from '../css.js';
import _ol_dom_ from '../dom.js'; import _ol_dom_ from '../dom.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {containsExtent, getBottomLeft, getBottomRight, getTopLeft, getTopRight, scaleFromCenter} from '../extent.js';
/** /**
@@ -341,9 +341,9 @@ _ol_control_OverviewMap_.prototype.validateExtent_ = function() {
var ovextent = ovview.calculateExtent(ovmapSize); var ovextent = ovview.calculateExtent(ovmapSize);
var topLeftPixel = var topLeftPixel =
ovmap.getPixelFromCoordinate(_ol_extent_.getTopLeft(extent)); ovmap.getPixelFromCoordinate(getTopLeft(extent));
var bottomRightPixel = var bottomRightPixel =
ovmap.getPixelFromCoordinate(_ol_extent_.getBottomRight(extent)); ovmap.getPixelFromCoordinate(getBottomRight(extent));
var boxWidth = Math.abs(topLeftPixel[0] - bottomRightPixel[0]); var boxWidth = Math.abs(topLeftPixel[0] - bottomRightPixel[0]);
var boxHeight = Math.abs(topLeftPixel[1] - bottomRightPixel[1]); var boxHeight = Math.abs(topLeftPixel[1] - bottomRightPixel[1]);
@@ -356,7 +356,7 @@ _ol_control_OverviewMap_.prototype.validateExtent_ = function() {
boxWidth > ovmapWidth * MAX_RATIO || boxWidth > ovmapWidth * MAX_RATIO ||
boxHeight > ovmapHeight * MAX_RATIO) { boxHeight > ovmapHeight * MAX_RATIO) {
this.resetExtent_(); this.resetExtent_();
} else if (!_ol_extent_.containsExtent(ovextent, extent)) { } else if (!containsExtent(ovextent, extent)) {
this.recenter_(); this.recenter_();
} }
}; };
@@ -388,7 +388,7 @@ _ol_control_OverviewMap_.prototype.resetExtent_ = function() {
var steps = Math.log( var steps = Math.log(
MAX_RATIO / MIN_RATIO) / Math.LN2; MAX_RATIO / MIN_RATIO) / Math.LN2;
var ratio = 1 / (Math.pow(2, steps / 2) * MIN_RATIO); var ratio = 1 / (Math.pow(2, steps / 2) * MIN_RATIO);
_ol_extent_.scaleFromCenter(extent, ratio); scaleFromCenter(extent, ratio);
ovview.fit(extent); ovview.fit(extent);
}; };
@@ -434,8 +434,8 @@ _ol_control_OverviewMap_.prototype.updateBox_ = function() {
var box = this.boxOverlay_.getElement(); var box = this.boxOverlay_.getElement();
var extent = view.calculateExtent(mapSize); var extent = view.calculateExtent(mapSize);
var ovresolution = ovview.getResolution(); var ovresolution = ovview.getResolution();
var bottomLeft = _ol_extent_.getBottomLeft(extent); var bottomLeft = getBottomLeft(extent);
var topRight = _ol_extent_.getTopRight(extent); var topRight = getTopRight(extent);
// set position using bottom left coordinates // set position using bottom left coordinates
var rotateBottomLeft = this.calculateCoordinateRotate_(rotation, bottomLeft); var rotateBottomLeft = this.calculateCoordinateRotate_(rotation, bottomLeft);
+195 -153
View File
@@ -1,10 +1,9 @@
/** /**
* @module ol/extent * @module ol/extent
*/ */
import _ol_asserts_ from './asserts.js'; import asserts from './asserts.js';
import _ol_extent_Corner_ from './extent/Corner.js'; import Corner from './extent/Corner.js';
import _ol_extent_Relationship_ from './extent/Relationship.js'; import Relationship from './extent/Relationship.js';
var _ol_extent_ = {};
/** /**
@@ -14,13 +13,13 @@ var _ol_extent_ = {};
* @return {ol.Extent} Bounding extent. * @return {ol.Extent} Bounding extent.
* @api * @api
*/ */
_ol_extent_.boundingExtent = function(coordinates) { export function boundingExtent(coordinates) {
var extent = _ol_extent_.createEmpty(); var extent = createEmpty();
for (var i = 0, ii = coordinates.length; i < ii; ++i) { for (var i = 0, ii = coordinates.length; i < ii; ++i) {
_ol_extent_.extendCoordinate(extent, coordinates[i]); extendCoordinate(extent, coordinates[i]);
} }
return extent; return extent;
}; }
/** /**
@@ -30,13 +29,13 @@ _ol_extent_.boundingExtent = function(coordinates) {
* @private * @private
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.boundingExtentXYs_ = function(xs, ys, opt_extent) { function _boundingExtentXYs(xs, ys, opt_extent) {
var minX = Math.min.apply(null, xs); var minX = Math.min.apply(null, xs);
var minY = Math.min.apply(null, ys); var minY = Math.min.apply(null, ys);
var maxX = Math.max.apply(null, xs); var maxX = Math.max.apply(null, xs);
var maxY = Math.max.apply(null, ys); var maxY = Math.max.apply(null, ys);
return _ol_extent_.createOrUpdate(minX, minY, maxX, maxY, opt_extent); return createOrUpdate(minX, minY, maxX, maxY, opt_extent);
}; }
/** /**
@@ -47,7 +46,7 @@ _ol_extent_.boundingExtentXYs_ = function(xs, ys, opt_extent) {
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
* @api * @api
*/ */
_ol_extent_.buffer = function(extent, value, opt_extent) { export function buffer(extent, value, opt_extent) {
if (opt_extent) { if (opt_extent) {
opt_extent[0] = extent[0] - value; opt_extent[0] = extent[0] - value;
opt_extent[1] = extent[1] - value; opt_extent[1] = extent[1] - value;
@@ -62,7 +61,7 @@ _ol_extent_.buffer = function(extent, value, opt_extent) {
extent[3] + value extent[3] + value
]; ];
} }
}; }
/** /**
@@ -72,7 +71,7 @@ _ol_extent_.buffer = function(extent, value, opt_extent) {
* @param {ol.Extent=} opt_extent Extent. * @param {ol.Extent=} opt_extent Extent.
* @return {ol.Extent} The clone. * @return {ol.Extent} The clone.
*/ */
_ol_extent_.clone = function(extent, opt_extent) { export function clone(extent, opt_extent) {
if (opt_extent) { if (opt_extent) {
opt_extent[0] = extent[0]; opt_extent[0] = extent[0];
opt_extent[1] = extent[1]; opt_extent[1] = extent[1];
@@ -82,7 +81,7 @@ _ol_extent_.clone = function(extent, opt_extent) {
} else { } else {
return extent.slice(); return extent.slice();
} }
}; }
/** /**
@@ -91,7 +90,7 @@ _ol_extent_.clone = function(extent, opt_extent) {
* @param {number} y Y. * @param {number} y Y.
* @return {number} Closest squared distance. * @return {number} Closest squared distance.
*/ */
_ol_extent_.closestSquaredDistanceXY = function(extent, x, y) { export function closestSquaredDistanceXY(extent, x, y) {
var dx, dy; var dx, dy;
if (x < extent[0]) { if (x < extent[0]) {
dx = extent[0] - x; dx = extent[0] - x;
@@ -108,7 +107,7 @@ _ol_extent_.closestSquaredDistanceXY = function(extent, x, y) {
dy = 0; dy = 0;
} }
return dx * dx + dy * dy; return dx * dx + dy * dy;
}; }
/** /**
@@ -119,9 +118,9 @@ _ol_extent_.closestSquaredDistanceXY = function(extent, x, y) {
* @return {boolean} The coordinate is contained in the extent. * @return {boolean} The coordinate is contained in the extent.
* @api * @api
*/ */
_ol_extent_.containsCoordinate = function(extent, coordinate) { export function containsCoordinate(extent, coordinate) {
return _ol_extent_.containsXY(extent, coordinate[0], coordinate[1]); return containsXY(extent, coordinate[0], coordinate[1]);
}; }
/** /**
@@ -136,10 +135,10 @@ _ol_extent_.containsCoordinate = function(extent, coordinate) {
* first. * first.
* @api * @api
*/ */
_ol_extent_.containsExtent = function(extent1, extent2) { export function containsExtent(extent1, extent2) {
return extent1[0] <= extent2[0] && extent2[2] <= extent1[2] && return extent1[0] <= extent2[0] && extent2[2] <= extent1[2] &&
extent1[1] <= extent2[1] && extent2[3] <= extent1[3]; extent1[1] <= extent2[1] && extent2[3] <= extent1[3];
}; }
/** /**
@@ -151,9 +150,9 @@ _ol_extent_.containsExtent = function(extent1, extent2) {
* @return {boolean} The x, y values are contained in the extent. * @return {boolean} The x, y values are contained in the extent.
* @api * @api
*/ */
_ol_extent_.containsXY = function(extent, x, y) { export function containsXY(extent, x, y) {
return extent[0] <= x && x <= extent[2] && extent[1] <= y && y <= extent[3]; return extent[0] <= x && x <= extent[2] && extent[1] <= y && y <= extent[3];
}; }
/** /**
@@ -163,29 +162,29 @@ _ol_extent_.containsXY = function(extent, x, y) {
* @return {number} The relationship (bitwise compare with * @return {number} The relationship (bitwise compare with
* ol.extent.Relationship). * ol.extent.Relationship).
*/ */
_ol_extent_.coordinateRelationship = function(extent, coordinate) { export function coordinateRelationship(extent, coordinate) {
var minX = extent[0]; var minX = extent[0];
var minY = extent[1]; var minY = extent[1];
var maxX = extent[2]; var maxX = extent[2];
var maxY = extent[3]; var maxY = extent[3];
var x = coordinate[0]; var x = coordinate[0];
var y = coordinate[1]; var y = coordinate[1];
var relationship = _ol_extent_Relationship_.UNKNOWN; var relationship = Relationship.UNKNOWN;
if (x < minX) { if (x < minX) {
relationship = relationship | _ol_extent_Relationship_.LEFT; relationship = relationship | Relationship.LEFT;
} else if (x > maxX) { } else if (x > maxX) {
relationship = relationship | _ol_extent_Relationship_.RIGHT; relationship = relationship | Relationship.RIGHT;
} }
if (y < minY) { if (y < minY) {
relationship = relationship | _ol_extent_Relationship_.BELOW; relationship = relationship | Relationship.BELOW;
} else if (y > maxY) { } else if (y > maxY) {
relationship = relationship | _ol_extent_Relationship_.ABOVE; relationship = relationship | Relationship.ABOVE;
} }
if (relationship === _ol_extent_Relationship_.UNKNOWN) { if (relationship === Relationship.UNKNOWN) {
relationship = _ol_extent_Relationship_.INTERSECTING; relationship = Relationship.INTERSECTING;
} }
return relationship; return relationship;
}; }
/** /**
@@ -193,9 +192,9 @@ _ol_extent_.coordinateRelationship = function(extent, coordinate) {
* @return {ol.Extent} Empty extent. * @return {ol.Extent} Empty extent.
* @api * @api
*/ */
_ol_extent_.createEmpty = function() { export function createEmpty() {
return [Infinity, Infinity, -Infinity, -Infinity]; return [Infinity, Infinity, -Infinity, -Infinity];
}; }
/** /**
@@ -207,7 +206,7 @@ _ol_extent_.createEmpty = function() {
* @param {ol.Extent=} opt_extent Destination extent. * @param {ol.Extent=} opt_extent Destination extent.
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.createOrUpdate = function(minX, minY, maxX, maxY, opt_extent) { export function createOrUpdate(minX, minY, maxX, maxY, opt_extent) {
if (opt_extent) { if (opt_extent) {
opt_extent[0] = minX; opt_extent[0] = minX;
opt_extent[1] = minY; opt_extent[1] = minY;
@@ -217,7 +216,7 @@ _ol_extent_.createOrUpdate = function(minX, minY, maxX, maxY, opt_extent) {
} else { } else {
return [minX, minY, maxX, maxY]; return [minX, minY, maxX, maxY];
} }
}; }
/** /**
@@ -225,10 +224,10 @@ _ol_extent_.createOrUpdate = function(minX, minY, maxX, maxY, opt_extent) {
* @param {ol.Extent=} opt_extent Extent. * @param {ol.Extent=} opt_extent Extent.
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.createOrUpdateEmpty = function(opt_extent) { export function createOrUpdateEmpty(opt_extent) {
return _ol_extent_.createOrUpdate( return createOrUpdate(
Infinity, Infinity, -Infinity, -Infinity, opt_extent); Infinity, Infinity, -Infinity, -Infinity, opt_extent);
}; }
/** /**
@@ -236,11 +235,11 @@ _ol_extent_.createOrUpdateEmpty = function(opt_extent) {
* @param {ol.Extent=} opt_extent Extent. * @param {ol.Extent=} opt_extent Extent.
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.createOrUpdateFromCoordinate = function(coordinate, opt_extent) { export function createOrUpdateFromCoordinate(coordinate, opt_extent) {
var x = coordinate[0]; var x = coordinate[0];
var y = coordinate[1]; var y = coordinate[1];
return _ol_extent_.createOrUpdate(x, y, x, y, opt_extent); return createOrUpdate(x, y, x, y, opt_extent);
}; }
/** /**
@@ -248,10 +247,10 @@ _ol_extent_.createOrUpdateFromCoordinate = function(coordinate, opt_extent) {
* @param {ol.Extent=} opt_extent Extent. * @param {ol.Extent=} opt_extent Extent.
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.createOrUpdateFromCoordinates = function(coordinates, opt_extent) { export function createOrUpdateFromCoordinates(coordinates, opt_extent) {
var extent = _ol_extent_.createOrUpdateEmpty(opt_extent); var extent = createOrUpdateEmpty(opt_extent);
return _ol_extent_.extendCoordinates(extent, coordinates); return extendCoordinates(extent, coordinates);
}; }
/** /**
@@ -262,22 +261,20 @@ _ol_extent_.createOrUpdateFromCoordinates = function(coordinates, opt_extent) {
* @param {ol.Extent=} opt_extent Extent. * @param {ol.Extent=} opt_extent Extent.
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.createOrUpdateFromFlatCoordinates = function(flatCoordinates, offset, end, stride, opt_extent) { export function createOrUpdateFromFlatCoordinates(flatCoordinates, offset, end, stride, opt_extent) {
var extent = _ol_extent_.createOrUpdateEmpty(opt_extent); var extent = createOrUpdateEmpty(opt_extent);
return _ol_extent_.extendFlatCoordinates( return extendFlatCoordinates(extent, flatCoordinates, offset, end, stride);
extent, flatCoordinates, offset, end, stride); }
};
/** /**
* @param {Array.<Array.<ol.Coordinate>>} rings Rings. * @param {Array.<Array.<ol.Coordinate>>} rings Rings.
* @param {ol.Extent=} opt_extent Extent. * @param {ol.Extent=} opt_extent Extent.
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.createOrUpdateFromRings = function(rings, opt_extent) { export function createOrUpdateFromRings(rings, opt_extent) {
var extent = _ol_extent_.createOrUpdateEmpty(opt_extent); var extent = createOrUpdateEmpty(opt_extent);
return _ol_extent_.extendRings(extent, rings); return extendRings(extent, rings);
}; }
/** /**
@@ -287,10 +284,10 @@ _ol_extent_.createOrUpdateFromRings = function(rings, opt_extent) {
* @return {boolean} The two extents are equivalent. * @return {boolean} The two extents are equivalent.
* @api * @api
*/ */
_ol_extent_.equals = function(extent1, extent2) { export function equals(extent1, extent2) {
return extent1[0] == extent2[0] && extent1[2] == extent2[2] && return extent1[0] == extent2[0] && extent1[2] == extent2[2] &&
extent1[1] == extent2[1] && extent1[3] == extent2[3]; extent1[1] == extent2[1] && extent1[3] == extent2[3];
}; }
/** /**
@@ -300,7 +297,7 @@ _ol_extent_.equals = function(extent1, extent2) {
* @return {ol.Extent} A reference to the first (extended) extent. * @return {ol.Extent} A reference to the first (extended) extent.
* @api * @api
*/ */
_ol_extent_.extend = function(extent1, extent2) { export function extend(extent1, extent2) {
if (extent2[0] < extent1[0]) { if (extent2[0] < extent1[0]) {
extent1[0] = extent2[0]; extent1[0] = extent2[0];
} }
@@ -314,14 +311,14 @@ _ol_extent_.extend = function(extent1, extent2) {
extent1[3] = extent2[3]; extent1[3] = extent2[3];
} }
return extent1; return extent1;
}; }
/** /**
* @param {ol.Extent} extent Extent. * @param {ol.Extent} extent Extent.
* @param {ol.Coordinate} coordinate Coordinate. * @param {ol.Coordinate} coordinate Coordinate.
*/ */
_ol_extent_.extendCoordinate = function(extent, coordinate) { export function extendCoordinate(extent, coordinate) {
if (coordinate[0] < extent[0]) { if (coordinate[0] < extent[0]) {
extent[0] = coordinate[0]; extent[0] = coordinate[0];
} }
@@ -334,7 +331,7 @@ _ol_extent_.extendCoordinate = function(extent, coordinate) {
if (coordinate[1] > extent[3]) { if (coordinate[1] > extent[3]) {
extent[3] = coordinate[1]; extent[3] = coordinate[1];
} }
}; }
/** /**
@@ -342,13 +339,13 @@ _ol_extent_.extendCoordinate = function(extent, coordinate) {
* @param {Array.<ol.Coordinate>} coordinates Coordinates. * @param {Array.<ol.Coordinate>} coordinates Coordinates.
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.extendCoordinates = function(extent, coordinates) { export function extendCoordinates(extent, coordinates) {
var i, ii; var i, ii;
for (i = 0, ii = coordinates.length; i < ii; ++i) { for (i = 0, ii = coordinates.length; i < ii; ++i) {
_ol_extent_.extendCoordinate(extent, coordinates[i]); extendCoordinate(extent, coordinates[i]);
} }
return extent; return extent;
}; }
/** /**
@@ -359,13 +356,12 @@ _ol_extent_.extendCoordinates = function(extent, coordinates) {
* @param {number} stride Stride. * @param {number} stride Stride.
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.extendFlatCoordinates = function(extent, flatCoordinates, offset, end, stride) { export function extendFlatCoordinates(extent, flatCoordinates, offset, end, stride) {
for (; offset < end; offset += stride) { for (; offset < end; offset += stride) {
_ol_extent_.extendXY( extendXY(extent, flatCoordinates[offset], flatCoordinates[offset + 1]);
extent, flatCoordinates[offset], flatCoordinates[offset + 1]);
} }
return extent; return extent;
}; }
/** /**
@@ -373,13 +369,13 @@ _ol_extent_.extendFlatCoordinates = function(extent, flatCoordinates, offset, en
* @param {Array.<Array.<ol.Coordinate>>} rings Rings. * @param {Array.<Array.<ol.Coordinate>>} rings Rings.
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.extendRings = function(extent, rings) { export function extendRings(extent, rings) {
var i, ii; var i, ii;
for (i = 0, ii = rings.length; i < ii; ++i) { for (i = 0, ii = rings.length; i < ii; ++i) {
_ol_extent_.extendCoordinates(extent, rings[i]); extendCoordinates(extent, rings[i]);
} }
return extent; return extent;
}; }
/** /**
@@ -387,12 +383,12 @@ _ol_extent_.extendRings = function(extent, rings) {
* @param {number} x X. * @param {number} x X.
* @param {number} y Y. * @param {number} y Y.
*/ */
_ol_extent_.extendXY = function(extent, x, y) { export function extendXY(extent, x, y) {
extent[0] = Math.min(extent[0], x); extent[0] = Math.min(extent[0], x);
extent[1] = Math.min(extent[1], y); extent[1] = Math.min(extent[1], y);
extent[2] = Math.max(extent[2], x); extent[2] = Math.max(extent[2], x);
extent[3] = Math.max(extent[3], y); extent[3] = Math.max(extent[3], y);
}; }
/** /**
@@ -405,26 +401,26 @@ _ol_extent_.extendXY = function(extent, x, y) {
* @return {S|boolean} Value. * @return {S|boolean} Value.
* @template S, T * @template S, T
*/ */
_ol_extent_.forEachCorner = function(extent, callback, opt_this) { export function forEachCorner(extent, callback, opt_this) {
var val; var val;
val = callback.call(opt_this, _ol_extent_.getBottomLeft(extent)); val = callback.call(opt_this, getBottomLeft(extent));
if (val) { if (val) {
return val; return val;
} }
val = callback.call(opt_this, _ol_extent_.getBottomRight(extent)); val = callback.call(opt_this, getBottomRight(extent));
if (val) { if (val) {
return val; return val;
} }
val = callback.call(opt_this, _ol_extent_.getTopRight(extent)); val = callback.call(opt_this, getTopRight(extent));
if (val) { if (val) {
return val; return val;
} }
val = callback.call(opt_this, _ol_extent_.getTopLeft(extent)); val = callback.call(opt_this, getTopLeft(extent));
if (val) { if (val) {
return val; return val;
} }
return false; return false;
}; }
/** /**
@@ -433,13 +429,13 @@ _ol_extent_.forEachCorner = function(extent, callback, opt_this) {
* @return {number} Area. * @return {number} Area.
* @api * @api
*/ */
_ol_extent_.getArea = function(extent) { export function getArea(extent) {
var area = 0; var area = 0;
if (!_ol_extent_.isEmpty(extent)) { if (!isEmpty(extent)) {
area = _ol_extent_.getWidth(extent) * _ol_extent_.getHeight(extent); area = getWidth(extent) * getHeight(extent);
} }
return area; return area;
}; }
/** /**
@@ -448,9 +444,9 @@ _ol_extent_.getArea = function(extent) {
* @return {ol.Coordinate} Bottom left coordinate. * @return {ol.Coordinate} Bottom left coordinate.
* @api * @api
*/ */
_ol_extent_.getBottomLeft = function(extent) { export function getBottomLeft(extent) {
return [extent[0], extent[1]]; return [extent[0], extent[1]];
}; }
/** /**
@@ -459,9 +455,9 @@ _ol_extent_.getBottomLeft = function(extent) {
* @return {ol.Coordinate} Bottom right coordinate. * @return {ol.Coordinate} Bottom right coordinate.
* @api * @api
*/ */
_ol_extent_.getBottomRight = function(extent) { export function getBottomRight(extent) {
return [extent[2], extent[1]]; return [extent[2], extent[1]];
}; }
/** /**
@@ -470,9 +466,9 @@ _ol_extent_.getBottomRight = function(extent) {
* @return {ol.Coordinate} Center. * @return {ol.Coordinate} Center.
* @api * @api
*/ */
_ol_extent_.getCenter = function(extent) { export function getCenter(extent) {
return [(extent[0] + extent[2]) / 2, (extent[1] + extent[3]) / 2]; return [(extent[0] + extent[2]) / 2, (extent[1] + extent[3]) / 2];
}; }
/** /**
@@ -481,21 +477,21 @@ _ol_extent_.getCenter = function(extent) {
* @param {ol.extent.Corner} corner Corner. * @param {ol.extent.Corner} corner Corner.
* @return {ol.Coordinate} Corner coordinate. * @return {ol.Coordinate} Corner coordinate.
*/ */
_ol_extent_.getCorner = function(extent, corner) { export function getCorner(extent, corner) {
var coordinate; var coordinate;
if (corner === _ol_extent_Corner_.BOTTOM_LEFT) { if (corner === Corner.BOTTOM_LEFT) {
coordinate = _ol_extent_.getBottomLeft(extent); coordinate = getBottomLeft(extent);
} else if (corner === _ol_extent_Corner_.BOTTOM_RIGHT) { } else if (corner === Corner.BOTTOM_RIGHT) {
coordinate = _ol_extent_.getBottomRight(extent); coordinate = getBottomRight(extent);
} else if (corner === _ol_extent_Corner_.TOP_LEFT) { } else if (corner === Corner.TOP_LEFT) {
coordinate = _ol_extent_.getTopLeft(extent); coordinate = getTopLeft(extent);
} else if (corner === _ol_extent_Corner_.TOP_RIGHT) { } else if (corner === Corner.TOP_RIGHT) {
coordinate = _ol_extent_.getTopRight(extent); coordinate = getTopRight(extent);
} else { } else {
_ol_asserts_.assert(false, 13); // Invalid corner asserts.assert(false, 13); // Invalid corner
} }
return /** @type {!ol.Coordinate} */ (coordinate); return /** @type {!ol.Coordinate} */ (coordinate);
}; }
/** /**
@@ -503,13 +499,13 @@ _ol_extent_.getCorner = function(extent, corner) {
* @param {ol.Extent} extent2 Extent 2. * @param {ol.Extent} extent2 Extent 2.
* @return {number} Enlarged area. * @return {number} Enlarged area.
*/ */
_ol_extent_.getEnlargedArea = function(extent1, extent2) { export function getEnlargedArea(extent1, extent2) {
var minX = Math.min(extent1[0], extent2[0]); var minX = Math.min(extent1[0], extent2[0]);
var minY = Math.min(extent1[1], extent2[1]); var minY = Math.min(extent1[1], extent2[1]);
var maxX = Math.max(extent1[2], extent2[2]); var maxX = Math.max(extent1[2], extent2[2]);
var maxY = Math.max(extent1[3], extent2[3]); var maxY = Math.max(extent1[3], extent2[3]);
return (maxX - minX) * (maxY - minY); return (maxX - minX) * (maxY - minY);
}; }
/** /**
@@ -520,7 +516,7 @@ _ol_extent_.getEnlargedArea = function(extent1, extent2) {
* @param {ol.Extent=} opt_extent Destination extent. * @param {ol.Extent=} opt_extent Destination extent.
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.getForViewAndSize = function(center, resolution, rotation, size, opt_extent) { export function getForViewAndSize(center, resolution, rotation, size, opt_extent) {
var dx = resolution * size[0] / 2; var dx = resolution * size[0] / 2;
var dy = resolution * size[1] / 2; var dy = resolution * size[1] / 2;
var cosRotation = Math.cos(rotation); var cosRotation = Math.cos(rotation);
@@ -539,11 +535,11 @@ _ol_extent_.getForViewAndSize = function(center, resolution, rotation, size, opt
var y1 = y - xSin + yCos; var y1 = y - xSin + yCos;
var y2 = y + xSin + yCos; var y2 = y + xSin + yCos;
var y3 = y + xSin - yCos; var y3 = y + xSin - yCos;
return _ol_extent_.createOrUpdate( return createOrUpdate(
Math.min(x0, x1, x2, x3), Math.min(y0, y1, y2, y3), Math.min(x0, x1, x2, x3), Math.min(y0, y1, y2, y3),
Math.max(x0, x1, x2, x3), Math.max(y0, y1, y2, y3), Math.max(x0, x1, x2, x3), Math.max(y0, y1, y2, y3),
opt_extent); opt_extent);
}; }
/** /**
@@ -552,9 +548,9 @@ _ol_extent_.getForViewAndSize = function(center, resolution, rotation, size, opt
* @return {number} Height. * @return {number} Height.
* @api * @api
*/ */
_ol_extent_.getHeight = function(extent) { export function getHeight(extent) {
return extent[3] - extent[1]; return extent[3] - extent[1];
}; }
/** /**
@@ -562,10 +558,10 @@ _ol_extent_.getHeight = function(extent) {
* @param {ol.Extent} extent2 Extent 2. * @param {ol.Extent} extent2 Extent 2.
* @return {number} Intersection area. * @return {number} Intersection area.
*/ */
_ol_extent_.getIntersectionArea = function(extent1, extent2) { export function getIntersectionArea(extent1, extent2) {
var intersection = _ol_extent_.getIntersection(extent1, extent2); var intersection = getIntersection(extent1, extent2);
return _ol_extent_.getArea(intersection); return getArea(intersection);
}; }
/** /**
@@ -576,9 +572,9 @@ _ol_extent_.getIntersectionArea = function(extent1, extent2) {
* @return {ol.Extent} Intersecting extent. * @return {ol.Extent} Intersecting extent.
* @api * @api
*/ */
_ol_extent_.getIntersection = function(extent1, extent2, opt_extent) { export function getIntersection(extent1, extent2, opt_extent) {
var intersection = opt_extent ? opt_extent : _ol_extent_.createEmpty(); var intersection = opt_extent ? opt_extent : createEmpty();
if (_ol_extent_.intersects(extent1, extent2)) { if (intersects(extent1, extent2)) {
if (extent1[0] > extent2[0]) { if (extent1[0] > extent2[0]) {
intersection[0] = extent1[0]; intersection[0] = extent1[0];
} else { } else {
@@ -601,16 +597,16 @@ _ol_extent_.getIntersection = function(extent1, extent2, opt_extent) {
} }
} }
return intersection; return intersection;
}; }
/** /**
* @param {ol.Extent} extent Extent. * @param {ol.Extent} extent Extent.
* @return {number} Margin. * @return {number} Margin.
*/ */
_ol_extent_.getMargin = function(extent) { export function getMargin(extent) {
return _ol_extent_.getWidth(extent) + _ol_extent_.getHeight(extent); return getWidth(extent) + getHeight(extent);
}; }
/** /**
@@ -619,9 +615,9 @@ _ol_extent_.getMargin = function(extent) {
* @return {ol.Size} The extent size. * @return {ol.Size} The extent size.
* @api * @api
*/ */
_ol_extent_.getSize = function(extent) { export function getSize(extent) {
return [extent[2] - extent[0], extent[3] - extent[1]]; return [extent[2] - extent[0], extent[3] - extent[1]];
}; }
/** /**
@@ -630,9 +626,9 @@ _ol_extent_.getSize = function(extent) {
* @return {ol.Coordinate} Top left coordinate. * @return {ol.Coordinate} Top left coordinate.
* @api * @api
*/ */
_ol_extent_.getTopLeft = function(extent) { export function getTopLeft(extent) {
return [extent[0], extent[3]]; return [extent[0], extent[3]];
}; }
/** /**
@@ -641,9 +637,9 @@ _ol_extent_.getTopLeft = function(extent) {
* @return {ol.Coordinate} Top right coordinate. * @return {ol.Coordinate} Top right coordinate.
* @api * @api
*/ */
_ol_extent_.getTopRight = function(extent) { export function getTopRight(extent) {
return [extent[2], extent[3]]; return [extent[2], extent[3]];
}; }
/** /**
@@ -652,9 +648,9 @@ _ol_extent_.getTopRight = function(extent) {
* @return {number} Width. * @return {number} Width.
* @api * @api
*/ */
_ol_extent_.getWidth = function(extent) { export function getWidth(extent) {
return extent[2] - extent[0]; return extent[2] - extent[0];
}; }
/** /**
@@ -664,12 +660,12 @@ _ol_extent_.getWidth = function(extent) {
* @return {boolean} The two extents intersect. * @return {boolean} The two extents intersect.
* @api * @api
*/ */
_ol_extent_.intersects = function(extent1, extent2) { export function intersects(extent1, extent2) {
return extent1[0] <= extent2[2] && return extent1[0] <= extent2[2] &&
extent1[2] >= extent2[0] && extent1[2] >= extent2[0] &&
extent1[1] <= extent2[3] && extent1[1] <= extent2[3] &&
extent1[3] >= extent2[1]; extent1[3] >= extent2[1];
}; }
/** /**
@@ -678,9 +674,9 @@ _ol_extent_.intersects = function(extent1, extent2) {
* @return {boolean} Is empty. * @return {boolean} Is empty.
* @api * @api
*/ */
_ol_extent_.isEmpty = function(extent) { export function isEmpty(extent) {
return extent[2] < extent[0] || extent[3] < extent[1]; return extent[2] < extent[0] || extent[3] < extent[1];
}; }
/** /**
@@ -688,7 +684,7 @@ _ol_extent_.isEmpty = function(extent) {
* @param {ol.Extent=} opt_extent Extent. * @param {ol.Extent=} opt_extent Extent.
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
*/ */
_ol_extent_.returnOrUpdate = function(extent, opt_extent) { export function returnOrUpdate(extent, opt_extent) {
if (opt_extent) { if (opt_extent) {
opt_extent[0] = extent[0]; opt_extent[0] = extent[0];
opt_extent[1] = extent[1]; opt_extent[1] = extent[1];
@@ -698,21 +694,21 @@ _ol_extent_.returnOrUpdate = function(extent, opt_extent) {
} else { } else {
return extent; return extent;
} }
}; }
/** /**
* @param {ol.Extent} extent Extent. * @param {ol.Extent} extent Extent.
* @param {number} value Value. * @param {number} value Value.
*/ */
_ol_extent_.scaleFromCenter = function(extent, value) { export function scaleFromCenter(extent, value) {
var deltaX = ((extent[2] - extent[0]) / 2) * (value - 1); var deltaX = ((extent[2] - extent[0]) / 2) * (value - 1);
var deltaY = ((extent[3] - extent[1]) / 2) * (value - 1); var deltaY = ((extent[3] - extent[1]) / 2) * (value - 1);
extent[0] -= deltaX; extent[0] -= deltaX;
extent[2] += deltaX; extent[2] += deltaX;
extent[1] -= deltaY; extent[1] -= deltaY;
extent[3] += deltaY; extent[3] += deltaY;
}; }
/** /**
@@ -723,12 +719,12 @@ _ol_extent_.scaleFromCenter = function(extent, value) {
* @param {ol.Coordinate} end Segment end coordinate. * @param {ol.Coordinate} end Segment end coordinate.
* @return {boolean} The segment intersects the extent. * @return {boolean} The segment intersects the extent.
*/ */
_ol_extent_.intersectsSegment = function(extent, start, end) { export function intersectsSegment(extent, start, end) {
var intersects = false; var intersects = false;
var startRel = _ol_extent_.coordinateRelationship(extent, start); var startRel = coordinateRelationship(extent, start);
var endRel = _ol_extent_.coordinateRelationship(extent, end); var endRel = coordinateRelationship(extent, end);
if (startRel === _ol_extent_Relationship_.INTERSECTING || if (startRel === Relationship.INTERSECTING ||
endRel === _ol_extent_Relationship_.INTERSECTING) { endRel === Relationship.INTERSECTING) {
intersects = true; intersects = true;
} else { } else {
var minX = extent[0]; var minX = extent[0];
@@ -741,26 +737,26 @@ _ol_extent_.intersectsSegment = function(extent, start, end) {
var endY = end[1]; var endY = end[1];
var slope = (endY - startY) / (endX - startX); var slope = (endY - startY) / (endX - startX);
var x, y; var x, y;
if (!!(endRel & _ol_extent_Relationship_.ABOVE) && if (!!(endRel & Relationship.ABOVE) &&
!(startRel & _ol_extent_Relationship_.ABOVE)) { !(startRel & Relationship.ABOVE)) {
// potentially intersects top // potentially intersects top
x = endX - ((endY - maxY) / slope); x = endX - ((endY - maxY) / slope);
intersects = x >= minX && x <= maxX; intersects = x >= minX && x <= maxX;
} }
if (!intersects && !!(endRel & _ol_extent_Relationship_.RIGHT) && if (!intersects && !!(endRel & Relationship.RIGHT) &&
!(startRel & _ol_extent_Relationship_.RIGHT)) { !(startRel & Relationship.RIGHT)) {
// potentially intersects right // potentially intersects right
y = endY - ((endX - maxX) * slope); y = endY - ((endX - maxX) * slope);
intersects = y >= minY && y <= maxY; intersects = y >= minY && y <= maxY;
} }
if (!intersects && !!(endRel & _ol_extent_Relationship_.BELOW) && if (!intersects && !!(endRel & Relationship.BELOW) &&
!(startRel & _ol_extent_Relationship_.BELOW)) { !(startRel & Relationship.BELOW)) {
// potentially intersects bottom // potentially intersects bottom
x = endX - ((endY - minY) / slope); x = endX - ((endY - minY) / slope);
intersects = x >= minX && x <= maxX; intersects = x >= minX && x <= maxX;
} }
if (!intersects && !!(endRel & _ol_extent_Relationship_.LEFT) && if (!intersects && !!(endRel & Relationship.LEFT) &&
!(startRel & _ol_extent_Relationship_.LEFT)) { !(startRel & Relationship.LEFT)) {
// potentially intersects left // potentially intersects left
y = endY - ((endX - minX) * slope); y = endY - ((endX - minX) * slope);
intersects = y >= minY && y <= maxY; intersects = y >= minY && y <= maxY;
@@ -768,7 +764,7 @@ _ol_extent_.intersectsSegment = function(extent, start, end) {
} }
return intersects; return intersects;
}; }
/** /**
@@ -780,7 +776,7 @@ _ol_extent_.intersectsSegment = function(extent, start, end) {
* @return {ol.Extent} Extent. * @return {ol.Extent} Extent.
* @api * @api
*/ */
_ol_extent_.applyTransform = function(extent, transformFn, opt_extent) { export function applyTransform(extent, transformFn, opt_extent) {
var coordinates = [ var coordinates = [
extent[0], extent[1], extent[0], extent[1],
extent[0], extent[3], extent[0], extent[3],
@@ -790,6 +786,52 @@ _ol_extent_.applyTransform = function(extent, transformFn, opt_extent) {
transformFn(coordinates, coordinates, 2); transformFn(coordinates, coordinates, 2);
var xs = [coordinates[0], coordinates[2], coordinates[4], coordinates[6]]; var xs = [coordinates[0], coordinates[2], coordinates[4], coordinates[6]];
var ys = [coordinates[1], coordinates[3], coordinates[5], coordinates[7]]; var ys = [coordinates[1], coordinates[3], coordinates[5], coordinates[7]];
return _ol_extent_.boundingExtentXYs_(xs, ys, opt_extent); return _boundingExtentXYs(xs, ys, opt_extent);
}
export default {
boundingExtent: boundingExtent,
buffer: buffer,
clone: clone,
closestSquaredDistanceXY: closestSquaredDistanceXY,
containsCoordinate: containsCoordinate,
containsExtent: containsExtent,
containsXY: containsXY,
coordinateRelationship: coordinateRelationship,
createEmpty: createEmpty,
createOrUpdate: createOrUpdate,
createOrUpdateEmpty: createOrUpdateEmpty,
createOrUpdateFromCoordinate: createOrUpdateFromCoordinate,
createOrUpdateFromCoordinates: createOrUpdateFromCoordinates,
createOrUpdateFromFlatCoordinates: createOrUpdateFromFlatCoordinates,
createOrUpdateFromRings: createOrUpdateFromRings,
equals: equals,
extend: extend,
extendCoordinate: extendCoordinate,
extendCoordinates: extendCoordinates,
extendFlatCoordinates: extendFlatCoordinates,
extendRings: extendRings,
extendXY: extendXY,
forEachCorner: forEachCorner,
getArea: getArea,
getBottomLeft: getBottomLeft,
getBottomRight: getBottomRight,
getCenter: getCenter,
getCorner: getCorner,
getEnlargedArea: getEnlargedArea,
getForViewAndSize: getForViewAndSize,
getHeight: getHeight,
getIntersectionArea: getIntersectionArea,
getIntersection: getIntersection,
getMargin: getMargin,
getSize: getSize,
getTopLeft: getTopLeft,
getTopRight: getTopRight,
getWidth: getWidth,
intersects: intersects,
isEmpty: isEmpty,
returnOrUpdate: returnOrUpdate,
scaleFromCenter: scaleFromCenter,
intersectsSegment: intersectsSegment,
applyTransform: applyTransform
}; };
export default _ol_extent_;
+1 -3
View File
@@ -5,11 +5,9 @@
* Extent corner. * Extent corner.
* @enum {string} * @enum {string}
*/ */
var _ol_extent_Corner_ = { export default {
BOTTOM_LEFT: 'bottom-left', BOTTOM_LEFT: 'bottom-left',
BOTTOM_RIGHT: 'bottom-right', BOTTOM_RIGHT: 'bottom-right',
TOP_LEFT: 'top-left', TOP_LEFT: 'top-left',
TOP_RIGHT: 'top-right' TOP_RIGHT: 'top-right'
}; };
export default _ol_extent_Corner_;
+1 -3
View File
@@ -5,7 +5,7 @@
* Relationship to an extent. * Relationship to an extent.
* @enum {number} * @enum {number}
*/ */
var _ol_extent_Relationship_ = { export default {
UNKNOWN: 0, UNKNOWN: 0,
INTERSECTING: 1, INTERSECTING: 1,
ABOVE: 2, ABOVE: 2,
@@ -13,5 +13,3 @@ var _ol_extent_Relationship_ = {
BELOW: 8, BELOW: 8,
LEFT: 16 LEFT: 16
}; };
export default _ol_extent_Relationship_;
+2 -2
View File
@@ -4,7 +4,7 @@
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_Feature_ from '../Feature.js'; import _ol_Feature_ from '../Feature.js';
import _ol_asserts_ from '../asserts.js'; import _ol_asserts_ from '../asserts.js';
import _ol_extent_ from '../extent.js'; import {containsExtent} from '../extent.js';
import _ol_format_Feature_ from '../format/Feature.js'; import _ol_format_Feature_ from '../format/Feature.js';
import _ol_format_JSONFeature_ from '../format/JSONFeature.js'; import _ol_format_JSONFeature_ from '../format/JSONFeature.js';
import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js'; import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js';
@@ -123,7 +123,7 @@ _ol_format_EsriJSON_.convertRings_ = function(rings, layout) {
// loop over all outer rings and see if they contain our hole. // loop over all outer rings and see if they contain our hole.
for (i = outerRings.length - 1; i >= 0; i--) { for (i = outerRings.length - 1; i >= 0; i--) {
var outerRing = outerRings[i][0]; var outerRing = outerRings[i][0];
var containsHole = _ol_extent_.containsExtent( var containsHole = containsExtent(
new _ol_geom_LinearRing_(outerRing).getExtent(), new _ol_geom_LinearRing_(outerRing).getExtent(),
new _ol_geom_LinearRing_(hole).getExtent() new _ol_geom_LinearRing_(hole).getExtent()
); );
+2 -2
View File
@@ -2,7 +2,7 @@
* @module ol/format/GML2 * @module ol/format/GML2
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_extent_ from '../extent.js'; import {createOrUpdate} from '../extent.js';
import _ol_format_Feature_ from '../format/Feature.js'; import _ol_format_Feature_ from '../format/Feature.js';
import _ol_format_GMLBase_ from '../format/GMLBase.js'; import _ol_format_GMLBase_ from '../format/GMLBase.js';
import _ol_format_XSD_ from '../format/XSD.js'; import _ol_format_XSD_ from '../format/XSD.js';
@@ -96,7 +96,7 @@ _ol_format_GML2_.prototype.readBox_ = function(node, objectStack) {
/** @type {Array.<number>} */ /** @type {Array.<number>} */
var flatCoordinates = _ol_xml_.pushParseAndPop([null], var flatCoordinates = _ol_xml_.pushParseAndPop([null],
this.BOX_PARSERS_, node, objectStack, this); this.BOX_PARSERS_, node, objectStack, this);
return _ol_extent_.createOrUpdate(flatCoordinates[1][0], return createOrUpdate(flatCoordinates[1][0],
flatCoordinates[1][1], flatCoordinates[1][3], flatCoordinates[1][1], flatCoordinates[1][3],
flatCoordinates[1][4]); flatCoordinates[1][4]);
}; };
+2 -2
View File
@@ -3,7 +3,7 @@
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_array_ from '../array.js'; import _ol_array_ from '../array.js';
import _ol_extent_ from '../extent.js'; import {createOrUpdate} from '../extent.js';
import _ol_format_Feature_ from '../format/Feature.js'; import _ol_format_Feature_ from '../format/Feature.js';
import _ol_format_GMLBase_ from '../format/GMLBase.js'; import _ol_format_GMLBase_ from '../format/GMLBase.js';
import _ol_format_XSD_ from '../format/XSD.js'; import _ol_format_XSD_ from '../format/XSD.js';
@@ -291,7 +291,7 @@ _ol_format_GML3_.prototype.readEnvelope_ = function(node, objectStack) {
/** @type {Array.<number>} */ /** @type {Array.<number>} */
var flatCoordinates = _ol_xml_.pushParseAndPop([null], var flatCoordinates = _ol_xml_.pushParseAndPop([null],
this.ENVELOPE_PARSERS_, node, objectStack, this); this.ENVELOPE_PARSERS_, node, objectStack, this);
return _ol_extent_.createOrUpdate(flatCoordinates[1][0], return createOrUpdate(flatCoordinates[1][0],
flatCoordinates[1][1], flatCoordinates[2][0], flatCoordinates[1][1], flatCoordinates[2][0],
flatCoordinates[2][1]); flatCoordinates[2][1]);
}; };
+2 -2
View File
@@ -2,7 +2,7 @@
* @module ol/format/WMTSCapabilities * @module ol/format/WMTSCapabilities
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_extent_ from '../extent.js'; import {boundingExtent} from '../extent.js';
import _ol_format_OWS_ from '../format/OWS.js'; import _ol_format_OWS_ from '../format/OWS.js';
import _ol_format_XLink_ from '../format/XLink.js'; import _ol_format_XLink_ from '../format/XLink.js';
import _ol_format_XML_ from '../format/XML.js'; import _ol_format_XML_ from '../format/XML.js';
@@ -186,7 +186,7 @@ _ol_format_WMTSCapabilities_.readWgs84BoundingBox_ = function(node, objectStack)
if (coordinates.length != 2) { if (coordinates.length != 2) {
return undefined; return undefined;
} }
return _ol_extent_.boundingExtent(coordinates); return boundingExtent(coordinates);
}; };
+4 -4
View File
@@ -2,7 +2,7 @@
* @module ol/geom/Circle * @module ol/geom/Circle
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_extent_ from '../extent.js'; import {createOrUpdate, forEachCorner, intersects} from '../extent.js';
import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js'; import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_SimpleGeometry_ from '../geom/SimpleGeometry.js'; import _ol_geom_SimpleGeometry_ from '../geom/SimpleGeometry.js';
@@ -98,7 +98,7 @@ _ol_geom_Circle_.prototype.getCenter = function() {
_ol_geom_Circle_.prototype.computeExtent = function(extent) { _ol_geom_Circle_.prototype.computeExtent = function(extent) {
var flatCoordinates = this.flatCoordinates; var flatCoordinates = this.flatCoordinates;
var radius = flatCoordinates[this.stride] - flatCoordinates[0]; var radius = flatCoordinates[this.stride] - flatCoordinates[0];
return _ol_extent_.createOrUpdate( return createOrUpdate(
flatCoordinates[0] - radius, flatCoordinates[1] - radius, flatCoordinates[0] - radius, flatCoordinates[1] - radius,
flatCoordinates[0] + radius, flatCoordinates[1] + radius, flatCoordinates[0] + radius, flatCoordinates[1] + radius,
extent); extent);
@@ -141,7 +141,7 @@ _ol_geom_Circle_.prototype.getType = function() {
*/ */
_ol_geom_Circle_.prototype.intersectsExtent = function(extent) { _ol_geom_Circle_.prototype.intersectsExtent = function(extent) {
var circleExtent = this.getExtent(); var circleExtent = this.getExtent();
if (_ol_extent_.intersects(extent, circleExtent)) { if (intersects(extent, circleExtent)) {
var center = this.getCenter(); var center = this.getCenter();
if (extent[0] <= center[0] && extent[2] >= center[0]) { if (extent[0] <= center[0] && extent[2] >= center[0]) {
@@ -151,7 +151,7 @@ _ol_geom_Circle_.prototype.intersectsExtent = function(extent) {
return true; return true;
} }
return _ol_extent_.forEachCorner(extent, this.intersectsCoordinate, this); return forEachCorner(extent, this.intersectsCoordinate, this);
} }
return false; return false;
+4 -4
View File
@@ -3,7 +3,7 @@
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_Object_ from '../Object.js'; import _ol_Object_ from '../Object.js';
import _ol_extent_ from '../extent.js'; import {createEmpty, getHeight, returnOrUpdate} from '../extent.js';
import _ol_functions_ from '../functions.js'; import _ol_functions_ from '../functions.js';
import _ol_geom_flat_transform_ from '../geom/flat/transform.js'; import _ol_geom_flat_transform_ from '../geom/flat/transform.js';
import _ol_proj_ from '../proj.js'; import _ol_proj_ from '../proj.js';
@@ -32,7 +32,7 @@ var _ol_geom_Geometry_ = function() {
* @private * @private
* @type {ol.Extent} * @type {ol.Extent}
*/ */
this.extent_ = _ol_extent_.createEmpty(); this.extent_ = createEmpty();
/** /**
* @private * @private
@@ -143,7 +143,7 @@ _ol_geom_Geometry_.prototype.getExtent = function(opt_extent) {
this.extent_ = this.computeExtent(this.extent_); this.extent_ = this.computeExtent(this.extent_);
this.extentRevision_ = this.getRevision(); this.extentRevision_ = this.getRevision();
} }
return _ol_extent_.returnOrUpdate(this.extent_, opt_extent); return returnOrUpdate(this.extent_, opt_extent);
}; };
@@ -260,7 +260,7 @@ _ol_geom_Geometry_.prototype.transform = function(source, destination) {
function(inCoordinates, outCoordinates, stride) { function(inCoordinates, outCoordinates, stride) {
var pixelExtent = source.getExtent(); var pixelExtent = source.getExtent();
var projectedExtent = source.getWorldExtent(); var projectedExtent = source.getWorldExtent();
var scale = _ol_extent_.getHeight(projectedExtent) / _ol_extent_.getHeight(pixelExtent); var scale = getHeight(projectedExtent) / getHeight(pixelExtent);
_ol_transform_.compose(tmpTransform, _ol_transform_.compose(tmpTransform,
projectedExtent[0], projectedExtent[3], projectedExtent[0], projectedExtent[3],
scale, -scale, 0, scale, -scale, 0,
+5 -6
View File
@@ -4,7 +4,7 @@
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {createOrUpdateEmpty, closestSquaredDistanceXY, extend, getCenter} from '../extent.js';
import _ol_geom_Geometry_ from '../geom/Geometry.js'; import _ol_geom_Geometry_ from '../geom/Geometry.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_obj_ from '../obj.js'; import _ol_obj_ from '../obj.js';
@@ -98,8 +98,7 @@ _ol_geom_GeometryCollection_.prototype.clone = function() {
* @inheritDoc * @inheritDoc
*/ */
_ol_geom_GeometryCollection_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) { _ol_geom_GeometryCollection_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) {
if (minSquaredDistance < if (minSquaredDistance < closestSquaredDistanceXY(this.getExtent(), x, y)) {
_ol_extent_.closestSquaredDistanceXY(this.getExtent(), x, y)) {
return minSquaredDistance; return minSquaredDistance;
} }
var geometries = this.geometries_; var geometries = this.geometries_;
@@ -131,10 +130,10 @@ _ol_geom_GeometryCollection_.prototype.containsXY = function(x, y) {
* @inheritDoc * @inheritDoc
*/ */
_ol_geom_GeometryCollection_.prototype.computeExtent = function(extent) { _ol_geom_GeometryCollection_.prototype.computeExtent = function(extent) {
_ol_extent_.createOrUpdateEmpty(extent); createOrUpdateEmpty(extent);
var geometries = this.geometries_; var geometries = this.geometries_;
for (var i = 0, ii = geometries.length; i < ii; ++i) { for (var i = 0, ii = geometries.length; i < ii; ++i) {
_ol_extent_.extend(extent, geometries[i].getExtent()); extend(extent, geometries[i].getExtent());
} }
return extent; return extent;
}; };
@@ -254,7 +253,7 @@ _ol_geom_GeometryCollection_.prototype.rotate = function(angle, anchor) {
_ol_geom_GeometryCollection_.prototype.scale = function(sx, opt_sy, opt_anchor) { _ol_geom_GeometryCollection_.prototype.scale = function(sx, opt_sy, opt_anchor) {
var anchor = opt_anchor; var anchor = opt_anchor;
if (!anchor) { if (!anchor) {
anchor = _ol_extent_.getCenter(this.getExtent()); anchor = getCenter(this.getExtent());
} }
var geometries = this.geometries_; var geometries = this.geometries_;
for (var i = 0, ii = geometries.length; i < ii; ++i) { for (var i = 0, ii = geometries.length; i < ii; ++i) {
+2 -3
View File
@@ -3,7 +3,7 @@
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_array_ from '../array.js'; import _ol_array_ from '../array.js';
import _ol_extent_ from '../extent.js'; import {closestSquaredDistanceXY} from '../extent.js';
import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js'; import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_SimpleGeometry_ from '../geom/SimpleGeometry.js'; import _ol_geom_SimpleGeometry_ from '../geom/SimpleGeometry.js';
@@ -93,8 +93,7 @@ _ol_geom_LineString_.prototype.clone = function() {
* @inheritDoc * @inheritDoc
*/ */
_ol_geom_LineString_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) { _ol_geom_LineString_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) {
if (minSquaredDistance < if (minSquaredDistance < closestSquaredDistanceXY(this.getExtent(), x, y)) {
_ol_extent_.closestSquaredDistanceXY(this.getExtent(), x, y)) {
return minSquaredDistance; return minSquaredDistance;
} }
if (this.maxDeltaRevision_ != this.getRevision()) { if (this.maxDeltaRevision_ != this.getRevision()) {
+2 -3
View File
@@ -2,7 +2,7 @@
* @module ol/geom/LinearRing * @module ol/geom/LinearRing
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_extent_ from '../extent.js'; import {closestSquaredDistanceXY} from '../extent.js';
import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js'; import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_SimpleGeometry_ from '../geom/SimpleGeometry.js'; import _ol_geom_SimpleGeometry_ from '../geom/SimpleGeometry.js';
@@ -63,8 +63,7 @@ _ol_geom_LinearRing_.prototype.clone = function() {
* @inheritDoc * @inheritDoc
*/ */
_ol_geom_LinearRing_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) { _ol_geom_LinearRing_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) {
if (minSquaredDistance < if (minSquaredDistance < closestSquaredDistanceXY(this.getExtent(), x, y)) {
_ol_extent_.closestSquaredDistanceXY(this.getExtent(), x, y)) {
return minSquaredDistance; return minSquaredDistance;
} }
if (this.maxDeltaRevision_ != this.getRevision()) { if (this.maxDeltaRevision_ != this.getRevision()) {
+2 -3
View File
@@ -3,7 +3,7 @@
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_array_ from '../array.js'; import _ol_array_ from '../array.js';
import _ol_extent_ from '../extent.js'; import {closestSquaredDistanceXY} from '../extent.js';
import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js'; import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_LineString_ from '../geom/LineString.js'; import _ol_geom_LineString_ from '../geom/LineString.js';
@@ -89,8 +89,7 @@ _ol_geom_MultiLineString_.prototype.clone = function() {
* @inheritDoc * @inheritDoc
*/ */
_ol_geom_MultiLineString_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) { _ol_geom_MultiLineString_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) {
if (minSquaredDistance < if (minSquaredDistance < closestSquaredDistanceXY(this.getExtent(), x, y)) {
_ol_extent_.closestSquaredDistanceXY(this.getExtent(), x, y)) {
return minSquaredDistance; return minSquaredDistance;
} }
if (this.maxDeltaRevision_ != this.getRevision()) { if (this.maxDeltaRevision_ != this.getRevision()) {
+3 -4
View File
@@ -3,7 +3,7 @@
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_array_ from '../array.js'; import _ol_array_ from '../array.js';
import _ol_extent_ from '../extent.js'; import {closestSquaredDistanceXY, containsXY} from '../extent.js';
import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js'; import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_Point_ from '../geom/Point.js'; import _ol_geom_Point_ from '../geom/Point.js';
@@ -62,8 +62,7 @@ _ol_geom_MultiPoint_.prototype.clone = function() {
* @inheritDoc * @inheritDoc
*/ */
_ol_geom_MultiPoint_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) { _ol_geom_MultiPoint_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) {
if (minSquaredDistance < if (minSquaredDistance < closestSquaredDistanceXY(this.getExtent(), x, y)) {
_ol_extent_.closestSquaredDistanceXY(this.getExtent(), x, y)) {
return minSquaredDistance; return minSquaredDistance;
} }
var flatCoordinates = this.flatCoordinates; var flatCoordinates = this.flatCoordinates;
@@ -156,7 +155,7 @@ _ol_geom_MultiPoint_.prototype.intersectsExtent = function(extent) {
for (i = 0, ii = flatCoordinates.length; i < ii; i += stride) { for (i = 0, ii = flatCoordinates.length; i < ii; i += stride) {
x = flatCoordinates[i]; x = flatCoordinates[i];
y = flatCoordinates[i + 1]; y = flatCoordinates[i + 1];
if (_ol_extent_.containsXY(extent, x, y)) { if (containsXY(extent, x, y)) {
return true; return true;
} }
} }
+2 -3
View File
@@ -3,7 +3,7 @@
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_array_ from '../array.js'; import _ol_array_ from '../array.js';
import _ol_extent_ from '../extent.js'; import {closestSquaredDistanceXY} from '../extent.js';
import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js'; import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_MultiPoint_ from '../geom/MultiPoint.js'; import _ol_geom_MultiPoint_ from '../geom/MultiPoint.js';
@@ -134,8 +134,7 @@ _ol_geom_MultiPolygon_.prototype.clone = function() {
* @inheritDoc * @inheritDoc
*/ */
_ol_geom_MultiPolygon_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) { _ol_geom_MultiPolygon_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) {
if (minSquaredDistance < if (minSquaredDistance < closestSquaredDistanceXY(this.getExtent(), x, y)) {
_ol_extent_.closestSquaredDistanceXY(this.getExtent(), x, y)) {
return minSquaredDistance; return minSquaredDistance;
} }
if (this.maxDeltaRevision_ != this.getRevision()) { if (this.maxDeltaRevision_ != this.getRevision()) {
+3 -4
View File
@@ -2,7 +2,7 @@
* @module ol/geom/Point * @module ol/geom/Point
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_extent_ from '../extent.js'; import {createOrUpdateFromCoordinate, containsXY} from '../extent.js';
import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js'; import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_SimpleGeometry_ from '../geom/SimpleGeometry.js'; import _ol_geom_SimpleGeometry_ from '../geom/SimpleGeometry.js';
@@ -76,7 +76,7 @@ _ol_geom_Point_.prototype.getCoordinates = function() {
* @inheritDoc * @inheritDoc
*/ */
_ol_geom_Point_.prototype.computeExtent = function(extent) { _ol_geom_Point_.prototype.computeExtent = function(extent) {
return _ol_extent_.createOrUpdateFromCoordinate(this.flatCoordinates, extent); return createOrUpdateFromCoordinate(this.flatCoordinates, extent);
}; };
@@ -94,8 +94,7 @@ _ol_geom_Point_.prototype.getType = function() {
* @api * @api
*/ */
_ol_geom_Point_.prototype.intersectsExtent = function(extent) { _ol_geom_Point_.prototype.intersectsExtent = function(extent) {
return _ol_extent_.containsXY(extent, return containsXY(extent, this.flatCoordinates[0], this.flatCoordinates[1]);
this.flatCoordinates[0], this.flatCoordinates[1]);
}; };
+3 -4
View File
@@ -3,7 +3,7 @@
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_array_ from '../array.js'; import _ol_array_ from '../array.js';
import _ol_extent_ from '../extent.js'; import {closestSquaredDistanceXY, getCenter} from '../extent.js';
import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js'; import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_LinearRing_ from '../geom/LinearRing.js'; import _ol_geom_LinearRing_ from '../geom/LinearRing.js';
@@ -122,8 +122,7 @@ _ol_geom_Polygon_.prototype.clone = function() {
* @inheritDoc * @inheritDoc
*/ */
_ol_geom_Polygon_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) { _ol_geom_Polygon_.prototype.closestPointXY = function(x, y, closestPoint, minSquaredDistance) {
if (minSquaredDistance < if (minSquaredDistance < closestSquaredDistanceXY(this.getExtent(), x, y)) {
_ol_extent_.closestSquaredDistanceXY(this.getExtent(), x, y)) {
return minSquaredDistance; return minSquaredDistance;
} }
if (this.maxDeltaRevision_ != this.getRevision()) { if (this.maxDeltaRevision_ != this.getRevision()) {
@@ -199,7 +198,7 @@ _ol_geom_Polygon_.prototype.getEnds = function() {
*/ */
_ol_geom_Polygon_.prototype.getFlatInteriorPoint = function() { _ol_geom_Polygon_.prototype.getFlatInteriorPoint = function() {
if (this.flatInteriorPointRevision_ != this.getRevision()) { if (this.flatInteriorPointRevision_ != this.getRevision()) {
var flatCenter = _ol_extent_.getCenter(this.getExtent()); var flatCenter = getCenter(this.getExtent());
this.flatInteriorPoint_ = _ol_geom_flat_interiorpoint_.linearRings( this.flatInteriorPoint_ = _ol_geom_flat_interiorpoint_.linearRings(
this.getOrientedFlatCoordinates(), 0, this.ends_, this.stride, this.getOrientedFlatCoordinates(), 0, this.ends_, this.stride,
flatCenter, 0); flatCenter, 0);
+4 -5
View File
@@ -3,7 +3,7 @@
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_functions_ from '../functions.js'; import _ol_functions_ from '../functions.js';
import _ol_extent_ from '../extent.js'; import {createOrUpdateFromFlatCoordinates, getCenter} from '../extent.js';
import _ol_geom_Geometry_ from '../geom/Geometry.js'; import _ol_geom_Geometry_ from '../geom/Geometry.js';
import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js'; import _ol_geom_GeometryLayout_ from '../geom/GeometryLayout.js';
import _ol_geom_flat_transform_ from '../geom/flat/transform.js'; import _ol_geom_flat_transform_ from '../geom/flat/transform.js';
@@ -91,9 +91,8 @@ _ol_geom_SimpleGeometry_.prototype.containsXY = _ol_functions_.FALSE;
* @inheritDoc * @inheritDoc
*/ */
_ol_geom_SimpleGeometry_.prototype.computeExtent = function(extent) { _ol_geom_SimpleGeometry_.prototype.computeExtent = function(extent) {
return _ol_extent_.createOrUpdateFromFlatCoordinates( return createOrUpdateFromFlatCoordinates(this.flatCoordinates,
this.flatCoordinates, 0, this.flatCoordinates.length, this.stride, 0, this.flatCoordinates.length, this.stride, extent);
extent);
}; };
@@ -289,7 +288,7 @@ _ol_geom_SimpleGeometry_.prototype.scale = function(sx, opt_sy, opt_anchor) {
} }
var anchor = opt_anchor; var anchor = opt_anchor;
if (!anchor) { if (!anchor) {
anchor = _ol_extent_.getCenter(this.getExtent()); anchor = getCenter(this.getExtent());
} }
var flatCoordinates = this.getFlatCoordinates(); var flatCoordinates = this.getFlatCoordinates();
if (flatCoordinates) { if (flatCoordinates) {
+3 -4
View File
@@ -1,7 +1,7 @@
/** /**
* @module ol/geom/flat/center * @module ol/geom/flat/center
*/ */
import _ol_extent_ from '../../extent.js'; import {createEmpty, createOrUpdateFromFlatCoordinates} from '../../extent.js';
var _ol_geom_flat_center_ = {}; var _ol_geom_flat_center_ = {};
@@ -15,11 +15,10 @@ var _ol_geom_flat_center_ = {};
_ol_geom_flat_center_.linearRingss = function(flatCoordinates, offset, endss, stride) { _ol_geom_flat_center_.linearRingss = function(flatCoordinates, offset, endss, stride) {
var flatCenters = []; var flatCenters = [];
var i, ii; var i, ii;
var extent = _ol_extent_.createEmpty(); var extent = createEmpty();
for (i = 0, ii = endss.length; i < ii; ++i) { for (i = 0, ii = endss.length; i < ii; ++i) {
var ends = endss[i]; var ends = endss[i];
extent = _ol_extent_.createOrUpdateFromFlatCoordinates( extent = createOrUpdateFromFlatCoordinates(flatCoordinates, offset, ends[0], stride);
flatCoordinates, offset, ends[0], stride);
flatCenters.push((extent[0] + extent[2]) / 2, (extent[1] + extent[3]) / 2); flatCenters.push((extent[0] + extent[2]) / 2, (extent[1] + extent[3]) / 2);
offset = ends[ends.length - 1]; offset = ends[ends.length - 1];
} }
+2 -2
View File
@@ -1,7 +1,7 @@
/** /**
* @module ol/geom/flat/contains * @module ol/geom/flat/contains
*/ */
import _ol_extent_ from '../../extent.js'; import {forEachCorner} from '../../extent.js';
var _ol_geom_flat_contains_ = {}; var _ol_geom_flat_contains_ = {};
@@ -14,7 +14,7 @@ var _ol_geom_flat_contains_ = {};
* @return {boolean} Contains extent. * @return {boolean} Contains extent.
*/ */
_ol_geom_flat_contains_.linearRingContainsExtent = function(flatCoordinates, offset, end, stride, extent) { _ol_geom_flat_contains_.linearRingContainsExtent = function(flatCoordinates, offset, end, stride, extent) {
var outside = _ol_extent_.forEachCorner(extent, var outside = forEachCorner(extent,
/** /**
* @param {ol.Coordinate} coordinate Coordinate. * @param {ol.Coordinate} coordinate Coordinate.
* @return {boolean} Contains (x, y). * @return {boolean} Contains (x, y).
+6 -6
View File
@@ -1,7 +1,7 @@
/** /**
* @module ol/geom/flat/intersectsextent * @module ol/geom/flat/intersectsextent
*/ */
import _ol_extent_ from '../../extent.js'; import {containsExtent, createEmpty, extendFlatCoordinates, intersects, intersectsSegment} from '../../extent.js';
import _ol_geom_flat_contains_ from '../flat/contains.js'; import _ol_geom_flat_contains_ from '../flat/contains.js';
import _ol_geom_flat_segments_ from '../flat/segments.js'; import _ol_geom_flat_segments_ from '../flat/segments.js';
var _ol_geom_flat_intersectsextent_ = {}; var _ol_geom_flat_intersectsextent_ = {};
@@ -16,12 +16,12 @@ var _ol_geom_flat_intersectsextent_ = {};
* @return {boolean} True if the geometry and the extent intersect. * @return {boolean} True if the geometry and the extent intersect.
*/ */
_ol_geom_flat_intersectsextent_.lineString = function(flatCoordinates, offset, end, stride, extent) { _ol_geom_flat_intersectsextent_.lineString = function(flatCoordinates, offset, end, stride, extent) {
var coordinatesExtent = _ol_extent_.extendFlatCoordinates( var coordinatesExtent = extendFlatCoordinates(
_ol_extent_.createEmpty(), flatCoordinates, offset, end, stride); createEmpty(), flatCoordinates, offset, end, stride);
if (!_ol_extent_.intersects(extent, coordinatesExtent)) { if (!intersects(extent, coordinatesExtent)) {
return false; return false;
} }
if (_ol_extent_.containsExtent(extent, coordinatesExtent)) { if (containsExtent(extent, coordinatesExtent)) {
return true; return true;
} }
if (coordinatesExtent[0] >= extent[0] && if (coordinatesExtent[0] >= extent[0] &&
@@ -40,7 +40,7 @@ _ol_geom_flat_intersectsextent_.lineString = function(flatCoordinates, offset, e
* `false` otherwise. * `false` otherwise.
*/ */
function(point1, point2) { function(point1, point2) {
return _ol_extent_.intersectsSegment(extent, point1, point2); return intersectsSegment(extent, point1, point2);
}); });
}; };
+6 -6
View File
@@ -4,7 +4,7 @@
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_easing_ from '../easing.js'; import _ol_easing_ from '../easing.js';
import _ol_events_condition_ from '../events/condition.js'; import _ol_events_condition_ from '../events/condition.js';
import _ol_extent_ from '../extent.js'; import {createOrUpdateFromCoordinates, getBottomLeft, getCenter, getTopRight, scaleFromCenter} from '../extent.js';
import _ol_interaction_DragBox_ from '../interaction/DragBox.js'; import _ol_interaction_DragBox_ from '../interaction/DragBox.js';
/** /**
@@ -63,19 +63,19 @@ _ol_interaction_DragZoom_.prototype.onBoxEnd = function() {
if (this.out_) { if (this.out_) {
var mapExtent = view.calculateExtent(size); var mapExtent = view.calculateExtent(size);
var boxPixelExtent = _ol_extent_.createOrUpdateFromCoordinates([ var boxPixelExtent = createOrUpdateFromCoordinates([
map.getPixelFromCoordinate(_ol_extent_.getBottomLeft(extent)), map.getPixelFromCoordinate(getBottomLeft(extent)),
map.getPixelFromCoordinate(_ol_extent_.getTopRight(extent))]); map.getPixelFromCoordinate(getTopRight(extent))]);
var factor = view.getResolutionForExtent(boxPixelExtent, size); var factor = view.getResolutionForExtent(boxPixelExtent, size);
_ol_extent_.scaleFromCenter(mapExtent, 1 / factor); scaleFromCenter(mapExtent, 1 / factor);
extent = mapExtent; extent = mapExtent;
} }
var resolution = view.constrainResolution( var resolution = view.constrainResolution(
view.getResolutionForExtent(extent, size)); view.getResolutionForExtent(extent, size));
var center = _ol_extent_.getCenter(extent); var center = getCenter(extent);
center = view.constrainCenter(center); center = view.constrainCenter(center);
view.animate({ view.animate({
+7 -7
View File
@@ -9,7 +9,7 @@ import _ol_coordinate_ from '../coordinate.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_Event_ from '../events/Event.js'; import _ol_events_Event_ from '../events/Event.js';
import _ol_events_condition_ from '../events/condition.js'; import _ol_events_condition_ from '../events/condition.js';
import _ol_extent_ from '../extent.js'; import {boundingExtent, getBottomLeft, getBottomRight, getTopLeft, getTopRight} from '../extent.js';
import _ol_functions_ from '../functions.js'; import _ol_functions_ from '../functions.js';
import _ol_geom_Circle_ from '../geom/Circle.js'; import _ol_geom_Circle_ from '../geom/Circle.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
@@ -823,14 +823,14 @@ _ol_interaction_Draw_.createBox = function() {
* @return {ol.geom.SimpleGeometry} * @return {ol.geom.SimpleGeometry}
*/ */
function(coordinates, opt_geometry) { function(coordinates, opt_geometry) {
var extent = _ol_extent_.boundingExtent(coordinates); var extent = boundingExtent(coordinates);
var geometry = opt_geometry || new _ol_geom_Polygon_(null); var geometry = opt_geometry || new _ol_geom_Polygon_(null);
geometry.setCoordinates([[ geometry.setCoordinates([[
_ol_extent_.getBottomLeft(extent), getBottomLeft(extent),
_ol_extent_.getBottomRight(extent), getBottomRight(extent),
_ol_extent_.getTopRight(extent), getTopRight(extent),
_ol_extent_.getTopLeft(extent), getTopLeft(extent),
_ol_extent_.getBottomLeft(extent) getBottomLeft(extent)
]]); ]]);
return geometry; return geometry;
} }
+5 -5
View File
@@ -7,7 +7,7 @@ import _ol_MapBrowserEventType_ from '../MapBrowserEventType.js';
import _ol_MapBrowserPointerEvent_ from '../MapBrowserPointerEvent.js'; import _ol_MapBrowserPointerEvent_ from '../MapBrowserPointerEvent.js';
import _ol_coordinate_ from '../coordinate.js'; import _ol_coordinate_ from '../coordinate.js';
import _ol_events_Event_ from '../events/Event.js'; import _ol_events_Event_ from '../events/Event.js';
import _ol_extent_ from '../extent.js'; import {boundingExtent, getArea} from '../extent.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_Point_ from '../geom/Point.js'; import _ol_geom_Point_ from '../geom/Point.js';
import _ol_geom_Polygon_ from '../geom/Polygon.js'; import _ol_geom_Polygon_ from '../geom/Polygon.js';
@@ -230,7 +230,7 @@ _ol_interaction_Extent_.handleUpEvent_ = function(mapBrowserEvent) {
this.pointerHandler_ = null; this.pointerHandler_ = null;
//If bbox is zero area, set to null; //If bbox is zero area, set to null;
var extent = this.getExtent(); var extent = this.getExtent();
if (!extent || _ol_extent_.getArea(extent) === 0) { if (!extent || getArea(extent) === 0) {
this.setExtent(null); this.setExtent(null);
} }
return false; //Stop handling downup sequence return false; //Stop handling downup sequence
@@ -269,7 +269,7 @@ _ol_interaction_Extent_.getDefaultPointerStyleFunction_ = function() {
*/ */
_ol_interaction_Extent_.getPointHandler_ = function(fixedPoint) { _ol_interaction_Extent_.getPointHandler_ = function(fixedPoint) {
return function(point) { return function(point) {
return _ol_extent_.boundingExtent([fixedPoint, point]); return boundingExtent([fixedPoint, point]);
}; };
}; };
@@ -282,11 +282,11 @@ _ol_interaction_Extent_.getPointHandler_ = function(fixedPoint) {
_ol_interaction_Extent_.getEdgeHandler_ = function(fixedP1, fixedP2) { _ol_interaction_Extent_.getEdgeHandler_ = function(fixedP1, fixedP2) {
if (fixedP1[0] == fixedP2[0]) { if (fixedP1[0] == fixedP2[0]) {
return function(point) { return function(point) {
return _ol_extent_.boundingExtent([fixedP1, [point[0], fixedP2[1]]]); return boundingExtent([fixedP1, [point[0], fixedP2[1]]]);
}; };
} else if (fixedP1[1] == fixedP2[1]) { } else if (fixedP1[1] == fixedP2[1]) {
return function(point) { return function(point) {
return _ol_extent_.boundingExtent([fixedP1, [fixedP2[0], point[1]]]); return boundingExtent([fixedP1, [fixedP2[0], point[1]]]);
}; };
} else { } else {
return null; return null;
+13 -14
View File
@@ -13,7 +13,7 @@ import _ol_events_ from '../events.js';
import _ol_events_Event_ from '../events/Event.js'; import _ol_events_Event_ from '../events/Event.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_events_condition_ from '../events/condition.js'; import _ol_events_condition_ from '../events/condition.js';
import _ol_extent_ from '../extent.js'; import {boundingExtent, buffer, createOrUpdateFromCoordinate} from '../extent.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_Point_ from '../geom/Point.js'; import _ol_geom_Point_ from '../geom/Point.js';
import _ol_interaction_ModifyEventType_ from '../interaction/ModifyEventType.js'; import _ol_interaction_ModifyEventType_ from '../interaction/ModifyEventType.js';
@@ -442,7 +442,7 @@ _ol_interaction_Modify_.prototype.writeLineStringGeometry_ = function(feature, g
index: i, index: i,
segment: segment segment: segment
}); });
this.rBush_.insert(_ol_extent_.boundingExtent(segment), segmentData); this.rBush_.insert(boundingExtent(segment), segmentData);
} }
}; };
@@ -466,7 +466,7 @@ _ol_interaction_Modify_.prototype.writeMultiLineStringGeometry_ = function(featu
index: i, index: i,
segment: segment segment: segment
}); });
this.rBush_.insert(_ol_extent_.boundingExtent(segment), segmentData); this.rBush_.insert(boundingExtent(segment), segmentData);
} }
} }
}; };
@@ -491,7 +491,7 @@ _ol_interaction_Modify_.prototype.writePolygonGeometry_ = function(feature, geom
index: i, index: i,
segment: segment segment: segment
}); });
this.rBush_.insert(_ol_extent_.boundingExtent(segment), segmentData); this.rBush_.insert(boundingExtent(segment), segmentData);
} }
} }
}; };
@@ -518,7 +518,7 @@ _ol_interaction_Modify_.prototype.writeMultiPolygonGeometry_ = function(feature,
index: i, index: i,
segment: segment segment: segment
}); });
this.rBush_.insert(_ol_extent_.boundingExtent(segment), segmentData); this.rBush_.insert(boundingExtent(segment), segmentData);
} }
} }
} }
@@ -552,7 +552,7 @@ _ol_interaction_Modify_.prototype.writeCircleGeometry_ = function(feature, geome
}); });
var featureSegments = [centerSegmentData, circumferenceSegmentData]; var featureSegments = [centerSegmentData, circumferenceSegmentData];
centerSegmentData.featureSegments = circumferenceSegmentData.featureSegments = featureSegments; centerSegmentData.featureSegments = circumferenceSegmentData.featureSegments = featureSegments;
this.rBush_.insert(_ol_extent_.createOrUpdateFromCoordinate(coordinates), centerSegmentData); this.rBush_.insert(createOrUpdateFromCoordinate(coordinates), centerSegmentData);
this.rBush_.insert(geometry.getExtent(), circumferenceSegmentData); this.rBush_.insert(geometry.getExtent(), circumferenceSegmentData);
}; };
@@ -620,7 +620,7 @@ _ol_interaction_Modify_.handleDownEvent_ = function(evt) {
var insertVertices = []; var insertVertices = [];
var geometry = /** @type {ol.geom.Point} */ (vertexFeature.getGeometry()); var geometry = /** @type {ol.geom.Point} */ (vertexFeature.getGeometry());
var vertex = geometry.getCoordinates(); var vertex = geometry.getCoordinates();
var vertexExtent = _ol_extent_.boundingExtent([vertex]); var vertexExtent = boundingExtent([vertex]);
var segmentDataMatches = this.rBush_.getInExtent(vertexExtent); var segmentDataMatches = this.rBush_.getInExtent(vertexExtent);
var componentSegments = {}; var componentSegments = {};
segmentDataMatches.sort(_ol_interaction_Modify_.compareIndexes_); segmentDataMatches.sort(_ol_interaction_Modify_.compareIndexes_);
@@ -774,10 +774,10 @@ _ol_interaction_Modify_.handleUpEvent_ = function(evt) {
var circumferenceSegmentData = segmentData.featureSegments[1]; var circumferenceSegmentData = segmentData.featureSegments[1];
centerSegmentData.segment[0] = centerSegmentData.segment[1] = coordinates; centerSegmentData.segment[0] = centerSegmentData.segment[1] = coordinates;
circumferenceSegmentData.segment[0] = circumferenceSegmentData.segment[1] = coordinates; circumferenceSegmentData.segment[0] = circumferenceSegmentData.segment[1] = coordinates;
this.rBush_.update(_ol_extent_.createOrUpdateFromCoordinate(coordinates), centerSegmentData); this.rBush_.update(createOrUpdateFromCoordinate(coordinates), centerSegmentData);
this.rBush_.update(geometry.getExtent(), circumferenceSegmentData); this.rBush_.update(geometry.getExtent(), circumferenceSegmentData);
} else { } else {
this.rBush_.update(_ol_extent_.boundingExtent(segmentData.segment), this.rBush_.update(boundingExtent(segmentData.segment),
segmentData); segmentData);
} }
} }
@@ -850,8 +850,7 @@ _ol_interaction_Modify_.prototype.handlePointerAtPixel_ = function(pixel, map) {
_ol_interaction_Modify_.pointDistanceToSegmentDataSquared_(pixelCoordinate, b); _ol_interaction_Modify_.pointDistanceToSegmentDataSquared_(pixelCoordinate, b);
}; };
var box = _ol_extent_.buffer( var box = buffer(createOrUpdateFromCoordinate(pixelCoordinate),
_ol_extent_.createOrUpdateFromCoordinate(pixelCoordinate),
map.getView().getResolution() * this.pixelTolerance_); map.getView().getResolution() * this.pixelTolerance_);
var rBush = this.rBush_; var rBush = this.rBush_;
@@ -1004,7 +1003,7 @@ _ol_interaction_Modify_.prototype.insertVertex_ = function(segmentData, vertex)
depth: depth, depth: depth,
index: index index: index
}); });
rTree.insert(_ol_extent_.boundingExtent(newSegmentData.segment), rTree.insert(boundingExtent(newSegmentData.segment),
newSegmentData); newSegmentData);
this.dragSegments_.push([newSegmentData, 1]); this.dragSegments_.push([newSegmentData, 1]);
@@ -1015,7 +1014,7 @@ _ol_interaction_Modify_.prototype.insertVertex_ = function(segmentData, vertex)
depth: depth, depth: depth,
index: index + 1 index: index + 1
}); });
rTree.insert(_ol_extent_.boundingExtent(newSegmentData2.segment), rTree.insert(boundingExtent(newSegmentData2.segment),
newSegmentData2); newSegmentData2);
this.dragSegments_.push([newSegmentData2, 0]); this.dragSegments_.push([newSegmentData2, 0]);
this.ignoreNextSingleClick_ = true; this.ignoreNextSingleClick_ = true;
@@ -1142,7 +1141,7 @@ _ol_interaction_Modify_.prototype.removeVertex_ = function() {
index: newIndex, index: newIndex,
segment: segments segment: segments
}); });
this.rBush_.insert(_ol_extent_.boundingExtent(newSegmentData.segment), this.rBush_.insert(boundingExtent(newSegmentData.segment),
newSegmentData); newSegmentData);
} }
this.updateSegmentIndices_(geometry, index, segmentData.depth, -1); this.updateSegmentIndices_(geometry, index, segmentData.depth, -1);
+8 -9
View File
@@ -7,7 +7,7 @@ import _ol_CollectionEventType_ from '../CollectionEventType.js';
import _ol_coordinate_ from '../coordinate.js'; import _ol_coordinate_ from '../coordinate.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {boundingExtent, createEmpty} from '../extent.js';
import _ol_functions_ from '../functions.js'; import _ol_functions_ from '../functions.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_Polygon_ from '../geom/Polygon.js'; import _ol_geom_Polygon_ from '../geom/Polygon.js';
@@ -166,8 +166,7 @@ _ol_interaction_Snap_.prototype.addFeature = function(feature, opt_listen) {
if (geometry) { if (geometry) {
var segmentWriter = this.SEGMENT_WRITERS_[geometry.getType()]; var segmentWriter = this.SEGMENT_WRITERS_[geometry.getType()];
if (segmentWriter) { if (segmentWriter) {
this.indexedFeaturesExtents_[feature_uid] = geometry.getExtent( this.indexedFeaturesExtents_[feature_uid] = geometry.getExtent(createEmpty());
_ol_extent_.createEmpty());
segmentWriter.call(this, feature, geometry); segmentWriter.call(this, feature, geometry);
} }
} }
@@ -346,7 +345,7 @@ _ol_interaction_Snap_.prototype.snapTo = function(pixel, pixelCoordinate, map) {
[pixel[0] - this.pixelTolerance_, pixel[1] + this.pixelTolerance_]); [pixel[0] - this.pixelTolerance_, pixel[1] + this.pixelTolerance_]);
var upperRight = map.getCoordinateFromPixel( var upperRight = map.getCoordinateFromPixel(
[pixel[0] + this.pixelTolerance_, pixel[1] - this.pixelTolerance_]); [pixel[0] + this.pixelTolerance_, pixel[1] - this.pixelTolerance_]);
var box = _ol_extent_.boundingExtent([lowerLeft, upperRight]); var box = boundingExtent([lowerLeft, upperRight]);
var segments = this.rBush_.getInExtent(box); var segments = this.rBush_.getInExtent(box);
@@ -445,7 +444,7 @@ _ol_interaction_Snap_.prototype.writeCircleGeometry_ = function(feature, geometr
feature: feature, feature: feature,
segment: segment segment: segment
}); });
this.rBush_.insert(_ol_extent_.boundingExtent(segment), segmentData); this.rBush_.insert(boundingExtent(segment), segmentData);
} }
}; };
@@ -480,7 +479,7 @@ _ol_interaction_Snap_.prototype.writeLineStringGeometry_ = function(feature, geo
feature: feature, feature: feature,
segment: segment segment: segment
}); });
this.rBush_.insert(_ol_extent_.boundingExtent(segment), segmentData); this.rBush_.insert(boundingExtent(segment), segmentData);
} }
}; };
@@ -501,7 +500,7 @@ _ol_interaction_Snap_.prototype.writeMultiLineStringGeometry_ = function(feature
feature: feature, feature: feature,
segment: segment segment: segment
}); });
this.rBush_.insert(_ol_extent_.boundingExtent(segment), segmentData); this.rBush_.insert(boundingExtent(segment), segmentData);
} }
} }
}; };
@@ -544,7 +543,7 @@ _ol_interaction_Snap_.prototype.writeMultiPolygonGeometry_ = function(feature, g
feature: feature, feature: feature,
segment: segment segment: segment
}); });
this.rBush_.insert(_ol_extent_.boundingExtent(segment), segmentData); this.rBush_.insert(boundingExtent(segment), segmentData);
} }
} }
} }
@@ -582,7 +581,7 @@ _ol_interaction_Snap_.prototype.writePolygonGeometry_ = function(feature, geomet
feature: feature, feature: feature,
segment: segment segment: segment
}); });
this.rBush_.insert(_ol_extent_.boundingExtent(segment), segmentData); this.rBush_.insert(boundingExtent(segment), segmentData);
} }
} }
}; };
+2 -3
View File
@@ -9,7 +9,7 @@ import _ol_ObjectEventType_ from '../ObjectEventType.js';
import _ol_asserts_ from '../asserts.js'; import _ol_asserts_ from '../asserts.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {getIntersection} from '../extent.js';
import _ol_layer_Base_ from '../layer/Base.js'; import _ol_layer_Base_ from '../layer/Base.js';
import _ol_obj_ from '../obj.js'; import _ol_obj_ from '../obj.js';
import _ol_source_State_ from '../source/State.js'; import _ol_source_State_ from '../source/State.js';
@@ -210,8 +210,7 @@ _ol_layer_Group_.prototype.getLayerStatesArray = function(opt_states) {
layerState.minResolution, ownLayerState.minResolution); layerState.minResolution, ownLayerState.minResolution);
if (ownLayerState.extent !== undefined) { if (ownLayerState.extent !== undefined) {
if (layerState.extent !== undefined) { if (layerState.extent !== undefined) {
layerState.extent = _ol_extent_.getIntersection( layerState.extent = getIntersection(layerState.extent, ownLayerState.extent);
layerState.extent, ownLayerState.extent);
} else { } else {
layerState.extent = ownLayerState.extent; layerState.extent = ownLayerState.extent;
} }
+2 -2
View File
@@ -2,7 +2,7 @@
* @module ol/proj * @module ol/proj
*/ */
import _ol_Sphere_ from './Sphere.js'; import _ol_Sphere_ from './Sphere.js';
import _ol_extent_ from './extent.js'; import {applyTransform} from './extent.js';
import _ol_math_ from './math.js'; import _ol_math_ from './math.js';
import _ol_proj_EPSG3857_ from './proj/EPSG3857.js'; import _ol_proj_EPSG3857_ from './proj/EPSG3857.js';
import _ol_proj_EPSG4326_ from './proj/EPSG4326.js'; import _ol_proj_EPSG4326_ from './proj/EPSG4326.js';
@@ -472,7 +472,7 @@ _ol_proj_.transform = function(coordinate, source, destination) {
*/ */
_ol_proj_.transformExtent = function(extent, source, destination) { _ol_proj_.transformExtent = function(extent, source, destination) {
var transformFn = _ol_proj_.getTransform(source, destination); var transformFn = _ol_proj_.getTransform(source, destination);
return _ol_extent_.applyTransform(extent, transformFn); return applyTransform(extent, transformFn);
}; };
+5 -5
View File
@@ -3,7 +3,7 @@
*/ */
import {nullFunction} from '../index.js'; import {nullFunction} from '../index.js';
import _ol_array_ from '../array.js'; import _ol_array_ from '../array.js';
import _ol_extent_ from '../extent.js'; import {createOrUpdateFromCoordinate, createOrUpdateFromFlatCoordinates, getCenter, getHeight} from '../extent.js';
import _ol_geom_GeometryType_ from '../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../geom/GeometryType.js';
import _ol_geom_flat_center_ from '../geom/flat/center.js'; import _ol_geom_flat_center_ from '../geom/flat/center.js';
import _ol_geom_flat_interiorpoint_ from '../geom/flat/interiorpoint.js'; import _ol_geom_flat_interiorpoint_ from '../geom/flat/interiorpoint.js';
@@ -110,8 +110,8 @@ _ol_render_Feature_.prototype.getEndss = function() {
_ol_render_Feature_.prototype.getExtent = function() { _ol_render_Feature_.prototype.getExtent = function() {
if (!this.extent_) { if (!this.extent_) {
this.extent_ = this.type_ === _ol_geom_GeometryType_.POINT ? this.extent_ = this.type_ === _ol_geom_GeometryType_.POINT ?
_ol_extent_.createOrUpdateFromCoordinate(this.flatCoordinates_) : createOrUpdateFromCoordinate(this.flatCoordinates_) :
_ol_extent_.createOrUpdateFromFlatCoordinates( createOrUpdateFromFlatCoordinates(
this.flatCoordinates_, 0, this.flatCoordinates_.length, 2); this.flatCoordinates_, 0, this.flatCoordinates_.length, 2);
} }
@@ -124,7 +124,7 @@ _ol_render_Feature_.prototype.getExtent = function() {
*/ */
_ol_render_Feature_.prototype.getFlatInteriorPoint = function() { _ol_render_Feature_.prototype.getFlatInteriorPoint = function() {
if (!this.flatInteriorPoints_) { if (!this.flatInteriorPoints_) {
var flatCenter = _ol_extent_.getCenter(this.getExtent()); var flatCenter = getCenter(this.getExtent());
this.flatInteriorPoints_ = _ol_geom_flat_interiorpoint_.linearRings( this.flatInteriorPoints_ = _ol_geom_flat_interiorpoint_.linearRings(
this.flatCoordinates_, 0, this.ends_, 2, flatCenter, 0); this.flatCoordinates_, 0, this.ends_, 2, flatCenter, 0);
} }
@@ -266,7 +266,7 @@ _ol_render_Feature_.prototype.getType = function() {
_ol_render_Feature_.prototype.transform = function(source, destination) { _ol_render_Feature_.prototype.transform = function(source, destination) {
var pixelExtent = source.getExtent(); var pixelExtent = source.getExtent();
var projectedExtent = source.getWorldExtent(); var projectedExtent = source.getWorldExtent();
var scale = _ol_extent_.getHeight(projectedExtent) / _ol_extent_.getHeight(pixelExtent); var scale = getHeight(projectedExtent) / getHeight(pixelExtent);
var transform = this.tmpTransform_; var transform = this.tmpTransform_;
_ol_transform_.compose(transform, _ol_transform_.compose(transform,
projectedExtent[0], projectedExtent[3], projectedExtent[0], projectedExtent[3],
+7 -8
View File
@@ -8,7 +8,7 @@
import {inherits} from '../../index.js'; import {inherits} from '../../index.js';
import _ol_array_ from '../../array.js'; import _ol_array_ from '../../array.js';
import _ol_colorlike_ from '../../colorlike.js'; import _ol_colorlike_ from '../../colorlike.js';
import _ol_extent_ from '../../extent.js'; import {intersects} from '../../extent.js';
import _ol_geom_GeometryType_ from '../../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../../geom/GeometryType.js';
import _ol_geom_SimpleGeometry_ from '../../geom/SimpleGeometry.js'; import _ol_geom_SimpleGeometry_ from '../../geom/SimpleGeometry.js';
import _ol_geom_flat_transform_ from '../../geom/flat/transform.js'; import _ol_geom_flat_transform_ from '../../geom/flat/transform.js';
@@ -402,7 +402,7 @@ _ol_render_canvas_Immediate_.prototype.drawRings_ = function(flatCoordinates, of
* @api * @api
*/ */
_ol_render_canvas_Immediate_.prototype.drawCircle = function(geometry) { _ol_render_canvas_Immediate_.prototype.drawCircle = function(geometry) {
if (!_ol_extent_.intersects(this.extent_, geometry.getExtent())) { if (!intersects(this.extent_, geometry.getExtent())) {
return; return;
} }
if (this.fillState_ || this.strokeState_) { if (this.fillState_ || this.strokeState_) {
@@ -502,8 +502,7 @@ _ol_render_canvas_Immediate_.prototype.drawGeometry = function(geometry) {
*/ */
_ol_render_canvas_Immediate_.prototype.drawFeature = function(feature, style) { _ol_render_canvas_Immediate_.prototype.drawFeature = function(feature, style) {
var geometry = style.getGeometryFunction()(feature); var geometry = style.getGeometryFunction()(feature);
if (!geometry || if (!geometry || !intersects(this.extent_, geometry.getExtent())) {
!_ol_extent_.intersects(this.extent_, geometry.getExtent())) {
return; return;
} }
this.setStyle(style); this.setStyle(style);
@@ -573,7 +572,7 @@ _ol_render_canvas_Immediate_.prototype.drawMultiPoint = function(geometry) {
* @override * @override
*/ */
_ol_render_canvas_Immediate_.prototype.drawLineString = function(geometry) { _ol_render_canvas_Immediate_.prototype.drawLineString = function(geometry) {
if (!_ol_extent_.intersects(this.extent_, geometry.getExtent())) { if (!intersects(this.extent_, geometry.getExtent())) {
return; return;
} }
if (this.strokeState_) { if (this.strokeState_) {
@@ -602,7 +601,7 @@ _ol_render_canvas_Immediate_.prototype.drawLineString = function(geometry) {
*/ */
_ol_render_canvas_Immediate_.prototype.drawMultiLineString = function(geometry) { _ol_render_canvas_Immediate_.prototype.drawMultiLineString = function(geometry) {
var geometryExtent = geometry.getExtent(); var geometryExtent = geometry.getExtent();
if (!_ol_extent_.intersects(this.extent_, geometryExtent)) { if (!intersects(this.extent_, geometryExtent)) {
return; return;
} }
if (this.strokeState_) { if (this.strokeState_) {
@@ -635,7 +634,7 @@ _ol_render_canvas_Immediate_.prototype.drawMultiLineString = function(geometry)
* @override * @override
*/ */
_ol_render_canvas_Immediate_.prototype.drawPolygon = function(geometry) { _ol_render_canvas_Immediate_.prototype.drawPolygon = function(geometry) {
if (!_ol_extent_.intersects(this.extent_, geometry.getExtent())) { if (!intersects(this.extent_, geometry.getExtent())) {
return; return;
} }
if (this.strokeState_ || this.fillState_) { if (this.strokeState_ || this.fillState_) {
@@ -670,7 +669,7 @@ _ol_render_canvas_Immediate_.prototype.drawPolygon = function(geometry) {
* @override * @override
*/ */
_ol_render_canvas_Immediate_.prototype.drawMultiPolygon = function(geometry) { _ol_render_canvas_Immediate_.prototype.drawMultiPolygon = function(geometry) {
if (!_ol_extent_.intersects(this.extent_, geometry.getExtent())) { if (!intersects(this.extent_, geometry.getExtent())) {
return; return;
} }
if (this.strokeState_ || this.fillState_) { if (this.strokeState_ || this.fillState_) {
+17 -16
View File
@@ -4,8 +4,9 @@
import {getUid, inherits, nullFunction} from '../../index.js'; import {getUid, inherits, nullFunction} from '../../index.js';
import _ol_array_ from '../../array.js'; import _ol_array_ from '../../array.js';
import _ol_colorlike_ from '../../colorlike.js'; import _ol_colorlike_ from '../../colorlike.js';
import _ol_extent_ from '../../extent.js'; import {buffer, clone, coordinateRelationship, createEmpty, createOrUpdate,
import _ol_extent_Relationship_ from '../../extent/Relationship.js'; createOrUpdateEmpty, extend, extendCoordinate, intersects} from '../../extent.js';
import Relationship from '../../extent/Relationship.js';
import _ol_geom_GeometryType_ from '../../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../../geom/GeometryType.js';
import _ol_geom_flat_inflate_ from '../../geom/flat/inflate.js'; import _ol_geom_flat_inflate_ from '../../geom/flat/inflate.js';
import _ol_geom_flat_length_ from '../../geom/flat/length.js'; import _ol_geom_flat_length_ from '../../geom/flat/length.js';
@@ -42,7 +43,7 @@ var _ol_render_canvas_Replay_ = function(tolerance, maxExtent, resolution, pixel
* @private * @private
* @type {ol.Extent} * @type {ol.Extent}
*/ */
this.tmpExtent_ = _ol_extent_.createEmpty(); this.tmpExtent_ = createEmpty();
/** /**
* @protected * @protected
@@ -258,13 +259,13 @@ _ol_render_canvas_Replay_.prototype.replayImage_ = function(context, x, y, image
transform = _ol_transform_.compose(localTransform, transform = _ol_transform_.compose(localTransform,
centerX, centerY, 1, 1, rotation, -centerX, -centerY); centerX, centerY, 1, 1, rotation, -centerX, -centerY);
_ol_extent_.createOrUpdateEmpty(box); createOrUpdateEmpty(box);
_ol_extent_.extendCoordinate(box, _ol_transform_.apply(localTransform, p1)); extendCoordinate(box, _ol_transform_.apply(localTransform, p1));
_ol_extent_.extendCoordinate(box, _ol_transform_.apply(localTransform, p2)); extendCoordinate(box, _ol_transform_.apply(localTransform, p2));
_ol_extent_.extendCoordinate(box, _ol_transform_.apply(localTransform, p3)); extendCoordinate(box, _ol_transform_.apply(localTransform, p3));
_ol_extent_.extendCoordinate(box, _ol_transform_.apply(localTransform, p4)); extendCoordinate(box, _ol_transform_.apply(localTransform, p4));
} else { } else {
_ol_extent_.createOrUpdate(boxX, boxY, boxX + boxW, boxY + boxH, box); createOrUpdate(boxX, boxY, boxX + boxW, boxY + boxH, box);
} }
var canvas = context.canvas; var canvas = context.canvas;
var intersects = box[0] <= canvas.width && box[2] >= 0 && box[1] <= canvas.height && box[3] >= 0; var intersects = box[0] <= canvas.width && box[2] >= 0 && box[1] <= canvas.height && box[3] >= 0;
@@ -278,7 +279,7 @@ _ol_render_canvas_Replay_.prototype.replayImage_ = function(context, x, y, image
if (!intersects && declutterGroup[4] == 1) { if (!intersects && declutterGroup[4] == 1) {
return; return;
} }
_ol_extent_.extend(declutterGroup, box); extend(declutterGroup, box);
var declutterArgs = intersects ? var declutterArgs = intersects ?
[context, transform ? transform.slice(0) : null, opacity, image, originX, originY, w, h, x, y, scale] : [context, transform ? transform.slice(0) : null, opacity, image, originX, originY, w, h, x, y, scale] :
null; null;
@@ -335,7 +336,7 @@ _ol_render_canvas_Replay_.prototype.appendFlatCoordinates = function(flatCoordin
for (i = offset + stride; i < end; i += stride) { for (i = offset + stride; i < end; i += stride) {
nextCoord[0] = flatCoordinates[i]; nextCoord[0] = flatCoordinates[i];
nextCoord[1] = flatCoordinates[i + 1]; nextCoord[1] = flatCoordinates[i + 1];
nextRel = _ol_extent_.coordinateRelationship(extent, nextCoord); nextRel = coordinateRelationship(extent, nextCoord);
if (nextRel !== lastRel) { if (nextRel !== lastRel) {
if (skipped) { if (skipped) {
this.coordinates[myEnd++] = lastCoord[0]; this.coordinates[myEnd++] = lastCoord[0];
@@ -344,7 +345,7 @@ _ol_render_canvas_Replay_.prototype.appendFlatCoordinates = function(flatCoordin
this.coordinates[myEnd++] = nextCoord[0]; this.coordinates[myEnd++] = nextCoord[0];
this.coordinates[myEnd++] = nextCoord[1]; this.coordinates[myEnd++] = nextCoord[1];
skipped = false; skipped = false;
} else if (nextRel === _ol_extent_Relationship_.INTERSECTING) { } else if (nextRel === Relationship.INTERSECTING) {
this.coordinates[myEnd++] = nextCoord[0]; this.coordinates[myEnd++] = nextCoord[0];
this.coordinates[myEnd++] = nextCoord[1]; this.coordinates[myEnd++] = nextCoord[1];
skipped = false; skipped = false;
@@ -516,7 +517,7 @@ _ol_render_canvas_Replay_.prototype.renderDeclutter_ = function(declutterGroup,
} }
} }
declutterGroup.length = 5; declutterGroup.length = 5;
_ol_extent_.createOrUpdateEmpty(declutterGroup); createOrUpdateEmpty(declutterGroup);
} }
} }
}; };
@@ -587,7 +588,7 @@ _ol_render_canvas_Replay_.prototype.replay_ = function(
skippedFeaturesHash[getUid(feature).toString()]) || skippedFeaturesHash[getUid(feature).toString()]) ||
!feature.getGeometry()) { !feature.getGeometry()) {
i = /** @type {number} */ (instruction[2]); i = /** @type {number} */ (instruction[2]);
} else if (opt_hitExtent !== undefined && !_ol_extent_.intersects( } else if (opt_hitExtent !== undefined && !intersects(
opt_hitExtent, feature.getGeometry().getExtent())) { opt_hitExtent, feature.getGeometry().getExtent())) {
i = /** @type {number} */ (instruction[2]) + 1; i = /** @type {number} */ (instruction[2]) + 1;
} else { } else {
@@ -1060,10 +1061,10 @@ _ol_render_canvas_Replay_.prototype.finish = nullFunction;
*/ */
_ol_render_canvas_Replay_.prototype.getBufferedMaxExtent = function() { _ol_render_canvas_Replay_.prototype.getBufferedMaxExtent = function() {
if (!this.bufferedMaxExtent_) { if (!this.bufferedMaxExtent_) {
this.bufferedMaxExtent_ = _ol_extent_.clone(this.maxExtent); this.bufferedMaxExtent_ = clone(this.maxExtent);
if (this.maxLineWidth > 0) { if (this.maxLineWidth > 0) {
var width = this.resolution * (this.maxLineWidth + 1) / 2; var width = this.resolution * (this.maxLineWidth + 1) / 2;
_ol_extent_.buffer(this.bufferedMaxExtent_, width, this.bufferedMaxExtent_); buffer(this.bufferedMaxExtent_, width, this.bufferedMaxExtent_);
} }
} }
return this.bufferedMaxExtent_; return this.bufferedMaxExtent_;
+5 -5
View File
@@ -4,7 +4,7 @@
import {inherits} from '../../index.js'; import {inherits} from '../../index.js';
import _ol_array_ from '../../array.js'; import _ol_array_ from '../../array.js';
import _ol_dom_ from '../../dom.js'; import _ol_dom_ from '../../dom.js';
import _ol_extent_ from '../../extent.js'; import {buffer, createEmpty, extendCoordinate} from '../../extent.js';
import _ol_geom_flat_transform_ from '../../geom/flat/transform.js'; import _ol_geom_flat_transform_ from '../../geom/flat/transform.js';
import _ol_obj_ from '../../obj.js'; import _ol_obj_ from '../../obj.js';
import _ol_render_ReplayGroup_ from '../ReplayGroup.js'; import _ol_render_ReplayGroup_ from '../ReplayGroup.js';
@@ -216,7 +216,7 @@ _ol_render_canvas_ReplayGroup_.prototype.addDeclutter = function(group) {
declutter = this.declutterGroup_; declutter = this.declutterGroup_;
/** @type {number} */ (declutter[4])++; /** @type {number} */ (declutter[4])++;
} else { } else {
declutter = this.declutterGroup_ = _ol_extent_.createEmpty(); declutter = this.declutterGroup_ = createEmpty();
declutter.push(1); declutter.push(1);
} }
} }
@@ -309,9 +309,9 @@ _ol_render_canvas_ReplayGroup_.prototype.forEachFeatureAtCoordinate = function(
*/ */
var hitExtent; var hitExtent;
if (this.renderBuffer_ !== undefined) { if (this.renderBuffer_ !== undefined) {
hitExtent = _ol_extent_.createEmpty(); hitExtent = createEmpty();
_ol_extent_.extendCoordinate(hitExtent, coordinate); extendCoordinate(hitExtent, coordinate);
_ol_extent_.buffer(hitExtent, resolution * (this.renderBuffer_ + hitTolerance), hitExtent); buffer(hitExtent, resolution * (this.renderBuffer_ + hitTolerance), hitExtent);
} }
var mask = _ol_render_canvas_ReplayGroup_.getCircleArray_(hitTolerance); var mask = _ol_render_canvas_ReplayGroup_.getCircleArray_(hitTolerance);
+2 -2
View File
@@ -4,7 +4,7 @@
import {getUid, inherits} from '../../index.js'; import {getUid, inherits} from '../../index.js';
import _ol_colorlike_ from '../../colorlike.js'; import _ol_colorlike_ from '../../colorlike.js';
import _ol_dom_ from '../../dom.js'; import _ol_dom_ from '../../dom.js';
import _ol_extent_ from '../../extent.js'; import {intersects} from '../../extent.js';
import _ol_geom_flat_straightchunk_ from '../../geom/flat/straightchunk.js'; import _ol_geom_flat_straightchunk_ from '../../geom/flat/straightchunk.js';
import _ol_geom_GeometryType_ from '../../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../../geom/GeometryType.js';
import _ol_has_ from '../../has.js'; import _ol_has_ from '../../has.js';
@@ -177,7 +177,7 @@ _ol_render_canvas_TextReplay_.prototype.drawText = function(geometry, feature) {
var i, ii; var i, ii;
if (textState.placement === _ol_style_TextPlacement_.LINE) { if (textState.placement === _ol_style_TextPlacement_.LINE) {
if (!_ol_extent_.intersects(this.getBufferedMaxExtent(), geometry.getExtent())) { if (!intersects(this.getBufferedMaxExtent(), geometry.getExtent())) {
return; return;
} }
var ends; var ends;
+2 -2
View File
@@ -4,7 +4,7 @@
import {getUid, inherits} from '../../index.js'; import {getUid, inherits} from '../../index.js';
import _ol_array_ from '../../array.js'; import _ol_array_ from '../../array.js';
import _ol_color_ from '../../color.js'; import _ol_color_ from '../../color.js';
import _ol_extent_ from '../../extent.js'; import {intersects} from '../../extent.js';
import _ol_obj_ from '../../obj.js'; import _ol_obj_ from '../../obj.js';
import _ol_geom_flat_transform_ from '../../geom/flat/transform.js'; import _ol_geom_flat_transform_ from '../../geom/flat/transform.js';
import _ol_render_webgl_circlereplay_defaultshader_ from '../webgl/circlereplay/defaultshader.js'; import _ol_render_webgl_circlereplay_defaultshader_ from '../webgl/circlereplay/defaultshader.js';
@@ -289,7 +289,7 @@ _ol_render_webgl_CircleReplay_.prototype.drawHitDetectionReplayOneByOne = functi
if (skippedFeaturesHash[featureUid] === undefined && if (skippedFeaturesHash[featureUid] === undefined &&
feature.getGeometry() && feature.getGeometry() &&
(opt_hitExtent === undefined || _ol_extent_.intersects( (opt_hitExtent === undefined || intersects(
/** @type {Array<number>} */ (opt_hitExtent), /** @type {Array<number>} */ (opt_hitExtent),
feature.getGeometry().getExtent()))) { feature.getGeometry().getExtent()))) {
gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT); gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);
+2 -3
View File
@@ -2,7 +2,7 @@
* @module ol/render/webgl/Immediate * @module ol/render/webgl/Immediate
*/ */
import {inherits} from '../../index.js'; import {inherits} from '../../index.js';
import _ol_extent_ from '../../extent.js'; import {intersects} from '../../extent.js';
import _ol_geom_GeometryType_ from '../../geom/GeometryType.js'; import _ol_geom_GeometryType_ from '../../geom/GeometryType.js';
import _ol_render_ReplayType_ from '../ReplayType.js'; import _ol_render_ReplayType_ from '../ReplayType.js';
import _ol_render_VectorContext_ from '../VectorContext.js'; import _ol_render_VectorContext_ from '../VectorContext.js';
@@ -173,8 +173,7 @@ _ol_render_webgl_Immediate_.prototype.drawGeometry = function(geometry) {
*/ */
_ol_render_webgl_Immediate_.prototype.drawFeature = function(feature, style) { _ol_render_webgl_Immediate_.prototype.drawFeature = function(feature, style) {
var geometry = style.getGeometryFunction()(feature); var geometry = style.getGeometryFunction()(feature);
if (!geometry || if (!geometry || !intersects(this.extent_, geometry.getExtent())) {
!_ol_extent_.intersects(this.extent_, geometry.getExtent())) {
return; return;
} }
this.setStyle(style); this.setStyle(style);
+2 -2
View File
@@ -4,7 +4,7 @@
import {getUid, inherits} from '../../index.js'; import {getUid, inherits} from '../../index.js';
import _ol_array_ from '../../array.js'; import _ol_array_ from '../../array.js';
import _ol_color_ from '../../color.js'; import _ol_color_ from '../../color.js';
import _ol_extent_ from '../../extent.js'; import {intersects} from '../../extent.js';
import _ol_geom_flat_orient_ from '../../geom/flat/orient.js'; import _ol_geom_flat_orient_ from '../../geom/flat/orient.js';
import _ol_geom_flat_transform_ from '../../geom/flat/transform.js'; import _ol_geom_flat_transform_ from '../../geom/flat/transform.js';
import _ol_geom_flat_topology_ from '../../geom/flat/topology.js'; import _ol_geom_flat_topology_ from '../../geom/flat/topology.js';
@@ -593,7 +593,7 @@ _ol_render_webgl_LineStringReplay_.prototype.drawHitDetectionReplayOneByOne = fu
if (skippedFeaturesHash[featureUid] === undefined && if (skippedFeaturesHash[featureUid] === undefined &&
feature.getGeometry() && feature.getGeometry() &&
(opt_hitExtent === undefined || _ol_extent_.intersects( (opt_hitExtent === undefined || intersects(
/** @type {Array<number>} */ (opt_hitExtent), /** @type {Array<number>} */ (opt_hitExtent),
feature.getGeometry().getExtent()))) { feature.getGeometry().getExtent()))) {
gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT); gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);
+2 -2
View File
@@ -4,7 +4,7 @@
import {getUid, inherits} from '../../index.js'; import {getUid, inherits} from '../../index.js';
import _ol_array_ from '../../array.js'; import _ol_array_ from '../../array.js';
import _ol_color_ from '../../color.js'; import _ol_color_ from '../../color.js';
import _ol_extent_ from '../../extent.js'; import {intersects} from '../../extent.js';
import _ol_obj_ from '../../obj.js'; import _ol_obj_ from '../../obj.js';
import _ol_geom_flat_contains_ from '../../geom/flat/contains.js'; import _ol_geom_flat_contains_ from '../../geom/flat/contains.js';
import _ol_geom_flat_orient_ from '../../geom/flat/orient.js'; import _ol_geom_flat_orient_ from '../../geom/flat/orient.js';
@@ -970,7 +970,7 @@ _ol_render_webgl_PolygonReplay_.prototype.drawHitDetectionReplayOneByOne = funct
if (skippedFeaturesHash[featureUid] === undefined && if (skippedFeaturesHash[featureUid] === undefined &&
feature.getGeometry() && feature.getGeometry() &&
(opt_hitExtent === undefined || _ol_extent_.intersects( (opt_hitExtent === undefined || intersects(
/** @type {Array<number>} */ (opt_hitExtent), /** @type {Array<number>} */ (opt_hitExtent),
feature.getGeometry().getExtent()))) { feature.getGeometry().getExtent()))) {
gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT); gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);
+2 -2
View File
@@ -2,7 +2,7 @@
* @module ol/render/webgl/Replay * @module ol/render/webgl/Replay
*/ */
import {inherits} from '../../index.js'; import {inherits} from '../../index.js';
import _ol_extent_ from '../../extent.js'; import {getCenter} from '../../extent.js';
import _ol_render_VectorContext_ from '../VectorContext.js'; import _ol_render_VectorContext_ from '../VectorContext.js';
import _ol_transform_ from '../../transform.js'; import _ol_transform_ from '../../transform.js';
import _ol_vec_Mat4_ from '../../vec/Mat4.js'; import _ol_vec_Mat4_ from '../../vec/Mat4.js';
@@ -40,7 +40,7 @@ var _ol_render_webgl_Replay_ = function(tolerance, maxExtent) {
* @protected * @protected
* @type {ol.Coordinate} * @type {ol.Coordinate}
*/ */
this.origin = _ol_extent_.getCenter(maxExtent); this.origin = getCenter(maxExtent);
/** /**
* @private * @private
+2 -4
View File
@@ -3,7 +3,7 @@
*/ */
import {inherits} from '../../index.js'; import {inherits} from '../../index.js';
import _ol_array_ from '../../array.js'; import _ol_array_ from '../../array.js';
import _ol_extent_ from '../../extent.js'; import {buffer, createOrUpdateFromCoordinate} from '../../extent.js';
import _ol_obj_ from '../../obj.js'; import _ol_obj_ from '../../obj.js';
import _ol_render_replay_ from '../replay.js'; import _ol_render_replay_ from '../replay.js';
import _ol_render_ReplayGroup_ from '../ReplayGroup.js'; import _ol_render_ReplayGroup_ from '../ReplayGroup.js';
@@ -244,9 +244,7 @@ _ol_render_webgl_ReplayGroup_.prototype.forEachFeatureAtCoordinate = function(
if (this.renderBuffer_ !== undefined) { if (this.renderBuffer_ !== undefined) {
// build an extent around the coordinate, so that only features that // build an extent around the coordinate, so that only features that
// intersect this extent are checked // intersect this extent are checked
hitExtent = _ol_extent_.buffer( hitExtent = buffer(createOrUpdateFromCoordinate(coordinate), resolution * this.renderBuffer_);
_ol_extent_.createOrUpdateFromCoordinate(coordinate),
resolution * this.renderBuffer_);
} }
return this.replayHitDetection_(context, return this.replayHitDetection_(context,
+2 -2
View File
@@ -2,7 +2,7 @@
* @module ol/render/webgl/TextureReplay * @module ol/render/webgl/TextureReplay
*/ */
import {getUid, inherits} from '../../index.js'; import {getUid, inherits} from '../../index.js';
import _ol_extent_ from '../../extent.js'; import {intersects} from '../../extent.js';
import _ol_obj_ from '../../obj.js'; import _ol_obj_ from '../../obj.js';
import _ol_render_webgl_texturereplay_defaultshader_ from '../webgl/texturereplay/defaultshader.js'; import _ol_render_webgl_texturereplay_defaultshader_ from '../webgl/texturereplay/defaultshader.js';
import _ol_render_webgl_texturereplay_defaultshader_Locations_ from '../webgl/texturereplay/defaultshader/Locations.js'; import _ol_render_webgl_texturereplay_defaultshader_Locations_ from '../webgl/texturereplay/defaultshader/Locations.js';
@@ -438,7 +438,7 @@ _ol_render_webgl_TextureReplay_.prototype.drawHitDetectionReplayOneByOne = funct
if (skippedFeaturesHash[featureUid] === undefined && if (skippedFeaturesHash[featureUid] === undefined &&
feature.getGeometry() && feature.getGeometry() &&
(opt_hitExtent === undefined || _ol_extent_.intersects( (opt_hitExtent === undefined || intersects(
/** @type {Array<number>} */ (opt_hitExtent), /** @type {Array<number>} */ (opt_hitExtent),
feature.getGeometry().getExtent()))) { feature.getGeometry().getExtent()))) {
gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT); gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);
+2 -2
View File
@@ -5,7 +5,7 @@ import {getUid, inherits, nullFunction} from '../index.js';
import _ol_Disposable_ from '../Disposable.js'; import _ol_Disposable_ from '../Disposable.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {getWidth} from '../extent.js';
import _ol_functions_ from '../functions.js'; import _ol_functions_ from '../functions.js';
import _ol_layer_Layer_ from '../layer/Layer.js'; import _ol_layer_Layer_ from '../layer/Layer.js';
import _ol_plugins_ from '../plugins.js'; import _ol_plugins_ from '../plugins.js';
@@ -128,7 +128,7 @@ _ol_renderer_Map_.prototype.forEachFeatureAtCoordinate = function(coordinate, fr
var translatedCoordinate = coordinate; var translatedCoordinate = coordinate;
if (projection.canWrapX()) { if (projection.canWrapX()) {
var projectionExtent = projection.getExtent(); var projectionExtent = projection.getExtent();
var worldWidth = _ol_extent_.getWidth(projectionExtent); var worldWidth = getWidth(projectionExtent);
var x = coordinate[0]; var x = coordinate[0];
if (x < projectionExtent[0] || x > projectionExtent[2]) { if (x < projectionExtent[0] || x > projectionExtent[2]) {
var worldsAway = Math.ceil((projectionExtent[0] - x) / worldWidth); var worldsAway = Math.ceil((projectionExtent[0] - x) / worldWidth);
+5 -6
View File
@@ -7,7 +7,7 @@ import _ol_ImageCanvas_ from '../../ImageCanvas.js';
import _ol_LayerType_ from '../../LayerType.js'; import _ol_LayerType_ from '../../LayerType.js';
import _ol_ViewHint_ from '../../ViewHint.js'; import _ol_ViewHint_ from '../../ViewHint.js';
import _ol_array_ from '../../array.js'; import _ol_array_ from '../../array.js';
import _ol_extent_ from '../../extent.js'; import {getHeight, getIntersection, getWidth, isEmpty} from '../../extent.js';
import _ol_layer_VectorRenderType_ from '../../layer/VectorRenderType.js'; import _ol_layer_VectorRenderType_ from '../../layer/VectorRenderType.js';
import _ol_obj_ from '../../obj.js'; import _ol_obj_ from '../../obj.js';
import _ol_plugins_ from '../../plugins.js'; import _ol_plugins_ from '../../plugins.js';
@@ -122,12 +122,11 @@ _ol_renderer_canvas_ImageLayer_.prototype.prepareFrame = function(frameState, la
var renderedExtent = frameState.extent; var renderedExtent = frameState.extent;
if (layerState.extent !== undefined) { if (layerState.extent !== undefined) {
renderedExtent = _ol_extent_.getIntersection( renderedExtent = getIntersection(renderedExtent, layerState.extent);
renderedExtent, layerState.extent);
} }
if (!hints[_ol_ViewHint_.ANIMATING] && !hints[_ol_ViewHint_.INTERACTING] && if (!hints[_ol_ViewHint_.ANIMATING] && !hints[_ol_ViewHint_.INTERACTING] &&
!_ol_extent_.isEmpty(renderedExtent)) { !isEmpty(renderedExtent)) {
var projection = viewState.projection; var projection = viewState.projection;
if (!ENABLE_RASTER_REPROJECTION) { if (!ENABLE_RASTER_REPROJECTION) {
var sourceProjection = imageSource.getProjection(); var sourceProjection = imageSource.getProjection();
@@ -140,8 +139,8 @@ _ol_renderer_canvas_ImageLayer_.prototype.prepareFrame = function(frameState, la
var context = vectorRenderer.context; var context = vectorRenderer.context;
var imageFrameState = /** @type {olx.FrameState} */ (_ol_obj_.assign({}, frameState, { var imageFrameState = /** @type {olx.FrameState} */ (_ol_obj_.assign({}, frameState, {
size: [ size: [
_ol_extent_.getWidth(renderedExtent) / viewResolution, getWidth(renderedExtent) / viewResolution,
_ol_extent_.getHeight(renderedExtent) / viewResolution getHeight(renderedExtent) / viewResolution
], ],
viewState: /** @type {olx.ViewState} */ (_ol_obj_.assign({}, frameState.viewState, { viewState: /** @type {olx.ViewState} */ (_ol_obj_.assign({}, frameState.viewState, {
rotation: 0 rotation: 0
+3 -3
View File
@@ -4,7 +4,7 @@
import {inherits, nullFunction} from '../../index.js'; import {inherits, nullFunction} from '../../index.js';
import _ol_coordinate_ from '../../coordinate.js'; import _ol_coordinate_ from '../../coordinate.js';
import _ol_dom_ from '../../dom.js'; import _ol_dom_ from '../../dom.js';
import _ol_extent_ from '../../extent.js'; import {containsExtent, intersects} from '../../extent.js';
import _ol_renderer_canvas_Layer_ from '../canvas/Layer.js'; import _ol_renderer_canvas_Layer_ from '../canvas/Layer.js';
import _ol_transform_ from '../../transform.js'; import _ol_transform_ from '../../transform.js';
@@ -48,8 +48,8 @@ _ol_renderer_canvas_IntermediateCanvas_.prototype.composeFrame = function(frameS
// clipped rendering if layer extent is set // clipped rendering if layer extent is set
var extent = layerState.extent; var extent = layerState.extent;
var clipped = extent !== undefined && var clipped = extent !== undefined &&
!_ol_extent_.containsExtent(extent, frameState.extent) && !containsExtent(extent, frameState.extent) &&
_ol_extent_.intersects(extent, frameState.extent); intersects(extent, frameState.extent);
if (clipped) { if (clipped) {
this.clip(context, frameState, /** @type {ol.Extent} */ (extent)); this.clip(context, frameState, /** @type {ol.Extent} */ (extent));
} }
+5 -5
View File
@@ -2,7 +2,7 @@
* @module ol/renderer/canvas/Layer * @module ol/renderer/canvas/Layer
*/ */
import {inherits} from '../../index.js'; import {inherits} from '../../index.js';
import _ol_extent_ from '../../extent.js'; import {getBottomLeft, getBottomRight, getTopLeft, getTopRight} from '../../extent.js';
import _ol_functions_ from '../../functions.js'; import _ol_functions_ from '../../functions.js';
import _ol_render_Event_ from '../../render/Event.js'; import _ol_render_Event_ from '../../render/Event.js';
import _ol_render_EventType_ from '../../render/EventType.js'; import _ol_render_EventType_ from '../../render/EventType.js';
@@ -49,10 +49,10 @@ _ol_renderer_canvas_Layer_.prototype.clip = function(context, frameState, extent
var width = frameState.size[0] * pixelRatio; var width = frameState.size[0] * pixelRatio;
var height = frameState.size[1] * pixelRatio; var height = frameState.size[1] * pixelRatio;
var rotation = frameState.viewState.rotation; var rotation = frameState.viewState.rotation;
var topLeft = _ol_extent_.getTopLeft(/** @type {ol.Extent} */ (extent)); var topLeft = getTopLeft(/** @type {ol.Extent} */ (extent));
var topRight = _ol_extent_.getTopRight(/** @type {ol.Extent} */ (extent)); var topRight = getTopRight(/** @type {ol.Extent} */ (extent));
var bottomRight = _ol_extent_.getBottomRight(/** @type {ol.Extent} */ (extent)); var bottomRight = getBottomRight(/** @type {ol.Extent} */ (extent));
var bottomLeft = _ol_extent_.getBottomLeft(/** @type {ol.Extent} */ (extent)); var bottomLeft = getBottomLeft(/** @type {ol.Extent} */ (extent));
_ol_transform_.apply(frameState.coordinateToPixelTransform, topLeft); _ol_transform_.apply(frameState.coordinateToPixelTransform, topLeft);
_ol_transform_.apply(frameState.coordinateToPixelTransform, topRight); _ol_transform_.apply(frameState.coordinateToPixelTransform, topRight);
+6 -6
View File
@@ -7,7 +7,7 @@ import _ol_TileRange_ from '../../TileRange.js';
import _ol_TileState_ from '../../TileState.js'; import _ol_TileState_ from '../../TileState.js';
import _ol_ViewHint_ from '../../ViewHint.js'; import _ol_ViewHint_ from '../../ViewHint.js';
import _ol_dom_ from '../../dom.js'; import _ol_dom_ from '../../dom.js';
import _ol_extent_ from '../../extent.js'; import {containsExtent, createEmpty, equals, getIntersection, isEmpty} from '../../extent.js';
import _ol_renderer_Type_ from '../Type.js'; import _ol_renderer_Type_ from '../Type.js';
import _ol_renderer_canvas_IntermediateCanvas_ from '../canvas/IntermediateCanvas.js'; import _ol_renderer_canvas_IntermediateCanvas_ from '../canvas/IntermediateCanvas.js';
import _ol_transform_ from '../../transform.js'; import _ol_transform_ from '../../transform.js';
@@ -56,7 +56,7 @@ var _ol_renderer_canvas_TileLayer_ = function(tileLayer) {
* @protected * @protected
* @type {ol.Extent} * @type {ol.Extent}
*/ */
this.tmpExtent = _ol_extent_.createEmpty(); this.tmpExtent = createEmpty();
/** /**
* @private * @private
@@ -138,9 +138,9 @@ _ol_renderer_canvas_TileLayer_.prototype.prepareFrame = function(frameState, lay
var extent = frameState.extent; var extent = frameState.extent;
if (layerState.extent !== undefined) { if (layerState.extent !== undefined) {
extent = _ol_extent_.getIntersection(extent, layerState.extent); extent = getIntersection(extent, layerState.extent);
} }
if (_ol_extent_.isEmpty(extent)) { if (isEmpty(extent)) {
// Return false to prevent the rendering of the layer. // Return false to prevent the rendering of the layer.
return false; return false;
} }
@@ -212,7 +212,7 @@ _ol_renderer_canvas_TileLayer_.prototype.prepareFrame = function(frameState, lay
var animatingOrInteracting = hints[_ol_ViewHint_.ANIMATING] || hints[_ol_ViewHint_.INTERACTING]; var animatingOrInteracting = hints[_ol_ViewHint_.ANIMATING] || hints[_ol_ViewHint_.INTERACTING];
if (!(this.renderedResolution && Date.now() - frameState.time > 16 && animatingOrInteracting) && ( if (!(this.renderedResolution && Date.now() - frameState.time > 16 && animatingOrInteracting) && (
newTiles || newTiles ||
!(this.renderedExtent_ && _ol_extent_.containsExtent(this.renderedExtent_, extent)) || !(this.renderedExtent_ && containsExtent(this.renderedExtent_, extent)) ||
this.renderedRevision != sourceRevision || this.renderedRevision != sourceRevision ||
oversampling != this.oversampling_ || oversampling != this.oversampling_ ||
!animatingOrInteracting && renderedResolution != this.renderedResolution !animatingOrInteracting && renderedResolution != this.renderedResolution
@@ -229,7 +229,7 @@ _ol_renderer_canvas_TileLayer_.prototype.prepareFrame = function(frameState, lay
canvas.width = width; canvas.width = width;
canvas.height = height; canvas.height = height;
} else { } else {
if (this.renderedExtent_ && !_ol_extent_.equals(imageExtent, this.renderedExtent_)) { if (this.renderedExtent_ && !equals(imageExtent, this.renderedExtent_)) {
context.clearRect(0, 0, width, height); context.clearRect(0, 0, width, height);
} }
oversampling = this.oversampling_; oversampling = this.oversampling_;
+11 -11
View File
@@ -8,7 +8,7 @@ import _ol_dom_ from '../../dom.js';
import _ol_events_ from '../../events.js'; import _ol_events_ from '../../events.js';
import _ol_events_EventType_ from '../../events/EventType.js'; import _ol_events_EventType_ from '../../events/EventType.js';
import _ol_ext_rbush_ from 'rbush'; import _ol_ext_rbush_ from 'rbush';
import _ol_extent_ from '../../extent.js'; import {buffer, createEmpty, containsExtent, getWidth} from '../../extent.js';
import _ol_render_EventType_ from '../../render/EventType.js'; import _ol_render_EventType_ from '../../render/EventType.js';
import _ol_render_canvas_ from '../../render/canvas.js'; import _ol_render_canvas_ from '../../render/canvas.js';
import _ol_render_canvas_ReplayGroup_ from '../../render/canvas/ReplayGroup.js'; import _ol_render_canvas_ReplayGroup_ from '../../render/canvas/ReplayGroup.js';
@@ -55,7 +55,7 @@ var _ol_renderer_canvas_VectorLayer_ = function(vectorLayer) {
* @private * @private
* @type {ol.Extent} * @type {ol.Extent}
*/ */
this.renderedExtent_ = _ol_extent_.createEmpty(); this.renderedExtent_ = createEmpty();
/** /**
* @private * @private
@@ -189,9 +189,9 @@ _ol_renderer_canvas_VectorLayer_.prototype.composeFrame = function(frameState, l
width / 2, height / 2); width / 2, height / 2);
replayGroup.replay(replayContext, transform, rotation, skippedFeatureUids); replayGroup.replay(replayContext, transform, rotation, skippedFeatureUids);
if (vectorSource.getWrapX() && projection.canWrapX() && if (vectorSource.getWrapX() && projection.canWrapX() &&
!_ol_extent_.containsExtent(projectionExtent, extent)) { !containsExtent(projectionExtent, extent)) {
var startX = extent[0]; var startX = extent[0];
var worldWidth = _ol_extent_.getWidth(projectionExtent); var worldWidth = getWidth(projectionExtent);
var world = 0; var world = 0;
var offsetX; var offsetX;
while (startX < projectionExtent[0]) { while (startX < projectionExtent[0]) {
@@ -328,28 +328,28 @@ _ol_renderer_canvas_VectorLayer_.prototype.prepareFrame = function(frameState, l
vectorLayerRenderOrder = _ol_renderer_vector_.defaultOrder; vectorLayerRenderOrder = _ol_renderer_vector_.defaultOrder;
} }
var extent = _ol_extent_.buffer(frameStateExtent, var extent = buffer(frameStateExtent,
vectorLayerRenderBuffer * resolution); vectorLayerRenderBuffer * resolution);
var projectionExtent = viewState.projection.getExtent(); var projectionExtent = viewState.projection.getExtent();
if (vectorSource.getWrapX() && viewState.projection.canWrapX() && if (vectorSource.getWrapX() && viewState.projection.canWrapX() &&
!_ol_extent_.containsExtent(projectionExtent, frameState.extent)) { !containsExtent(projectionExtent, frameState.extent)) {
// For the replay group, we need an extent that intersects the real world // For the replay group, we need an extent that intersects the real world
// (-180° to +180°). To support geometries in a coordinate range from -540° // (-180° to +180°). To support geometries in a coordinate range from -540°
// to +540°, we add at least 1 world width on each side of the projection // to +540°, we add at least 1 world width on each side of the projection
// extent. If the viewport is wider than the world, we need to add half of // extent. If the viewport is wider than the world, we need to add half of
// the viewport width to make sure we cover the whole viewport. // the viewport width to make sure we cover the whole viewport.
var worldWidth = _ol_extent_.getWidth(projectionExtent); var worldWidth = getWidth(projectionExtent);
var buffer = Math.max(_ol_extent_.getWidth(extent) / 2, worldWidth); var gutter = Math.max(getWidth(extent) / 2, worldWidth);
extent[0] = projectionExtent[0] - buffer; extent[0] = projectionExtent[0] - gutter;
extent[2] = projectionExtent[2] + buffer; extent[2] = projectionExtent[2] + gutter;
} }
if (!this.dirty_ && if (!this.dirty_ &&
this.renderedResolution_ == resolution && this.renderedResolution_ == resolution &&
this.renderedRevision_ == vectorLayerRevision && this.renderedRevision_ == vectorLayerRevision &&
this.renderedRenderOrder_ == vectorLayerRenderOrder && this.renderedRenderOrder_ == vectorLayerRenderOrder &&
_ol_extent_.containsExtent(this.renderedExtent_, extent)) { containsExtent(this.renderedExtent_, extent)) {
this.replayGroupChanged = false; this.replayGroupChanged = false;
return true; return true;
} }
+8 -8
View File
@@ -8,7 +8,7 @@ import _ol_dom_ from '../../dom.js';
import _ol_events_ from '../../events.js'; import _ol_events_ from '../../events.js';
import _ol_events_EventType_ from '../../events/EventType.js'; import _ol_events_EventType_ from '../../events/EventType.js';
import _ol_ext_rbush_ from 'rbush'; import _ol_ext_rbush_ from 'rbush';
import _ol_extent_ from '../../extent.js'; import {buffer, containsCoordinate, equals, getIntersection, getTopLeft, intersects} from '../../extent.js';
import _ol_layer_VectorTileRenderType_ from '../../layer/VectorTileRenderType.js'; import _ol_layer_VectorTileRenderType_ from '../../layer/VectorTileRenderType.js';
import _ol_proj_ from '../../proj.js'; import _ol_proj_ from '../../proj.js';
import _ol_proj_Units_ from '../../proj/Units.js'; import _ol_proj_Units_ from '../../proj/Units.js';
@@ -180,9 +180,9 @@ _ol_renderer_canvas_VectorTileLayer_.prototype.createReplayGroup_ = function(
var sourceTileCoord = sourceTile.tileCoord; var sourceTileCoord = sourceTile.tileCoord;
var sourceTileExtent = sourceTileGrid.getTileCoordExtent(sourceTileCoord); var sourceTileExtent = sourceTileGrid.getTileCoordExtent(sourceTileCoord);
var sharedExtent = _ol_extent_.getIntersection(tileExtent, sourceTileExtent); var sharedExtent = getIntersection(tileExtent, sourceTileExtent);
var bufferedExtent = _ol_extent_.equals(sourceTileExtent, sharedExtent) ? null : var bufferedExtent = equals(sourceTileExtent, sharedExtent) ? null :
_ol_extent_.buffer(sharedExtent, layer.getRenderBuffer() * resolution); buffer(sharedExtent, layer.getRenderBuffer() * resolution);
var tileProjection = sourceTile.getProjection(); var tileProjection = sourceTile.getProjection();
var reproject = false; var reproject = false;
if (!_ol_proj_.equivalent(projection, tileProjection)) { if (!_ol_proj_.equivalent(projection, tileProjection)) {
@@ -234,7 +234,7 @@ _ol_renderer_canvas_VectorTileLayer_.prototype.createReplayGroup_ = function(
} }
feature.getGeometry().transform(tileProjection, projection); feature.getGeometry().transform(tileProjection, projection);
} }
if (!bufferedExtent || _ol_extent_.intersects(bufferedExtent, feature.getGeometry().getExtent())) { if (!bufferedExtent || intersects(bufferedExtent, feature.getGeometry().getExtent())) {
renderFeature.call(this, feature); renderFeature.call(this, feature);
} }
} }
@@ -286,8 +286,8 @@ _ol_renderer_canvas_VectorTileLayer_.prototype.forEachFeatureAtCoordinate = func
tile = renderedTiles[i]; tile = renderedTiles[i];
tileCoord = tile.wrappedTileCoord; tileCoord = tile.wrappedTileCoord;
tileExtent = tileGrid.getTileCoordExtent(tileCoord, this.tmpExtent); tileExtent = tileGrid.getTileCoordExtent(tileCoord, this.tmpExtent);
bufferedExtent = _ol_extent_.buffer(tileExtent, hitTolerance * resolution, bufferedExtent); bufferedExtent = buffer(tileExtent, hitTolerance * resolution, bufferedExtent);
if (!_ol_extent_.containsCoordinate(bufferedExtent, coordinate)) { if (!containsCoordinate(bufferedExtent, coordinate)) {
continue; continue;
} }
for (var t = 0, tt = tile.tileKeys.length; t < tt; ++t) { for (var t = 0, tt = tile.tileKeys.length; t < tt; ++t) {
@@ -332,7 +332,7 @@ _ol_renderer_canvas_VectorTileLayer_.prototype.getReplayTransform_ = function(ti
var renderResolution = viewState.resolution / pixelRatio; var renderResolution = viewState.resolution / pixelRatio;
var tileExtent = tileGrid.getTileCoordExtent(tileCoord, this.tmpExtent); var tileExtent = tileGrid.getTileCoordExtent(tileCoord, this.tmpExtent);
var center = viewState.center; var center = viewState.center;
var origin = _ol_extent_.getTopLeft(tileExtent); var origin = getTopLeft(tileExtent);
var size = frameState.size; var size = frameState.size;
var offsetX = Math.round(pixelRatio * size[0] / 2); var offsetX = Math.round(pixelRatio * size[0] / 2);
var offsetY = Math.round(pixelRatio * size[1] / 2); var offsetY = Math.round(pixelRatio * size[1] / 2);
+3 -4
View File
@@ -6,7 +6,7 @@ import {inherits, nullFunction} from '../../index.js';
import _ol_LayerType_ from '../../LayerType.js'; import _ol_LayerType_ from '../../LayerType.js';
import _ol_ViewHint_ from '../../ViewHint.js'; import _ol_ViewHint_ from '../../ViewHint.js';
import _ol_dom_ from '../../dom.js'; import _ol_dom_ from '../../dom.js';
import _ol_extent_ from '../../extent.js'; import {getIntersection, isEmpty} from '../../extent.js';
import _ol_functions_ from '../../functions.js'; import _ol_functions_ from '../../functions.js';
import _ol_renderer_Type_ from '../Type.js'; import _ol_renderer_Type_ from '../Type.js';
import _ol_renderer_webgl_Layer_ from '../webgl/Layer.js'; import _ol_renderer_webgl_Layer_ from '../webgl/Layer.js';
@@ -137,11 +137,10 @@ _ol_renderer_webgl_ImageLayer_.prototype.prepareFrame = function(frameState, lay
var renderedExtent = frameState.extent; var renderedExtent = frameState.extent;
if (layerState.extent !== undefined) { if (layerState.extent !== undefined) {
renderedExtent = _ol_extent_.getIntersection( renderedExtent = getIntersection(renderedExtent, layerState.extent);
renderedExtent, layerState.extent);
} }
if (!hints[_ol_ViewHint_.ANIMATING] && !hints[_ol_ViewHint_.INTERACTING] && if (!hints[_ol_ViewHint_.ANIMATING] && !hints[_ol_ViewHint_.INTERACTING] &&
!_ol_extent_.isEmpty(renderedExtent)) { !isEmpty(renderedExtent)) {
var projection = viewState.projection; var projection = viewState.projection;
if (!ENABLE_RASTER_REPROJECTION) { if (!ENABLE_RASTER_REPROJECTION) {
var sourceProjection = imageSource.getProjection(); var sourceProjection = imageSource.getProjection();
+3 -3
View File
@@ -9,7 +9,7 @@ import _ol_LayerType_ from '../../LayerType.js';
import _ol_TileRange_ from '../../TileRange.js'; import _ol_TileRange_ from '../../TileRange.js';
import _ol_TileState_ from '../../TileState.js'; import _ol_TileState_ from '../../TileState.js';
import _ol_array_ from '../../array.js'; import _ol_array_ from '../../array.js';
import _ol_extent_ from '../../extent.js'; import {createEmpty, intersects} from '../../extent.js';
import _ol_math_ from '../../math.js'; import _ol_math_ from '../../math.js';
import _ol_renderer_Type_ from '../Type.js'; import _ol_renderer_Type_ from '../Type.js';
import _ol_renderer_webgl_Layer_ from '../webgl/Layer.js'; import _ol_renderer_webgl_Layer_ from '../webgl/Layer.js';
@@ -246,7 +246,7 @@ _ol_renderer_webgl_TileLayer_.prototype.prepareFrame = function(frameState, laye
var useInterimTilesOnError = tileLayer.getUseInterimTilesOnError(); var useInterimTilesOnError = tileLayer.getUseInterimTilesOnError();
var allTilesLoaded = true; var allTilesLoaded = true;
var tmpExtent = _ol_extent_.createEmpty(); var tmpExtent = createEmpty();
var tmpTileRange = new _ol_TileRange_(0, 0, 0, 0); var tmpTileRange = new _ol_TileRange_(0, 0, 0, 0);
var childTileRange, drawable, fullyLoaded, tile, tileState; var childTileRange, drawable, fullyLoaded, tile, tileState;
var x, y, tileExtent; var x, y, tileExtent;
@@ -257,7 +257,7 @@ _ol_renderer_webgl_TileLayer_.prototype.prepareFrame = function(frameState, laye
if (layerState.extent !== undefined) { if (layerState.extent !== undefined) {
// ignore tiles outside layer extent // ignore tiles outside layer extent
tileExtent = tileGrid.getTileCoordExtent(tile.tileCoord, tmpExtent); tileExtent = tileGrid.getTileCoordExtent(tile.tileCoord, tmpExtent);
if (!_ol_extent_.intersects(tileExtent, layerState.extent)) { if (!intersects(tileExtent, layerState.extent)) {
continue; continue;
} }
} }
+4 -4
View File
@@ -4,7 +4,7 @@
import {getUid, inherits} from '../../index.js'; import {getUid, inherits} from '../../index.js';
import _ol_LayerType_ from '../../LayerType.js'; import _ol_LayerType_ from '../../LayerType.js';
import _ol_ViewHint_ from '../../ViewHint.js'; import _ol_ViewHint_ from '../../ViewHint.js';
import _ol_extent_ from '../../extent.js'; import {buffer, containsExtent, createEmpty} from '../../extent.js';
import _ol_render_webgl_ReplayGroup_ from '../../render/webgl/ReplayGroup.js'; import _ol_render_webgl_ReplayGroup_ from '../../render/webgl/ReplayGroup.js';
import _ol_renderer_Type_ from '../Type.js'; import _ol_renderer_Type_ from '../Type.js';
import _ol_renderer_vector_ from '../vector.js'; import _ol_renderer_vector_ from '../vector.js';
@@ -44,7 +44,7 @@ var _ol_renderer_webgl_VectorLayer_ = function(mapRenderer, vectorLayer) {
* @private * @private
* @type {ol.Extent} * @type {ol.Extent}
*/ */
this.renderedExtent_ = _ol_extent_.createEmpty(); this.renderedExtent_ = createEmpty();
/** /**
* @private * @private
@@ -241,14 +241,14 @@ _ol_renderer_webgl_VectorLayer_.prototype.prepareFrame = function(frameState, la
vectorLayerRenderOrder = _ol_renderer_vector_.defaultOrder; vectorLayerRenderOrder = _ol_renderer_vector_.defaultOrder;
} }
var extent = _ol_extent_.buffer(frameStateExtent, var extent = buffer(frameStateExtent,
vectorLayerRenderBuffer * resolution); vectorLayerRenderBuffer * resolution);
if (!this.dirty_ && if (!this.dirty_ &&
this.renderedResolution_ == resolution && this.renderedResolution_ == resolution &&
this.renderedRevision_ == vectorLayerRevision && this.renderedRevision_ == vectorLayerRevision &&
this.renderedRenderOrder_ == vectorLayerRenderOrder && this.renderedRenderOrder_ == vectorLayerRenderOrder &&
_ol_extent_.containsExtent(this.renderedExtent_, extent)) { containsExtent(this.renderedExtent_, extent)) {
return true; return true;
} }
+9 -9
View File
@@ -2,7 +2,7 @@
* @module ol/reproj * @module ol/reproj
*/ */
import _ol_dom_ from './dom.js'; import _ol_dom_ from './dom.js';
import _ol_extent_ from './extent.js'; import {containsCoordinate, createEmpty, extend, getHeight, getTopLeft, getWidth} from './extent.js';
import _ol_math_ from './math.js'; import _ol_math_ from './math.js';
import _ol_proj_ from './proj.js'; import _ol_proj_ from './proj.js';
var _ol_reproj_ = {}; var _ol_reproj_ = {};
@@ -43,7 +43,7 @@ _ol_reproj_.calculateSourceResolution = function(sourceProj, targetProj,
// in order to achieve optimal results. // in order to achieve optimal results.
var sourceExtent = sourceProj.getExtent(); var sourceExtent = sourceProj.getExtent();
if (!sourceExtent || _ol_extent_.containsCoordinate(sourceExtent, sourceCenter)) { if (!sourceExtent || containsCoordinate(sourceExtent, sourceCenter)) {
var compensationFactor = var compensationFactor =
_ol_proj_.getPointResolution(sourceProj, sourceResolution, sourceCenter) / _ol_proj_.getPointResolution(sourceProj, sourceResolution, sourceCenter) /
sourceResolution; sourceResolution;
@@ -105,13 +105,13 @@ _ol_reproj_.render = function(width, height, pixelRatio,
context.scale(pixelRatio, pixelRatio); context.scale(pixelRatio, pixelRatio);
var sourceDataExtent = _ol_extent_.createEmpty(); var sourceDataExtent = createEmpty();
sources.forEach(function(src, i, arr) { sources.forEach(function(src, i, arr) {
_ol_extent_.extend(sourceDataExtent, src.extent); extend(sourceDataExtent, src.extent);
}); });
var canvasWidthInUnits = _ol_extent_.getWidth(sourceDataExtent); var canvasWidthInUnits = getWidth(sourceDataExtent);
var canvasHeightInUnits = _ol_extent_.getHeight(sourceDataExtent); var canvasHeightInUnits = getHeight(sourceDataExtent);
var stitchContext = _ol_dom_.createCanvasContext2D( var stitchContext = _ol_dom_.createCanvasContext2D(
Math.round(pixelRatio * canvasWidthInUnits / sourceResolution), Math.round(pixelRatio * canvasWidthInUnits / sourceResolution),
Math.round(pixelRatio * canvasHeightInUnits / sourceResolution)); Math.round(pixelRatio * canvasHeightInUnits / sourceResolution));
@@ -121,8 +121,8 @@ _ol_reproj_.render = function(width, height, pixelRatio,
sources.forEach(function(src, i, arr) { sources.forEach(function(src, i, arr) {
var xPos = src.extent[0] - sourceDataExtent[0]; var xPos = src.extent[0] - sourceDataExtent[0];
var yPos = -(src.extent[3] - sourceDataExtent[3]); var yPos = -(src.extent[3] - sourceDataExtent[3]);
var srcWidth = _ol_extent_.getWidth(src.extent); var srcWidth = getWidth(src.extent);
var srcHeight = _ol_extent_.getHeight(src.extent); var srcHeight = getHeight(src.extent);
stitchContext.drawImage( stitchContext.drawImage(
src.image, src.image,
@@ -132,7 +132,7 @@ _ol_reproj_.render = function(width, height, pixelRatio,
srcWidth * stitchScale, srcHeight * stitchScale); srcWidth * stitchScale, srcHeight * stitchScale);
}); });
var targetTopLeft = _ol_extent_.getTopLeft(targetExtent); var targetTopLeft = getTopLeft(targetExtent);
triangulation.getTriangles().forEach(function(triangle, i, arr) { triangulation.getTriangles().forEach(function(triangle, i, arr) {
/* Calculate affine transform (src -> dst) /* Calculate affine transform (src -> dst)
+5 -6
View File
@@ -7,7 +7,7 @@ import _ol_ImageBase_ from '../ImageBase.js';
import _ol_ImageState_ from '../ImageState.js'; import _ol_ImageState_ from '../ImageState.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {getCenter, getIntersection, getHeight, getWidth} from '../extent.js';
import _ol_reproj_ from '../reproj.js'; import _ol_reproj_ from '../reproj.js';
import _ol_reproj_Triangulation_ from '../reproj/Triangulation.js'; import _ol_reproj_Triangulation_ from '../reproj/Triangulation.js';
@@ -43,9 +43,9 @@ var _ol_reproj_Image_ = function(sourceProj, targetProj,
var maxTargetExtent = targetProj.getExtent(); var maxTargetExtent = targetProj.getExtent();
var limitedTargetExtent = maxTargetExtent ? var limitedTargetExtent = maxTargetExtent ?
_ol_extent_.getIntersection(targetExtent, maxTargetExtent) : targetExtent; getIntersection(targetExtent, maxTargetExtent) : targetExtent;
var targetCenter = _ol_extent_.getCenter(limitedTargetExtent); var targetCenter = getCenter(limitedTargetExtent);
var sourceResolution = _ol_reproj_.calculateSourceResolution( var sourceResolution = _ol_reproj_.calculateSourceResolution(
sourceProj, targetProj, targetCenter, targetResolution); sourceProj, targetProj, targetCenter, targetResolution);
@@ -145,9 +145,8 @@ _ol_reproj_Image_.prototype.getProjection = function() {
_ol_reproj_Image_.prototype.reproject_ = function() { _ol_reproj_Image_.prototype.reproject_ = function() {
var sourceState = this.sourceImage_.getState(); var sourceState = this.sourceImage_.getState();
if (sourceState == _ol_ImageState_.LOADED) { if (sourceState == _ol_ImageState_.LOADED) {
var width = _ol_extent_.getWidth(this.targetExtent_) / this.targetResolution_; var width = getWidth(this.targetExtent_) / this.targetResolution_;
var height = var height = getHeight(this.targetExtent_) / this.targetResolution_;
_ol_extent_.getHeight(this.targetExtent_) / this.targetResolution_;
this.canvas_ = _ol_reproj_.render(width, height, this.sourcePixelRatio_, this.canvas_ = _ol_reproj_.render(width, height, this.sourcePixelRatio_,
this.sourceImage_.getResolution(), this.maxSourceExtent_, this.sourceImage_.getResolution(), this.maxSourceExtent_,
+7 -8
View File
@@ -7,7 +7,7 @@ import _ol_Tile_ from '../Tile.js';
import _ol_TileState_ from '../TileState.js'; import _ol_TileState_ from '../TileState.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {getArea, getCenter, getIntersection} from '../extent.js';
import _ol_math_ from '../math.js'; import _ol_math_ from '../math.js';
import _ol_reproj_ from '../reproj.js'; import _ol_reproj_ from '../reproj.js';
import _ol_reproj_Triangulation_ from '../reproj/Triangulation.js'; import _ol_reproj_Triangulation_ from '../reproj/Triangulation.js';
@@ -103,9 +103,9 @@ var _ol_reproj_Tile_ = function(sourceProj, sourceTileGrid,
var maxSourceExtent = this.sourceTileGrid_.getExtent(); var maxSourceExtent = this.sourceTileGrid_.getExtent();
var limitedTargetExtent = maxTargetExtent ? var limitedTargetExtent = maxTargetExtent ?
_ol_extent_.getIntersection(targetExtent, maxTargetExtent) : targetExtent; getIntersection(targetExtent, maxTargetExtent) : targetExtent;
if (_ol_extent_.getArea(limitedTargetExtent) === 0) { if (getArea(limitedTargetExtent) === 0) {
// Tile is completely outside range -> EMPTY // Tile is completely outside range -> EMPTY
// TODO: is it actually correct that the source even creates the tile ? // TODO: is it actually correct that the source even creates the tile ?
this.state = _ol_TileState_.EMPTY; this.state = _ol_TileState_.EMPTY;
@@ -117,15 +117,14 @@ var _ol_reproj_Tile_ = function(sourceProj, sourceTileGrid,
if (!maxSourceExtent) { if (!maxSourceExtent) {
maxSourceExtent = sourceProjExtent; maxSourceExtent = sourceProjExtent;
} else { } else {
maxSourceExtent = _ol_extent_.getIntersection( maxSourceExtent = getIntersection(maxSourceExtent, sourceProjExtent);
maxSourceExtent, sourceProjExtent);
} }
} }
var targetResolution = targetTileGrid.getResolution( var targetResolution = targetTileGrid.getResolution(
this.wrappedTileCoord_[0]); this.wrappedTileCoord_[0]);
var targetCenter = _ol_extent_.getCenter(limitedTargetExtent); var targetCenter = getCenter(limitedTargetExtent);
var sourceResolution = _ol_reproj_.calculateSourceResolution( var sourceResolution = _ol_reproj_.calculateSourceResolution(
sourceProj, targetProj, targetCenter, targetResolution); sourceProj, targetProj, targetCenter, targetResolution);
@@ -163,11 +162,11 @@ var _ol_reproj_Tile_ = function(sourceProj, sourceTileGrid,
sourceExtent[3] = _ol_math_.clamp( sourceExtent[3] = _ol_math_.clamp(
sourceExtent[3], maxSourceExtent[1], maxSourceExtent[3]); sourceExtent[3], maxSourceExtent[1], maxSourceExtent[3]);
} else { } else {
sourceExtent = _ol_extent_.getIntersection(sourceExtent, maxSourceExtent); sourceExtent = getIntersection(sourceExtent, maxSourceExtent);
} }
} }
if (!_ol_extent_.getArea(sourceExtent)) { if (!getArea(sourceExtent)) {
this.state = _ol_TileState_.EMPTY; this.state = _ol_TileState_.EMPTY;
} else { } else {
var sourceRange = sourceTileGrid.getTileRangeForExtentAndZ( var sourceRange = sourceTileGrid.getTileRangeForExtentAndZ(
+18 -19
View File
@@ -1,7 +1,8 @@
/** /**
* @module ol/reproj/Triangulation * @module ol/reproj/Triangulation
*/ */
import _ol_extent_ from '../extent.js'; import {boundingExtent, createEmpty, extendCoordinate, getBottomLeft, getBottomRight,
getTopLeft, getTopRight, getWidth, intersects} from '../extent.js';
import _ol_math_ from '../math.js'; import _ol_math_ from '../math.js';
import _ol_proj_ from '../proj.js'; import _ol_proj_ from '../proj.js';
@@ -104,27 +105,26 @@ var _ol_reproj_Triangulation_ = function(sourceProj, targetProj, targetExtent,
this.canWrapXInSource_ = this.sourceProj_.canWrapX() && this.canWrapXInSource_ = this.sourceProj_.canWrapX() &&
!!maxSourceExtent && !!maxSourceExtent &&
!!this.sourceProj_.getExtent() && !!this.sourceProj_.getExtent() &&
(_ol_extent_.getWidth(maxSourceExtent) == (getWidth(maxSourceExtent) == getWidth(this.sourceProj_.getExtent()));
_ol_extent_.getWidth(this.sourceProj_.getExtent()));
/** /**
* @type {?number} * @type {?number}
* @private * @private
*/ */
this.sourceWorldWidth_ = this.sourceProj_.getExtent() ? this.sourceWorldWidth_ = this.sourceProj_.getExtent() ?
_ol_extent_.getWidth(this.sourceProj_.getExtent()) : null; getWidth(this.sourceProj_.getExtent()) : null;
/** /**
* @type {?number} * @type {?number}
* @private * @private
*/ */
this.targetWorldWidth_ = this.targetProj_.getExtent() ? this.targetWorldWidth_ = this.targetProj_.getExtent() ?
_ol_extent_.getWidth(this.targetProj_.getExtent()) : null; getWidth(this.targetProj_.getExtent()) : null;
var destinationTopLeft = _ol_extent_.getTopLeft(targetExtent); var destinationTopLeft = getTopLeft(targetExtent);
var destinationTopRight = _ol_extent_.getTopRight(targetExtent); var destinationTopRight = getTopRight(targetExtent);
var destinationBottomRight = _ol_extent_.getBottomRight(targetExtent); var destinationBottomRight = getBottomRight(targetExtent);
var destinationBottomLeft = _ol_extent_.getBottomLeft(targetExtent); var destinationBottomLeft = getBottomLeft(targetExtent);
var sourceTopLeft = this.transformInv_(destinationTopLeft); var sourceTopLeft = this.transformInv_(destinationTopLeft);
var sourceTopRight = this.transformInv_(destinationTopRight); var sourceTopRight = this.transformInv_(destinationTopRight);
var sourceBottomRight = this.transformInv_(destinationBottomRight); var sourceBottomRight = this.transformInv_(destinationBottomRight);
@@ -217,9 +217,9 @@ _ol_reproj_Triangulation_.prototype.addTriangle_ = function(a, b, c,
_ol_reproj_Triangulation_.prototype.addQuad_ = function(a, b, c, d, _ol_reproj_Triangulation_.prototype.addQuad_ = function(a, b, c, d,
aSrc, bSrc, cSrc, dSrc, maxSubdivision) { aSrc, bSrc, cSrc, dSrc, maxSubdivision) {
var sourceQuadExtent = _ol_extent_.boundingExtent([aSrc, bSrc, cSrc, dSrc]); var sourceQuadExtent = boundingExtent([aSrc, bSrc, cSrc, dSrc]);
var sourceCoverageX = this.sourceWorldWidth_ ? var sourceCoverageX = this.sourceWorldWidth_ ?
_ol_extent_.getWidth(sourceQuadExtent) / this.sourceWorldWidth_ : null; getWidth(sourceQuadExtent) / this.sourceWorldWidth_ : null;
var sourceWorldWidth = /** @type {number} */ (this.sourceWorldWidth_); var sourceWorldWidth = /** @type {number} */ (this.sourceWorldWidth_);
// when the quad is wrapped in the source projection // when the quad is wrapped in the source projection
@@ -231,9 +231,8 @@ _ol_reproj_Triangulation_.prototype.addQuad_ = function(a, b, c, d,
if (maxSubdivision > 0) { if (maxSubdivision > 0) {
if (this.targetProj_.isGlobal() && this.targetWorldWidth_) { if (this.targetProj_.isGlobal() && this.targetWorldWidth_) {
var targetQuadExtent = _ol_extent_.boundingExtent([a, b, c, d]); var targetQuadExtent = boundingExtent([a, b, c, d]);
var targetCoverageX = var targetCoverageX = getWidth(targetQuadExtent) / this.targetWorldWidth_;
_ol_extent_.getWidth(targetQuadExtent) / this.targetWorldWidth_;
needsSubdivision |= needsSubdivision |=
targetCoverageX > MAX_TRIANGLE_WIDTH; targetCoverageX > MAX_TRIANGLE_WIDTH;
} }
@@ -244,7 +243,7 @@ _ol_reproj_Triangulation_.prototype.addQuad_ = function(a, b, c, d,
} }
if (!needsSubdivision && this.maxSourceExtent_) { if (!needsSubdivision && this.maxSourceExtent_) {
if (!_ol_extent_.intersects(sourceQuadExtent, this.maxSourceExtent_)) { if (!intersects(sourceQuadExtent, this.maxSourceExtent_)) {
// whole quad outside source projection extent -> ignore // whole quad outside source projection extent -> ignore
return; return;
} }
@@ -328,13 +327,13 @@ _ol_reproj_Triangulation_.prototype.addQuad_ = function(a, b, c, d,
* @return {ol.Extent} Calculated extent. * @return {ol.Extent} Calculated extent.
*/ */
_ol_reproj_Triangulation_.prototype.calculateSourceExtent = function() { _ol_reproj_Triangulation_.prototype.calculateSourceExtent = function() {
var extent = _ol_extent_.createEmpty(); var extent = createEmpty();
this.triangles_.forEach(function(triangle, i, arr) { this.triangles_.forEach(function(triangle, i, arr) {
var src = triangle.source; var src = triangle.source;
_ol_extent_.extendCoordinate(extent, src[0]); extendCoordinate(extent, src[0]);
_ol_extent_.extendCoordinate(extent, src[1]); extendCoordinate(extent, src[1]);
_ol_extent_.extendCoordinate(extent, src[2]); extendCoordinate(extent, src[2]);
}); });
return extent; return extent;
+6 -6
View File
@@ -3,7 +3,7 @@
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_TileUrlFunction_ from '../TileUrlFunction.js'; import _ol_TileUrlFunction_ from '../TileUrlFunction.js';
import _ol_extent_ from '../extent.js'; import {applyTransform, intersects} from '../extent.js';
import _ol_net_ from '../net.js'; import _ol_net_ from '../net.js';
import _ol_proj_ from '../proj.js'; import _ol_proj_ from '../proj.js';
import _ol_source_State_ from '../source/State.js'; import _ol_source_State_ from '../source/State.js';
@@ -185,21 +185,21 @@ _ol_source_BingMaps_.prototype.handleImageryMetadataResponse = function(response
var attributions = []; var attributions = [];
var zoom = frameState.viewState.zoom; var zoom = frameState.viewState.zoom;
resource.imageryProviders.map(function(imageryProvider) { resource.imageryProviders.map(function(imageryProvider) {
var intersects = false; var intersecting = false;
var coverageAreas = imageryProvider.coverageAreas; var coverageAreas = imageryProvider.coverageAreas;
for (var i = 0, ii = coverageAreas.length; i < ii; ++i) { for (var i = 0, ii = coverageAreas.length; i < ii; ++i) {
var coverageArea = coverageAreas[i]; var coverageArea = coverageAreas[i];
if (zoom >= coverageArea.zoomMin && zoom <= coverageArea.zoomMax) { if (zoom >= coverageArea.zoomMin && zoom <= coverageArea.zoomMax) {
var bbox = coverageArea.bbox; var bbox = coverageArea.bbox;
var epsg4326Extent = [bbox[1], bbox[0], bbox[3], bbox[2]]; var epsg4326Extent = [bbox[1], bbox[0], bbox[3], bbox[2]];
var extent = _ol_extent_.applyTransform(epsg4326Extent, transform); var extent = applyTransform(epsg4326Extent, transform);
if (_ol_extent_.intersects(extent, frameState.extent)) { if (intersects(extent, frameState.extent)) {
intersects = true; intersecting = true;
break; break;
} }
} }
} }
if (intersects) { if (intersecting) {
attributions.push(imageryProvider.attribution); attributions.push(imageryProvider.attribution);
} }
}); });
+4 -4
View File
@@ -7,7 +7,7 @@ import _ol_asserts_ from '../asserts.js';
import _ol_Feature_ from '../Feature.js'; import _ol_Feature_ from '../Feature.js';
import _ol_coordinate_ from '../coordinate.js'; import _ol_coordinate_ from '../coordinate.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {buffer, createEmpty, createOrUpdateFromCoordinate} from '../extent.js';
import _ol_geom_Point_ from '../geom/Point.js'; import _ol_geom_Point_ from '../geom/Point.js';
import _ol_source_Vector_ from '../source/Vector.js'; import _ol_source_Vector_ from '../source/Vector.js';
@@ -140,7 +140,7 @@ _ol_source_Cluster_.prototype.cluster = function() {
return; return;
} }
this.features.length = 0; this.features.length = 0;
var extent = _ol_extent_.createEmpty(); var extent = createEmpty();
var mapDistance = this.distance * this.resolution; var mapDistance = this.distance * this.resolution;
var features = this.source.getFeatures(); var features = this.source.getFeatures();
@@ -155,8 +155,8 @@ _ol_source_Cluster_.prototype.cluster = function() {
var geometry = this.geometryFunction(feature); var geometry = this.geometryFunction(feature);
if (geometry) { if (geometry) {
var coordinates = geometry.getCoordinates(); var coordinates = geometry.getCoordinates();
_ol_extent_.createOrUpdateFromCoordinate(coordinates, extent); createOrUpdateFromCoordinate(coordinates, extent);
_ol_extent_.buffer(extent, mapDistance, extent); buffer(extent, mapDistance, extent);
var neighbors = this.source.getFeaturesInExtent(extent); var neighbors = this.source.getFeaturesInExtent(extent);
neighbors = neighbors.filter(function(neighbor) { neighbors = neighbors.filter(function(neighbor) {
+2 -2
View File
@@ -6,7 +6,7 @@ import {inherits} from '../index.js';
import _ol_ImageState_ from '../ImageState.js'; import _ol_ImageState_ from '../ImageState.js';
import _ol_array_ from '../array.js'; import _ol_array_ from '../array.js';
import _ol_events_Event_ from '../events/Event.js'; import _ol_events_Event_ from '../events/Event.js';
import _ol_extent_ from '../extent.js'; import {equals} from '../extent.js';
import _ol_proj_ from '../proj.js'; import _ol_proj_ from '../proj.js';
import _ol_reproj_Image_ from '../reproj/Image.js'; import _ol_reproj_Image_ from '../reproj/Image.js';
import _ol_source_Source_ from '../source/Source.js'; import _ol_source_Source_ from '../source/Source.js';
@@ -103,7 +103,7 @@ _ol_source_Image_.prototype.getImage = function(extent, resolution, pixelRatio,
_ol_proj_.equivalent( _ol_proj_.equivalent(
this.reprojectedImage_.getProjection(), projection) && this.reprojectedImage_.getProjection(), projection) &&
this.reprojectedImage_.getResolution() == resolution && this.reprojectedImage_.getResolution() == resolution &&
_ol_extent_.equals(this.reprojectedImage_.getExtent(), extent)) { equals(this.reprojectedImage_.getExtent(), extent)) {
return this.reprojectedImage_; return this.reprojectedImage_;
} }
this.reprojectedImage_.dispose(); this.reprojectedImage_.dispose();
+6 -6
View File
@@ -6,7 +6,7 @@ import _ol_Image_ from '../Image.js';
import _ol_asserts_ from '../asserts.js'; import _ol_asserts_ from '../asserts.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {containsExtent, getHeight, getWidth} from '../extent.js';
import _ol_obj_ from '../obj.js'; import _ol_obj_ from '../obj.js';
import _ol_source_Image_ from '../source/Image.js'; import _ol_source_Image_ from '../source/Image.js';
import _ol_uri_ from '../uri.js'; import _ol_uri_ from '../uri.js';
@@ -128,7 +128,7 @@ _ol_source_ImageArcGISRest_.prototype.getImageInternal = function(extent, resolu
this.renderedRevision_ == this.getRevision() && this.renderedRevision_ == this.getRevision() &&
image.getResolution() == resolution && image.getResolution() == resolution &&
image.getPixelRatio() == pixelRatio && image.getPixelRatio() == pixelRatio &&
_ol_extent_.containsExtent(image.getExtent(), extent)) { containsExtent(image.getExtent(), extent)) {
return image; return image;
} }
@@ -143,8 +143,8 @@ _ol_source_ImageArcGISRest_.prototype.getImageInternal = function(extent, resolu
var centerX = (extent[0] + extent[2]) / 2; var centerX = (extent[0] + extent[2]) / 2;
var centerY = (extent[1] + extent[3]) / 2; var centerY = (extent[1] + extent[3]) / 2;
if (this.ratio_ != 1) { if (this.ratio_ != 1) {
var halfWidth = this.ratio_ * _ol_extent_.getWidth(extent) / 2; var halfWidth = this.ratio_ * getWidth(extent) / 2;
var halfHeight = this.ratio_ * _ol_extent_.getHeight(extent) / 2; var halfHeight = this.ratio_ * getHeight(extent) / 2;
extent[0] = centerX - halfWidth; extent[0] = centerX - halfWidth;
extent[1] = centerY - halfHeight; extent[1] = centerY - halfHeight;
extent[2] = centerX + halfWidth; extent[2] = centerX + halfWidth;
@@ -154,8 +154,8 @@ _ol_source_ImageArcGISRest_.prototype.getImageInternal = function(extent, resolu
var imageResolution = resolution / pixelRatio; var imageResolution = resolution / pixelRatio;
// Compute an integer width and height. // Compute an integer width and height.
var width = Math.ceil(_ol_extent_.getWidth(extent) / imageResolution); var width = Math.ceil(getWidth(extent) / imageResolution);
var height = Math.ceil(_ol_extent_.getHeight(extent) / imageResolution); var height = Math.ceil(getHeight(extent) / imageResolution);
// Modify the extent to match the integer width and height. // Modify the extent to match the integer width and height.
extent[0] = centerX - imageResolution * width / 2; extent[0] = centerX - imageResolution * width / 2;
+5 -5
View File
@@ -3,7 +3,7 @@
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_ImageCanvas_ from '../ImageCanvas.js'; import _ol_ImageCanvas_ from '../ImageCanvas.js';
import _ol_extent_ from '../extent.js'; import {containsExtent, getHeight, getWidth, scaleFromCenter} from '../extent.js';
import _ol_source_Image_ from '../source/Image.js'; import _ol_source_Image_ from '../source/Image.js';
/** /**
@@ -66,14 +66,14 @@ _ol_source_ImageCanvas_.prototype.getImageInternal = function(extent, resolution
this.renderedRevision_ == this.getRevision() && this.renderedRevision_ == this.getRevision() &&
canvas.getResolution() == resolution && canvas.getResolution() == resolution &&
canvas.getPixelRatio() == pixelRatio && canvas.getPixelRatio() == pixelRatio &&
_ol_extent_.containsExtent(canvas.getExtent(), extent)) { containsExtent(canvas.getExtent(), extent)) {
return canvas; return canvas;
} }
extent = extent.slice(); extent = extent.slice();
_ol_extent_.scaleFromCenter(extent, this.ratio_); scaleFromCenter(extent, this.ratio_);
var width = _ol_extent_.getWidth(extent) / resolution; var width = getWidth(extent) / resolution;
var height = _ol_extent_.getHeight(extent) / resolution; var height = getHeight(extent) / resolution;
var size = [width * pixelRatio, height * pixelRatio]; var size = [width * pixelRatio, height * pixelRatio];
var canvasElement = this.canvasFunction_( var canvasElement = this.canvasFunction_(
+8 -8
View File
@@ -5,7 +5,7 @@ import {inherits} from '../index.js';
import _ol_Image_ from '../Image.js'; import _ol_Image_ from '../Image.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {containsExtent, getCenter, getHeight, getWidth, scaleFromCenter} from '../extent.js';
import _ol_obj_ from '../obj.js'; import _ol_obj_ from '../obj.js';
import _ol_source_Image_ from '../source/Image.js'; import _ol_source_Image_ from '../source/Image.js';
import _ol_uri_ from '../uri.js'; import _ol_uri_ from '../uri.js';
@@ -126,16 +126,16 @@ _ol_source_ImageMapGuide_.prototype.getImageInternal = function(extent, resoluti
this.renderedRevision_ == this.getRevision() && this.renderedRevision_ == this.getRevision() &&
image.getResolution() == resolution && image.getResolution() == resolution &&
image.getPixelRatio() == pixelRatio && image.getPixelRatio() == pixelRatio &&
_ol_extent_.containsExtent(image.getExtent(), extent)) { containsExtent(image.getExtent(), extent)) {
return image; return image;
} }
if (this.ratio_ != 1) { if (this.ratio_ != 1) {
extent = extent.slice(); extent = extent.slice();
_ol_extent_.scaleFromCenter(extent, this.ratio_); scaleFromCenter(extent, this.ratio_);
} }
var width = _ol_extent_.getWidth(extent) / resolution; var width = getWidth(extent) / resolution;
var height = _ol_extent_.getHeight(extent) / resolution; var height = getHeight(extent) / resolution;
var size = [width * pixelRatio, height * pixelRatio]; var size = [width * pixelRatio, height * pixelRatio];
if (this.url_ !== undefined) { if (this.url_ !== undefined) {
@@ -174,8 +174,8 @@ _ol_source_ImageMapGuide_.prototype.getImageLoadFunction = function() {
* @return {number} The computed map scale. * @return {number} The computed map scale.
*/ */
_ol_source_ImageMapGuide_.getScale = function(extent, size, metersPerUnit, dpi) { _ol_source_ImageMapGuide_.getScale = function(extent, size, metersPerUnit, dpi) {
var mcsW = _ol_extent_.getWidth(extent); var mcsW = getWidth(extent);
var mcsH = _ol_extent_.getHeight(extent); var mcsH = getHeight(extent);
var devW = size[0]; var devW = size[0];
var devH = size[1]; var devH = size[1];
var mpp = 0.0254 / dpi; var mpp = 0.0254 / dpi;
@@ -209,7 +209,7 @@ _ol_source_ImageMapGuide_.prototype.updateParams = function(params) {
_ol_source_ImageMapGuide_.prototype.getUrl = function(baseUrl, params, extent, size, projection) { _ol_source_ImageMapGuide_.prototype.getUrl = function(baseUrl, params, extent, size, projection) {
var scale = _ol_source_ImageMapGuide_.getScale(extent, size, var scale = _ol_source_ImageMapGuide_.getScale(extent, size,
this.metersPerUnit_, this.displayDpi_); this.metersPerUnit_, this.displayDpi_);
var center = _ol_extent_.getCenter(extent); var center = getCenter(extent);
var baseParams = { var baseParams = {
'OPERATION': this.useOverlay_ ? 'GETDYNAMICMAPOVERLAYIMAGE' : 'GETMAPIMAGE', 'OPERATION': this.useOverlay_ ? 'GETDYNAMICMAPOVERLAYIMAGE' : 'GETMAPIMAGE',
'VERSION': '2.0.0', 'VERSION': '2.0.0',
+4 -4
View File
@@ -7,7 +7,7 @@ import _ol_ImageState_ from '../ImageState.js';
import _ol_dom_ from '../dom.js'; import _ol_dom_ from '../dom.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {intersects, getHeight, getWidth} from '../extent.js';
import _ol_proj_ from '../proj.js'; import _ol_proj_ from '../proj.js';
import _ol_source_Image_ from '../source/Image.js'; import _ol_source_Image_ from '../source/Image.js';
@@ -60,7 +60,7 @@ inherits(_ol_source_ImageStatic_, _ol_source_Image_);
* @inheritDoc * @inheritDoc
*/ */
_ol_source_ImageStatic_.prototype.getImageInternal = function(extent, resolution, pixelRatio, projection) { _ol_source_ImageStatic_.prototype.getImageInternal = function(extent, resolution, pixelRatio, projection) {
if (_ol_extent_.intersects(extent, this.image_.getExtent())) { if (intersects(extent, this.image_.getExtent())) {
return this.image_; return this.image_;
} }
return null; return null;
@@ -82,8 +82,8 @@ _ol_source_ImageStatic_.prototype.handleImageChange = function(evt) {
imageWidth = image.width; imageWidth = image.width;
imageHeight = image.height; imageHeight = image.height;
} }
var resolution = _ol_extent_.getHeight(imageExtent) / imageHeight; var resolution = getHeight(imageExtent) / imageHeight;
var targetWidth = Math.ceil(_ol_extent_.getWidth(imageExtent) / resolution); var targetWidth = Math.ceil(getWidth(imageExtent) / resolution);
if (targetWidth != imageWidth) { if (targetWidth != imageWidth) {
var context = _ol_dom_.createCanvasContext2D(targetWidth, imageHeight); var context = _ol_dom_.createCanvasContext2D(targetWidth, imageHeight);
var canvas = context.canvas; var canvas = context.canvas;
+12 -13
View File
@@ -8,7 +8,7 @@ import _ol_Image_ from '../Image.js';
import _ol_asserts_ from '../asserts.js'; import _ol_asserts_ from '../asserts.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {containsExtent, getCenter, getForViewAndSize, getHeight, getWidth} from '../extent.js';
import _ol_obj_ from '../obj.js'; import _ol_obj_ from '../obj.js';
import _ol_proj_ from '../proj.js'; import _ol_proj_ from '../proj.js';
import _ol_reproj_ from '../reproj.js'; import _ol_reproj_ from '../reproj.js';
@@ -146,8 +146,7 @@ _ol_source_ImageWMS_.prototype.getGetFeatureInfoUrl = function(coordinate, resol
coordinate = _ol_proj_.transform(coordinate, projectionObj, sourceProjectionObj); coordinate = _ol_proj_.transform(coordinate, projectionObj, sourceProjectionObj);
} }
var extent = _ol_extent_.getForViewAndSize( var extent = getForViewAndSize(coordinate, resolution, 0,
coordinate, resolution, 0,
_ol_source_ImageWMS_.GETFEATUREINFO_IMAGE_SIZE_); _ol_source_ImageWMS_.GETFEATUREINFO_IMAGE_SIZE_);
var baseParams = { var baseParams = {
@@ -199,14 +198,14 @@ _ol_source_ImageWMS_.prototype.getImageInternal = function(extent, resolution, p
var imageResolution = resolution / pixelRatio; var imageResolution = resolution / pixelRatio;
var center = _ol_extent_.getCenter(extent); var center = getCenter(extent);
var viewWidth = Math.ceil(_ol_extent_.getWidth(extent) / imageResolution); var viewWidth = Math.ceil(getWidth(extent) / imageResolution);
var viewHeight = Math.ceil(_ol_extent_.getHeight(extent) / imageResolution); var viewHeight = Math.ceil(getHeight(extent) / imageResolution);
var viewExtent = _ol_extent_.getForViewAndSize(center, imageResolution, 0, var viewExtent = getForViewAndSize(center, imageResolution, 0,
[viewWidth, viewHeight]); [viewWidth, viewHeight]);
var requestWidth = Math.ceil(this.ratio_ * _ol_extent_.getWidth(extent) / imageResolution); var requestWidth = Math.ceil(this.ratio_ * getWidth(extent) / imageResolution);
var requestHeight = Math.ceil(this.ratio_ * _ol_extent_.getHeight(extent) / imageResolution); var requestHeight = Math.ceil(this.ratio_ * getHeight(extent) / imageResolution);
var requestExtent = _ol_extent_.getForViewAndSize(center, imageResolution, 0, var requestExtent = getForViewAndSize(center, imageResolution, 0,
[requestWidth, requestHeight]); [requestWidth, requestHeight]);
var image = this.image_; var image = this.image_;
@@ -214,7 +213,7 @@ _ol_source_ImageWMS_.prototype.getImageInternal = function(extent, resolution, p
this.renderedRevision_ == this.getRevision() && this.renderedRevision_ == this.getRevision() &&
image.getResolution() == resolution && image.getResolution() == resolution &&
image.getPixelRatio() == pixelRatio && image.getPixelRatio() == pixelRatio &&
_ol_extent_.containsExtent(image.getExtent(), viewExtent)) { containsExtent(image.getExtent(), viewExtent)) {
return image; return image;
} }
@@ -227,8 +226,8 @@ _ol_source_ImageWMS_.prototype.getImageInternal = function(extent, resolution, p
}; };
_ol_obj_.assign(params, this.params_); _ol_obj_.assign(params, this.params_);
this.imageSize_[0] = Math.round(_ol_extent_.getWidth(requestExtent) / imageResolution); this.imageSize_[0] = Math.round(getWidth(requestExtent) / imageResolution);
this.imageSize_[1] = Math.round(_ol_extent_.getHeight(requestExtent) / imageResolution); this.imageSize_[1] = Math.round(getHeight(requestExtent) / imageResolution);
var url = this.getRequestUrl_(requestExtent, this.imageSize_, pixelRatio, var url = this.getRequestUrl_(requestExtent, this.imageSize_, pixelRatio,
projection, params); projection, params);
+8 -8
View File
@@ -9,7 +9,7 @@ import _ol_events_ from '../events.js';
import _ol_events_Event_ from '../events/Event.js'; import _ol_events_Event_ from '../events/Event.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import {Processor as _ol_ext_pixelworks_Processor_} from 'pixelworks'; import {Processor as _ol_ext_pixelworks_Processor_} from 'pixelworks';
import _ol_extent_ from '../extent.js'; import {equals, getCenter, getHeight, getWidth} from '../extent.js';
import _ol_layer_Image_ from '../layer/Image.js'; import _ol_layer_Image_ from '../layer/Image.js';
import _ol_layer_Tile_ from '../layer/Tile.js'; import _ol_layer_Tile_ from '../layer/Tile.js';
import _ol_obj_ from '../obj.js'; import _ol_obj_ from '../obj.js';
@@ -175,12 +175,12 @@ _ol_source_Raster_.prototype.updateFrameState_ = function(extent, resolution, pr
frameState.viewState = /** @type {olx.ViewState} */ ( frameState.viewState = /** @type {olx.ViewState} */ (
_ol_obj_.assign({}, frameState.viewState)); _ol_obj_.assign({}, frameState.viewState));
var center = _ol_extent_.getCenter(extent); var center = getCenter(extent);
frameState.extent = extent.slice(); frameState.extent = extent.slice();
frameState.focus = center; frameState.focus = center;
frameState.size[0] = Math.round(_ol_extent_.getWidth(extent) / resolution); frameState.size[0] = Math.round(getWidth(extent) / resolution);
frameState.size[1] = Math.round(_ol_extent_.getHeight(extent) / resolution); frameState.size[1] = Math.round(getHeight(extent) / resolution);
frameState.time = Date.now(); frameState.time = Date.now();
frameState.animate = false; frameState.animate = false;
@@ -226,7 +226,7 @@ _ol_source_Raster_.prototype.getImage = function(extent, resolution, pixelRatio,
if (this.renderedImageCanvas_) { if (this.renderedImageCanvas_) {
var renderedResolution = this.renderedImageCanvas_.getResolution(); var renderedResolution = this.renderedImageCanvas_.getResolution();
var renderedExtent = this.renderedImageCanvas_.getExtent(); var renderedExtent = this.renderedImageCanvas_.getExtent();
if (resolution !== renderedResolution || !_ol_extent_.equals(extent, renderedExtent)) { if (resolution !== renderedResolution || !equals(extent, renderedExtent)) {
this.renderedImageCanvas_ = null; this.renderedImageCanvas_ = null;
} }
} }
@@ -288,7 +288,7 @@ _ol_source_Raster_.prototype.onWorkerComplete_ = function(frameState, err, outpu
var extent = frameState.extent; var extent = frameState.extent;
var resolution = frameState.viewState.resolution; var resolution = frameState.viewState.resolution;
if (resolution !== this.requestedFrameState_.viewState.resolution || if (resolution !== this.requestedFrameState_.viewState.resolution ||
!_ol_extent_.equals(extent, this.requestedFrameState_.extent)) { !equals(extent, this.requestedFrameState_.extent)) {
return; return;
} }
@@ -296,8 +296,8 @@ _ol_source_Raster_.prototype.onWorkerComplete_ = function(frameState, err, outpu
if (this.renderedImageCanvas_) { if (this.renderedImageCanvas_) {
context = this.renderedImageCanvas_.getImage().getContext('2d'); context = this.renderedImageCanvas_.getImage().getContext('2d');
} else { } else {
var width = Math.round(_ol_extent_.getWidth(extent) / resolution); var width = Math.round(getWidth(extent) / resolution);
var height = Math.round(_ol_extent_.getHeight(extent) / resolution); var height = Math.round(getHeight(extent) / resolution);
context = _ol_dom_.createCanvasContext2D(width, height); context = _ol_dom_.createCanvasContext2D(width, height);
this.renderedImageCanvas_ = new _ol_ImageCanvas_(extent, resolution, 1, context.canvas); this.renderedImageCanvas_ = new _ol_ImageCanvas_(extent, resolution, 1, context.canvas);
} }
+2 -2
View File
@@ -2,7 +2,7 @@
* @module ol/source/TileArcGISRest * @module ol/source/TileArcGISRest
*/ */
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_extent_ from '../extent.js'; import {createEmpty} from '../extent.js';
import _ol_math_ from '../math.js'; import _ol_math_ from '../math.js';
import _ol_obj_ from '../obj.js'; import _ol_obj_ from '../obj.js';
import _ol_size_ from '../size.js'; import _ol_size_ from '../size.js';
@@ -53,7 +53,7 @@ var _ol_source_TileArcGISRest_ = function(opt_options) {
* @private * @private
* @type {ol.Extent} * @type {ol.Extent}
*/ */
this.tmpExtent_ = _ol_extent_.createEmpty(); this.tmpExtent_ = createEmpty();
this.setKey(this.getKeyForParams_()); this.setKey(this.getKeyForParams_());
}; };
+3 -3
View File
@@ -10,7 +10,7 @@
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_TileUrlFunction_ from '../TileUrlFunction.js'; import _ol_TileUrlFunction_ from '../TileUrlFunction.js';
import _ol_asserts_ from '../asserts.js'; import _ol_asserts_ from '../asserts.js';
import _ol_extent_ from '../extent.js'; import {applyTransform, intersects} from '../extent.js';
import _ol_net_ from '../net.js'; import _ol_net_ from '../net.js';
import _ol_proj_ from '../proj.js'; import _ol_proj_ from '../proj.js';
import _ol_source_State_ from '../source/State.js'; import _ol_source_State_ from '../source/State.js';
@@ -121,7 +121,7 @@ _ol_source_TileJSON_.prototype.handleTileJSONResponse = function(tileJSON) {
if (tileJSON.bounds !== undefined) { if (tileJSON.bounds !== undefined) {
var transform = _ol_proj_.getTransformFromProjections( var transform = _ol_proj_.getTransformFromProjections(
epsg4326Projection, sourceProjection); epsg4326Projection, sourceProjection);
extent = _ol_extent_.applyTransform(tileJSON.bounds, transform); extent = applyTransform(tileJSON.bounds, transform);
} }
var minZoom = tileJSON.minzoom || 0; var minZoom = tileJSON.minzoom || 0;
@@ -141,7 +141,7 @@ _ol_source_TileJSON_.prototype.handleTileJSONResponse = function(tileJSON) {
extent : epsg4326Projection.getExtent(); extent : epsg4326Projection.getExtent();
this.setAttributions(function(frameState) { this.setAttributions(function(frameState) {
if (_ol_extent_.intersects(attributionExtent, frameState.extent)) { if (intersects(attributionExtent, frameState.extent)) {
return [tileJSON.attribution]; return [tileJSON.attribution];
} }
return null; return null;
+3 -3
View File
@@ -8,7 +8,7 @@ import _ol_TileUrlFunction_ from '../TileUrlFunction.js';
import _ol_asserts_ from '../asserts.js'; import _ol_asserts_ from '../asserts.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {applyTransform, intersects} from '../extent.js';
import _ol_net_ from '../net.js'; import _ol_net_ from '../net.js';
import _ol_proj_ from '../proj.js'; import _ol_proj_ from '../proj.js';
import _ol_source_State_ from '../source/State.js'; import _ol_source_State_ from '../source/State.js';
@@ -173,7 +173,7 @@ _ol_source_TileUTFGrid_.prototype.handleTileJSONResponse = function(tileJSON) {
if (tileJSON.bounds !== undefined) { if (tileJSON.bounds !== undefined) {
var transform = _ol_proj_.getTransformFromProjections( var transform = _ol_proj_.getTransformFromProjections(
epsg4326Projection, sourceProjection); epsg4326Projection, sourceProjection);
extent = _ol_extent_.applyTransform(tileJSON.bounds, transform); extent = applyTransform(tileJSON.bounds, transform);
} }
var minZoom = tileJSON.minzoom || 0; var minZoom = tileJSON.minzoom || 0;
@@ -201,7 +201,7 @@ _ol_source_TileUTFGrid_.prototype.handleTileJSONResponse = function(tileJSON) {
extent : epsg4326Projection.getExtent(); extent : epsg4326Projection.getExtent();
this.setAttributions(function(frameState) { this.setAttributions(function(frameState) {
if (_ol_extent_.intersects(attributionExtent, frameState.extent)) { if (intersects(attributionExtent, frameState.extent)) {
return [tileJSON.attribution]; return [tileJSON.attribution];
} }
return null; return null;
+4 -5
View File
@@ -5,7 +5,7 @@
import {DEFAULT_WMS_VERSION} from './common.js'; import {DEFAULT_WMS_VERSION} from './common.js';
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_asserts_ from '../asserts.js'; import _ol_asserts_ from '../asserts.js';
import _ol_extent_ from '../extent.js'; import {buffer, createEmpty} from '../extent.js';
import _ol_obj_ from '../obj.js'; import _ol_obj_ from '../obj.js';
import _ol_math_ from '../math.js'; import _ol_math_ from '../math.js';
import _ol_proj_ from '../proj.js'; import _ol_proj_ from '../proj.js';
@@ -85,7 +85,7 @@ var _ol_source_TileWMS_ = function(opt_options) {
* @private * @private
* @type {ol.Extent} * @type {ol.Extent}
*/ */
this.tmpExtent_ = _ol_extent_.createEmpty(); this.tmpExtent_ = createEmpty();
this.updateV13_(); this.updateV13_();
this.setKey(this.getKeyForParams_()); this.setKey(this.getKeyForParams_());
@@ -132,7 +132,7 @@ _ol_source_TileWMS_.prototype.getGetFeatureInfoUrl = function(coordinate, resolu
var gutter = this.gutter_; var gutter = this.gutter_;
if (gutter !== 0) { if (gutter !== 0) {
tileSize = _ol_size_.buffer(tileSize, gutter, this.tmpSize); tileSize = _ol_size_.buffer(tileSize, gutter, this.tmpSize);
tileExtent = _ol_extent_.buffer(tileExtent, tileResolution * gutter, tileExtent); tileExtent = buffer(tileExtent, tileResolution * gutter, tileExtent);
} }
if (sourceProjectionObj && sourceProjectionObj !== projectionObj) { if (sourceProjectionObj && sourceProjectionObj !== projectionObj) {
@@ -304,8 +304,7 @@ _ol_source_TileWMS_.prototype.fixedTileUrlFunction = function(tileCoord, pixelRa
var gutter = this.gutter_; var gutter = this.gutter_;
if (gutter !== 0) { if (gutter !== 0) {
tileSize = _ol_size_.buffer(tileSize, gutter, this.tmpSize); tileSize = _ol_size_.buffer(tileSize, gutter, this.tmpSize);
tileExtent = _ol_extent_.buffer(tileExtent, tileExtent = buffer(tileExtent, tileResolution * gutter, tileExtent);
tileResolution * gutter, tileExtent);
} }
if (pixelRatio != 1) { if (pixelRatio != 1) {
+3 -3
View File
@@ -11,7 +11,7 @@ import _ol_asserts_ from '../asserts.js';
import _ol_events_ from '../events.js'; import _ol_events_ from '../events.js';
import _ol_events_Event_ from '../events/Event.js'; import _ol_events_Event_ from '../events/Event.js';
import _ol_events_EventType_ from '../events/EventType.js'; import _ol_events_EventType_ from '../events/EventType.js';
import _ol_extent_ from '../extent.js'; import {containsExtent, equals} from '../extent.js';
import _ol_featureloader_ from '../featureloader.js'; import _ol_featureloader_ from '../featureloader.js';
import _ol_functions_ from '../functions.js'; import _ol_functions_ from '../functions.js';
import _ol_loadingstrategy_ from '../loadingstrategy.js'; import _ol_loadingstrategy_ from '../loadingstrategy.js';
@@ -751,7 +751,7 @@ _ol_source_Vector_.prototype.loadFeatures = function(
* @return {boolean} Contains. * @return {boolean} Contains.
*/ */
function(object) { function(object) {
return _ol_extent_.containsExtent(object.extent, extentToLoad); return containsExtent(object.extent, extentToLoad);
}); });
if (!alreadyLoaded) { if (!alreadyLoaded) {
this.loader_.call(this, extentToLoad, resolution, projection); this.loader_.call(this, extentToLoad, resolution, projection);
@@ -770,7 +770,7 @@ _ol_source_Vector_.prototype.removeLoadedExtent = function(extent) {
var loadedExtentsRtree = this.loadedExtentsRtree_; var loadedExtentsRtree = this.loadedExtentsRtree_;
var obj; var obj;
loadedExtentsRtree.forEachInExtent(extent, function(object) { loadedExtentsRtree.forEachInExtent(extent, function(object) {
if (_ol_extent_.equals(object.extent, extent)) { if (equals(object.extent, extent)) {
obj = object; obj = object;
return true; return true;
} }
+2 -2
View File
@@ -4,7 +4,7 @@
import {inherits} from '../index.js'; import {inherits} from '../index.js';
import _ol_TileUrlFunction_ from '../TileUrlFunction.js'; import _ol_TileUrlFunction_ from '../TileUrlFunction.js';
import _ol_array_ from '../array.js'; import _ol_array_ from '../array.js';
import _ol_extent_ from '../extent.js'; import {containsExtent} from '../extent.js';
import _ol_obj_ from '../obj.js'; import _ol_obj_ from '../obj.js';
import _ol_proj_ from '../proj.js'; import _ol_proj_ from '../proj.js';
import _ol_source_TileImage_ from '../source/TileImage.js'; import _ol_source_TileImage_ from '../source/TileImage.js';
@@ -416,7 +416,7 @@ _ol_source_WMTS_.optionsFromCapabilities = function(wmtsCap, config) {
if (projectionExtent) { if (projectionExtent) {
// If possible, do a sanity check on the extent - it should never be // If possible, do a sanity check on the extent - it should never be
// bigger than the validity extent of the projection of a matrix set. // bigger than the validity extent of the projection of a matrix set.
if (!_ol_extent_.containsExtent(projectionExtent, extent)) { if (!containsExtent(projectionExtent, extent)) {
extent = undefined; extent = undefined;
} }
} }
+2 -2
View File
@@ -8,7 +8,7 @@ import _ol_TileState_ from '../TileState.js';
import _ol_TileUrlFunction_ from '../TileUrlFunction.js'; import _ol_TileUrlFunction_ from '../TileUrlFunction.js';
import _ol_asserts_ from '../asserts.js'; import _ol_asserts_ from '../asserts.js';
import _ol_dom_ from '../dom.js'; import _ol_dom_ from '../dom.js';
import _ol_extent_ from '../extent.js'; import {getTopLeft} from '../extent.js';
import _ol_size_ from '../size.js'; import _ol_size_ from '../size.js';
import _ol_source_TileImage_ from '../source/TileImage.js'; import _ol_source_TileImage_ from '../source/TileImage.js';
import _ol_tilegrid_TileGrid_ from '../tilegrid/TileGrid.js'; import _ol_tilegrid_TileGrid_ from '../tilegrid/TileGrid.js';
@@ -84,7 +84,7 @@ var _ol_source_Zoomify_ = function(opt_options) {
var tileGrid = new _ol_tilegrid_TileGrid_({ var tileGrid = new _ol_tilegrid_TileGrid_({
tileSize: tileSize, tileSize: tileSize,
extent: extent, extent: extent,
origin: _ol_extent_.getTopLeft(extent), origin: getTopLeft(extent),
resolutions: resolutions resolutions: resolutions
}); });
+3 -3
View File
@@ -3,7 +3,7 @@
*/ */
import {getUid} from '../index.js'; import {getUid} from '../index.js';
import _ol_ext_rbush_ from 'rbush'; import _ol_ext_rbush_ from 'rbush';
import _ol_extent_ from '../extent.js'; import {createOrUpdate, equals} from '../extent.js';
import _ol_obj_ from '../obj.js'; import _ol_obj_ from '../obj.js';
/** /**
@@ -103,7 +103,7 @@ _ol_structs_RBush_.prototype.remove = function(value) {
_ol_structs_RBush_.prototype.update = function(extent, value) { _ol_structs_RBush_.prototype.update = function(extent, value) {
var item = this.items_[getUid(value)]; var item = this.items_[getUid(value)];
var bbox = [item.minX, item.minY, item.maxX, item.maxY]; var bbox = [item.minX, item.minY, item.maxX, item.maxY];
if (!_ol_extent_.equals(bbox, extent)) { if (!equals(bbox, extent)) {
this.remove(value); this.remove(value);
this.insert(extent, value); this.insert(extent, value);
} }
@@ -213,7 +213,7 @@ _ol_structs_RBush_.prototype.clear = function() {
_ol_structs_RBush_.prototype.getExtent = function(opt_extent) { _ol_structs_RBush_.prototype.getExtent = function(opt_extent) {
// FIXME add getExtent() to rbush // FIXME add getExtent() to rbush
var data = this.rbush_.data; var data = this.rbush_.data;
return _ol_extent_.createOrUpdate(data.minX, data.minY, data.maxX, data.maxY, opt_extent); return createOrUpdate(data.minX, data.minY, data.maxX, data.maxY, opt_extent);
}; };
+9 -10
View File
@@ -3,8 +3,8 @@
*/ */
import {DEFAULT_MAX_ZOOM, DEFAULT_TILE_SIZE} from './tilegrid/common.js'; import {DEFAULT_MAX_ZOOM, DEFAULT_TILE_SIZE} from './tilegrid/common.js';
import _ol_size_ from './size.js'; import _ol_size_ from './size.js';
import _ol_extent_ from './extent.js'; import {containsCoordinate, createOrUpdate, getCorner, getHeight, getWidth} from './extent.js';
import _ol_extent_Corner_ from './extent/Corner.js'; import Corner from './extent/Corner.js';
import _ol_obj_ from './obj.js'; import _ol_obj_ from './obj.js';
import _ol_proj_ from './proj.js'; import _ol_proj_ from './proj.js';
import _ol_proj_Units_ from './proj/Units.js'; import _ol_proj_Units_ from './proj/Units.js';
@@ -36,8 +36,8 @@ _ol_tilegrid_.wrapX = function(tileGrid, tileCoord, projection) {
var z = tileCoord[0]; var z = tileCoord[0];
var center = tileGrid.getTileCoordCenter(tileCoord); var center = tileGrid.getTileCoordCenter(tileCoord);
var projectionExtent = _ol_tilegrid_.extentFromProjection(projection); var projectionExtent = _ol_tilegrid_.extentFromProjection(projection);
if (!_ol_extent_.containsCoordinate(projectionExtent, center)) { if (!containsCoordinate(projectionExtent, center)) {
var worldWidth = _ol_extent_.getWidth(projectionExtent); var worldWidth = getWidth(projectionExtent);
var worldsAway = Math.ceil((projectionExtent[0] - center[0]) / worldWidth); var worldsAway = Math.ceil((projectionExtent[0] - center[0]) / worldWidth);
center[0] += worldWidth * worldsAway; center[0] += worldWidth * worldsAway;
return tileGrid.getTileCoordForCoordAndZ(center, z); return tileGrid.getTileCoordForCoordAndZ(center, z);
@@ -58,15 +58,14 @@ _ol_tilegrid_.wrapX = function(tileGrid, tileCoord, projection) {
* @return {!ol.tilegrid.TileGrid} TileGrid instance. * @return {!ol.tilegrid.TileGrid} TileGrid instance.
*/ */
_ol_tilegrid_.createForExtent = function(extent, opt_maxZoom, opt_tileSize, opt_corner) { _ol_tilegrid_.createForExtent = function(extent, opt_maxZoom, opt_tileSize, opt_corner) {
var corner = opt_corner !== undefined ? var corner = opt_corner !== undefined ? opt_corner : Corner.TOP_LEFT;
opt_corner : _ol_extent_Corner_.TOP_LEFT;
var resolutions = _ol_tilegrid_.resolutionsFromExtent( var resolutions = _ol_tilegrid_.resolutionsFromExtent(
extent, opt_maxZoom, opt_tileSize); extent, opt_maxZoom, opt_tileSize);
return new _ol_tilegrid_TileGrid_({ return new _ol_tilegrid_TileGrid_({
extent: extent, extent: extent,
origin: _ol_extent_.getCorner(extent, corner), origin: getCorner(extent, corner),
resolutions: resolutions, resolutions: resolutions,
tileSize: opt_tileSize tileSize: opt_tileSize
}); });
@@ -107,8 +106,8 @@ _ol_tilegrid_.resolutionsFromExtent = function(extent, opt_maxZoom, opt_tileSize
var maxZoom = opt_maxZoom !== undefined ? var maxZoom = opt_maxZoom !== undefined ?
opt_maxZoom : DEFAULT_MAX_ZOOM; opt_maxZoom : DEFAULT_MAX_ZOOM;
var height = _ol_extent_.getHeight(extent); var height = getHeight(extent);
var width = _ol_extent_.getWidth(extent); var width = getWidth(extent);
var tileSize = _ol_size_.toSize(opt_tileSize !== undefined ? var tileSize = _ol_size_.toSize(opt_tileSize !== undefined ?
opt_tileSize : DEFAULT_TILE_SIZE); opt_tileSize : DEFAULT_TILE_SIZE);
@@ -153,7 +152,7 @@ _ol_tilegrid_.extentFromProjection = function(projection) {
if (!extent) { if (!extent) {
var half = 180 * _ol_proj_.METERS_PER_UNIT[_ol_proj_Units_.DEGREES] / var half = 180 * _ol_proj_.METERS_PER_UNIT[_ol_proj_Units_.DEGREES] /
projection.getMetersPerUnit(); projection.getMetersPerUnit();
extent = _ol_extent_.createOrUpdate(-half, -half, half, half); extent = createOrUpdate(-half, -half, half, half);
} }
return extent; return extent;
}; };
+4 -4
View File
@@ -5,7 +5,7 @@ import {DEFAULT_TILE_SIZE} from './common.js';
import _ol_asserts_ from '../asserts.js'; import _ol_asserts_ from '../asserts.js';
import _ol_TileRange_ from '../TileRange.js'; import _ol_TileRange_ from '../TileRange.js';
import _ol_array_ from '../array.js'; import _ol_array_ from '../array.js';
import _ol_extent_ from '../extent.js'; import {createOrUpdate, getTopLeft} from '../extent.js';
import _ol_math_ from '../math.js'; import _ol_math_ from '../math.js';
import _ol_size_ from '../size.js'; import _ol_size_ from '../size.js';
import _ol_tilecoord_ from '../tilecoord.js'; import _ol_tilecoord_ from '../tilecoord.js';
@@ -88,7 +88,7 @@ var _ol_tilegrid_TileGrid_ = function(options) {
if (extent !== undefined && if (extent !== undefined &&
!this.origin_ && !this.origins_) { !this.origin_ && !this.origins_) {
this.origin_ = _ol_extent_.getTopLeft(extent); this.origin_ = getTopLeft(extent);
} }
_ol_asserts_.assert( _ol_asserts_.assert(
@@ -313,7 +313,7 @@ _ol_tilegrid_TileGrid_.prototype.getTileRangeExtent = function(z, tileRange, opt
var maxX = origin[0] + (tileRange.maxX + 1) * tileSize[0] * resolution; var maxX = origin[0] + (tileRange.maxX + 1) * tileSize[0] * resolution;
var minY = origin[1] + tileRange.minY * tileSize[1] * resolution; var minY = origin[1] + tileRange.minY * tileSize[1] * resolution;
var maxY = origin[1] + (tileRange.maxY + 1) * tileSize[1] * resolution; var maxY = origin[1] + (tileRange.maxY + 1) * tileSize[1] * resolution;
return _ol_extent_.createOrUpdate(minX, minY, maxX, maxY, opt_extent); return createOrUpdate(minX, minY, maxX, maxY, opt_extent);
}; };
@@ -366,7 +366,7 @@ _ol_tilegrid_TileGrid_.prototype.getTileCoordExtent = function(tileCoord, opt_ex
var minY = origin[1] + tileCoord[2] * tileSize[1] * resolution; var minY = origin[1] + tileCoord[2] * tileSize[1] * resolution;
var maxX = minX + tileSize[0] * resolution; var maxX = minX + tileSize[0] * resolution;
var maxY = minY + tileSize[1] * resolution; var maxY = minY + tileSize[1] * resolution;
return _ol_extent_.createOrUpdate(minX, minY, maxX, maxY, opt_extent); return createOrUpdate(minX, minY, maxX, maxY, opt_extent);
}; };