Example #1
0
 private void TriangleRegion_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.KeyData == Keys.Add)
     {
         if (Angle == TriangleAngle.Left)
         {
             Angle = TriangleAngle.Top;
         }
         else
         {
             Angle++;
         }
     }
     else if (e.KeyData == Keys.Subtract)
     {
         if (Angle == TriangleAngle.Top)
         {
             Angle = TriangleAngle.Left;
         }
         else
         {
             Angle--;
         }
     }
 }
Example #2
0
 private void TriangleRegion_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.KeyData == Keys.Add)
     {
         if (Angle == TriangleAngle.Left)
         {
             Angle = TriangleAngle.Top;
         }
         else
         {
             Angle++;
         }
     }
     else if (e.KeyData == Keys.Subtract)
     {
         if (Angle == TriangleAngle.Top)
         {
             Angle = TriangleAngle.Left;
         }
         else
         {
             Angle--;
         }
     }
 }
        public TriangleRegion(Image backgroundImage = null)
            : base(backgroundImage)
        {
            Angle = TriangleAngle.Top;

            MouseWheel += new MouseEventHandler(TriangleRegion_MouseWheel);
        }
Example #4
0
        public TriangleRegion(Image backgroundImage = null)
            : base(backgroundImage)
        {
            Angle = TriangleAngle.Top;

            KeyDown += TriangleRegion_KeyDown;
        }
 private void TriangleRegion_MouseWheel(object sender, MouseEventArgs e)
 {
     if (e.Delta > 0)
     {
         if (Angle == TriangleAngle.Left)
         {
             Angle = TriangleAngle.Top;
         }
         else
         {
             Angle++;
         }
     }
     else if (e.Delta < 0)
     {
         if (Angle == TriangleAngle.Top)
         {
             Angle = TriangleAngle.Left;
         }
         else
         {
             Angle--;
         }
     }
 }
Example #6
0
        public TriangleRegion(Image backgroundImage = null)
            : base(backgroundImage)
        {
            Angle = TriangleAngle.Top;

            KeyDown += TriangleRegion_KeyDown;
        }
 private void TriangleRegion_MouseWheel(object sender, MouseEventArgs e)
 {
     if (e.Delta > 0)
     {
         if (Angle == TriangleAngle.Left)
         {
             Angle = TriangleAngle.Top;
         }
         else
         {
             Angle++;
         }
     }
     else if (e.Delta < 0)
     {
         if (Angle == TriangleAngle.Top)
         {
             Angle = TriangleAngle.Left;
         }
         else
         {
             Angle--;
         }
     }
 }
Example #8
0
 /// <summary>
 /// Calculates the tangent of <paramref name="angle"/> in <paramref name="tri"/>.
 /// </summary>
 /// <param name="tri">The triangle</param>
 /// <param name="angle">The angle to calculate.</param>
 /// <returns>The tangent of <paramref name="angle"/>.</returns>
 public static double Tangent(Triangle tri, TriangleAngle angle = TriangleAngle.C)
 {
     switch (angle)
     {
         case TriangleAngle.A:
             return tri.SideB / tri.SideA;
         default:
             return tri.AngleA / tri.SideB;
     }
 }
Example #9
0
 /// <summary>
 /// Calculates the cosine of <paramref name="angle"/> in <paramref name="tri"/>.
 /// </summary>
 /// <param name="tri">The triangle</param>
 /// <param name="angle">The angle to calculate.</param>
 /// <returns>The cosine of <paramref name="angle"/>.</returns>
 public static double Cosine(Triangle tri, TriangleAngle angle = TriangleAngle.C)
 {
     switch (angle)
     {
         case TriangleAngle.A:
             return tri.SideA / tri.SideC;
         default:
             return tri.AngleB / tri.SideC;
     }
 }
Example #10
0
        /// <summary>
        /// Calculates the tangent of <paramref name="angle"/> in <paramref name="tri"/>.
        /// </summary>
        /// <param name="tri">The triangle</param>
        /// <param name="angle">The angle to calculate.</param>
        /// <returns>The tangent of <paramref name="angle"/>.</returns>
        public static double Tangent(Triangle tri, TriangleAngle angle = TriangleAngle.C)
        {
            switch (angle)
            {
            case TriangleAngle.A:
                return(tri.SideB / tri.SideA);

            default:
                return(tri.AngleA / tri.SideB);
            }
        }
Example #11
0
        /// <summary>
        /// Calculates the cosine of <paramref name="angle"/> in <paramref name="tri"/>.
        /// </summary>
        /// <param name="tri">The triangle</param>
        /// <param name="angle">The angle to calculate.</param>
        /// <returns>The cosine of <paramref name="angle"/>.</returns>
        public static double Cosine(Triangle tri, TriangleAngle angle = TriangleAngle.C)
        {
            switch (angle)
            {
            case TriangleAngle.A:
                return(tri.SideA / tri.SideC);

            default:
                return(tri.AngleB / tri.SideC);
            }
        }
Example #12
0
 public TriangleRegion()
 {
     Angle    = TriangleAngle.Top;
     KeyDown += TriangleRegion_KeyDown;
 }
        public static void AddTriangle(this GraphicsPath graphicsPath, RectangleF rect, TriangleAngle angle = TriangleAngle.Top)
        {
            PointF p1, p2, p3;

            switch (angle)
            {
            default:
            case TriangleAngle.Top:
                p1 = new PointF(rect.X + rect.Width / 2.0f, rect.Y);
                p2 = new PointF(rect.X, rect.Y + rect.Height);
                p3 = new PointF(rect.X + rect.Width, rect.Y + rect.Height);
                break;

            case TriangleAngle.Right:
                p1 = new PointF(rect.X + rect.Width, rect.Y + rect.Height / 2.0f);
                p2 = new PointF(rect.X, rect.Y);
                p3 = new PointF(rect.X, rect.Y + rect.Height);
                break;

            case TriangleAngle.Bottom:
                p1 = new PointF(rect.X + rect.Width / 2.0f, rect.Y + rect.Height);
                p2 = new PointF(rect.X + rect.Width, rect.Y);
                p3 = new PointF(rect.X, rect.Y);
                break;

            case TriangleAngle.Left:
                p1 = new PointF(rect.X, rect.Y + rect.Height / 2.0f);
                p2 = new PointF(rect.X + rect.Width, rect.Y + rect.Height);
                p3 = new PointF(rect.X + rect.Width, rect.Y);
                break;
            }

            graphicsPath.AddPolygon(new PointF[] { p1, p2, p3 });
        }
Example #14
0
        public static void AddTriangle(this GraphicsPath graphicsPath, RectangleF rect, TriangleAngle angle = TriangleAngle.Top)
        {
            PointF p1, p2, p3;

            switch (angle)
            {
                default:
                case TriangleAngle.Top:
                    p1 = new PointF(rect.X + rect.Width / 2.0f, rect.Y);
                    p2 = new PointF(rect.X, rect.Y + rect.Height);
                    p3 = new PointF(rect.X + rect.Width, rect.Y + rect.Height);
                    break;
                case TriangleAngle.Right:
                    p1 = new PointF(rect.X + rect.Width, rect.Y + rect.Height / 2.0f);
                    p2 = new PointF(rect.X, rect.Y);
                    p3 = new PointF(rect.X, rect.Y + rect.Height);
                    break;
                case TriangleAngle.Bottom:
                    p1 = new PointF(rect.X + rect.Width / 2.0f, rect.Y + rect.Height);
                    p2 = new PointF(rect.X + rect.Width, rect.Y);
                    p3 = new PointF(rect.X, rect.Y);
                    break;
                case TriangleAngle.Left:
                    p1 = new PointF(rect.X, rect.Y + rect.Height / 2.0f);
                    p2 = new PointF(rect.X + rect.Width, rect.Y + rect.Height);
                    p3 = new PointF(rect.X + rect.Width, rect.Y);
                    break;
            }

            graphicsPath.AddPolygon(new PointF[] { p1, p2, p3 });
        }