PIBD-14_Arinina_M.A._Simple_LabWork02 #14

Closed
mara-1 wants to merge 5 commits from LabWork02 into LabWork01
8 changed files with 34 additions and 67 deletions
Showing only changes of commit 1ec89cfff1 - Show all commits

View File

@ -1,31 +0,0 @@
namespace ProjectBulldozer.Drawnings;
/// <summary>
/// Направление перемещения
/// </summary>
public enum DirectionType1
{
/// <summary>
/// Неизвестное направление
/// </summary>
Unknow = -1,
/// <summary>
/// Вверх
/// </summary>
Up = 1,
/// <summary>
/// Вниз
/// </summary>
Down = 2,
/// <summary>
/// Влево
/// </summary>
Left = 3,
/// <summary>
/// Вправо
/// </summary>
Right = 4
}
//сделано

View File

@ -6,7 +6,7 @@ namespace ProjectBulldozer.Drawnings;
/// <summary>
/// Класс, отвечающий за прорисовку и перемещение объекта-сущности
/// </summary>
public class DrawningBulldozer : DrawningBulldozerProstoy
public class DrawningBulldozer : DrawningTrackedMachine
{
/// <summary>
@ -22,14 +22,14 @@ public class DrawningBulldozer : DrawningBulldozerProstoy
public DrawningBulldozer(int speed, double weight, Color bodyColor, Color
additionalColor, bool additionalOtval, bool additionalRihl, bool v) : base(180, 140)
{
EntityBulldozerProstoy = new EntityBulldozer(speed, weight, bodyColor, additionalColor, additionalOtval,
EntityTrackedMachine = new EntityBulldozer(speed, weight, bodyColor, additionalColor, additionalOtval,
additionalRihl);
}
public override void DrawTransport(Graphics g)
{
if (EntityBulldozerProstoy == null || EntityBulldozerProstoy is not EntityBulldozer Bulldozer || !_startPosX.HasValue || !_startPosY.HasValue)
if (EntityTrackedMachine == null || EntityTrackedMachine is not EntityBulldozer Bulldozer || !_startPosX.HasValue || !_startPosY.HasValue)
{
return;
}

View File

@ -7,12 +7,12 @@ using System.Threading.Tasks;
namespace ProjectBulldozer.Drawnings;
public class DrawningBulldozerProstoy
public class DrawningTrackedMachine
Outdated
Review

Имя элемента проекта не соответствует указанному в задании

Имя элемента проекта не соответствует указанному в задании
{
/// <summary>
/// Класс-сущность
/// </summary>
public EntityBulldozerProstoy? EntityBulldozerProstoy { get; protected set; }
public EntityTrackedMachine? EntityTrackedMachine { get; protected set; }
/// <summary>
/// Ширина окна
/// </summary>
@ -60,7 +60,7 @@ public class DrawningBulldozerProstoy
/// <summary>
/// Пустой конструктор
/// </summary>
private DrawningBulldozerProstoy()
private DrawningTrackedMachine()
{
_pictureWidth = null;
_pictureHeight = null;
@ -74,9 +74,9 @@ public class DrawningBulldozerProstoy
/// <param name="speed">Скорость</param>
/// <param name="weight">Вес</param>
/// <param name="bodyColor">Основной цвет</param>
public DrawningBulldozerProstoy(int speed, double weight, Color bodyColor) : this()
public DrawningTrackedMachine(int speed, double weight, Color bodyColor) : this()
{
EntityBulldozerProstoy = new EntityBulldozerProstoy(speed, weight, bodyColor);
EntityTrackedMachine = new EntityTrackedMachine(speed, weight, bodyColor);
_pictureWidth = null;
_pictureHeight = null;
_startPosX = null;
@ -89,7 +89,7 @@ public class DrawningBulldozerProstoy
/// </summary>
/// <param name="BulldozerWidth">Ширина прорисовки бульдозера</param>
/// <param name="BulldozerHeight">Высота прорисовки бульдозера</param>
protected DrawningBulldozerProstoy(int BulldozerWidth, int BulldozerHeight) : this()
protected DrawningTrackedMachine(int BulldozerWidth, int BulldozerHeight) : this()
{
_BulldozerWidth = BulldozerWidth;
_BulldozerHeight = BulldozerHeight;
@ -148,7 +148,7 @@ public class DrawningBulldozerProstoy
public bool MoveTransport(DirectionType direction)
{
if (EntityBulldozerProstoy == null || !_startPosX.HasValue ||
if (EntityTrackedMachine == null || !_startPosX.HasValue ||
!_startPosY.HasValue)
{
return false;
@ -157,33 +157,33 @@ public class DrawningBulldozerProstoy
{
//влево
case DirectionType.Left:
if (_startPosX.Value - EntityBulldozerProstoy.Step > 0)
if (_startPosX.Value - EntityTrackedMachine.Step > 0)
{
_startPosX -= (int)EntityBulldozerProstoy.Step;
_startPosX -= (int)EntityTrackedMachine.Step;
}
return true;
//вверх
case DirectionType.Up:
if (_startPosY.Value - EntityBulldozerProstoy.Step > 0)
if (_startPosY.Value - EntityTrackedMachine.Step > 0)
{
_startPosY -= (int)EntityBulldozerProstoy.Step;
_startPosY -= (int)EntityTrackedMachine.Step;
}
return true;
// вправо
case DirectionType.Right:
if (_startPosX + _BulldozerWidth + EntityBulldozerProstoy.Step < _pictureWidth)
if (_startPosX + _BulldozerWidth + EntityTrackedMachine.Step < _pictureWidth)
{
_startPosX += (int)EntityBulldozerProstoy.Step;
_startPosX += (int)EntityTrackedMachine.Step;
}
return true;
//вниз
case DirectionType.Down:
if (_startPosY + _BulldozerHeight + EntityBulldozerProstoy.Step < _pictureHeight)
if (_startPosY + _BulldozerHeight + EntityTrackedMachine.Step < _pictureHeight)
{
_startPosY += (int)EntityBulldozerProstoy.Step;
_startPosY += (int)EntityTrackedMachine.Step;
}
return true;
default:
@ -197,7 +197,7 @@ public class DrawningBulldozerProstoy
/// <param name="g"></param>
public virtual void DrawTransport(Graphics g)
{
if (EntityBulldozerProstoy == null || !_startPosX.HasValue ||
if (EntityTrackedMachine == null || !_startPosX.HasValue ||
!_startPosY.HasValue)
{
return;
@ -205,7 +205,7 @@ public class DrawningBulldozerProstoy
Pen pen = new(Color.Black);
Brush brush = new SolidBrush(Color.Black);
Brush bodyBrush = new SolidBrush(EntityBulldozerProstoy.BodyColor);
Brush bodyBrush = new SolidBrush(EntityTrackedMachine.BodyColor);
//основное тело

View File

@ -1,6 +1,6 @@
namespace ProjectBulldozer.Entities;
public class EntityBulldozer : EntityBulldozerProstoy
public class EntityBulldozer : EntityTrackedMachine
{
public EntityBulldozer(int speed, double weight, Color bodyColor) : base(speed, weight, bodyColor)
{

View File

@ -3,7 +3,7 @@
/// <summary>
/// Класс-сущность "Бульдозер простой"
/// </summary>
public class EntityBulldozerProstoy
public class EntityTrackedMachine
{
/// <summary>
/// Скорость
@ -30,7 +30,7 @@ public class EntityBulldozerProstoy
/// <param name="weight">Вес автомобиля</param>
/// <param name="bodyColor">Основной цвет</param>
public EntityBulldozerProstoy(int speed, double weight, Color bodyColor)
public EntityTrackedMachine(int speed, double weight, Color bodyColor)
{
Speed = speed;
Weight = weight;

View File

@ -138,6 +138,7 @@
comboBoxStrategy.Name = "comboBoxStrategy";
comboBoxStrategy.Size = new Size(143, 28);
comboBoxStrategy.TabIndex = 9;
//
// FormBulldozer
//

View File

@ -17,7 +17,7 @@ namespace ProjectBulldozer
/// <summary>
/// Поле-объект для прорисовки объекта
/// </summary>
private DrawningBulldozerProstoy? _drawningBulldozerProstoy;
private DrawningTrackedMachine? _drawningBulldozerProstoy;
private AbstractStrategy? _strategy;
/// <summary>
@ -53,8 +53,8 @@ namespace ProjectBulldozer
Random random = new();
switch (type)
{
case nameof(DrawningBulldozerProstoy):
_drawningBulldozerProstoy = new DrawningBulldozerProstoy(random.Next(100, 300), random.Next(1000, 3000),
case nameof(DrawningTrackedMachine):
_drawningBulldozerProstoy = new DrawningTrackedMachine(random.Next(100, 300), random.Next(1000, 3000),
Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256)));
break;
case nameof(DrawningBulldozer):
@ -88,7 +88,7 @@ namespace ProjectBulldozer
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void buttonCreateBulldozerProstoy_Click(object sender, EventArgs e) => CreateObject(nameof(DrawningBulldozerProstoy));
private void buttonCreateBulldozerProstoy_Click(object sender, EventArgs e) => CreateObject(nameof(DrawningTrackedMachine));
/// <summary>
/// Перемещение объекта по форме (нажатие кнопок навигации)
@ -167,9 +167,6 @@ namespace ProjectBulldozer
}
private void comboBoxStrategy_SelectedIndexChanged(object sender, EventArgs e)
{
}
Outdated
Review

Пустых методов быть не должно

Пустых методов быть не должно
}
}

View File

@ -13,12 +13,12 @@ public class MoveableBulldozer : IMoveableObject
/// <summary>
/// Поле-объект класса DrawningBulldozerProstoy или его наследника
/// </summary>
private readonly DrawningBulldozerProstoy? _bulldozer = null;
private readonly DrawningTrackedMachine? _bulldozer = null;
/// <summary>
/// Конструктор
/// </summary>
/// <param name="bulldozer">Объект класса DrawningBulldozerProstoy</param>
public MoveableBulldozer(DrawningBulldozerProstoy bulldozer)
public MoveableBulldozer(DrawningTrackedMachine bulldozer)
{
_bulldozer = bulldozer;
}
@ -26,7 +26,7 @@ public class MoveableBulldozer : IMoveableObject
{
get
{
if (_bulldozer == null || _bulldozer.EntityBulldozerProstoy == null ||
if (_bulldozer == null || _bulldozer.EntityTrackedMachine == null ||
!_bulldozer.GetPosX.HasValue || !_bulldozer.GetPosY.HasValue)
{
return null;
@ -35,10 +35,10 @@ public class MoveableBulldozer : IMoveableObject
_bulldozer.GetPosY.Value, _bulldozer.GetWidth, _bulldozer.GetHeight);
}
}
public int GetStep => (int)(_bulldozer?.EntityBulldozerProstoy?.Step ?? 0);
public int GetStep => (int)(_bulldozer?.EntityTrackedMachine?.Step ?? 0);
public bool TryMoveObject(MovementDirection direction)
{
if (_bulldozer == null || _bulldozer.EntityBulldozerProstoy == null)
if (_bulldozer == null || _bulldozer.EntityTrackedMachine == null)
{
return false;
}