Check if render pixel is in the layer extent
This commit is contained in:
@@ -9,13 +9,14 @@ import {
|
|||||||
compose as composeTransform,
|
compose as composeTransform,
|
||||||
create as createTransform,
|
create as createTransform,
|
||||||
} from '../../transform.js';
|
} from '../../transform.js';
|
||||||
import {createCanvasContext2D} from '../../dom.js';
|
|
||||||
import {
|
import {
|
||||||
|
containsCoordinate,
|
||||||
getBottomLeft,
|
getBottomLeft,
|
||||||
getBottomRight,
|
getBottomRight,
|
||||||
getTopLeft,
|
getTopLeft,
|
||||||
getTopRight,
|
getTopRight,
|
||||||
} from '../../extent.js';
|
} from '../../extent.js';
|
||||||
|
import {createCanvasContext2D} from '../../dom.js';
|
||||||
import {rotateAtOffset} from '../../render/canvas.js';
|
import {rotateAtOffset} from '../../render/canvas.js';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -284,6 +285,20 @@ class CanvasLayerRenderer extends LayerRenderer {
|
|||||||
);
|
);
|
||||||
const context = this.context;
|
const context = this.context;
|
||||||
|
|
||||||
|
const layer = this.getLayer();
|
||||||
|
const layerExtent = layer.getExtent();
|
||||||
|
if (layerExtent) {
|
||||||
|
const renderCoordinate = applyTransform(
|
||||||
|
frameState.pixelToCoordinateTransform,
|
||||||
|
pixel.slice()
|
||||||
|
);
|
||||||
|
|
||||||
|
/** get only data inside of the layer extent */
|
||||||
|
if (!containsCoordinate(layerExtent, renderCoordinate)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
let data;
|
let data;
|
||||||
try {
|
try {
|
||||||
const x = Math.round(renderPixel[0]);
|
const x = Math.round(renderPixel[0]);
|
||||||
|
|||||||
Reference in New Issue
Block a user