From 86a6f5b9dac18bf4b1491057c29f1b14b45d4cca Mon Sep 17 00:00:00 2001 From: chtzsch ~ Date: Tue, 19 Sep 2023 19:08:00 +0300 Subject: [PATCH 1/2] lab01_BASE --- speed_Boat/speed_Boat.sln | 25 +++++ speed_Boat/speed_Boat/Form1.Designer.cs | 41 ++++++++ speed_Boat/speed_Boat/Form1.cs | 21 +++++ speed_Boat/speed_Boat/Form1.resx | 120 ++++++++++++++++++++++++ speed_Boat/speed_Boat/Program.cs | 23 +++++ speed_Boat/speed_Boat/speed_Boat.csproj | 9 ++ 6 files changed, 239 insertions(+) create mode 100644 speed_Boat/speed_Boat.sln create mode 100644 speed_Boat/speed_Boat/Form1.Designer.cs create mode 100644 speed_Boat/speed_Boat/Form1.cs create mode 100644 speed_Boat/speed_Boat/Form1.resx create mode 100644 speed_Boat/speed_Boat/Program.cs create mode 100644 speed_Boat/speed_Boat/speed_Boat.csproj diff --git a/speed_Boat/speed_Boat.sln b/speed_Boat/speed_Boat.sln new file mode 100644 index 0000000..35dedd7 --- /dev/null +++ b/speed_Boat/speed_Boat.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.31729.503 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "speed_Boat", "speed_Boat\speed_Boat.csproj", "{69814DF7-C284-4ACE-A27E-C43EAA333896}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {69814DF7-C284-4ACE-A27E-C43EAA333896}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {69814DF7-C284-4ACE-A27E-C43EAA333896}.Debug|Any CPU.Build.0 = Debug|Any CPU + {69814DF7-C284-4ACE-A27E-C43EAA333896}.Release|Any CPU.ActiveCfg = Release|Any CPU + {69814DF7-C284-4ACE-A27E-C43EAA333896}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {BAB091BF-94E7-44DA-94F6-70065AB46382} + EndGlobalSection +EndGlobal diff --git a/speed_Boat/speed_Boat/Form1.Designer.cs b/speed_Boat/speed_Boat/Form1.Designer.cs new file mode 100644 index 0000000..9f1b91b --- /dev/null +++ b/speed_Boat/speed_Boat/Form1.Designer.cs @@ -0,0 +1,41 @@ + +namespace speed_Boat +{ + partial class Form1 + { + /// + /// 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.components = new System.ComponentModel.Container(); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Text = "Form1"; + } + + #endregion + } +} + diff --git a/speed_Boat/speed_Boat/Form1.cs b/speed_Boat/speed_Boat/Form1.cs new file mode 100644 index 0000000..4d62da2 --- /dev/null +++ b/speed_Boat/speed_Boat/Form1.cs @@ -0,0 +1,21 @@ +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 speed_Boat +{ + public partial class Form1 : Form + { + public Form1() + { + InitializeComponent(); + } + + } +} diff --git a/speed_Boat/speed_Boat/Form1.resx b/speed_Boat/speed_Boat/Form1.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/speed_Boat/speed_Boat/Form1.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + \ No newline at end of file diff --git a/speed_Boat/speed_Boat/Program.cs b/speed_Boat/speed_Boat/Program.cs new file mode 100644 index 0000000..5dc9e04 --- /dev/null +++ b/speed_Boat/speed_Boat/Program.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace speed_Boat +{ + static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + Application.SetHighDpiMode(HighDpiMode.SystemAware); + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new Form1()); + } + } +} diff --git a/speed_Boat/speed_Boat/speed_Boat.csproj b/speed_Boat/speed_Boat/speed_Boat.csproj new file mode 100644 index 0000000..a2d4310 --- /dev/null +++ b/speed_Boat/speed_Boat/speed_Boat.csproj @@ -0,0 +1,9 @@ + + + + WinExe + net5.0-windows + true + + + \ No newline at end of file -- 2.25.1 From c6a5960e1504425d26775c61b1f6a53d2347bd3c Mon Sep 17 00:00:00 2001 From: chtzsch ~ Date: Tue, 19 Sep 2023 19:24:05 +0300 Subject: [PATCH 2/2] Lab01_base --- SpeedBoat/SpeedBoat.sln | 25 --- SpeedBoat/SpeedBoat/Form1.Designer.cs | 41 ---- SpeedBoat/SpeedBoat/Form1.cs | 21 -- SpeedBoat/SpeedBoat/Form1.resx | 120 ------------ SpeedBoat/SpeedBoat/Program.cs | 23 --- SpeedBoat/SpeedBoat/SpeedBoat.csproj | 9 - speed_Boat/speed_Boat/Direction.cs | 32 +++ speed_Boat/speed_Boat/Form1.Designer.cs | 41 ---- speed_Boat/speed_Boat/Form1.cs | 21 -- .../speed_Boat/FormSpeedBoat.Designer.cs | 143 ++++++++++++++ speed_Boat/speed_Boat/FormSpeedBoat.cs | 90 +++++++++ speed_Boat/speed_Boat/FormSpeedBoat.resx | 60 ++++++ speed_Boat/speed_Boat/Program.cs | 4 +- .../Properties/Resources.Designer.cs | 103 ++++++++++ .../{Form1.resx => Properties/Resources.resx} | 13 ++ speed_Boat/speed_Boat/SpeedBoat.cs | 58 ++++++ speed_Boat/speed_Boat/SpeedBoatMovement.cs | 182 ++++++++++++++++++ speed_Boat/speed_Boat/resources/DOWN.png | Bin 0 -> 11451 bytes speed_Boat/speed_Boat/resources/LEFT.png | Bin 0 -> 11470 bytes speed_Boat/speed_Boat/resources/RIGHT.png | Bin 0 -> 11691 bytes speed_Boat/speed_Boat/resources/UP.png | Bin 0 -> 11573 bytes speed_Boat/speed_Boat/speed_Boat.csproj | 15 ++ 22 files changed, 698 insertions(+), 303 deletions(-) delete mode 100644 SpeedBoat/SpeedBoat.sln delete mode 100644 SpeedBoat/SpeedBoat/Form1.Designer.cs delete mode 100644 SpeedBoat/SpeedBoat/Form1.cs delete mode 100644 SpeedBoat/SpeedBoat/Form1.resx delete mode 100644 SpeedBoat/SpeedBoat/Program.cs delete mode 100644 SpeedBoat/SpeedBoat/SpeedBoat.csproj create mode 100644 speed_Boat/speed_Boat/Direction.cs delete mode 100644 speed_Boat/speed_Boat/Form1.Designer.cs delete mode 100644 speed_Boat/speed_Boat/Form1.cs create mode 100644 speed_Boat/speed_Boat/FormSpeedBoat.Designer.cs create mode 100644 speed_Boat/speed_Boat/FormSpeedBoat.cs create mode 100644 speed_Boat/speed_Boat/FormSpeedBoat.resx create mode 100644 speed_Boat/speed_Boat/Properties/Resources.Designer.cs rename speed_Boat/speed_Boat/{Form1.resx => Properties/Resources.resx} (84%) create mode 100644 speed_Boat/speed_Boat/SpeedBoat.cs create mode 100644 speed_Boat/speed_Boat/SpeedBoatMovement.cs create mode 100644 speed_Boat/speed_Boat/resources/DOWN.png create mode 100644 speed_Boat/speed_Boat/resources/LEFT.png create mode 100644 speed_Boat/speed_Boat/resources/RIGHT.png create mode 100644 speed_Boat/speed_Boat/resources/UP.png diff --git a/SpeedBoat/SpeedBoat.sln b/SpeedBoat/SpeedBoat.sln deleted file mode 100644 index 65a7012..0000000 --- a/SpeedBoat/SpeedBoat.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.31729.503 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SpeedBoat", "SpeedBoat\SpeedBoat.csproj", "{CA504B35-DFE8-449C-97F5-02C7D392541A}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {CA504B35-DFE8-449C-97F5-02C7D392541A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {CA504B35-DFE8-449C-97F5-02C7D392541A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {CA504B35-DFE8-449C-97F5-02C7D392541A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {CA504B35-DFE8-449C-97F5-02C7D392541A}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {74698B56-6881-4BCE-9439-4D163E6F4EC5} - EndGlobalSection -EndGlobal diff --git a/SpeedBoat/SpeedBoat/Form1.Designer.cs b/SpeedBoat/SpeedBoat/Form1.Designer.cs deleted file mode 100644 index fda54de..0000000 --- a/SpeedBoat/SpeedBoat/Form1.Designer.cs +++ /dev/null @@ -1,41 +0,0 @@ - -namespace SpeedBoat -{ - partial class Form1 - { - /// - /// 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.components = new System.ComponentModel.Container(); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(800, 450); - this.Text = "Form1"; - } - - #endregion - } -} - diff --git a/SpeedBoat/SpeedBoat/Form1.cs b/SpeedBoat/SpeedBoat/Form1.cs deleted file mode 100644 index 5726264..0000000 --- a/SpeedBoat/SpeedBoat/Form1.cs +++ /dev/null @@ -1,21 +0,0 @@ -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 SpeedBoat -{ - public partial class Form1 : Form - { - public Form1() - { - InitializeComponent(); - } - - } -} diff --git a/SpeedBoat/SpeedBoat/Form1.resx b/SpeedBoat/SpeedBoat/Form1.resx deleted file mode 100644 index 1af7de1..0000000 --- a/SpeedBoat/SpeedBoat/Form1.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 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 - - \ No newline at end of file diff --git a/SpeedBoat/SpeedBoat/Program.cs b/SpeedBoat/SpeedBoat/Program.cs deleted file mode 100644 index b0ea8a7..0000000 --- a/SpeedBoat/SpeedBoat/Program.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using System.Windows.Forms; - -namespace SpeedBoat -{ - static class Program - { - /// - /// The main entry point for the application. - /// - [STAThread] - static void Main() - { - Application.SetHighDpiMode(HighDpiMode.SystemAware); - Application.EnableVisualStyles(); - Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new Form1()); - } - } -} diff --git a/SpeedBoat/SpeedBoat/SpeedBoat.csproj b/SpeedBoat/SpeedBoat/SpeedBoat.csproj deleted file mode 100644 index a2d4310..0000000 --- a/SpeedBoat/SpeedBoat/SpeedBoat.csproj +++ /dev/null @@ -1,9 +0,0 @@ - - - - WinExe - net5.0-windows - true - - - \ No newline at end of file diff --git a/speed_Boat/speed_Boat/Direction.cs b/speed_Boat/speed_Boat/Direction.cs new file mode 100644 index 0000000..ee9bc9e --- /dev/null +++ b/speed_Boat/speed_Boat/Direction.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace SpeedBoatLab +{ + /// + /// Направление перемещения + /// + public enum DirectionType + { + /// + /// Вверх + /// + Up = 1, + /// + /// Вниз + /// + Down = 2, + /// + /// Влево + /// + Left = 3, + /// + /// Вправо + /// + Right = 4 + } + +} diff --git a/speed_Boat/speed_Boat/Form1.Designer.cs b/speed_Boat/speed_Boat/Form1.Designer.cs deleted file mode 100644 index 9f1b91b..0000000 --- a/speed_Boat/speed_Boat/Form1.Designer.cs +++ /dev/null @@ -1,41 +0,0 @@ - -namespace speed_Boat -{ - partial class Form1 - { - /// - /// 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.components = new System.ComponentModel.Container(); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(800, 450); - this.Text = "Form1"; - } - - #endregion - } -} - diff --git a/speed_Boat/speed_Boat/Form1.cs b/speed_Boat/speed_Boat/Form1.cs deleted file mode 100644 index 4d62da2..0000000 --- a/speed_Boat/speed_Boat/Form1.cs +++ /dev/null @@ -1,21 +0,0 @@ -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 speed_Boat -{ - public partial class Form1 : Form - { - public Form1() - { - InitializeComponent(); - } - - } -} diff --git a/speed_Boat/speed_Boat/FormSpeedBoat.Designer.cs b/speed_Boat/speed_Boat/FormSpeedBoat.Designer.cs new file mode 100644 index 0000000..ce07184 --- /dev/null +++ b/speed_Boat/speed_Boat/FormSpeedBoat.Designer.cs @@ -0,0 +1,143 @@ + +namespace SpeedBoatLab +{ + partial class FormSpeedBoat + { + /// + /// 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.pictureBoxSpeedBoat = new System.Windows.Forms.PictureBox(); + this.buttonCreate = new System.Windows.Forms.Button(); + this.buttonUp = new System.Windows.Forms.Button(); + this.buttonLeft = new System.Windows.Forms.Button(); + this.buttonDown = new System.Windows.Forms.Button(); + this.buttonRight = new System.Windows.Forms.Button(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxSpeedBoat)).BeginInit(); + this.SuspendLayout(); + // + // pictureBoxSpeedBoat + // + this.pictureBoxSpeedBoat.Dock = System.Windows.Forms.DockStyle.Fill; + this.pictureBoxSpeedBoat.Location = new System.Drawing.Point(0, 0); + this.pictureBoxSpeedBoat.Name = "pictureBoxSpeedBoat"; + this.pictureBoxSpeedBoat.Size = new System.Drawing.Size(800, 450); + this.pictureBoxSpeedBoat.TabIndex = 0; + this.pictureBoxSpeedBoat.TabStop = false; + // + // buttonCreate + // + this.buttonCreate.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.buttonCreate.BackColor = System.Drawing.Color.White; + this.buttonCreate.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.buttonCreate.Location = new System.Drawing.Point(12, 387); + this.buttonCreate.Name = "buttonCreate"; + this.buttonCreate.Size = new System.Drawing.Size(103, 51); + this.buttonCreate.TabIndex = 2; + this.buttonCreate.Text = "Создать обьект"; + this.buttonCreate.UseVisualStyleBackColor = false; + 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::speed_Boat.Properties.Resources.UP; + this.buttonUp.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + this.buttonUp.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.buttonUp.Location = new System.Drawing.Point(716, 372); + this.buttonUp.Name = "buttonUp"; + this.buttonUp.Size = new System.Drawing.Size(30, 30); + this.buttonUp.TabIndex = 10; + this.buttonUp.UseVisualStyleBackColor = true; + this.buttonUp.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::speed_Boat.Properties.Resources.LEFT; + this.buttonLeft.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + this.buttonLeft.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.buttonLeft.Location = new System.Drawing.Point(680, 408); + this.buttonLeft.Name = "buttonLeft"; + this.buttonLeft.Size = new System.Drawing.Size(30, 30); + this.buttonLeft.TabIndex = 9; + 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::speed_Boat.Properties.Resources.DOWN; + this.buttonDown.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + this.buttonDown.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.buttonDown.Location = new System.Drawing.Point(716, 408); + this.buttonDown.Name = "buttonDown"; + this.buttonDown.Size = new System.Drawing.Size(30, 30); + this.buttonDown.TabIndex = 8; + this.buttonDown.UseVisualStyleBackColor = true; + this.buttonDown.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::speed_Boat.Properties.Resources.RIGHT; + this.buttonRight.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + this.buttonRight.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.buttonRight.Location = new System.Drawing.Point(752, 408); + this.buttonRight.Name = "buttonRight"; + this.buttonRight.Size = new System.Drawing.Size(30, 30); + this.buttonRight.TabIndex = 7; + this.buttonRight.UseVisualStyleBackColor = true; + this.buttonRight.Click += new System.EventHandler(this.buttonMove_Click); + // + // FormSpeedBoat + // + this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Controls.Add(this.buttonUp); + this.Controls.Add(this.buttonLeft); + this.Controls.Add(this.buttonDown); + this.Controls.Add(this.buttonRight); + this.Controls.Add(this.buttonCreate); + this.Controls.Add(this.pictureBoxSpeedBoat); + this.Name = "FormSpeedBoat"; + this.Text = "Движение катера"; + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxSpeedBoat)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.PictureBox pictureBoxSpeedBoat; + private System.Windows.Forms.Button buttonCreate; + private System.Windows.Forms.Button buttonUp; + private System.Windows.Forms.Button buttonLeft; + private System.Windows.Forms.Button buttonDown; + private System.Windows.Forms.Button buttonRight; + } +} + diff --git a/speed_Boat/speed_Boat/FormSpeedBoat.cs b/speed_Boat/speed_Boat/FormSpeedBoat.cs new file mode 100644 index 0000000..7239e35 --- /dev/null +++ b/speed_Boat/speed_Boat/FormSpeedBoat.cs @@ -0,0 +1,90 @@ +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 SpeedBoatLab +{ + public partial class FormSpeedBoat : Form + { + /// + /// Поле-объект для прорисовки объекта + /// + private SpeedBoatMovement? _tankerMovement; + public FormSpeedBoat() + { + InitializeComponent(); + } + + /// + /// Метод прорисовки машины + /// + private void Draw() + { + if (_tankerMovement == null) + { + return; + } + + Bitmap bmp = new(pictureBoxSpeedBoat.Width, pictureBoxSpeedBoat.Height); + Graphics gr = Graphics.FromImage(bmp); + _tankerMovement.DrawTransport(gr); + pictureBoxSpeedBoat.Image = bmp; + } + + /// + /// Обработка создания обьекта + /// + private void buttonCreate_Click(object sender, EventArgs e) + { + Random random = new(); + _tankerMovement = new SpeedBoatMovement(); + + _tankerMovement.Init(random.Next(100, 300), + random.Next(1000, 3000), + Convert.ToBoolean(random.Next(0, 2)), + Convert.ToBoolean(random.Next(0, 2)), + Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256)), + Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256)), + pictureBoxSpeedBoat.Width, pictureBoxSpeedBoat.Height); + + //startXCoord and startYCoord + _tankerMovement.SetPosition(random.Next(10, 100), random.Next(10, 100)); + + Draw(); + } + + /// + /// Обработка движения обьекта + /// + private void buttonMove_Click(object sender, EventArgs e) + { + if (_tankerMovement == null) + { + return; + } + string name = ((Button)sender)?.Name ?? string.Empty; + switch (name) + { + case "buttonUp": + _tankerMovement.MoveTransport(DirectionType.Up); + break; + case "buttonDown": + _tankerMovement.MoveTransport(DirectionType.Down); + break; + case "buttonLeft": + _tankerMovement.MoveTransport(DirectionType.Left); + break; + case "buttonRight": + _tankerMovement.MoveTransport(DirectionType.Right); + break; + } + Draw(); + } + } +} diff --git a/speed_Boat/speed_Boat/FormSpeedBoat.resx b/speed_Boat/speed_Boat/FormSpeedBoat.resx new file mode 100644 index 0000000..f298a7b --- /dev/null +++ b/speed_Boat/speed_Boat/FormSpeedBoat.resx @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + \ No newline at end of file diff --git a/speed_Boat/speed_Boat/Program.cs b/speed_Boat/speed_Boat/Program.cs index 5dc9e04..63c0040 100644 --- a/speed_Boat/speed_Boat/Program.cs +++ b/speed_Boat/speed_Boat/Program.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Threading.Tasks; using System.Windows.Forms; -namespace speed_Boat +namespace SpeedBoatLab { static class Program { @@ -17,7 +17,7 @@ namespace speed_Boat Application.SetHighDpiMode(HighDpiMode.SystemAware); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new Form1()); + Application.Run(new FormSpeedBoat()); } } } diff --git a/speed_Boat/speed_Boat/Properties/Resources.Designer.cs b/speed_Boat/speed_Boat/Properties/Resources.Designer.cs new file mode 100644 index 0000000..2a3409d --- /dev/null +++ b/speed_Boat/speed_Boat/Properties/Resources.Designer.cs @@ -0,0 +1,103 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// Исполняемая версия:4.0.30319.42000 +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторной генерации кода. +// +//------------------------------------------------------------------------------ + +namespace speed_Boat.Properties { + using System; + + + /// + /// Класс ресурса со строгой типизацией для поиска локализованных строк и т.д. + /// + // Этот класс создан автоматически классом StronglyTypedResourceBuilder + // с помощью такого средства, как ResGen или Visual Studio. + // Чтобы добавить или удалить член, измените файл .ResX и снова запустите ResGen + // с параметром /str или перестройте свой проект VS. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.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("speed_Boat.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)); + } + } + } +} diff --git a/speed_Boat/speed_Boat/Form1.resx b/speed_Boat/speed_Boat/Properties/Resources.resx similarity index 84% rename from speed_Boat/speed_Boat/Form1.resx rename to speed_Boat/speed_Boat/Properties/Resources.resx index 1af7de1..985fdea 100644 --- a/speed_Boat/speed_Boat/Form1.resx +++ b/speed_Boat/speed_Boat/Properties/Resources.resx @@ -117,4 +117,17 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ..\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/speed_Boat/speed_Boat/SpeedBoat.cs b/speed_Boat/speed_Boat/SpeedBoat.cs new file mode 100644 index 0000000..8f46029 --- /dev/null +++ b/speed_Boat/speed_Boat/SpeedBoat.cs @@ -0,0 +1,58 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Drawing; + +namespace SpeedBoatLab +{ + public class SpeedBoat + { + /// + /// Скорость катера + /// + public int Speed { get; private set; } + + /// + /// Вес самого катера + /// + public double Weight { get; private set; } + + /// + /// Наличие мотора + /// + public bool isMotor { get; private set; } + + /// + /// Наличие защитного стекла + /// + public bool isProtectedGlass { get; private set; } + + /// + /// Основной цвет + /// + public Color MainColor { get; private set; } + + /// + /// Доп. цвет + /// + public Color SecondColor { get; private set; } + + /// + /// Шаг перемещения катера + /// + public double Step => (double)Speed * 100 / (Weight); + + public void Init(int speed, double weight, bool _isMotor, bool _isProtectedGlass, Color mainColor, Color secondColor) + { + Speed = speed; + Weight = weight; + isMotor = _isMotor; + isProtectedGlass = _isProtectedGlass; + MainColor = mainColor; + SecondColor = secondColor; + } + + } +} diff --git a/speed_Boat/speed_Boat/SpeedBoatMovement.cs b/speed_Boat/speed_Boat/SpeedBoatMovement.cs new file mode 100644 index 0000000..10de65e --- /dev/null +++ b/speed_Boat/speed_Boat/SpeedBoatMovement.cs @@ -0,0 +1,182 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using SpeedBoatLab; +using System.Drawing; + + +namespace SpeedBoatLab +{ + class SpeedBoatMovement + { + /// + /// Класс-сущность + /// + public SpeedBoat? _speedBoat { get; private set; } + + /// + /// Ширина окна + /// + private int screenWidth; + /// + /// Высота окна + /// + private int screenHeight; + + /// + /// Х-координата обьекта + /// + private int startXCoord; + /// + /// Y-координата обьекта + /// + private int startYCoord; + + /// + /// Ширина обьекта + /// + private readonly int widthBoat = 100; + /// + /// Высота обьекта + /// + private readonly int heightBoat = 80; + + public bool Init(int speed, double weight, bool _isMotor, bool _isProtectedGlass, Color mainColor, Color secondColor, int width, int height) + { + screenWidth = width; + screenHeight = height; + _speedBoat = new SpeedBoat(); + _speedBoat.Init(speed, weight, _isMotor, _isProtectedGlass, mainColor, secondColor); + + /// + /// Проверка на вместимость обьекта в рамки сцены + /// + if ((widthBoat >= screenWidth) || (heightBoat >= screenHeight)) + { + Console.WriteLine("проверка не пройдена, нельзя создать объект в этих размерах"); + return false; + } + else + Console.WriteLine("объект создан"); + return true; + } + + /// + /// Установка позиции + /// + public void SetPosition(int x, int y) + { + if ((x + widthBoat > screenWidth) || (y + heightBoat > screenHeight)) + { + startXCoord = screenWidth - widthBoat; + startYCoord = screenHeight - heightBoat; + } + else + { + startXCoord = x; + startYCoord = y; + } + + } + /// + /// Изменение направления перемещения + /// + public void MoveTransport(DirectionType direction) + { + if (_speedBoat == null) + { + return; + } + + switch (direction) + { + //влево + case DirectionType.Left: + if (startXCoord - _speedBoat.Step > 0) + { + startXCoord -= (int)_speedBoat.Step; + } + break; + //вверх + case DirectionType.Up: + if (startYCoord - _speedBoat.Step > 0) + { + startYCoord -= (int)_speedBoat.Step; + } + break; + // вправо + case DirectionType.Right: + if (startXCoord + _speedBoat.Step + widthBoat < screenWidth) + { + startXCoord += (int)_speedBoat.Step; + } + break; + //вниз + case DirectionType.Down: + if (startYCoord + _speedBoat.Step + heightBoat < screenHeight) + { + startYCoord += (int)_speedBoat.Step; + } + break; + } + } + + /// + /// Прорисовка объекта + /// + public void DrawTransport(Graphics g) + { + if (_speedBoat == null) + { + return; + } + + Pen pen = new(Color.Black); + Brush additionalBrush = new SolidBrush(_speedBoat.SecondColor); + Brush mainBrush = new SolidBrush(_speedBoat.MainColor); + + #region Координаты переда лодки + Point b1 = new Point(startXCoord + 80, startYCoord + 20); + Point b2 = new Point(startXCoord + 100, startYCoord + 40); + Point b3 = new Point(startXCoord + 80, startYCoord + 60); + Point[] pointsBoat = { b1, b2, b3 }; + #endregion + + #region Координаты защитного стекла + Point g1 = new Point(startXCoord + 70, startYCoord + 25); + Point g2 = new Point(startXCoord + 80, startYCoord + 20); + Point g3 = new Point(startXCoord + 80, startYCoord + 60); + Point g4 = new Point(startXCoord + 70, startYCoord + 55); + Point[] pointsGlass = { g1, g2, g3, g4 }; + #endregion + + //основа катера + g.DrawRectangle(pen, startXCoord + 20, startYCoord + 20, widthBoat - 40, heightBoat - 40); + g.DrawEllipse(pen, startXCoord + 25, startYCoord + 25, widthBoat - 50, heightBoat - 50); + g.DrawPolygon(pen, pointsBoat); + + g.FillRectangle(mainBrush, startXCoord + 20, startYCoord + 20, widthBoat - 40, heightBoat - 40); + g.FillEllipse(additionalBrush, startXCoord + 25, startYCoord + 25, widthBoat - 50, heightBoat - 50); + g.FillPolygon(mainBrush, pointsBoat); + + + //мотор + if (_speedBoat.isMotor) + { + g.DrawRectangle(pen, startXCoord + 10, startYCoord + 30, widthBoat - 90, heightBoat - 60); + + g.FillRectangle(additionalBrush, startXCoord + 10, startYCoord + 30, widthBoat - 90, heightBoat - 60); + } + + //защитное стекло + if (_speedBoat.isProtectedGlass) + { + g.DrawPolygon(pen, pointsGlass); + + g.FillPolygon(new SolidBrush(Color.Aqua), pointsGlass); + } + } + } +} diff --git a/speed_Boat/speed_Boat/resources/DOWN.png b/speed_Boat/speed_Boat/resources/DOWN.png new file mode 100644 index 0000000000000000000000000000000000000000..31e49e8ac4856ae507afe2436224e1e39c82af53 GIT binary patch literal 11451 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 literal 0 HcmV?d00001 diff --git a/speed_Boat/speed_Boat/resources/LEFT.png b/speed_Boat/speed_Boat/resources/LEFT.png new file mode 100644 index 0000000000000000000000000000000000000000..6917bf80a81fbcc0be93b99a4c06c95d544cb2cc GIT binary patch literal 11470 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 SkA@u#LhcJZ=U-s4x&H&uVt-Qr literal 0 HcmV?d00001 diff --git a/speed_Boat/speed_Boat/resources/RIGHT.png b/speed_Boat/speed_Boat/resources/RIGHT.png new file mode 100644 index 0000000000000000000000000000000000000000..94c3f4299a9ea35c7feef20d9832b7390fd6897f GIT binary patch literal 11691 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 literal 0 HcmV?d00001 diff --git a/speed_Boat/speed_Boat/resources/UP.png b/speed_Boat/speed_Boat/resources/UP.png new file mode 100644 index 0000000000000000000000000000000000000000..e23edf82a147d57779721030c6ca94af1706207c GIT binary patch literal 11573 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 Bl5qe4 literal 0 HcmV?d00001 diff --git a/speed_Boat/speed_Boat/speed_Boat.csproj b/speed_Boat/speed_Boat/speed_Boat.csproj index a2d4310..2faea65 100644 --- a/speed_Boat/speed_Boat/speed_Boat.csproj +++ b/speed_Boat/speed_Boat/speed_Boat.csproj @@ -6,4 +6,19 @@ true + + + True + True + Resources.resx + + + + + + ResXFileCodeGenerator + Resources.Designer.cs + + + \ No newline at end of file -- 2.25.1