создание проекта2

This commit is contained in:
vankxwnk 2025-02-15 11:20:09 +03:00
parent 7bc9dbe731
commit 302ac08cc9
3 changed files with 175 additions and 0 deletions

View File

@ -0,0 +1,31 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace proekt_Bus_9;
/// <summary>
/// направление перемещения
/// </summary>
public enum Direction_Type
{
/// <summary>
///вверх
/// </summary>
Up = 1,
/// <summary>
/// вниз
/// </summary>
Down = 2,
/// <summary>
/// влево
/// </summary>
Left = 3,
/// <summary>
/// вправо
/// </summary>
Right = 4,
}

View File

@ -0,0 +1,86 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace proekt_Bus_9;
/// <summary>
///
/// </summary>
public class DrawningDoubleDeckerBus
{
/// <summary>
/// Класс-сущность
/// </summary>
public entity_DoubleDeckerBus? entity_DoubleDeckerBus { get; private set; }
/// <summary>
/// Ширина окна
/// </summary>
private int? _pictureWidth;
/// <summary>
/// Высота окна
/// </summary>
private int? _pictureHeight;
/// <summary>
/// Левая координата прорисовки автомобиля
/// </summary>
private int? _startPosX;
/// <summary>
/// Верхняя кооридната прорисовки автомобиля
/// </summary>
private int? _startPosY;
/// <summary>
/// Ширина прорисовки автомобиля
/// </summary>
private readonly int _DrawningDoubleDeckerBusWidth = 110;
/// <summary>
/// Высота прорисовки автомобиля
/// </summary>
private readonly int _DrawningDoubleDeckerBusHeight = 60;
/// <summary>
/// Инициализация свойств
/// </summary>
/// <param name="speed">Скорость</param>
/// <param name="weight">Вес</param>
/// <param name="bodyColor">Основной цвет</param>
/// <param name="additionalColor">Дополнительный цвет</param>
/// <param name="NumberLine">Признак наличия гоночной полосы</param>
public void Init(int speed, double weight, Color bodyColor, Color
additionalColor, bool NumberLine)
{
entity_DoubleDeckerBus = new entity_DoubleDeckerBus();
entity_DoubleDeckerBus.Init(speed, weight, bodyColor, additionalColor, NumberLine);
_pictureWidth = null;
_pictureHeight = null;
_startPosX = null;
_startPosY = null;
}
/// <summary>
/// Установка границ поля
/// </summary>
/// <param name="width">Ширина поля</param>
/// <param name="height">Высота поля</param>
/// <returns>true - границы заданы, false - проверка не пройдена, нельзя разместить объект в этих размерах</returns>
public bool SetPictureSize(int width, int height)
{
// TODO проверка, что объект "влезает" в размеры поля
// если влезает, сохраняем границы и корректируем позицию объекта, если она была уже установлена
_pictureWidth = width;
_pictureHeight = height;
return true;
}
/// <summary>
/// Установка позиции
/// </summary>
/// <param name="x">Координата X</param>
/// <param name="y">Координата Y</param>
public void SetPosition(int x, int y)
{
if (!_pictureHeight.HasValue || !_pictureWidth.HasValue)
{
return;
}
}
}

View File

@ -0,0 +1,58 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.NetworkInformation;
using System.Text;
using System.Threading.Tasks;
namespace proekt_Bus_9;
public class entity_DoubleDeckerBus
{
public int Speed { get; private set; }
/// <summary>
/// скорость
/// </summary>
public double Weight { get; private set; }
/// <summary>
/// вес
/// </summary>
public Color BodyColor { get; private set; }
/// <summary>
/// основной цвет
/// </summary>
public Color AdditionalColor { get; private set; }
/// <summary>
/// дополнительный
/// </summary>
public bool Numberline { get; private set; }
/// <summary>
/// Линия с номером
/// </summary>
public double Step => Speed * 50 / Weight;
/// <summary>
///
/// </summary>
/// <param name="speed"></param>
/// <param name="weight"></param>
/// <param name="bodyColor"></param>
/// <param name="additionalColor"></param>
/// <param name="NumberLine"></param>
public void Init(int speed, double weight, Color bodyColor, Color additionalColor, bool NumberLine)
{
Speed = speed;
Weight = weight;
BodyColor = bodyColor;
AdditionalColor = additionalColor;
Numberline = NumberLine;
}
}