{"version":3,"file":"TilingSprite2d.mjs","sources":["../../../src/proj2d/tiling/TilingSprite2d.ts"],"sourcesContent":["import { Renderer, Texture } from '@pixi/core';\r\nimport { IPointData, Matrix, Point, Transform } from '@pixi/math';\r\nimport { Projection2d } from '../Projection2d';\r\nimport { DisplayObject } from '@pixi/display';\r\nimport { TRANSFORM_STEP } from '../../base';\r\nimport { container2dToLocal } from '../Container2d';\r\nimport { TilingSprite } from '@pixi/sprite-tiling';\r\n\r\nconst tempTransform = new Transform();\r\n\r\nexport class TilingSprite2d extends TilingSprite\r\n{\r\n    constructor(texture: Texture, width: number, height: number)\r\n    {\r\n        super(texture, width, height);\r\n\r\n        this.tileProj = new Projection2d(this.tileTransform);\r\n        this.tileProj.reverseLocalOrder = true;\r\n        this.proj = new Projection2d(this.transform);\r\n\r\n        this.pluginName = 'tilingSprite2d';\r\n        this.uvRespectAnchor = true;\r\n    }\r\n\r\n    tileProj: Projection2d;\r\n    proj: Projection2d;\r\n\r\n    get worldTransform(): Matrix\r\n    {\r\n        return this.proj.affine ? this.transform.worldTransform : this.proj.world as any;\r\n    }\r\n\r\n    toLocal<P extends IPointData = Point>(position: IPointData, from?: DisplayObject, point?: P, skipUpdate?: boolean,\r\n        step = TRANSFORM_STEP.ALL): P\r\n    {\r\n        return container2dToLocal.call(this, position, from, point, skipUpdate, step);\r\n    }\r\n\r\n    _render(renderer: Renderer): void\r\n    {\r\n        // tweak our texture temporarily..\r\n        const texture = this._texture;\r\n\r\n        if (!texture || !texture.valid)\r\n        {\r\n            return;\r\n        }\r\n\r\n        // changed\r\n        this.tileTransform.updateTransform(tempTransform);\r\n        this.uvMatrix.update();\r\n\r\n        renderer.batch.setObjectRenderer((renderer.plugins as any)[this.pluginName]);\r\n        (renderer.plugins as any)[this.pluginName].render(this);\r\n    }\r\n}\r\n"],"names":[],"mappings":";;;;;;;AAQA,MAAM,aAAA,GAAgB,IAAI,SAAU,EAAA,CAAA;AAE7B,MAAM,uBAAuB,YACpC,CAAA;AAAA,EACI,WAAA,CAAY,OAAkB,EAAA,KAAA,EAAe,MAC7C,EAAA;AACI,IAAM,KAAA,CAAA,OAAA,EAAS,OAAO,MAAM,CAAA,CAAA;AAE5B,IAAA,IAAA,CAAK,QAAW,GAAA,IAAI,YAAa,CAAA,IAAA,CAAK,aAAa,CAAA,CAAA;AACnD,IAAA,IAAA,CAAK,SAAS,iBAAoB,GAAA,IAAA,CAAA;AAClC,IAAA,IAAA,CAAK,IAAO,GAAA,IAAI,YAAa,CAAA,IAAA,CAAK,SAAS,CAAA,CAAA;AAE3C,IAAA,IAAA,CAAK,UAAa,GAAA,gBAAA,CAAA;AAClB,IAAA,IAAA,CAAK,eAAkB,GAAA,IAAA,CAAA;AAAA,GAC3B;AAAA,EAKA,IAAI,cACJ,GAAA;AACI,IAAA,OAAO,KAAK,IAAK,CAAA,MAAA,GAAS,KAAK,SAAU,CAAA,cAAA,GAAiB,KAAK,IAAK,CAAA,KAAA,CAAA;AAAA,GACxE;AAAA,EAEA,QAAsC,QAAsB,EAAA,IAAA,EAAsB,OAAW,UACzF,EAAA,IAAA,GAAO,eAAe,GAC1B,EAAA;AACI,IAAA,OAAO,mBAAmB,IAAK,CAAA,IAAA,EAAM,UAAU,IAAM,EAAA,KAAA,EAAO,YAAY,IAAI,CAAA,CAAA;AAAA,GAChF;AAAA,EAEA,QAAQ,QACR,EAAA;AAEI,IAAA,MAAM,UAAU,IAAK,CAAA,QAAA,CAAA;AAErB,IAAA,IAAI,CAAC,OAAA,IAAW,CAAC,OAAA,CAAQ,KACzB,EAAA;AACI,MAAA,OAAA;AAAA,KACJ;AAGA,IAAK,IAAA,CAAA,aAAA,CAAc,gBAAgB,aAAa,CAAA,CAAA;AAChD,IAAA,IAAA,CAAK,SAAS,MAAO,EAAA,CAAA;AAErB,IAAA,QAAA,CAAS,MAAM,iBAAmB,CAAA,QAAA,CAAS,OAAgB,CAAA,IAAA,CAAK,UAAU,CAAC,CAAA,CAAA;AAC3E,IAAC,SAAS,OAAgB,CAAA,IAAA,CAAK,UAAU,CAAA,CAAE,OAAO,IAAI,CAAA,CAAA;AAAA,GAC1D;AACJ;;;;"}