diff --git a/proekt_Bus_9/proekt_Bus_9/Direction Type.cs b/proekt_Bus_9/proekt_Bus_9/Direction Type.cs
new file mode 100644
index 0000000..6800778
--- /dev/null
+++ b/proekt_Bus_9/proekt_Bus_9/Direction Type.cs
@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace proekt_Bus_9;
+///
+/// направление перемещения
+///
+ public enum Direction_Type
+ {
+ ///
+ ///вверх
+ ///
+ Up = 1,
+ ///
+ /// вниз
+ ///
+ Down = 2,
+ ///
+ /// влево
+ ///
+ Left = 3,
+ ///
+ /// вправо
+ ///
+ Right = 4,
+
+ }
+
diff --git a/proekt_Bus_9/proekt_Bus_9/DrawningDoubleDeckerBus.cs b/proekt_Bus_9/proekt_Bus_9/DrawningDoubleDeckerBus.cs
new file mode 100644
index 0000000..003a15f
--- /dev/null
+++ b/proekt_Bus_9/proekt_Bus_9/DrawningDoubleDeckerBus.cs
@@ -0,0 +1,86 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace proekt_Bus_9;
+///
+///
+///
+public class DrawningDoubleDeckerBus
+{
+ ///
+ /// Класс-сущность
+ ///
+ public entity_DoubleDeckerBus? entity_DoubleDeckerBus { get; private set; }
+ ///
+ /// Ширина окна
+ ///
+ private int? _pictureWidth;
+ ///
+ /// Высота окна
+ ///
+ private int? _pictureHeight;
+ ///
+ /// Левая координата прорисовки автомобиля
+ ///
+ private int? _startPosX;
+ ///
+ /// Верхняя кооридната прорисовки автомобиля
+ ///
+ private int? _startPosY;
+ ///
+ /// Ширина прорисовки автомобиля
+ ///
+ private readonly int _DrawningDoubleDeckerBusWidth = 110;
+ ///
+ /// Высота прорисовки автомобиля
+ ///
+ private readonly int _DrawningDoubleDeckerBusHeight = 60;
+ ///
+ /// Инициализация свойств
+ ///
+ /// Скорость
+ /// Вес
+ /// Основной цвет
+ /// Дополнительный цвет
+ /// Признак наличия гоночной полосы
+ 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;
+ }
+ ///
+ /// Установка границ поля
+ ///
+ /// Ширина поля
+ /// Высота поля
+ /// true - границы заданы, false - проверка не пройдена, нельзя разместить объект в этих размерах
+ public bool SetPictureSize(int width, int height)
+ {
+ // TODO проверка, что объект "влезает" в размеры поля
+ // если влезает, сохраняем границы и корректируем позицию объекта, если она была уже установлена
+ _pictureWidth = width;
+ _pictureHeight = height;
+ return true;
+ }
+ ///
+ /// Установка позиции
+ ///
+ /// Координата X
+ /// Координата Y
+ public void SetPosition(int x, int y)
+ {
+ if (!_pictureHeight.HasValue || !_pictureWidth.HasValue)
+ {
+ return;
+ }
+ }
+}
+
diff --git a/proekt_Bus_9/proekt_Bus_9/entity DoubleDeckerBus.cs b/proekt_Bus_9/proekt_Bus_9/entity DoubleDeckerBus.cs
new file mode 100644
index 0000000..cd2c9a7
--- /dev/null
+++ b/proekt_Bus_9/proekt_Bus_9/entity DoubleDeckerBus.cs
@@ -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; }
+ ///
+ /// скорость
+ ///
+
+ public double Weight { get; private set; }
+ ///
+ /// вес
+ ///
+ public Color BodyColor { get; private set; }
+ ///
+ /// основной цвет
+ ///
+ public Color AdditionalColor { get; private set; }
+ ///
+ /// дополнительный
+ ///
+ public bool Numberline { get; private set; }
+ ///
+ /// Линия с номером
+ ///
+
+
+
+
+ public double Step => Speed * 50 / Weight;
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public void Init(int speed, double weight, Color bodyColor, Color additionalColor, bool NumberLine)
+ {
+ Speed = speed;
+ Weight = weight;
+ BodyColor = bodyColor;
+ AdditionalColor = additionalColor;
+ Numberline = NumberLine;
+
+ }
+
+
+
+}