using System; using System.Collections.Generic; using Artemis.Core.Models.Profile.LayerProperties; namespace Artemis.Core.Models.Profile.KeyframeEngines { /// public class FloatKeyframeEngine : KeyframeEngine { public sealed override List CompatibleTypes { get; } = new List {typeof(float)}; protected override object GetInterpolatedValue() { var currentKeyframe = (Keyframe) CurrentKeyframe; var nextKeyframe = (Keyframe) NextKeyframe; var diff = nextKeyframe.Value - currentKeyframe.Value; return currentKeyframe.Value + diff * KeyframeProgressEased; } } }