private void Form1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) { bDragging = true; downX = e.X; downY = e.Y; currentPic = new PicObject(getRandomColor()); currentPic.filled = random.Next(5) <= 2; currentPic.addPoint(downX, downY); }
private void Form1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e) { if (!bDragging) { return; } currentPic.addPoint(e.X, e.Y); using (Graphics g = this.CreateGraphics()) { currentPic.draw(g, 0, 0); } }
public PicObject picObjectMirrorSymmetry(PicObject pic) { if (pic.mirror == this) { return(null); // a Pic In this mirror can not through the mirror itself } Color color = colorMirrorRef(pic.color, refl); PicObject pic2 = new PicObject(pic.type, color, pic.filled); int n = pic.countPoint(); for (int i = 0; i < n; i++) { PointCoord p = pic.getPoint(i); pic2.addPoint(pointMirrorSymmetry(p)); } pic2.mirror = this; pic2.originalPicObject = pic.originalPicObject; pic2.srcPicObject = pic; return(pic2); }