예제 #1
0
        //vẽ hình tròn =ht truyền vào
        HinhTron VeHinhTron(int x, int y)
        {
            var ht = new HinhTron()
            {
                Location = new Point(x, y)
            };

            ht.Color = Color.Blue;
            return(ht);
        }
예제 #2
0
 //kiem tra hinh tron da co
 bool OverLapHt(HinhTron ht)
 {
     foreach (var item in this.tapDinhDt)
     {
         if (ht.Overlap(item))
         {
             return(true);
         }
     }
     return(false);
 }
예제 #3
0
 //xóa cạnh của hình tròn khi xóa 1 đỉnh của hình tròn
 void XoaCanh(HinhTron a)
 {
     for (int i = tapCanh.Count - 1; i >= 0; i--)
     {
         var dDau  = tapCanh[i].DiemDau;
         var dCuoi = tapCanh[i].DiemCuoi;
         if (tapCanh[i].DiemDau.Equals(a) || tapCanh[i].DiemCuoi.Equals(a))
         {
             tapCanh.RemoveAt(i);
         }
     }
 }
예제 #4
0
        //xóa hình tròn khi double.click
        void ht_DoubleClick(object sender, EventArgs e)
        {
            demDinh--;
            var ht = sender as HinhTron;

            for (int i = 0; i < tapDinhDt.Count; i++)
            {
                if (ht.Equals(tapDinhDt[i]))
                {
                    tapDinhDt.RemoveAt(i);
                }
            }
            XoaCanh(ht);
            lastedClick = null;
            form.Controls.Remove(ht);
            form.Invalidate();
        }
예제 #5
0
        //vẽ hình tròn từ sự kiện click
        void a_Click(object sender, EventArgs e)
        {
            var ht = sender as HinhTron;

            ht.Color = Color.Red;

            if (lastedClick == null)
            {
                lastedClick = ht;
                return;
            }
            if (ht.Equals(lastedClick))
            {
                return;
            }
            var canh = new Canh(lastedClick, ht);

            ThemCanh(canh);
            lastedClick = null;
        }
예제 #6
0
 public Canh(HinhTron lastedClick, HinhTron ht)
 {
     this.DiemDau  = lastedClick;
     this.DiemCuoi = ht;
 }
예제 #7
0
 /// <summary>
 /// Kiểm tra xem hai hinh tron co bi de len nhau hay khong
 /// </summary>
 /// <param name="other"></param>
 /// <returns></returns>
 public bool Overlap(HinhTron other)
 {
     return(other.Bounds.IntersectsWith(this.Bounds));
 }