Merge pull request #9748 from fredj/rm_hit_transform

Remove hit detection transforms from ol/renderer/webgl/PointsLayer
This commit is contained in:
Frédéric Junod
2019-07-05 08:21:04 +02:00
committed by GitHub

View File

@@ -301,18 +301,6 @@ class WebGLPointsLayerRenderer extends WebGLLayerRenderer {
*/
this.renderInstructions_ = new Float32Array(0);
/**
* @type {import("../../transform.js").Transform}
* @private
*/
this.hitRenderTransform_ = createTransform();
/**
* @type {import("../../transform.js").Transform}
* @private
*/
this.invertHitRenderTransform_ = createTransform();
/**
* These instructions are used for hit detection
* @type {Float32Array}
@@ -341,26 +329,17 @@ class WebGLPointsLayerRenderer extends WebGLLayerRenderer {
this.indicesBuffer_.fromArrayBuffer(received.indexBuffer);
this.helper.flushBufferData(this.indicesBuffer_);
this.renderTransform_ = projectionTransform;
makeInverseTransform(this.invertRenderTransform_, this.renderTransform_);
if (received.hitDetection) {
this.hitRenderTransform_ = projectionTransform;
makeInverseTransform(this.invertHitRenderTransform_, this.hitRenderTransform_);
this.hitRenderInstructions_ = new Float32Array(event.data.renderInstructions);
} else {
this.renderTransform_ = projectionTransform;
makeInverseTransform(this.invertRenderTransform_, this.renderTransform_);
this.renderInstructions_ = new Float32Array(event.data.renderInstructions);
}
}
}.bind(this));
}
/**
* @inheritDoc
*/
disposeInternal() {
super.disposeInternal();
}
/**
* @inheritDoc
*/
@@ -574,9 +553,6 @@ class WebGLPointsLayerRenderer extends WebGLLayerRenderer {
this.helper.useProgram(this.hitProgram_);
this.helper.prepareDrawToRenderTarget(frameState, this.hitRenderTarget_, true);
this.helper.makeProjectionTransform(frameState, this.currentTransform_);
multiplyTransform(this.currentTransform_, this.invertHitRenderTransform_);
this.helper.bindBuffer(this.hitVerticesBuffer_);
this.helper.bindBuffer(this.indicesBuffer_);