From 8d19ef68902bcc0ff451dbb21c57794626c6eff6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=94=D0=B0=D0=BD=D0=B8=D1=8F=D1=80=20=D0=90=D0=B3=D0=BB?= =?UTF-8?q?=D0=B8=D1=83=D0=BB=D0=BB=D0=BE=D0=B2?= Date: Thu, 22 Sep 2022 06:08:48 +0400 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5=D0=B9=D1=81?= =?UTF-8?q?=20=D0=B4=D0=BB=D1=8F=20=D0=BA=D0=BB=D0=B0=D1=81=D1=81=D0=B0=20?= =?UTF-8?q?DrawningAirplaneEngines?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AirBomber/AirBomber/DrawningAirplane.cs | 4 ++-- .../AirBomber/DrawningAirplaneEngines.cs | 12 +--------- AirBomber/AirBomber/DrawningObject.cs | 2 +- AirBomber/AirBomber/IAirplaneEngines.cs | 24 +++++++++++++++++++ AirBomber/AirBomber/Program.cs | 2 +- 5 files changed, 29 insertions(+), 15 deletions(-) create mode 100644 AirBomber/AirBomber/IAirplaneEngines.cs diff --git a/AirBomber/AirBomber/DrawningAirplane.cs b/AirBomber/AirBomber/DrawningAirplane.cs index cad66c4..45e005b 100644 --- a/AirBomber/AirBomber/DrawningAirplane.cs +++ b/AirBomber/AirBomber/DrawningAirplane.cs @@ -10,7 +10,7 @@ /// public EntityAirplane Airplane { get; protected set; } - public DrawningAirplaneEngines DrawningEngines { get; private set; } + public IAirplaneEngines DrawningEngines { get; private set; } /// /// Левая координата отрисовки автомобиля /// @@ -44,7 +44,7 @@ public DrawningAirplane(int speed, float weight, Color bodyColor) { Airplane = new EntityAirplane(speed, weight, bodyColor); - DrawningEngines = new(); + DrawningEngines = new DrawningAirplaneEngines(); } /// diff --git a/AirBomber/AirBomber/DrawningAirplaneEngines.cs b/AirBomber/AirBomber/DrawningAirplaneEngines.cs index e8ac24b..2fe3e1b 100644 --- a/AirBomber/AirBomber/DrawningAirplaneEngines.cs +++ b/AirBomber/AirBomber/DrawningAirplaneEngines.cs @@ -9,13 +9,11 @@ namespace AirBomber /// /// Класс-дополнение к самолету отвечающий за число двигателей и их отрисовку /// - internal class DrawningAirplaneEngines + internal class DrawningAirplaneEngines : IAirplaneEngines { /// Приватное поле содержащие текущее количество двигателей самолета private CountEngines _countEngines; - /// Получение действительного количества двигателей или установка поддерживаемого числа двигателей - /// The count engines. public int CountEngines { get => (int)_countEngines; @@ -27,14 +25,6 @@ namespace AirBomber } } - - /// Отрисовывает все двигатели на обеих крыльях - /// The g. - /// Цвет двигателей. - /// Позиция крыльев по x. В этой координате будут центры двигателей - /// Крайняя левая позиция левого крыла по y - /// Крайняя правая позиция правого крыла по y - /// Ширина тела самолета, или расстояние между крыльями. public void DrawEngines(Graphics g, Color colorEngine, float wingPosX, float leftWingY, float rightWingY, int widthBodyAirplane) { float distanceBetweenEngines = (leftWingY - rightWingY - widthBodyAirplane) / 8.0f; diff --git a/AirBomber/AirBomber/DrawningObject.cs b/AirBomber/AirBomber/DrawningObject.cs index d79a291..3b12ec9 100644 --- a/AirBomber/AirBomber/DrawningObject.cs +++ b/AirBomber/AirBomber/DrawningObject.cs @@ -8,7 +8,7 @@ namespace AirBomber { internal class DrawningObject : IDrawningObject { - private DrawningAirplane _airplane = null; + private DrawningAirplane _airplane; public DrawningObject(DrawningAirplane airplane) { diff --git a/AirBomber/AirBomber/IAirplaneEngines.cs b/AirBomber/AirBomber/IAirplaneEngines.cs new file mode 100644 index 0000000..ccbc860 --- /dev/null +++ b/AirBomber/AirBomber/IAirplaneEngines.cs @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace AirBomber +{ + internal interface IAirplaneEngines + { + /// Получение действительного количества двигателей или установка поддерживаемого числа двигателей + /// The count engines. + int CountEngines { get; set; } + + /// Отрисовывает все двигатели на обеих крыльях + /// The g. + /// Цвет двигателей. + /// Позиция крыльев по x. В этой координате будут центры двигателей + /// Крайняя левая позиция левого крыла по y + /// Крайняя правая позиция правого крыла по y + /// Ширина тела самолета, или расстояние между крыльями. + void DrawEngines(Graphics g, Color colorEngine, float wingPosX, float leftWingY, float rightWingY, int widthBodyAirplane); + } +} diff --git a/AirBomber/AirBomber/Program.cs b/AirBomber/AirBomber/Program.cs index e462fb5..76b85fe 100644 --- a/AirBomber/AirBomber/Program.cs +++ b/AirBomber/AirBomber/Program.cs @@ -11,7 +11,7 @@ namespace AirBomber // To customize application configuration such as set high DPI settings or default font, // see https://aka.ms/applicationconfiguration. ApplicationConfiguration.Initialize(); - Application.Run(new FormMap()); + Application.Run(new FormAirBomber()); } } } \ No newline at end of file