Top.Mail.Ru
Ответы
Аватар пользователя
13лет
Изменено

Движение шаров на C#

Помогите пожалуйста. Вот код программы, есть 1 шар, который по нажатию любой клавиши начинает двигаться, отталкивается от видимых границ. Мне нужны массивы, заполненные рандомными координатами по х и у + появление рандомного кол-ва новых шаров в рандомных местах. Подскажите, как это сделать?

namespace BallsMassive
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();

}

//Координаты границы
int recX = 0;
int recY = 0;

//Координаты шара
Random rnd = new Random();
int bX = 0;
int bY = 0;

//Скорость шара
int vX = 10;
int vY = 10;

//массивы
int[] iks = new int[3];

private void Form1_KeyDown(object sender, KeyEventArgs e)
{
int[] iks = new int[3];
int[] igrik = new int[3];

for (int i = 0; i < 765; i++)
{
iks[0] = rnd.Next(0, 765);
}

for (int i = 0; i < 462; i++)
{
igrik[0] = rnd.Next(0, 462);
}

Graphics graphics = this.CreateGraphics();
graphics.Clear(Color.AliceBlue);
DrawBoundary (recX + vX, recY + vY);
bX += vX;
bY += vY;
DrawBall(bX, bY);

if (bX >= 765)
{
vX = -vX;
}
else if (bX <= recX)
{
vX = -vX;
}

if (bY >= 462)
{
vY = -vY;
}
else if (bY <= recY)
{
vY = -vY;
}
}

private void DrawBoundary(int x, int y)
{
Graphics graphics = this.CreateGraphics();
graphics.DrawRectangle(Pens.Blue, new Rectangle(recX, recY, 779, 479));
}

private void DrawBall(int x, int y)
{
SolidBrush solidbrush = new SolidBrush(Color.Red);
Graphics graphics = this.CreateGraphics();

graphics.FillEllipse(solidbrush, bX, bY, 10, 10);
}
}
}

По дате
По рейтингу
Аватар пользователя
Ученик
9лет

aniko.sahakia.96@mail.ru

Аватар пользователя
Мастер
13лет

так теперь лабы делают?

Аватар пользователя
Ученик
13лет

Нет. К институту вообще никак не относится.



Видео по теме