Merge pull request #2987 from kartverket/2966
Image layer renderers use source projection if given and equivalent
This commit is contained in:
@@ -9,6 +9,7 @@ goog.require('ol.ImageState');
|
||||
goog.require('ol.ViewHint');
|
||||
goog.require('ol.extent');
|
||||
goog.require('ol.layer.Image');
|
||||
goog.require('ol.proj');
|
||||
goog.require('ol.renderer.Map');
|
||||
goog.require('ol.renderer.canvas.Layer');
|
||||
goog.require('ol.vec.Mat4');
|
||||
@@ -108,8 +109,14 @@ ol.renderer.canvas.ImageLayer.prototype.prepareFrame =
|
||||
|
||||
if (!hints[ol.ViewHint.ANIMATING] && !hints[ol.ViewHint.INTERACTING] &&
|
||||
!ol.extent.isEmpty(renderedExtent)) {
|
||||
var projection = viewState.projection;
|
||||
var sourceProjection = imageSource.getProjection();
|
||||
if (!goog.isNull(sourceProjection)) {
|
||||
goog.asserts.assert(ol.proj.equivalent(projection, sourceProjection));
|
||||
projection = sourceProjection;
|
||||
}
|
||||
image = imageSource.getImage(
|
||||
renderedExtent, viewResolution, pixelRatio, viewState.projection);
|
||||
renderedExtent, viewResolution, pixelRatio, projection);
|
||||
if (!goog.isNull(image)) {
|
||||
var imageState = image.getState();
|
||||
if (imageState == ol.ImageState.IDLE) {
|
||||
|
||||
@@ -12,6 +12,7 @@ goog.require('ol.ViewHint');
|
||||
goog.require('ol.dom');
|
||||
goog.require('ol.extent');
|
||||
goog.require('ol.layer.Image');
|
||||
goog.require('ol.proj');
|
||||
goog.require('ol.renderer.dom.Layer');
|
||||
goog.require('ol.vec.Mat4');
|
||||
|
||||
@@ -104,8 +105,14 @@ ol.renderer.dom.ImageLayer.prototype.prepareFrame =
|
||||
|
||||
if (!hints[ol.ViewHint.ANIMATING] && !hints[ol.ViewHint.INTERACTING] &&
|
||||
!ol.extent.isEmpty(renderedExtent)) {
|
||||
var projection = viewState.projection;
|
||||
var sourceProjection = imageSource.getProjection();
|
||||
if (!goog.isNull(sourceProjection)) {
|
||||
goog.asserts.assert(ol.proj.equivalent(projection, sourceProjection));
|
||||
projection = sourceProjection;
|
||||
}
|
||||
var image_ = imageSource.getImage(renderedExtent, viewResolution,
|
||||
frameState.pixelRatio, viewState.projection);
|
||||
frameState.pixelRatio, projection);
|
||||
if (!goog.isNull(image_)) {
|
||||
var imageState = image_.getState();
|
||||
if (imageState == ol.ImageState.IDLE) {
|
||||
|
||||
@@ -12,6 +12,7 @@ goog.require('ol.ImageState');
|
||||
goog.require('ol.ViewHint');
|
||||
goog.require('ol.extent');
|
||||
goog.require('ol.layer.Image');
|
||||
goog.require('ol.proj');
|
||||
goog.require('ol.renderer.webgl.Layer');
|
||||
|
||||
|
||||
@@ -124,8 +125,14 @@ ol.renderer.webgl.ImageLayer.prototype.prepareFrame =
|
||||
}
|
||||
if (!hints[ol.ViewHint.ANIMATING] && !hints[ol.ViewHint.INTERACTING] &&
|
||||
!ol.extent.isEmpty(renderedExtent)) {
|
||||
var projection = viewState.projection;
|
||||
var sourceProjection = imageSource.getProjection();
|
||||
if (!goog.isNull(sourceProjection)) {
|
||||
goog.asserts.assert(ol.proj.equivalent(projection, sourceProjection));
|
||||
projection = sourceProjection;
|
||||
}
|
||||
var image_ = imageSource.getImage(renderedExtent, viewResolution,
|
||||
frameState.pixelRatio, viewState.projection);
|
||||
frameState.pixelRatio, projection);
|
||||
if (!goog.isNull(image_)) {
|
||||
var imageState = image_.getState();
|
||||
if (imageState == ol.ImageState.IDLE) {
|
||||
|
||||
Reference in New Issue
Block a user