public void ApplyPreset(IPresetAware from, IPresetAware to, double percentage) { if (from is Group groupFrom && to is Group groupTo && !Locked) { Percentage = (byte)(groupFrom.Percentage + (groupFrom.Percentage - groupFrom.Percentage) * percentage); } }
public virtual void ApplyPreset(IPresetAware from, IPresetAware to, double percentage) { if (from is Lamp lampFrom && to is Lamp lampTarget && !Locked) { Strenght = (byte)(lampFrom.Strenght + (lampTarget.Strenght - lampFrom.Strenght) * percentage); } }
public override void ApplyPreset(IPresetAware from, IPresetAware to, double percentage) { if (from is EurolitePMB8 ledFrom && to is EurolitePMB8 ledTarget && !Locked) { Strenght = (byte)(ledFrom.Strenght + (ledTarget.Strenght - ledFrom.Strenght) * percentage); Sensitivity = (byte)(ledFrom.Sensitivity + (ledTarget.Sensitivity - ledFrom.Sensitivity) * percentage); Speed = (byte)(ledFrom.Speed + (ledTarget.Speed - ledFrom.Speed) * percentage); Flash = (byte)(ledFrom.Flash + (ledTarget.Flash - ledFrom.Flash) * percentage); Mode = ledTarget.Mode; int numberOfColors = Colors.Length; Color[] tmpColors = new Color[numberOfColors]; for (int i = 0; i < numberOfColors; i++) { tmpColors[i] = Color.Add(ledFrom.Colors[i], Color.Multiply(Color.Subtract(ledTarget.Colors[i], ledFrom.Colors[i]), (float)percentage)); } Colors = tmpColors; }
public void ApplyPreset(string name, IPresetAware oldValue, Group newValue, double percentage) { nameToGroup[name].ApplyPreset(oldValue, newValue, percentage); }