Лабораторная работа №2 Готовая

This commit is contained in:
xom9kxom9k 2024-03-07 18:22:00 +04:00
parent 0547b719a4
commit bd1882b5cf
5 changed files with 18 additions and 17 deletions

View File

@ -104,8 +104,7 @@ public class DrawningAircraftGun
/// <returns></returns> /// <returns></returns>
public bool SetPictureSize(int width, int height) public bool SetPictureSize(int width, int height)
{ {
// TODO проверка, что объект "влезает" в размеры поля
// если влезает, сохраняем границы и корректируем позицию объекта,если она была уже установлена
if (width < _drawningGunWidth || height < _drawningGunHeight) { return false; }; if (width < _drawningGunWidth || height < _drawningGunHeight) { return false; };
_pictureWidth = width; _pictureWidth = width;
_pictureHeight = height; _pictureHeight = height;
@ -138,8 +137,7 @@ public class DrawningAircraftGun
public void SetPosition(int x, int y) public void SetPosition(int x, int y)
{ {
// TODO если при установке объекта в эти координаты, он будет "выходить" за границы формы
// то надо изменить координаты, чтобы он оставался в этих границах
if (!_pictureHeight.HasValue || !_pictureWidth.HasValue) if (!_pictureHeight.HasValue || !_pictureWidth.HasValue)
{ {
return; return;

View File

@ -13,13 +13,12 @@ public class DrawningAntiAircraftGun : DrawningAircraftGun
/// <param name="weight">Вес</param> /// <param name="weight">Вес</param>
/// <param name="bodyColor">Основной цвет</param> /// <param name="bodyColor">Основной цвет</param>
/// <param name="additionalColor">Дополнительный цвет</param> /// <param name="additionalColor">Дополнительный цвет</param>
/// <param name="bodyKit">Признак наличия обвесов</param>
/// <param name="tower">Признак наличия башни</param> /// <param name="tower">Признак наличия башни</param>
/// <param name="radar">Признак наличия радара</param> /// <param name="radar">Признак наличия радара</param>
public DrawningAntiAircraftGun(int speed, double weight, Color bodyColor, Color additionalColor, bool bodyKit, bool radar, bool tower) : base(129, 60) public DrawningAntiAircraftGun(int speed, double weight, Color bodyColor, Color additionalColor, bool radar, bool tower) : base(129, 105)
{ {
EntityAircraftGun = new EntityAntiAircraftGun(speed, weight, bodyColor, radar, tower, bodyKit, additionalColor); EntityAircraftGun = new EntityAntiAircraftGun(speed, weight, bodyColor, radar, tower, additionalColor);
} }
/// <summary> /// <summary>
/// Прорисовка объекта /// Прорисовка объекта

View File

@ -5,7 +5,9 @@ using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
namespace AntiAircraftGun.Entities; namespace AntiAircraftGun.Entities;
/// <summary>
/// Класс - сущность Бронированная машина
/// </summary>
public class EntityAircraftGun public class EntityAircraftGun
{ {
/// <summary> /// <summary>

View File

@ -9,10 +9,6 @@ public class EntityAntiAircraftGun : EntityAircraftGun
/// </summary> /// </summary>
public Color AdditionalColor { get; private set; } public Color AdditionalColor { get; private set; }
/// <summary> /// <summary>
/// Наличие обвеса
/// </summary>
public bool BodyKit { get; private set; }
/// <summary>
/// Наличие башни /// Наличие башни
/// </summary> /// </summary>
public bool Tower { get; private set; } public bool Tower { get; private set; }
@ -28,15 +24,13 @@ public class EntityAntiAircraftGun : EntityAircraftGun
/// <param name="weight">Вес</param> /// <param name="weight">Вес</param>
/// <param name="bodyColor">Основной цвет</param> /// <param name="bodyColor">Основной цвет</param>
/// <param name="additionalColor">Дополнительный цвет</param> /// <param name="additionalColor">Дополнительный цвет</param>
/// <param name="bodyKit">Наличие обвеса</param>
/// <param name="tower">Наличие башни</param> /// <param name="tower">Наличие башни</param>
/// <param name="radar">Наличие радара</param> /// <param name="radar">Наличие радара</param>
public EntityAntiAircraftGun(int speed, double weight, Color bodyColor, bool radar, bool tower, bool bodyKit, Color additionalColor) : base(speed, weight, bodyColor) public EntityAntiAircraftGun(int speed, double weight, Color bodyColor, bool radar, bool tower, Color additionalColor) : base(speed, weight, bodyColor)
{ {
Radar = radar; Radar = radar;
Tower = tower; Tower = tower;
BodyKit = bodyKit;
AdditionalColor = additionalColor; AdditionalColor = additionalColor;
} }
} }

View File

@ -35,6 +35,10 @@ namespace AntiAircraftGun
_drawningAircraftGun.DrawTransport(gr); _drawningAircraftGun.DrawTransport(gr);
pictureBoxAntiAircraftGun.Image = bmp; pictureBoxAntiAircraftGun.Image = bmp;
} }
/// <summary>
/// Метод создания объекта
/// </summary>
/// <param name="type"></param>
private void CreateObject(string type) private void CreateObject(string type)
{ {
Random random = new(); Random random = new();
@ -48,7 +52,7 @@ namespace AntiAircraftGun
_drawningAircraftGun = new DrawningAntiAircraftGun(random.Next(100, 300), random.Next(1000, 3000), _drawningAircraftGun = new DrawningAntiAircraftGun(random.Next(100, 300), random.Next(1000, 3000),
Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256)), Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256)),
Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256)), Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256)),
Convert.ToBoolean(random.Next(0, 2)), Convert.ToBoolean(random.Next(0, 2)), Convert.ToBoolean(random.Next(0, 2))); Convert.ToBoolean(random.Next(0, 2)), Convert.ToBoolean(random.Next(0, 2)));
break; break;
default: default:
return; return;
@ -106,7 +110,11 @@ namespace AntiAircraftGun
Draw(); Draw();
} }
} }
/// <summary>
/// Метод выбора стратегии
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void buttonStrategyStep_Click(object sender, EventArgs e) private void buttonStrategyStep_Click(object sender, EventArgs e)
{ {
if (_drawningAircraftGun == null) if (_drawningAircraftGun == null)