コード例 #1
0
ファイル: Mathematic.cs プロジェクト: Zezis/ProjectZezi
        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;
        }
コード例 #2
0
ファイル: Collide.cs プロジェクト: Zezis/ProjectZezi
        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;
        }