Files
il/resources/public/js/cljs-runtime/module$node_modules$pixi_DOT_js$lib$scene$container$container_mixins$getFastGlobalBoundsMixin.js
2026-07-01 22:38:29 -06:00

49 lines
2.7 KiB
JavaScript

shadow$provide.module$node_modules$pixi_DOT_js$lib$scene$container$container_mixins$getFastGlobalBoundsMixin = function(global, require, module, exports) {
global = require("module$node_modules$pixi_DOT_js$lib$maths$matrix$Matrix");
var Bounds = require("module$node_modules$pixi_DOT_js$lib$scene$container$bounds$Bounds"), matrixAndBoundsPool = require("module$node_modules$pixi_DOT_js$lib$scene$container$bounds$utils$matrixAndBoundsPool");
"use strict";
const tempMatrix = new global.Matrix();
exports.getFastGlobalBoundsMixin = {getFastGlobalBounds(factorRenderLayers, bounds) {
bounds || (bounds = new Bounds.Bounds());
bounds.clear();
this._getGlobalBoundsRecursive(!!factorRenderLayers, bounds, this.parentRenderLayer);
bounds.isValid || bounds.set(0, 0, 0, 0);
bounds.applyMatrix((this.renderGroup || this.parentRenderGroup).worldTransform);
return bounds;
}, _getGlobalBoundsRecursive(factorRenderLayers, bounds, currentLayer) {
let localBounds = bounds;
if (!(factorRenderLayers && this.parentRenderLayer && this.parentRenderLayer !== currentLayer || 7 !== this.localDisplayStatus) && this.measurable) {
var manageEffects = !!this.effects.length;
if (this.renderGroup || manageEffects) {
localBounds = matrixAndBoundsPool.boundsPool.get().clear();
}
if (this.boundsArea) {
bounds.addRect(this.boundsArea, this.worldTransform);
} else {
if (this.renderPipeId) {
var viewBounds = this.bounds;
localBounds.addFrame(viewBounds.minX, viewBounds.minY, viewBounds.maxX, viewBounds.maxY, this.groupTransform);
}
viewBounds = this.children;
for (let i = 0; i < viewBounds.length; i++) {
viewBounds[i]._getGlobalBoundsRecursive(factorRenderLayers, localBounds, currentLayer);
}
}
if (manageEffects) {
factorRenderLayers = !1;
currentLayer = this.renderGroup || this.parentRenderGroup;
for (manageEffects = 0; manageEffects < this.effects.length; manageEffects++) {
this.effects[manageEffects].addBounds && (factorRenderLayers || (factorRenderLayers = !0, localBounds.applyMatrix(currentLayer.worldTransform)), this.effects[manageEffects].addBounds(localBounds, !0));
}
factorRenderLayers && localBounds.applyMatrix(currentLayer.worldTransform.copyTo(tempMatrix).invert());
bounds.addBounds(localBounds);
matrixAndBoundsPool.boundsPool.return(localBounds);
} else {
this.renderGroup && (bounds.addBounds(localBounds, this.relativeGroupTransform), matrixAndBoundsPool.boundsPool.return(localBounds));
}
}
}};
};
//# sourceMappingURL=module$node_modules$pixi_DOT_js$lib$scene$container$container_mixins$getFastGlobalBoundsMixin.js.map