private void BeziersBox_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) { if (e.Button != MouseButtons.Left) { return; } newPoint = new MousePoint(e.X, e.Y); switch (newType) { case MainWindow.ImageType.CircleAt: star[starCount++] = newPoint.StartP; tempPoint.Add(new DPoint(new Point[] { newPoint.StartP }, Color.DarkRed, 1)); BeziersBox.Invalidate(); break; case MainWindow.ImageType.Beziers: tpointCollection.Add(newPoint.StartP); newPoint.StartP.Offset(-2, -2); Rectangle r = new Rectangle(newPoint.StartP, new Size(4, 4)); Region rr = new Region(r); regionCollection.Add(rr); Point startp2 = newPoint.StartP; startp2.Offset(4, 4); pointList.Add(new DHollowRectangle(new Point[] { newPoint.StartP, startp2 }, Color.DarkRed, 1)); BeziersBox.Invalidate(); break; case MainWindow.ImageType.Set: for (int i = 0; i < regionCollection.Count; i++) { if (regionCollection[i].IsVisible(newPoint.StartP)) { newPoint = new MousePoint(e.X, e.Y); beziersPoint = i; BezierIndex = Found(i); pointChange = true; break; } } break; } }