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; } } } }