mirror of
https://github.com/ZuneDev/MicrosoftIris.git
synced 2026-07-27 13:13:29 -07:00
Add project files.
This commit is contained in:
@@ -0,0 +1,106 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Animations.Interpolation
|
||||
// Assembly: UIX, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: A56C6C9D-B7F6-46A9-8BDE-B3D9B8D60B11
|
||||
// Assembly location: C:\Program Files\Zune\UIX.dll
|
||||
|
||||
namespace Microsoft.Iris.Animations
|
||||
{
|
||||
internal class Interpolation
|
||||
{
|
||||
public static readonly Interpolation Default = new Interpolation(InterpolationType.Linear);
|
||||
private InterpolationType _type;
|
||||
private float _weight = 1f;
|
||||
private float _bezierHandle1;
|
||||
private float _bezierHandle2 = 1f;
|
||||
private float _easePercent = 0.5f;
|
||||
|
||||
public Interpolation()
|
||||
: this(InterpolationType.Linear)
|
||||
{
|
||||
}
|
||||
|
||||
public Interpolation(InterpolationType type) => _type = type;
|
||||
|
||||
public InterpolationType Type
|
||||
{
|
||||
get => _type;
|
||||
set => _type = value;
|
||||
}
|
||||
|
||||
public float Weight
|
||||
{
|
||||
get => _weight;
|
||||
set => _weight = value;
|
||||
}
|
||||
|
||||
public float BezierHandle1
|
||||
{
|
||||
get => _bezierHandle1;
|
||||
set => _bezierHandle1 = value;
|
||||
}
|
||||
|
||||
public float BezierHandle2
|
||||
{
|
||||
get => _bezierHandle2;
|
||||
set => _bezierHandle2 = value;
|
||||
}
|
||||
|
||||
public float EasePercent
|
||||
{
|
||||
get => _easePercent;
|
||||
set => _easePercent = value;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
string str;
|
||||
switch (Type)
|
||||
{
|
||||
case InterpolationType.SCurve:
|
||||
str = "SCurve";
|
||||
break;
|
||||
case InterpolationType.Exp:
|
||||
str = "Exp";
|
||||
break;
|
||||
case InterpolationType.Log:
|
||||
str = "Log";
|
||||
break;
|
||||
case InterpolationType.Sine:
|
||||
str = "Sine";
|
||||
break;
|
||||
case InterpolationType.Cosine:
|
||||
str = "Cosine";
|
||||
break;
|
||||
case InterpolationType.Bezier:
|
||||
str = "Bezier, " + BezierHandle1 + ", " + BezierHandle2;
|
||||
break;
|
||||
case InterpolationType.EaseIn:
|
||||
str = "EaseIn, " + Weight + ", " + EasePercent;
|
||||
break;
|
||||
case InterpolationType.EaseOut:
|
||||
str = "EaseOut, " + Weight + ", " + EasePercent;
|
||||
break;
|
||||
default:
|
||||
str = "Linear";
|
||||
break;
|
||||
}
|
||||
if (Weight != 1.0)
|
||||
str = str + ", " + Weight;
|
||||
return str;
|
||||
}
|
||||
|
||||
public override bool Equals(object obj)
|
||||
{
|
||||
bool flag = false;
|
||||
if (obj is Interpolation)
|
||||
{
|
||||
Interpolation interpolation = (Interpolation)obj;
|
||||
flag = _type == interpolation._type && _weight == (double)interpolation._weight && (_bezierHandle1 == (double)interpolation._bezierHandle1 && _bezierHandle2 == (double)interpolation._bezierHandle2) && _easePercent == (double)interpolation._easePercent;
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
|
||||
public override int GetHashCode() => _type.GetHashCode() ^ _weight.GetHashCode() ^ _bezierHandle1.GetHashCode() ^ _bezierHandle2.GetHashCode() ^ _easePercent.GetHashCode();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user