From 377ed090ec4da751ac8afd79902bc58cee5b3162 Mon Sep 17 00:00:00 2001
From: NikGapon <45200250+NikGapon@users.noreply.github.com>
Date: Sat, 22 Oct 2022 17:46:48 +0400
Subject: [PATCH 1/3] Lab01 fix
---
Airbus/Airbus.sln | 25 +++
Airbus/Airbus/Airbus.csproj | 11 ++
Airbus/Airbus/Direction.cs | 16 ++
Airbus/Airbus/DrawingAirbus.cs | 120 ++++++++++++
Airbus/Airbus/EntityAirbus.cs | 24 +++
Airbus/Airbus/FormAirbus.Designer.cs | 176 ++++++++++++++++++
Airbus/Airbus/FormAirbus.cs | 73 ++++++++
Airbus/Airbus/FormAirbus.resx | 63 +++++++
Airbus/Airbus/Program.cs | 17 ++
.../Airbus/Properties/Resources.Designer.cs | 143 ++++++++++++++
Airbus/Airbus/Properties/Resources.resx | 157 ++++++++++++++++
Airbus/Airbus/Resources/down.png | Bin 0 -> 2087 bytes
Airbus/Airbus/Resources/left.png | Bin 0 -> 1949 bytes
Airbus/Airbus/Resources/right.png | Bin 0 -> 2014 bytes
Airbus/Airbus/Resources/up.png | Bin 0 -> 2109 bytes
Airbus/Airbus/Resources/v1.png | Bin 0 -> 1949 bytes
Airbus/Airbus/Resources/v2.png | Bin 0 -> 2109 bytes
Airbus/Airbus/Resources/v3.png | Bin 0 -> 2014 bytes
Airbus/Airbus/Resources/v4.png | Bin 0 -> 2087 bytes
19 files changed, 825 insertions(+)
create mode 100644 Airbus/Airbus.sln
create mode 100644 Airbus/Airbus/Airbus.csproj
create mode 100644 Airbus/Airbus/Direction.cs
create mode 100644 Airbus/Airbus/DrawingAirbus.cs
create mode 100644 Airbus/Airbus/EntityAirbus.cs
create mode 100644 Airbus/Airbus/FormAirbus.Designer.cs
create mode 100644 Airbus/Airbus/FormAirbus.cs
create mode 100644 Airbus/Airbus/FormAirbus.resx
create mode 100644 Airbus/Airbus/Program.cs
create mode 100644 Airbus/Airbus/Properties/Resources.Designer.cs
create mode 100644 Airbus/Airbus/Properties/Resources.resx
create mode 100644 Airbus/Airbus/Resources/down.png
create mode 100644 Airbus/Airbus/Resources/left.png
create mode 100644 Airbus/Airbus/Resources/right.png
create mode 100644 Airbus/Airbus/Resources/up.png
create mode 100644 Airbus/Airbus/Resources/v1.png
create mode 100644 Airbus/Airbus/Resources/v2.png
create mode 100644 Airbus/Airbus/Resources/v3.png
create mode 100644 Airbus/Airbus/Resources/v4.png
diff --git a/Airbus/Airbus.sln b/Airbus/Airbus.sln
new file mode 100644
index 0000000..a4bcfa1
--- /dev/null
+++ b/Airbus/Airbus.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.3.32929.385
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Airbus", "Airbus\Airbus.csproj", "{ED366BAA-3C16-414B-B381-DE0B509BFD6A}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {ED366BAA-3C16-414B-B381-DE0B509BFD6A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {ED366BAA-3C16-414B-B381-DE0B509BFD6A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {ED366BAA-3C16-414B-B381-DE0B509BFD6A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {ED366BAA-3C16-414B-B381-DE0B509BFD6A}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {F80C7287-B0F9-477D-92F0-7592A3B0DEDC}
+ EndGlobalSection
+EndGlobal
diff --git a/Airbus/Airbus/Airbus.csproj b/Airbus/Airbus/Airbus.csproj
new file mode 100644
index 0000000..b57c89e
--- /dev/null
+++ b/Airbus/Airbus/Airbus.csproj
@@ -0,0 +1,11 @@
+
+
+
+ WinExe
+ net6.0-windows
+ enable
+ true
+ enable
+
+
+
\ No newline at end of file
diff --git a/Airbus/Airbus/Direction.cs b/Airbus/Airbus/Direction.cs
new file mode 100644
index 0000000..5601bf7
--- /dev/null
+++ b/Airbus/Airbus/Direction.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Airbus
+{
+ internal enum Direction
+ {
+ Left = 1, //Влево
+ Up = 2, //Вверх
+ Right = 3, //Вправо
+ Down = 4 //Вниз
+ }
+}
diff --git a/Airbus/Airbus/DrawingAirbus.cs b/Airbus/Airbus/DrawingAirbus.cs
new file mode 100644
index 0000000..db5eeb2
--- /dev/null
+++ b/Airbus/Airbus/DrawingAirbus.cs
@@ -0,0 +1,120 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Airbus
+{
+ internal class DrawningAirbus
+ {
+ /// Класс-сущность
+ public EntityAirbus airbus { private set; get; }
+ /// Левая координата отрисовки автомобиля
+ private float _startPosX;
+ /// Верхняя кооридната отрисовки автомобиля
+ private float _startPosY;
+ /// Ширина окна отрисовки
+ private int? _pictureWidth = null;
+ /// Высота окна отрисовки
+ private int? _pictureHeight = null;
+ /// Ширина отрисовки автомобиля
+ private readonly int _airbusWidth = 150; //Ширина отрисовки корабля
+ private readonly int _airbusHeight = 30; //Высота отрисовки корабля
+ public void Init(int speed, float weight, Color bodyColor)
+ {
+ airbus = new EntityAirbus();
+ airbus.Init(speed, weight, bodyColor);
+ }
+
+ public void SetPosition(int x, int y, int width, int height)
+ {
+ if (width < _airbusWidth || height < _airbusHeight) return;
+ Random random = new Random();
+ _startPosX = x < 0 || x + _airbusWidth > width ? random.Next(0, width - _airbusWidth) : x;
+ _startPosY = y < 0 || y + _airbusHeight > height ? random.Next(0, height - _airbusHeight) : y;
+ _startPosX = x;
+ _startPosY = y;
+ _pictureWidth = width;
+ _pictureHeight = height;
+ }
+
+ public void MoveTransport(Direction direction)
+ {
+ if (!_pictureWidth.HasValue || !_pictureHeight.HasValue) return;
+ switch (direction)
+ {
+ case Direction.Left: //Влево
+
+ if (_startPosX - airbus.Step > 0) _startPosX -= airbus.Step;
+ break;
+ case Direction.Up: //Вверх
+ if (_startPosY - airbus.Step > 0) _startPosY -= airbus.Step;
+ break;
+ case Direction.Right: //Вправо
+ if (_startPosX + _airbusWidth + airbus.Step - 6 < _pictureWidth) _startPosX += airbus.Step;
+ break;
+ case Direction.Down: //Вниз
+ if (_startPosY + _airbusHeight + airbus.Step < _pictureHeight) _startPosY += airbus.Step;
+ break;
+ }
+ }
+
+ public void DrawTransport(Graphics g)
+ {
+ if (_startPosX < 0 || _startPosY < 0 || !_pictureHeight.HasValue || !_pictureWidth.HasValue)
+ {
+ return;
+ }
+ Pen pen = new(Color.Black);
+
+
+ SolidBrush brush = new SolidBrush(airbus?.BodyColor ?? Color.White);
+ g.FillPolygon(brush, new[]
+ {
+ new Point((int)(_startPosX + _airbusWidth - 25), (int)(_startPosY + 25)),
+ new Point((int)(_startPosX + _airbusWidth), (int)(_startPosY + 40)),
+ new Point((int)(_startPosX + _airbusWidth - 25), (int)(_startPosY + 55)),
+ new Point((int)(_startPosX + _airbusWidth - 25), (int)(_startPosY + 15)),
+ });
+ g.FillRectangle(brush, _startPosX, _startPosY + 25, _airbusWidth - 25, _airbusHeight );
+ g.DrawPolygon(pen, new[]
+ {
+ new Point((int)(_startPosX), (int)(_startPosY)),
+ new Point((int)(_startPosX + 25), (int)(_startPosY + 25)),
+ new Point((int)(_startPosX), (int)(_startPosY + 25)),
+ new Point((int)(_startPosX), (int)(_startPosY)),
+ });
+ g.DrawEllipse(new(Color.Blue, 2), _startPosX, _startPosY + 15, 25, 5);
+
+ g.DrawEllipse(new(Color.Red, 2), _startPosX + _airbusWidth - 40, _startPosY + 30, 20, 20);
+ g.DrawEllipse(new(Color.Red, 2), _startPosX + _airbusWidth - 65, _startPosY + 30, 20, 20);
+ g.DrawEllipse(new(Color.Red, 2), _startPosX + _airbusWidth - 90, _startPosY + 30, 20, 20);
+
+ g.DrawEllipse(new(Color.Black, 2), _startPosX + _airbusWidth - 30, _startPosY + _airbusHeight + 25, 4, 4);
+ g.DrawEllipse(new(Color.Black, 2), _startPosX + _airbusWidth - 35, _startPosY + _airbusHeight + 25, 4, 4);
+ g.DrawEllipse(new(Color.Black, 2), _startPosX , _startPosY + _airbusHeight + 25, 4, 4);
+ }
+
+ public void ChangeBorders(int width, int height)
+ {
+ _pictureWidth = width;
+ _pictureHeight = height;
+ if (_pictureWidth <= _airbusWidth || _pictureHeight <= _airbusHeight)
+ {
+ _pictureWidth = null;
+ _pictureHeight = null;
+ return;
+ }
+ if (_startPosX + _airbusWidth > _pictureWidth)
+ {
+ _startPosX = _pictureWidth.Value - _airbusWidth;
+ }
+ if (_startPosY + _airbusHeight > _pictureHeight)
+ {
+ _startPosY = _pictureHeight.Value - _airbusHeight;
+ }
+ }
+ }
+
+ }
diff --git a/Airbus/Airbus/EntityAirbus.cs b/Airbus/Airbus/EntityAirbus.cs
new file mode 100644
index 0000000..448c9ae
--- /dev/null
+++ b/Airbus/Airbus/EntityAirbus.cs
@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Airbus
+{
+ internal class EntityAirbus
+ {
+ public int Speed { get; private set; } //Скорость
+ public float Weight { get; private set; } //Вес
+ public Color BodyColor { get; private set; } //Цвет
+ public float Step => Speed * 100 / Weight; //Шаг при перемещении
+ //Инициализация
+ public void Init(int speed, float weight, Color bodyColor)
+ {
+ Random random = new Random();
+ Speed = speed <= 0 ? random.Next(50, 150) : speed;
+ Weight = weight <= 0 ? random.Next(40, 70) : weight;
+ BodyColor = bodyColor;
+ }
+ }
+}
diff --git a/Airbus/Airbus/FormAirbus.Designer.cs b/Airbus/Airbus/FormAirbus.Designer.cs
new file mode 100644
index 0000000..d998927
--- /dev/null
+++ b/Airbus/Airbus/FormAirbus.Designer.cs
@@ -0,0 +1,176 @@
+namespace Airbus
+{
+ partial class FormAirbus
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+ #region Windows Form Designer generated code
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.statusStrip1 = new System.Windows.Forms.StatusStrip();
+ this.toolStripStatusLabelSpeed = new System.Windows.Forms.ToolStripStatusLabel();
+ this.toolStripStatusLabelWight = new System.Windows.Forms.ToolStripStatusLabel();
+ this.toolStripStatusLabelColor = new System.Windows.Forms.ToolStripStatusLabel();
+ this.pictureBox = new System.Windows.Forms.PictureBox();
+ this.buttonCreate = new System.Windows.Forms.Button();
+ this.buttonUp = new System.Windows.Forms.Button();
+ this.buttonRight = new System.Windows.Forms.Button();
+ this.buttonLeft = new System.Windows.Forms.Button();
+ this.buttonDown = new System.Windows.Forms.Button();
+ this.statusStrip1.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox)).BeginInit();
+ this.SuspendLayout();
+ //
+ // statusStrip1
+ //
+ this.statusStrip1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.statusStrip1.Dock = System.Windows.Forms.DockStyle.None;
+ this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
+ this.toolStripStatusLabelSpeed,
+ this.toolStripStatusLabelWight,
+ this.toolStripStatusLabelColor});
+ this.statusStrip1.Location = new System.Drawing.Point(0, 428);
+ this.statusStrip1.Name = "statusStrip1";
+ this.statusStrip1.Size = new System.Drawing.Size(135, 22);
+ this.statusStrip1.TabIndex = 0;
+ this.statusStrip1.Text = "statusStrip1";
+ //
+ // toolStripStatusLabelSpeed
+ //
+ this.toolStripStatusLabelSpeed.Name = "toolStripStatusLabelSpeed";
+ this.toolStripStatusLabelSpeed.Size = new System.Drawing.Size(59, 17);
+ this.toolStripStatusLabelSpeed.Text = "Скорость";
+ //
+ // toolStripStatusLabelWight
+ //
+ this.toolStripStatusLabelWight.Name = "toolStripStatusLabelWight";
+ this.toolStripStatusLabelWight.Size = new System.Drawing.Size(26, 17);
+ this.toolStripStatusLabelWight.Text = "Вес";
+ //
+ // toolStripStatusLabelColor
+ //
+ this.toolStripStatusLabelColor.Name = "toolStripStatusLabelColor";
+ this.toolStripStatusLabelColor.Size = new System.Drawing.Size(33, 17);
+ this.toolStripStatusLabelColor.Text = "Цвет";
+ //
+ // pictureBox
+ //
+ this.pictureBox.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.pictureBox.Location = new System.Drawing.Point(0, 0);
+ this.pictureBox.Name = "pictureBox";
+ this.pictureBox.Size = new System.Drawing.Size(800, 450);
+ this.pictureBox.TabIndex = 1;
+ this.pictureBox.TabStop = false;
+ //
+ // buttonCreate
+ //
+ this.buttonCreate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+ this.buttonCreate.Location = new System.Drawing.Point(0, 402);
+ this.buttonCreate.Name = "buttonCreate";
+ this.buttonCreate.Size = new System.Drawing.Size(75, 23);
+ this.buttonCreate.TabIndex = 2;
+ this.buttonCreate.Text = "Создать";
+ this.buttonCreate.UseVisualStyleBackColor = true;
+ this.buttonCreate.Click += new System.EventHandler(this.buttonCreate_Click);
+ //
+ // buttonUp
+ //
+ this.buttonUp.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonUp.BackgroundImage = global::Airbus.Properties.Resources.v2;
+ this.buttonUp.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
+ this.buttonUp.Location = new System.Drawing.Point(719, 326);
+ this.buttonUp.Name = "buttonUp";
+ this.buttonUp.Size = new System.Drawing.Size(35, 35);
+ this.buttonUp.TabIndex = 3;
+ this.buttonUp.UseVisualStyleBackColor = true;
+ this.buttonUp.Click += new System.EventHandler(this.ButtonMove_Click);
+ //
+ // buttonRight
+ //
+ this.buttonRight.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonRight.BackgroundImage = global::Airbus.Properties.Resources.v3;
+ this.buttonRight.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
+ this.buttonRight.Location = new System.Drawing.Point(753, 358);
+ this.buttonRight.Name = "buttonRight";
+ this.buttonRight.Size = new System.Drawing.Size(35, 35);
+ this.buttonRight.TabIndex = 4;
+ this.buttonRight.UseVisualStyleBackColor = true;
+ this.buttonRight.Click += new System.EventHandler(this.ButtonMove_Click);
+ //
+ // buttonLeft
+ //
+ this.buttonLeft.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonLeft.BackgroundImage = global::Airbus.Properties.Resources.v1;
+ this.buttonLeft.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
+ this.buttonLeft.Location = new System.Drawing.Point(686, 358);
+ this.buttonLeft.Name = "buttonLeft";
+ this.buttonLeft.Size = new System.Drawing.Size(35, 35);
+ this.buttonLeft.TabIndex = 5;
+ this.buttonLeft.UseVisualStyleBackColor = true;
+ this.buttonLeft.Click += new System.EventHandler(this.ButtonMove_Click);
+ //
+ // buttonDown
+ //
+ this.buttonDown.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+ this.buttonDown.BackgroundImage = global::Airbus.Properties.Resources.v4;
+ this.buttonDown.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
+ this.buttonDown.Location = new System.Drawing.Point(719, 390);
+ this.buttonDown.Name = "buttonDown";
+ this.buttonDown.Size = new System.Drawing.Size(35, 35);
+ this.buttonDown.TabIndex = 6;
+ this.buttonDown.UseVisualStyleBackColor = true;
+ this.buttonDown.Click += new System.EventHandler(this.ButtonMove_Click);
+ //
+ // FormAirbus
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(800, 450);
+ this.Controls.Add(this.buttonDown);
+ this.Controls.Add(this.buttonLeft);
+ this.Controls.Add(this.buttonRight);
+ this.Controls.Add(this.buttonUp);
+ this.Controls.Add(this.buttonCreate);
+ this.Controls.Add(this.statusStrip1);
+ this.Controls.Add(this.pictureBox);
+ this.Name = "FormAirbus";
+ this.Text = "Airbus";
+ this.statusStrip1.ResumeLayout(false);
+ this.statusStrip1.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox)).EndInit();
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+ #endregion
+ private StatusStrip statusStrip1;
+ private ToolStripStatusLabel toolStripStatusLabelSpeed;
+ private ToolStripStatusLabel toolStripStatusLabelWight;
+ private ToolStripStatusLabel toolStripStatusLabelColor;
+ private PictureBox pictureBox;
+ private Button buttonCreate;
+ private Button buttonUp;
+ private Button buttonRight;
+ private Button buttonLeft;
+ private Button buttonDown;
+ }
+}
diff --git a/Airbus/Airbus/FormAirbus.cs b/Airbus/Airbus/FormAirbus.cs
new file mode 100644
index 0000000..b7c196b
--- /dev/null
+++ b/Airbus/Airbus/FormAirbus.cs
@@ -0,0 +1,73 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+
+namespace Airbus
+{
+ public partial class FormAirbus : Form
+ {
+ private DrawningAirbus airbus;
+
+ public FormAirbus()
+ {
+ InitializeComponent();
+ }
+
+ private void Draw()
+ {
+ Bitmap bmp = new(pictureBox.Width, pictureBox.Height);
+ Graphics g = Graphics.FromImage(bmp);
+ airbus.DrawTransport(g);
+ pictureBox.Image = bmp;
+ }
+
+ private void buttonCreate_Click(object sender, EventArgs e)
+ {
+ Random random = new Random();
+ airbus = new DrawningAirbus();
+ airbus.Init(random.Next(100, 300), random.Next(1000, 3000), Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256)));
+ airbus.SetPosition(random.Next(10, 100), random.Next(10, 100), pictureBox.Width, pictureBox.Height);
+ toolStripStatusLabelSpeed.Text = $"Скорость: {airbus.airbus?.Speed}";
+ toolStripStatusLabelWight.Text = $"Вес: {airbus.airbus?.Weight}";
+ toolStripStatusLabelColor.Text = $" : {airbus.airbus?.BodyColor}";
+ Draw();
+ }
+
+
+
+ private void ButtonMove_Click(object sender, EventArgs e)
+ {
+ string name = ((Button)sender)?.Name ?? string.Empty;
+ switch (name)
+ {
+ case "buttonLeft":
+ Console.WriteLine("");
+ airbus?.MoveTransport(Direction.Left);
+ break;
+ case "buttonUp":
+ airbus?.MoveTransport(Direction.Up);
+ break;
+ case "buttonRight":
+ airbus?.MoveTransport(Direction.Right);
+ break;
+ case "buttonDown":
+ airbus?.MoveTransport(Direction.Down);
+ break;
+ }
+ Draw();
+ }
+
+ private void PictureBox_Resize(object sender, EventArgs e)
+ {
+ airbus?.ChangeBorders(pictureBox.Width, pictureBox.Height);
+ Draw();
+ }
+ }
+}
diff --git a/Airbus/Airbus/FormAirbus.resx b/Airbus/Airbus/FormAirbus.resx
new file mode 100644
index 0000000..5cb320f
--- /dev/null
+++ b/Airbus/Airbus/FormAirbus.resx
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 17, 17
+
+
\ No newline at end of file
diff --git a/Airbus/Airbus/Program.cs b/Airbus/Airbus/Program.cs
new file mode 100644
index 0000000..5486d2d
--- /dev/null
+++ b/Airbus/Airbus/Program.cs
@@ -0,0 +1,17 @@
+namespace Airbus
+{
+ internal static class Program
+ {
+ ///
+ /// The main entry point for the application.
+ ///
+ [STAThread]
+ static void Main()
+ {
+ // To customize application configuration such as set high DPI settings or default font,
+ // see https://aka.ms/applicationconfiguration.
+ ApplicationConfiguration.Initialize();
+ Application.Run(new FormAirbus());
+ }
+ }
+}
\ No newline at end of file
diff --git a/Airbus/Airbus/Properties/Resources.Designer.cs b/Airbus/Airbus/Properties/Resources.Designer.cs
new file mode 100644
index 0000000..c9cfc80
--- /dev/null
+++ b/Airbus/Airbus/Properties/Resources.Designer.cs
@@ -0,0 +1,143 @@
+//------------------------------------------------------------------------------
+//
+// Этот код создан программой.
+// Исполняемая версия:4.0.30319.42000
+//
+// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
+// повторной генерации кода.
+//
+//------------------------------------------------------------------------------
+
+namespace Airbus.Properties {
+ using System;
+
+
+ ///
+ /// Класс ресурса со строгой типизацией для поиска локализованных строк и т.д.
+ ///
+ // Этот класс создан автоматически классом StronglyTypedResourceBuilder
+ // с помощью такого средства, как ResGen или Visual Studio.
+ // Чтобы добавить или удалить член, измените файл .ResX и снова запустите ResGen
+ // с параметром /str или перестройте свой проект VS.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Resources {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources() {
+ }
+
+ ///
+ /// Возвращает кэшированный экземпляр ResourceManager, использованный этим классом.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Airbus.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Перезаписывает свойство CurrentUICulture текущего потока для всех
+ /// обращений к ресурсу с помощью этого класса ресурса со строгой типизацией.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap down {
+ get {
+ object obj = ResourceManager.GetObject("down", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap left {
+ get {
+ object obj = ResourceManager.GetObject("left", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap right {
+ get {
+ object obj = ResourceManager.GetObject("right", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap up {
+ get {
+ object obj = ResourceManager.GetObject("up", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap v1 {
+ get {
+ object obj = ResourceManager.GetObject("v1", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap v2 {
+ get {
+ object obj = ResourceManager.GetObject("v2", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap v3 {
+ get {
+ object obj = ResourceManager.GetObject("v3", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ ///
+ /// Поиск локализованного ресурса типа System.Drawing.Bitmap.
+ ///
+ internal static System.Drawing.Bitmap v4 {
+ get {
+ object obj = ResourceManager.GetObject("v4", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+ }
+}
diff --git a/Airbus/Airbus/Properties/Resources.resx b/Airbus/Airbus/Properties/Resources.resx
new file mode 100644
index 0000000..80a3c98
--- /dev/null
+++ b/Airbus/Airbus/Properties/Resources.resx
@@ -0,0 +1,157 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+
+ ..\Resources\right.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\v4.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\left.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\up.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\v2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\down.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\v1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\v3.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\down.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\left.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\right.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ..\Resources\up.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
\ No newline at end of file
diff --git a/Airbus/Airbus/Resources/down.png b/Airbus/Airbus/Resources/down.png
new file mode 100644
index 0000000000000000000000000000000000000000..35326ae83410e20c6b47dd4124ca7fd4af2a7ad7
GIT binary patch
literal 2087
zcmchZ=_3=41I7_Eex&{6&bcUOQp}OBV{^=1j%8o>y;hF-WkzyzIL3G6HbVy@cXLEW
zj^=6%IYWlfvZd0D=-XfMd+|J<7tfo|%O~B%$wpLIR+xu}M-*-gyY`1Je-Z=){AtiZ
zyCe^fAPWw&aEmS7A&Eu04a!r^xKMsBSP4iLwm4B49BF6|dUF=`=#2j8*Su
zN_}C$<8QT#%0to>WciGO>&$7Ce}%b#oW_LGlV(04^#OB{Jeat{*=%WB2g~Jd8s&@8
z);fEq8(Y{^UQ8?`jxL(5EVlP7vE#d>QojFCz41x*zju$dtzkd=ZvqI^HCJ^@C{%fD
z{Tj)Fc3^sD>DPIewVx%Z7dC%EKfAQCEY#t;L1=qPXV{AP~-Jpk|QLN>H(-k2KPOE!Y^(`AjcD#Z6C
z#}leJLR-2>b1QOEMi{RIoloP5fE(;T&(kDbK-v{5|G(k>=#mL
zv2$MDEyT|U(hPAb(lxZJ?Ut~bLrumO#Rr*7rRb;2=Qn)EQHww9z+iWY+qtQR?KNIJ
z7lQ{960q_Y5+EKTUyU^!5Q|d?Zm<(?a}=oCST7#T+Ev+q4^v(yl1P*8>P}5@EK8?E
z5nop2AAQs_T@{`F5hFs3)s@co1y@8(uIKENTX78CO$fI|fQeLK?}ctFTlR)OZ~
z_NvOmp}P^TGwMD^d)}DBew{VqA)@rV7$7q-36%>#>O?zBOn|{GxkI`6CME031eV(4
zYkMZwaax7Lxp7q>roQ#4hTpt4$IpOEj;bF?T9==E1~RElwF-g$#I-8eI^LN??7Aq>
z^$`?@&O=Yl3a=HY%F9`4iDd9499Z89?f%HM=c`V^rpwh06@M1LriNg25M@$2;VTBVV_jiX^e&v(P7t@=G
z(_2)-l`~hY>udmqbV%r!(_VG#+@!V6to-WH+S4>&L)DMgbwJsp^(!0*VdvvOgX%G@
zuMA(;xvyV)qY6}hI{5ZfvTi{4+vkx4AFtba-Q(|Cz;cIiHIrEE1a?d%qyzBxlxcND
zPR6gdeDN*JSnlc;E%T~xbC;b?K@VwMeu_k5;j-v`DzR}-!f-}0!NG|{V0s5}rED3#
zo<)O&Ku_kO<@|>CZNh5zb4l~_X2?rK?CzJ>ZcLf?{suN7ps2>&cPig0qA~c?Kq>cx
z4c_GoXR;3O7P`Yts^Y8mq7n7Z&h_3Uj>o=IT%%NjsPN~9yXmCM_s7*}0PsxS?4zb?
zgIikuh!KZs>&G;jLhfpSGJFPxD^IA<9#x^}LJ4@wN7grb*`Va`oH!(~L!bWHF6gI|(BS1AcA`!wGnYQu0tCMKD7P{u
z-l%x)uU#ZM$|F?u+fYRgf@i#=N*F)=7}EyV-GBQ#kaQR>ENqgfGLy|3DJCc-96T|{
z+nkbN8(o3?KIf&o014=J&dfO0i?#riIUn7~Jh1!v;bcT-WZI)Zur^qdi>_ZDokwS$
zlw@cxThL#aiG+DJDs_~dGsJ!?FYP*=WwINhsTEs(Z5tda>sieGGD;ql-f2~GH)
P1Hc2fa)LEj`lb8}n{f5l
literal 0
HcmV?d00001
diff --git a/Airbus/Airbus/Resources/left.png b/Airbus/Airbus/Resources/left.png
new file mode 100644
index 0000000000000000000000000000000000000000..1f4235ba9946dfb0e8bac0b76f55a21b4ea315af
GIT binary patch
literal 1949
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
W@JpLckd+THX
literal 0
HcmV?d00001
diff --git a/Airbus/Airbus/Resources/v1.png b/Airbus/Airbus/Resources/v1.png
new file mode 100644
index 0000000000000000000000000000000000000000..1f4235ba9946dfb0e8bac0b76f55a21b4ea315af
GIT binary patch
literal 1949
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
W@JpLckd+THX
literal 0
HcmV?d00001
diff --git a/Airbus/Airbus/Resources/v3.png b/Airbus/Airbus/Resources/v3.png
new file mode 100644
index 0000000000000000000000000000000000000000..5f1371e66fa66391c3c31c3cf334e504cb9d3c08
GIT binary patch
literal 2014
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
P1Hc2fa)LEj`lb8}n{f5l
literal 0
HcmV?d00001
--
2.25.1
From 5e582dca905da881aeba89f2876bfd5d561355d7 Mon Sep 17 00:00:00 2001
From: NikGapon <45200250+NikGapon@users.noreply.github.com>
Date: Sat, 22 Oct 2022 18:15:09 +0400
Subject: [PATCH 2/3] final fix
---
Airbus/Airbus/DrawingAirbus.cs | 1 -
Airbus/Airbus/FormAirbus.cs | 2 --
Airbus/Airbus/Properties/Resources.Designer.cs | 2 +-
3 files changed, 1 insertion(+), 4 deletions(-)
diff --git a/Airbus/Airbus/DrawingAirbus.cs b/Airbus/Airbus/DrawingAirbus.cs
index db5eeb2..0c636ca 100644
--- a/Airbus/Airbus/DrawingAirbus.cs
+++ b/Airbus/Airbus/DrawingAirbus.cs
@@ -68,7 +68,6 @@ namespace Airbus
}
Pen pen = new(Color.Black);
-
SolidBrush brush = new SolidBrush(airbus?.BodyColor ?? Color.White);
g.FillPolygon(brush, new[]
{
diff --git a/Airbus/Airbus/FormAirbus.cs b/Airbus/Airbus/FormAirbus.cs
index b7c196b..1d17750 100644
--- a/Airbus/Airbus/FormAirbus.cs
+++ b/Airbus/Airbus/FormAirbus.cs
@@ -40,8 +40,6 @@ namespace Airbus
Draw();
}
-
-
private void ButtonMove_Click(object sender, EventArgs e)
{
string name = ((Button)sender)?.Name ?? string.Empty;
diff --git a/Airbus/Airbus/Properties/Resources.Designer.cs b/Airbus/Airbus/Properties/Resources.Designer.cs
index c9cfc80..f19282a 100644
--- a/Airbus/Airbus/Properties/Resources.Designer.cs
+++ b/Airbus/Airbus/Properties/Resources.Designer.cs
@@ -129,7 +129,7 @@ namespace Airbus.Properties {
return ((System.Drawing.Bitmap)(obj));
}
}
-
+
///
/// Поиск локализованного ресурса типа System.Drawing.Bitmap.
///
--
2.25.1
From b9657217826303c0da9389feca75fc3d4498acb4 Mon Sep 17 00:00:00 2001
From: NikGapon <45200250+NikGapon@users.noreply.github.com>
Date: Sat, 22 Oct 2022 18:20:52 +0400
Subject: [PATCH 3/3] final final fix
---
Airbus/Airbus/DrawingAirbus.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Airbus/Airbus/DrawingAirbus.cs b/Airbus/Airbus/DrawingAirbus.cs
index 0c636ca..12fd286 100644
--- a/Airbus/Airbus/DrawingAirbus.cs
+++ b/Airbus/Airbus/DrawingAirbus.cs
@@ -55,7 +55,7 @@ namespace Airbus
if (_startPosX + _airbusWidth + airbus.Step - 6 < _pictureWidth) _startPosX += airbus.Step;
break;
case Direction.Down: //Вниз
- if (_startPosY + _airbusHeight + airbus.Step < _pictureHeight) _startPosY += airbus.Step;
+ if (_startPosY + _airbusHeight + airbus.Step + 25 < _pictureHeight) _startPosY += airbus.Step;
break;
}
}
--
2.25.1