scripts
This commit is contained in:
@@ -0,0 +1,103 @@
|
||||
using System;
|
||||
|
||||
namespace KdTree.Math
|
||||
{
|
||||
// Token: 0x0200000E RID: 14
|
||||
[Serializable]
|
||||
public class DoubleMath : TypeMath<double>
|
||||
{
|
||||
// Token: 0x0600005C RID: 92 RVA: 0x00002FE0 File Offset: 0x000011E0
|
||||
public override int Compare(double a, double b)
|
||||
{
|
||||
return a.CompareTo(b);
|
||||
}
|
||||
|
||||
// Token: 0x0600005D RID: 93 RVA: 0x00002FEA File Offset: 0x000011EA
|
||||
public override bool AreEqual(double a, double b)
|
||||
{
|
||||
return a == b;
|
||||
}
|
||||
|
||||
// Token: 0x17000014 RID: 20
|
||||
// (get) Token: 0x0600005E RID: 94 RVA: 0x00002FF0 File Offset: 0x000011F0
|
||||
public override double MinValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return double.MinValue;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000015 RID: 21
|
||||
// (get) Token: 0x0600005F RID: 95 RVA: 0x00002FFB File Offset: 0x000011FB
|
||||
public override double MaxValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return double.MaxValue;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000016 RID: 22
|
||||
// (get) Token: 0x06000060 RID: 96 RVA: 0x00003006 File Offset: 0x00001206
|
||||
public override double Zero
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0.0;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000017 RID: 23
|
||||
// (get) Token: 0x06000061 RID: 97 RVA: 0x00003011 File Offset: 0x00001211
|
||||
public override double NegativeInfinity
|
||||
{
|
||||
get
|
||||
{
|
||||
return double.NegativeInfinity;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x17000018 RID: 24
|
||||
// (get) Token: 0x06000062 RID: 98 RVA: 0x0000301C File Offset: 0x0000121C
|
||||
public override double PositiveInfinity
|
||||
{
|
||||
get
|
||||
{
|
||||
return double.PositiveInfinity;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x06000063 RID: 99 RVA: 0x00003027 File Offset: 0x00001227
|
||||
public override double Add(double a, double b)
|
||||
{
|
||||
return a + b;
|
||||
}
|
||||
|
||||
// Token: 0x06000064 RID: 100 RVA: 0x0000302C File Offset: 0x0000122C
|
||||
public override double Subtract(double a, double b)
|
||||
{
|
||||
return a - b;
|
||||
}
|
||||
|
||||
// Token: 0x06000065 RID: 101 RVA: 0x00003031 File Offset: 0x00001231
|
||||
public override double Multiply(double a, double b)
|
||||
{
|
||||
return a * b;
|
||||
}
|
||||
|
||||
// Token: 0x06000066 RID: 102 RVA: 0x00003038 File Offset: 0x00001238
|
||||
public override double DistanceSquaredBetweenPoints(double[] a, double[] b)
|
||||
{
|
||||
double num = this.Zero;
|
||||
int num2 = a.Length;
|
||||
for (int i = 0; i < num2; i++)
|
||||
{
|
||||
double num3 = this.Subtract(a[i], b[i]);
|
||||
double num4 = this.Multiply(num3, num3);
|
||||
num = this.Add(num, num4);
|
||||
}
|
||||
return num;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
using System;
|
||||
|
||||
namespace KdTree.Math
|
||||
{
|
||||
// Token: 0x0200000F RID: 15
|
||||
[Serializable]
|
||||
public class FloatMath : TypeMath<float>
|
||||
{
|
||||
// Token: 0x06000068 RID: 104 RVA: 0x00003086 File Offset: 0x00001286
|
||||
public override int Compare(float a, float b)
|
||||
{
|
||||
return a.CompareTo(b);
|
||||
}
|
||||
|
||||
// Token: 0x06000069 RID: 105 RVA: 0x00002FEA File Offset: 0x000011EA
|
||||
public override bool AreEqual(float a, float b)
|
||||
{
|
||||
return a == b;
|
||||
}
|
||||
|
||||
// Token: 0x17000019 RID: 25
|
||||
// (get) Token: 0x0600006A RID: 106 RVA: 0x00003090 File Offset: 0x00001290
|
||||
public override float MinValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return float.MinValue;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700001A RID: 26
|
||||
// (get) Token: 0x0600006B RID: 107 RVA: 0x00003097 File Offset: 0x00001297
|
||||
public override float MaxValue
|
||||
{
|
||||
get
|
||||
{
|
||||
return float.MaxValue;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700001B RID: 27
|
||||
// (get) Token: 0x0600006C RID: 108 RVA: 0x0000309E File Offset: 0x0000129E
|
||||
public override float Zero
|
||||
{
|
||||
get
|
||||
{
|
||||
return 0f;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700001C RID: 28
|
||||
// (get) Token: 0x0600006D RID: 109 RVA: 0x000030A5 File Offset: 0x000012A5
|
||||
public override float NegativeInfinity
|
||||
{
|
||||
get
|
||||
{
|
||||
return float.NegativeInfinity;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x1700001D RID: 29
|
||||
// (get) Token: 0x0600006E RID: 110 RVA: 0x000030AC File Offset: 0x000012AC
|
||||
public override float PositiveInfinity
|
||||
{
|
||||
get
|
||||
{
|
||||
return float.PositiveInfinity;
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x0600006F RID: 111 RVA: 0x00003027 File Offset: 0x00001227
|
||||
public override float Add(float a, float b)
|
||||
{
|
||||
return a + b;
|
||||
}
|
||||
|
||||
// Token: 0x06000070 RID: 112 RVA: 0x0000302C File Offset: 0x0000122C
|
||||
public override float Subtract(float a, float b)
|
||||
{
|
||||
return a - b;
|
||||
}
|
||||
|
||||
// Token: 0x06000071 RID: 113 RVA: 0x00003031 File Offset: 0x00001231
|
||||
public override float Multiply(float a, float b)
|
||||
{
|
||||
return a * b;
|
||||
}
|
||||
|
||||
// Token: 0x06000072 RID: 114 RVA: 0x000030B4 File Offset: 0x000012B4
|
||||
public override float DistanceSquaredBetweenPoints(float[] a, float[] b)
|
||||
{
|
||||
float num = this.Zero;
|
||||
int num2 = a.Length;
|
||||
for (int i = 0; i < num2; i++)
|
||||
{
|
||||
float num3 = this.Subtract(a[i], b[i]);
|
||||
float num4 = this.Multiply(num3, num3);
|
||||
num = this.Add(num, num4);
|
||||
}
|
||||
return num;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
using System;
|
||||
|
||||
namespace KdTree.Math
|
||||
{
|
||||
// Token: 0x02000010 RID: 16
|
||||
[Serializable]
|
||||
public abstract class TypeMath<T> : ITypeMath<T>
|
||||
{
|
||||
// Token: 0x06000074 RID: 116
|
||||
public abstract int Compare(T a, T b);
|
||||
|
||||
// Token: 0x06000075 RID: 117
|
||||
public abstract bool AreEqual(T a, T b);
|
||||
|
||||
// Token: 0x06000076 RID: 118 RVA: 0x00003104 File Offset: 0x00001304
|
||||
public virtual bool AreEqual(T[] a, T[] b)
|
||||
{
|
||||
if (a.Length != b.Length)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
for (int i = 0; i < a.Length; i++)
|
||||
{
|
||||
if (!this.AreEqual(a[i], b[i]))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// Token: 0x1700001E RID: 30
|
||||
// (get) Token: 0x06000077 RID: 119
|
||||
public abstract T MinValue { get; }
|
||||
|
||||
// Token: 0x1700001F RID: 31
|
||||
// (get) Token: 0x06000078 RID: 120
|
||||
public abstract T MaxValue { get; }
|
||||
|
||||
// Token: 0x06000079 RID: 121 RVA: 0x00003142 File Offset: 0x00001342
|
||||
public T Min(T a, T b)
|
||||
{
|
||||
if (this.Compare(a, b) < 0)
|
||||
{
|
||||
return a;
|
||||
}
|
||||
return b;
|
||||
}
|
||||
|
||||
// Token: 0x0600007A RID: 122 RVA: 0x00003152 File Offset: 0x00001352
|
||||
public T Max(T a, T b)
|
||||
{
|
||||
if (this.Compare(a, b) > 0)
|
||||
{
|
||||
return a;
|
||||
}
|
||||
return b;
|
||||
}
|
||||
|
||||
// Token: 0x17000020 RID: 32
|
||||
// (get) Token: 0x0600007B RID: 123
|
||||
public abstract T Zero { get; }
|
||||
|
||||
// Token: 0x17000021 RID: 33
|
||||
// (get) Token: 0x0600007C RID: 124
|
||||
public abstract T NegativeInfinity { get; }
|
||||
|
||||
// Token: 0x17000022 RID: 34
|
||||
// (get) Token: 0x0600007D RID: 125
|
||||
public abstract T PositiveInfinity { get; }
|
||||
|
||||
// Token: 0x0600007E RID: 126
|
||||
public abstract T Add(T a, T b);
|
||||
|
||||
// Token: 0x0600007F RID: 127
|
||||
public abstract T Subtract(T a, T b);
|
||||
|
||||
// Token: 0x06000080 RID: 128
|
||||
public abstract T Multiply(T a, T b);
|
||||
|
||||
// Token: 0x06000081 RID: 129
|
||||
public abstract T DistanceSquaredBetweenPoints(T[] a, T[] b);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user