123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- import defined from "../Core/defined.js";
- /**
- * A policy for discarding tile images that contain no data (and so aren't actually images).
- * This policy discards {@link DiscardEmptyTileImagePolicy.EMPTY_IMAGE}, which is
- * expected to be used in place of any empty tile images by the image loading code.
- *
- * @alias DiscardEmptyTileImagePolicy
- * @constructor
- *
- * @see DiscardMissingTileImagePolicy
- */
- function DiscardEmptyTileImagePolicy(options) {}
- /**
- * Determines if the discard policy is ready to process images.
- * @returns {Boolean} True if the discard policy is ready to process images; otherwise, false.
- */
- DiscardEmptyTileImagePolicy.prototype.isReady = function () {
- return true;
- };
- /**
- * Given a tile image, decide whether to discard that image.
- *
- * @param {HTMLImageElement} image An image to test.
- * @returns {Boolean} True if the image should be discarded; otherwise, false.
- */
- DiscardEmptyTileImagePolicy.prototype.shouldDiscardImage = function (image) {
- return DiscardEmptyTileImagePolicy.EMPTY_IMAGE === image;
- };
- let emptyImage;
- Object.defineProperties(DiscardEmptyTileImagePolicy, {
- /**
- * Default value for representing an empty image.
- * @type {HTMLImageElement}
- * @readonly
- * @memberof DiscardEmptyTileImagePolicy
- */
- EMPTY_IMAGE: {
- get: function () {
- if (!defined(emptyImage)) {
- emptyImage = new Image();
- // load a blank data URI with a 1x1 transparent pixel.
- emptyImage.src =
- "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";
- }
- return emptyImage;
- },
- },
- });
- export default DiscardEmptyTileImagePolicy;
|