Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ OneDimensionalIntersection()

static Vector2[] Terraria.Collision.OneDimensionalIntersection ( Vector2 a1,
Vector2 a2,
Vector2 b1,
Vector2 b2 )
inlinestaticprivate

Definition at line 113 of file Collision.cs.

114 {
115 float num = a2.X - a1.X;
116 float num2 = a2.Y - a1.Y;
117 float relativePoint;
118 float relativePoint2;
119 if (Math.Abs(num) > Math.Abs(num2))
120 {
121 relativePoint = (b1.X - a1.X) / num;
122 relativePoint2 = (b2.X - a1.X) / num;
123 }
124 else
125 {
126 relativePoint = (b1.Y - a1.Y) / num2;
127 relativePoint2 = (b2.Y - a1.Y) / num2;
128 }
131 foreach (float num3 in array)
132 {
133 float x = a2.X * num3 + a1.X * (1f - num3);
134 float y = a2.Y * num3 + a1.Y * (1f - num3);
135 list.Add(new Vector2(x, y));
136 }
137 return list.ToArray();
138 }
void Add(TKey key, TValue value)
static double Abs(double value)
static float[] FindOverlapPoints(float relativePoint1, float relativePoint2)
Definition Collision.cs:140

References System.Math.Abs(), System.Collections.Generic.Dictionary< TKey, TValue >.Add(), System.array, Terraria.Collision.FindOverlapPoints(), and System.list.

Referenced by Terraria.Collision.CheckLinevLine().