public static double ContentTriangle(TriangleF triangle) { double strana1 = Distance(triangle.Point1,triangle.Point2); double strana2 = Distance(triangle.Point1,triangle.Point3); double strana3 = Distance(triangle.Point2, triangle.Point3); double t = (strana1 + strana2 + strana3) / 2; double S = Math.Sqrt(t * (t - strana1) * (t - strana2) * (t - strana3)); return S; }
public static bool TrianglePoint(TriangleF triangle,PointF point) { double obsahcely = Mathematic.ContentTriangle(triangle); double obsah1 = Mathematic.ContentTriangle(new TriangleF(triangle.Point1, triangle.Point2, point)); double obsah2 = Mathematic.ContentTriangle(new TriangleF(triangle.Point3, triangle.Point2, point)); double obsah3 = Mathematic.ContentTriangle(new TriangleF(triangle.Point1, triangle.Point3, point)); Console.WriteLine(Math.Round(obsahcely, 0)); Console.WriteLine(Math.Round(obsah2 + obsah3 + obsah1, 0)); if (Math.Round(obsahcely, 0) == Math.Round(obsah2 + obsah3 + obsah1, 0)) return true; else return false; }