This commit is contained in:
niko
2026-06-04 11:42:34 +02:00
parent f39ba70a9f
commit e720b98cd1
7488 changed files with 2493818 additions and 0 deletions
+103
View File
@@ -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;
}
}
}
+103
View File
@@ -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;
}
}
}
+84
View File
@@ -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);
}
}