/** * A GraphicsData object. * * @class * @memberof PIXI * @param lineWidth {number} the width of the line to draw * @param lineColor {number} the color of the line to draw * @param lineAlpha {number} the alpha of the line to draw * @param fillColor {number} the color of the fill * @param fillAlpha {number} the alpha of the fill * @param fill {boolean} whether or not the shape is filled with a colour * @param shape {PIXI.Circle|PIXI.Rectangle|PIXI.Ellipse|PIXI.Polygon} The shape object to draw. */ class GraphicsData { constructor(lineWidth, lineColor, lineAlpha, fillColor, fillAlpha, fill, shape) { /* * @member {number} the width of the line to draw */ this.lineWidth = lineWidth; /* * @member {number} the color of the line to draw */ this.lineColor = lineColor; /* * @member {number} the alpha of the line to draw */ this.lineAlpha = lineAlpha; /* * @member {number} cached tint of the line to draw */ this._lineTint = lineColor; /* * @member {number} the color of the fill */ this.fillColor = fillColor; /* * @member {number} the alpha of the fill */ this.fillAlpha = fillAlpha; /* * @member {number} cached tint of the fill */ this._fillTint = fillColor; /* * @member {boolean} whether or not the shape is filled with a colour */ this.fill = fill; this.holes = []; /* * @member {PIXI.Circle|PIXI.Ellipse|PIXI.Polygon|PIXI.Rectangle|PIXI.RoundedRectangle} The shape object to draw. */ this.shape = shape; /* * @member {number} The type of the shape, see the Const.Shapes file for all the existing types, */ this.type = shape.type; } /** * Creates a new GraphicsData object with the same values as this one. * * @return {PIXI.GraphicsData} Cloned GraphicsData object */ clone() { return new GraphicsData( this.lineWidth, this.lineColor, this.lineAlpha, this.fillColor, this.fillAlpha, this.fill, this.shape ); } /** * * */ addHole(shape) { this.holes.push(shape); } /** * Destroys the Graphics data. */ destroy() { this.shape = null; this.holes = null; } } export default GraphicsData;