예제 #1
0
        public void CalculateFinalTeint()
        {
            int r = Hue.Red + Shadow.Red;
            int g = Hue.Green + Shadow.Green;
            int b = Hue.Blue + Shadow.Blue;

            r          = ColorMultiplicator.Clamp((r + 128) * 2, 0, 512);
            g          = ColorMultiplicator.Clamp((g + 128) * 2, 0, 512);
            b          = ColorMultiplicator.Clamp((b + 128) * 2, 0, 512);
            FinalTeint = new ColorMultiplicator(r, g, b, true);
        }
예제 #2
0
        public ColorMultiplicator Multiply(ColorMultiplicator param1)
        {
            if (this.IsOne)
            {
                return(param1);
            }
            if (param1.IsOne)
            {
                return(this);
            }
            ColorMultiplicator colorMultiplicator = new ColorMultiplicator(0, 0, 0, false)
            {
                Red = this.Red + param1.Red, Green = this.Green + param1.Green, Blue = this.Blue + param1.Blue
            };

            colorMultiplicator.Red   = ColorMultiplicator.Clamp(colorMultiplicator.Red, (int)sbyte.MinValue, (int)sbyte.MaxValue);
            colorMultiplicator.Green = ColorMultiplicator.Clamp(colorMultiplicator.Green, (int)sbyte.MinValue, (int)sbyte.MaxValue);
            colorMultiplicator.Blue  = ColorMultiplicator.Clamp(colorMultiplicator.Blue, (int)sbyte.MinValue, (int)sbyte.MaxValue);
            colorMultiplicator.IsOne = false;
            return(colorMultiplicator);
        }
예제 #3
0
 private void CalculateFinalTeint()
 {
     this.FinalTeint = new ColorMultiplicator(ColorMultiplicator.Clamp((this.Hue.Red + this.Shadow.Red + 128) * 2, 0, 512), ColorMultiplicator.Clamp((this.Hue.Green + this.Shadow.Green + 128) * 2, 0, 512), ColorMultiplicator.Clamp((this.Hue.Blue + this.Shadow.Blue + 128) * 2, 0, 512), true);
 }