static struct055() { c000005.m000005(typeof(struct055)); bool flag = false; Assembly executingAssembly = Assembly.GetExecutingAssembly(); StrongNameSignatureVerificationEx(executingAssembly.Location, true, ref flag); if (!flag || !executingAssembly.FullName.EndsWith("3db2fda49ca9adff")) { throw new SecurityException("Assembly has been tampered"); } f00002a = new struct055(0f, 0f); }
public float m00017f(struct055 point, out struct0c6 connectingSegment) { double num = this.m000085(); struct055 struct2 = new struct055((this.f0000c0.f000069 - this.f0000bf.f000069) / num, (this.f0000c0.f000074 - this.f0000bf.f000074) / num); struct055 struct3 = new struct055(point.f000069 - this.f0000bf.f000069, point.f000074 - this.f0000bf.f000074); double num2 = struct055.m000083(struct3, struct2); if (num2 < 0.0) { connectingSegment.f0000bf = point; connectingSegment.f0000c0 = this.f0000bf; return (float) connectingSegment.m000085(); } if (num2 > num) { connectingSegment.f0000bf = point; connectingSegment.f0000c0 = this.f0000c0; return (float) connectingSegment.m000085(); } connectingSegment.f0000bf = point; connectingSegment.f0000c0 = new struct055(this.f0000bf.f000069 + (num2 * struct2.f000069), this.f0000bf.f000074 + (num2 * struct2.f000074)); return (float) connectingSegment.m000085(); }
public float m00017d(struct055 p0) { return this.m00017e(p0.f000069, p0.f000074); }
public struct0c6(double p0, double p1, double p2, double p3) { this.f0000bf = new struct055(p0, p1); this.f0000c0 = new struct055(p2, p3); }
public struct0c6(struct055 p0, struct055 p1) { this.f0000bf = p0; this.f0000c0 = p1; }
public void m000183(ref struct0c6 p0, out struct055 intersectionPoint) { double num = this.f0000c0.f000074 - this.f0000bf.f000074; double num2 = this.f0000bf.f000069 - this.f0000c0.f000069; double num3 = (num * this.f0000bf.f000069) + (num2 * this.f0000bf.f000074); double num4 = p0.f0000c0.f000074 - p0.f0000bf.f000074; double num5 = p0.f0000bf.f000069 - p0.f0000c0.f000069; double num6 = (num4 * p0.f0000bf.f000069) + (num5 * p0.f0000bf.f000074); double num7 = (num * num5) - (num4 * num2); if (num7 == 0.0) { intersectionPoint.f000069 = double.NaN; intersectionPoint.f000074 = double.NaN; } else { intersectionPoint.f000069 = ((num5 * num3) - (num2 * num6)) / num7; intersectionPoint.f000074 = ((num * num6) - (num4 * num3)) / num7; if (this.m000181(ref intersectionPoint) || p0.m000181(ref intersectionPoint)) { double num8 = this.m00017d(intersectionPoint); double num9 = p0.m00017d(intersectionPoint); if ((num9 > 1E-09) || (num8 > 1E-09)) { intersectionPoint.f000069 = double.NaN; intersectionPoint.f000074 = double.NaN; } } } }
public bool m000182(struct0c6 p0, out struct055 intersectionPoint) { this.m000183(ref p0, out intersectionPoint); return !double.IsNaN(intersectionPoint.f000069); }
public bool m000181(ref struct055 p0) { float num; f000030.X = (float) (this.f0000c0.f000069 - this.f0000bf.f000069); f000030.Y = (float) (this.f0000c0.f000074 - this.f0000bf.f000074); f000030.Normalize(); f000032.X = (float) (p0.f000069 - this.f0000bf.f000069); f000032.Y = (float) (p0.f000074 - this.f0000bf.f000074); Vector2.Dot(ref f000032, ref f000030, out num); return ((num < 0f) || ((num * num) > this.m00008d())); }
public static double m000083(struct055 p0, struct055 p1) { return ((p0.f000069 * p1.f000069) + (p0.f000074 * p1.f000074)); }