53 lines
1.7 KiB
C#
Raw Normal View History

2024-03-27 13:30:13 +04:00
namespace ProjectLiner
2024-03-14 16:09:51 +04:00
{
2024-03-27 13:30:13 +04:00
public partial class FormLiner : Form
2024-03-14 16:09:51 +04:00
{
2024-03-27 13:30:13 +04:00
private DrawingLiner? _drawer;
public FormLiner()
2024-03-14 16:09:51 +04:00
{
InitializeComponent();
}
private void Draw()
{
if (_drawer == null)
return;
2024-03-27 13:30:13 +04:00
Bitmap bmp = new(pictureBoxLiner.Width, pictureBoxLiner.Height);
2024-03-14 16:09:51 +04:00
Graphics gr = Graphics.FromImage(bmp);
_drawer.Draw(gr);
2024-03-27 13:30:13 +04:00
pictureBoxLiner.Image = bmp;
2024-03-14 16:09:51 +04:00
}
private void ButtonMove_Click(object sender, EventArgs e)
{
if (_drawer == null)
{
return;
}
switch (((Button)sender)?.Name ?? string.Empty)
{
case "buttonUp":
_drawer.MoveTransport(new Vector2(0, -1));
break;
case "buttonDown":
_drawer.MoveTransport(new Vector2(0, 1));
break;
case "buttonLeft":
_drawer.MoveTransport(new Vector2(-1, 0));
break;
case "buttonRight":
_drawer.MoveTransport(new Vector2(1, 0));
break;
}
Draw();
}
private void ButtonCreate_Click(object sender, EventArgs e)
{
Random rnd = new Random();
2024-03-27 13:30:13 +04:00
_drawer = new DrawingLiner(new Liner(rnd.Next(1,100),rnd.Next(1,10),
2024-03-14 16:09:51 +04:00
Color.FromArgb(rnd.Next(0, 255), rnd.Next(0, 255), rnd.Next(0, 255)),
Color.FromArgb(rnd.Next(0, 255), rnd.Next(0, 255), rnd.Next(0, 255)),
2024-03-27 13:30:13 +04:00
rnd.Next(2, 25), Convert.ToBoolean(rnd.Next(0,2))));
2024-03-14 16:09:51 +04:00
Draw();
}
}
}