public void DrawForm() { var f = new ZForm() { Size = new Size(1080, 800), Text = "ZForm" }; var btn = new Button() { Text = "Draw", Location = new Point(10, 400), }; var num = new NumericUpDown() { Minimum = 1, Maximum = 500, Value = 1, Size = new Size(60, 30), Location = new Point(10, 430), }; num.ValueChanged += (s, e) => { btn.PerformClick(); }; btn.MouseClick += (s, e) => { ZHello.GDI.Draw.DDX = (int)num.Value; var dc = f.CreateGraphics(); //dc.SetClip(new Rectangle(100, 100, 1000, 1000)); //dc.Clear(Color.White); //dc.ResetClip(); //f.DrawTestGrahpics(); //dc.DrawStar(new Rectangle(200, 100, 200, 200), Color.Red); int radius = 80; dc.DrawPolygonX(new PointF(200, 200), radius, 3, Color.Red); dc.DrawPolygonX(new PointF(400, 200), radius, 4, Color.Blue); dc.DrawPolygonX(new PointF(600, 200), radius, 5, Color.Green); dc.DrawPolygonX(new PointF(800, 200), radius, 6, Color.Yellow); dc.DrawPolygonX(new PointF(200, 400), radius, 7, Color.Red); dc.DrawPolygonX(new PointF(400, 400), radius, 8, Color.Blue); dc.DrawPolygonX(new PointF(600, 400), radius, 9, Color.Green); dc.DrawPolygonX(new PointF(800, 400), radius, 10, Color.Yellow); dc.DrawPolygonX(new PointF(200, 600), radius, 11, Color.Red); dc.DrawPolygonX(new PointF(400, 600), radius, 12, Color.Blue); dc.DrawPolygonX(new PointF(600, 600), radius, 13, Color.Green); dc.DrawPolygonX(new PointF(800, 600), radius, 14, Color.Yellow); }; var axis = new AxisRenderer() { AxisType = AxisType.AxisXY, SubScaleCount = 2, }; f.Paint += (s, e) => { var dc = e.Graphics; dc.TranslateTransform(f.AutoScrollPosition.X, f.AutoScrollPosition.Y); axis.Bounds = new Rectangle(1, 1, 800, 600); axis.Render(dc); //e.Graphics.DrawStar(new Rectangle(100, 100, 100, 100), Color.Red); }; f.Controls.Add(btn); f.Controls.Add(num); f.ShowDialog(); }
private static Figure GenerateFigure() { Random rnd = new Random(); Figure figure = null; int figureNumber = rnd.Next(1, 8); switch (figureNumber) { case 1: figure = new LForm(); return figure; case 2: figure = new Line(); return figure; case 3: figure = new ReversedLForm(); return figure; case 4: figure = new ReversedZForm(); return figure; case 5: figure = new Square(); return figure; case 6: figure = new TForm(); return figure; case 7: figure = new ZForm(); return figure; default: return figure; } }