UNPKG

@pixi-spine/runtime-3.8

Version:

Pixi runtime for spine 3.8 models

1 lines 5.28 kB
{"version":3,"file":"MeshAttachment.mjs","sources":["../../../src/core/attachments/MeshAttachment.ts"],"sourcesContent":["import { Attachment, VertexAttachment } from './Attachment';\nimport { AttachmentType, Color, IMeshAttachment, TextureRegion, Utils } from '@pixi-spine/base';\n\n/**\n * @public\n */\nexport class MeshAttachment extends VertexAttachment implements IMeshAttachment {\n type = AttachmentType.Mesh;\n\n region: TextureRegion;\n path: string;\n regionUVs: Float32Array;\n triangles: Array<number>;\n color = new Color(1, 1, 1, 1);\n width: number;\n height: number;\n hullLength: number;\n edges: Array<number>;\n private parentMesh: MeshAttachment;\n tempColor = new Color(0, 0, 0, 0);\n\n constructor(name: string) {\n super(name);\n }\n\n getParentMesh() {\n return this.parentMesh;\n }\n\n /** @param parentMesh May be null. */\n setParentMesh(parentMesh: MeshAttachment) {\n this.parentMesh = parentMesh;\n if (parentMesh != null) {\n this.bones = parentMesh.bones;\n this.vertices = parentMesh.vertices;\n this.worldVerticesLength = parentMesh.worldVerticesLength;\n this.regionUVs = parentMesh.regionUVs;\n this.triangles = parentMesh.triangles;\n this.hullLength = parentMesh.hullLength;\n this.worldVerticesLength = parentMesh.worldVerticesLength;\n }\n }\n\n copy(): Attachment {\n if (this.parentMesh != null) return this.newLinkedMesh();\n\n const copy = new MeshAttachment(this.name);\n\n copy.region = this.region;\n copy.path = this.path;\n copy.color.setFromColor(this.color);\n\n this.copyTo(copy);\n copy.regionUVs = new Float32Array(this.regionUVs.length);\n Utils.arrayCopy(this.regionUVs, 0, copy.regionUVs, 0, this.regionUVs.length);\n copy.triangles = new Array<number>(this.triangles.length);\n Utils.arrayCopy(this.triangles, 0, copy.triangles, 0, this.triangles.length);\n copy.hullLength = this.hullLength;\n\n // Nonessential.\n if (this.edges != null) {\n copy.edges = new Array<number>(this.edges.length);\n Utils.arrayCopy(this.edges, 0, copy.edges, 0, this.edges.length);\n }\n copy.width = this.width;\n copy.height = this.height;\n\n return copy;\n }\n\n newLinkedMesh(): MeshAttachment {\n const copy = new MeshAttachment(this.name);\n\n copy.region = this.region;\n copy.path = this.path;\n copy.color.setFromColor(this.color);\n copy.deformAttachment = this.deformAttachment;\n copy.setParentMesh(this.parentMesh != null ? this.parentMesh : this);\n // copy.updateUVs();\n\n return copy;\n }\n}\n"],"names":[],"mappings":";;;AAMO,MAAM,uBAAuB,gBAA4C,CAAA;AAAA,EAe5E,YAAY,IAAc,EAAA;AACtB,IAAA,KAAA,CAAM,IAAI,CAAA,CAAA;AAfd,IAAA,IAAA,CAAA,IAAA,GAAO,cAAe,CAAA,IAAA,CAAA;AAMtB,IAAA,IAAA,CAAA,KAAA,GAAQ,IAAI,KAAA,CAAM,CAAG,EAAA,CAAA,EAAG,GAAG,CAAC,CAAA,CAAA;AAM5B,IAAA,IAAA,CAAA,SAAA,GAAY,IAAI,KAAA,CAAM,CAAG,EAAA,CAAA,EAAG,GAAG,CAAC,CAAA,CAAA;AAAA,GAIhC;AAAA,EAEA,aAAgB,GAAA;AACZ,IAAA,OAAO,IAAK,CAAA,UAAA,CAAA;AAAA,GAChB;AAAA;AAAA,EAGA,cAAc,UAA4B,EAAA;AACtC,IAAA,IAAA,CAAK,UAAa,GAAA,UAAA,CAAA;AAClB,IAAA,IAAI,cAAc,IAAM,EAAA;AACpB,MAAA,IAAA,CAAK,QAAQ,UAAW,CAAA,KAAA,CAAA;AACxB,MAAA,IAAA,CAAK,WAAW,UAAW,CAAA,QAAA,CAAA;AAC3B,MAAA,IAAA,CAAK,sBAAsB,UAAW,CAAA,mBAAA,CAAA;AACtC,MAAA,IAAA,CAAK,YAAY,UAAW,CAAA,SAAA,CAAA;AAC5B,MAAA,IAAA,CAAK,YAAY,UAAW,CAAA,SAAA,CAAA;AAC5B,MAAA,IAAA,CAAK,aAAa,UAAW,CAAA,UAAA,CAAA;AAC7B,MAAA,IAAA,CAAK,sBAAsB,UAAW,CAAA,mBAAA,CAAA;AAAA,KAC1C;AAAA,GACJ;AAAA,EAEA,IAAmB,GAAA;AACf,IAAA,IAAI,KAAK,UAAc,IAAA,IAAA;AAAM,MAAA,OAAO,KAAK,aAAc,EAAA,CAAA;AAEvD,IAAA,MAAM,IAAO,GAAA,IAAI,cAAe,CAAA,IAAA,CAAK,IAAI,CAAA,CAAA;AAEzC,IAAA,IAAA,CAAK,SAAS,IAAK,CAAA,MAAA,CAAA;AACnB,IAAA,IAAA,CAAK,OAAO,IAAK,CAAA,IAAA,CAAA;AACjB,IAAK,IAAA,CAAA,KAAA,CAAM,YAAa,CAAA,IAAA,CAAK,KAAK,CAAA,CAAA;AAElC,IAAA,IAAA,CAAK,OAAO,IAAI,CAAA,CAAA;AAChB,IAAA,IAAA,CAAK,SAAY,GAAA,IAAI,YAAa,CAAA,IAAA,CAAK,UAAU,MAAM,CAAA,CAAA;AACvD,IAAM,KAAA,CAAA,SAAA,CAAU,KAAK,SAAW,EAAA,CAAA,EAAG,KAAK,SAAW,EAAA,CAAA,EAAG,IAAK,CAAA,SAAA,CAAU,MAAM,CAAA,CAAA;AAC3E,IAAA,IAAA,CAAK,SAAY,GAAA,IAAI,KAAc,CAAA,IAAA,CAAK,UAAU,MAAM,CAAA,CAAA;AACxD,IAAM,KAAA,CAAA,SAAA,CAAU,KAAK,SAAW,EAAA,CAAA,EAAG,KAAK,SAAW,EAAA,CAAA,EAAG,IAAK,CAAA,SAAA,CAAU,MAAM,CAAA,CAAA;AAC3E,IAAA,IAAA,CAAK,aAAa,IAAK,CAAA,UAAA,CAAA;AAGvB,IAAI,IAAA,IAAA,CAAK,SAAS,IAAM,EAAA;AACpB,MAAA,IAAA,CAAK,KAAQ,GAAA,IAAI,KAAc,CAAA,IAAA,CAAK,MAAM,MAAM,CAAA,CAAA;AAChD,MAAM,KAAA,CAAA,SAAA,CAAU,KAAK,KAAO,EAAA,CAAA,EAAG,KAAK,KAAO,EAAA,CAAA,EAAG,IAAK,CAAA,KAAA,CAAM,MAAM,CAAA,CAAA;AAAA,KACnE;AACA,IAAA,IAAA,CAAK,QAAQ,IAAK,CAAA,KAAA,CAAA;AAClB,IAAA,IAAA,CAAK,SAAS,IAAK,CAAA,MAAA,CAAA;AAEnB,IAAO,OAAA,IAAA,CAAA;AAAA,GACX;AAAA,EAEA,aAAgC,GAAA;AAC5B,IAAA,MAAM,IAAO,GAAA,IAAI,cAAe,CAAA,IAAA,CAAK,IAAI,CAAA,CAAA;AAEzC,IAAA,IAAA,CAAK,SAAS,IAAK,CAAA,MAAA,CAAA;AACnB,IAAA,IAAA,CAAK,OAAO,IAAK,CAAA,IAAA,CAAA;AACjB,IAAK,IAAA,CAAA,KAAA,CAAM,YAAa,CAAA,IAAA,CAAK,KAAK,CAAA,CAAA;AAClC,IAAA,IAAA,CAAK,mBAAmB,IAAK,CAAA,gBAAA,CAAA;AAC7B,IAAA,IAAA,CAAK,cAAc,IAAK,CAAA,UAAA,IAAc,IAAO,GAAA,IAAA,CAAK,aAAa,IAAI,CAAA,CAAA;AAGnE,IAAO,OAAA,IAAA,CAAA;AAAA,GACX;AACJ;;;;"}