Merge pull request #10011 from jahow/fix-webgl-typecheck
Fix a type checking error on the WebGL points renderer
This commit is contained in:
@@ -9,7 +9,6 @@ import {inView} from '../layer/Layer.js';
|
||||
import {shared as iconImageCache} from '../style/IconImageCache.js';
|
||||
import {compose as composeTransform, makeInverse} from '../transform.js';
|
||||
import {renderDeclutterItems} from '../render.js';
|
||||
import {add} from '../coordinate.js';
|
||||
|
||||
/**
|
||||
* @abstract
|
||||
@@ -128,6 +127,8 @@ class MapRenderer extends Disposable {
|
||||
return entry.value;
|
||||
});
|
||||
}
|
||||
|
||||
const tmpCoord = [];
|
||||
for (let i = 0; i < offsets.length; i++) {
|
||||
for (let j = numLayers - 1; j >= 0; --j) {
|
||||
const layerState = layerStates[j];
|
||||
@@ -135,10 +136,13 @@ class MapRenderer extends Disposable {
|
||||
if (layer.hasRenderer() && inView(layerState, viewState) && layerFilter.call(thisArg2, layer)) {
|
||||
const layerRenderer = layer.getRenderer();
|
||||
const source = layer.getSource();
|
||||
const coordinates = source.getWrapX() ? translatedCoordinate : coordinate;
|
||||
if (layerRenderer && source) {
|
||||
const callback = forEachFeatureAtCoordinate.bind(null, layerState.managed);
|
||||
tmpCoord[0] = coordinates[0] + offsets[i][0];
|
||||
tmpCoord[1] = coordinates[1] + offsets[i][1];
|
||||
result = layerRenderer.forEachFeatureAtCoordinate(
|
||||
add(source.getWrapX() ? translatedCoordinate : coordinate, offsets[i]),
|
||||
tmpCoord,
|
||||
frameState, hitTolerance, callback, declutteredFeatures);
|
||||
}
|
||||
if (result) {
|
||||
|
||||
@@ -108,15 +108,15 @@ import {assert} from '../../asserts.js';
|
||||
class WebGLPointsLayerRenderer extends WebGLLayerRenderer {
|
||||
|
||||
/**
|
||||
* @param {import("../../layer/Vector.js").default} vectorLayer Vector layer.
|
||||
* @param {import("../../layer/Layer.js").default} layer Layer.
|
||||
* @param {Options=} options Options.
|
||||
*/
|
||||
constructor(vectorLayer, options) {
|
||||
constructor(layer, options) {
|
||||
const uniforms = options.uniforms || {};
|
||||
const projectionMatrixTransform = createTransform();
|
||||
uniforms[DefaultUniform.PROJECTION_MATRIX] = projectionMatrixTransform;
|
||||
|
||||
super(vectorLayer, {
|
||||
super(layer, {
|
||||
uniforms: uniforms,
|
||||
postProcesses: options.postProcesses
|
||||
});
|
||||
@@ -289,8 +289,8 @@ class WebGLPointsLayerRenderer extends WebGLLayerRenderer {
|
||||
* @inheritDoc
|
||||
*/
|
||||
prepareFrame(frameState) {
|
||||
const vectorLayer = this.getLayer();
|
||||
const vectorSource = vectorLayer.getSource();
|
||||
const layer = this.getLayer();
|
||||
const vectorSource = layer.getSource();
|
||||
const viewState = frameState.viewState;
|
||||
|
||||
// the source has changed: clear the feature cache & reload features
|
||||
@@ -332,8 +332,8 @@ class WebGLPointsLayerRenderer extends WebGLLayerRenderer {
|
||||
* @private
|
||||
*/
|
||||
rebuildBuffers_(frameState) {
|
||||
const vectorLayer = this.getLayer();
|
||||
const vectorSource = vectorLayer.getSource();
|
||||
const layer = this.getLayer();
|
||||
const vectorSource = layer.getSource();
|
||||
|
||||
// saves the projection transform for the current frame state
|
||||
const projectionTransform = createTransform();
|
||||
|
||||
Reference in New Issue
Block a user