From 3af4c218c0e70167db23a6303d2af30aff37d2fe Mon Sep 17 00:00:00 2001 From: Andrew Lee Date: Thu, 20 Aug 2020 23:40:50 -0400 Subject: Removed a bunch of stuff; Changes --- .../Runtime/Utilities/Extrapolation.cs | 92 ---------------------- 1 file changed, 92 deletions(-) delete mode 100644 Library/PackageCache/com.unity.timeline@1.2.13/Runtime/Utilities/Extrapolation.cs (limited to 'Library/PackageCache/com.unity.timeline@1.2.13/Runtime/Utilities/Extrapolation.cs') diff --git a/Library/PackageCache/com.unity.timeline@1.2.13/Runtime/Utilities/Extrapolation.cs b/Library/PackageCache/com.unity.timeline@1.2.13/Runtime/Utilities/Extrapolation.cs deleted file mode 100644 index 34408c9..0000000 --- a/Library/PackageCache/com.unity.timeline@1.2.13/Runtime/Utilities/Extrapolation.cs +++ /dev/null @@ -1,92 +0,0 @@ -using System; -using UnityEngine; - -// Extension methods responsible for managing extrapolation time -namespace UnityEngine.Timeline -{ - static class Extrapolation - { - /// - /// The minimum amount of extrapolation time to apply - /// - internal static readonly double kMinExtrapolationTime = TimeUtility.kTimeEpsilon * 1000; - - // Calculates the extrapolation times - internal static void CalculateExtrapolationTimes(this TrackAsset asset) - { - TimelineClip[] clips = asset.clips; - if (clips == null || clips.Length == 0) - return; - - // extrapolation not supported - if (!clips[0].SupportsExtrapolation()) - return; - - var orderedClips = SortClipsByStartTime(clips); - if (orderedClips.Length > 0) - { - // post extrapolation is the minimum time to the next clip - for (int i = 0; i < orderedClips.Length; i++) - { - double minTime = double.PositiveInfinity; - for (int j = 0; j < orderedClips.Length; j++) - { - if (i == j) - continue; - - double deltaTime = orderedClips[j].start - orderedClips[i].end; - if (deltaTime >= -TimeUtility.kTimeEpsilon && deltaTime < minTime) - minTime = Math.Min(minTime, deltaTime); - // check for overlapped clips - if (orderedClips[j].start <= orderedClips[i].end && orderedClips[j].end > orderedClips[i].end) - minTime = 0; - } - minTime = minTime <= kMinExtrapolationTime ? 0 : minTime; - orderedClips[i].SetPostExtrapolationTime(minTime); - } - - // the first clip gets pre-extrapolation, then it's only respected if there is no post extrapolation - orderedClips[0].SetPreExtrapolationTime(Math.Max(0, orderedClips[0].start)); - for (int i = 1; i < orderedClips.Length; i++) - { - double preTime = 0; - int prevClip = -1; - for (int j = 0; j < i; j++) - { - // overlap, no pre-time - if (orderedClips[j].end > orderedClips[i].start) - { - prevClip = -1; - preTime = 0; - break; - } - - double gap = orderedClips[i].start - orderedClips[j].end; - if (prevClip == -1 || gap < preTime) - { - preTime = gap; - prevClip = j; - } - } - // check for a post extrapolation time - if (prevClip >= 0) - { - if (orderedClips[prevClip].postExtrapolationMode != TimelineClip.ClipExtrapolation.None) - preTime = 0; - } - - preTime = preTime <= kMinExtrapolationTime ? 0 : preTime; - orderedClips[i].SetPreExtrapolationTime(preTime); - } - } - } - - static TimelineClip[] SortClipsByStartTime(TimelineClip[] clips) - { - var orderedClips = new TimelineClip[clips.Length]; - Array.Copy(clips, orderedClips, clips.Length); - Array.Sort(orderedClips, (clip1, clip2) => clip1.start.CompareTo(clip2.start)); - return orderedClips; - } - } -} -- cgit v1.2.3