2 using System.Collections.Generic;
5 using DirectOutput.General.Color;
6 using DirectOutput.Cab.Toys.Layer;
8 namespace DirectOutput.FX.MatrixFX
15 private const int RefreshIntervalMs = 30;
28 get {
return _ActiveColor; }
29 set { _ActiveColor = value; }
43 get {
return _InactiveColor; }
44 set { _InactiveColor = value; }
53 protected override RGBAColor GetEffectValue(
int TriggerValue)
57 int V = TriggerValue.Limit(0, 255);
58 D.
Red = InactiveColor.Red + (int)((
float)(ActiveColor.Red - InactiveColor.Red) * V / 255).Limit(0, 255);
59 D.
Green = InactiveColor.Green + (int)((
float)(ActiveColor.Green - InactiveColor.Green) * V / 255).Limit(0, 255);
60 D.
Blue = InactiveColor.Blue + (int)((
float)(ActiveColor.Blue - InactiveColor.Blue) * V / 255).Limit(0, 255);
61 D.
Alpha = InactiveColor.Alpha + (int)((
float)(ActiveColor.Alpha - InactiveColor.Alpha) * V / 255).Limit(0, 255);