private static double?perpendicularDistance(LocationPolygonPoint paramLocationPolygonPoint1, LocationPolygonPoint paramLocationPolygonPoint2, LocationPolygonPoint paramLocationPolygonPoint3) { double?double1; double?double2; return((double2 = (double1 = Convert.ToDouble(Math.Abs(0.5D * (paramLocationPolygonPoint1.X * paramLocationPolygonPoint2.Y + paramLocationPolygonPoint2.X * paramLocationPolygonPoint3.Y + paramLocationPolygonPoint3.X * paramLocationPolygonPoint1.Y - paramLocationPolygonPoint2.X * paramLocationPolygonPoint1.Y - paramLocationPolygonPoint3.X * paramLocationPolygonPoint2.Y - paramLocationPolygonPoint1.X * paramLocationPolygonPoint3.Y)))).valueOf(Math.Sqrt(Math.Pow(paramLocationPolygonPoint1.X - paramLocationPolygonPoint2.X, 2.0D) + Math.Pow(paramLocationPolygonPoint1.Y - paramLocationPolygonPoint2.Y, 2.0D)))).valueOf(double1.Value / double2.Value * 2.0D)); }
public virtual void calculatePolygonPoints(string paramString) { if (string.ReferenceEquals(paramString, null) || !paramString.StartsWith("[[", StringComparison.Ordinal) || !paramString.EndsWith("]]", StringComparison.Ordinal)) { return; } this.polygonPoints.Clear(); paramString = paramString.Substring(2, (paramString.Length - 2) - 2); paramString = StringUtils.replaceAll(paramString, "],[", ";"); string[] arrayOfString = paramString.Split(";", true); foreach (string str in arrayOfString) { str = str.Substring(1, (str.Length - 1) - 1); string[] arrayOfString1 = StringUtils.replaceAll(str, "\"", "").Split(",", true); LocationPolygonPoint locationPolygonPoint = new LocationPolygonPoint((Convert.ToDouble(arrayOfString1[0])), (Convert.ToDouble(arrayOfString1[1]))); this.polygonPoints.Add(locationPolygonPoint); } }