var Clamp = require('../../math/Clamp'); var _FLAG = 2; var Alpha = { _alpha: 1, _alphaTL: 1, _alphaTR: 1, _alphaBL: 1, _alphaBR: 1, clearAlpha: function (){ return this.setAlpha(1); } , setAlpha: function (topLeft, topRight, bottomLeft, bottomRight){ if (topLeft === undefined) { topLeft = 1; } if (topRight === undefined) { this.alpha = topLeft; } else { this._alphaTL = Clamp(topLeft, 0, 1); this._alphaTR = Clamp(topRight, 0, 1); this._alphaBL = Clamp(bottomLeft, 0, 1); this._alphaBR = Clamp(bottomRight, 0, 1); } return this; } , alpha: { get: function (){ return this._alpha; } , set: function (value){ var v = Clamp(value, 0, 1); this._alpha = v; this._alphaTL = v; this._alphaTR = v; this._alphaBL = v; this._alphaBR = v; if (v === 0) { this.renderFlags &= ~_FLAG; } else { this.renderFlags |= _FLAG; } } } , alphaTopLeft: { get: function (){ return this._alphaTL; } , set: function (value){ var v = Clamp(value, 0, 1); this._alphaTL = v; if (v !== 0) { this.renderFlags |= _FLAG; } } } , alphaTopRight: { get: function (){ return this._alphaTR; } , set: function (value){ var v = Clamp(value, 0, 1); this._alphaTR = v; if (v !== 0) { this.renderFlags |= _FLAG; } } } , alphaBottomLeft: { get: function (){ return this._alphaBL; } , set: function (value){ var v = Clamp(value, 0, 1); this._alphaBL = v; if (v !== 0) { this.renderFlags |= _FLAG; } } } , alphaBottomRight: { get: function (){ return this._alphaBR; } , set: function (value){ var v = Clamp(value, 0, 1); this._alphaBR = v; if (v !== 0) { this.renderFlags |= _FLAG; } } } } ; module.exports = Alpha;