From e5918ae56f33504e9300f7cad5545f497d42b74e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D0=BB=D0=B0=D0=B4=D0=B8=D1=81=D0=BB=D0=B0=D0=B2=20?= =?UTF-8?q?=D0=97=D0=B0=D1=85=D0=B0=D1=80=D0=BE=D0=B2?= Date: Tue, 13 Sep 2022 17:04:33 +0400 Subject: [PATCH 1/5] =?UTF-8?q?=D0=9A=D0=BE=D0=BC=D0=BC=D0=B8=D1=82=20?= =?UTF-8?q?=D0=B2=20=D0=BA=D0=BE=D0=BD=D1=86=D0=B5=20=D0=BF=D0=B0=D1=80?= =?UTF-8?q?=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Traktor/Traktor/Direction.cs | 11 ++++ Traktor/Traktor/EntityTraktor.cs | 31 +++++++++ Traktor/Traktor/TraktorDraw.cs | 105 +++++++++++++++++++++++++++++++ 3 files changed, 147 insertions(+) create mode 100644 Traktor/Traktor/Direction.cs create mode 100644 Traktor/Traktor/EntityTraktor.cs create mode 100644 Traktor/Traktor/TraktorDraw.cs diff --git a/Traktor/Traktor/Direction.cs b/Traktor/Traktor/Direction.cs new file mode 100644 index 0000000..a764490 --- /dev/null +++ b/Traktor/Traktor/Direction.cs @@ -0,0 +1,11 @@ +namespace Traktor +{ + //Направление перемещения + internal enum Direction + { + Up = 1, + Down = 2, + Left = 3, + Right = 4 + } +} diff --git a/Traktor/Traktor/EntityTraktor.cs b/Traktor/Traktor/EntityTraktor.cs new file mode 100644 index 0000000..28a65b6 --- /dev/null +++ b/Traktor/Traktor/EntityTraktor.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Traktor +{ + + //Класс-сущности "Трактор" + + internal class EntityTraktor + { + //Скорость + 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 rnd = new Random(); + Speed = speed <= 0 ? rnd.Next(50, 150) : speed; + Weight = weight <= 0 ? rnd.Next(40, 70) : weight; + BodyColor = bodycolor; + } + } +} diff --git a/Traktor/Traktor/TraktorDraw.cs b/Traktor/Traktor/TraktorDraw.cs new file mode 100644 index 0000000..bd68486 --- /dev/null +++ b/Traktor/Traktor/TraktorDraw.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Traktor +{ + // Класс, отвечающий за прорисовку и перемещение объекта-сущности + internal class TraktorDraw + { + //Сущность + public EntityTraktor Traktor { get; private set; } + /// Левая координата отрисовки сущности + private float startPosX; + /// Верхняя кооридната отрисовки сущности + private float startPosY; + /// Ширина окна отрисовки + private int? pictureWidth = null; + /// Высота окна отрисовки + private int? pictureHeight = null; + /// Ширина отрисовки сущности + private readonly int entWidth = 0; + /// Высота отрисовки сущности + private readonly int entHeight = 0; + + public void Init(int speed, float weight, Color bodycolor) + { + Traktor = new EntityTraktor(); + Traktor.Init(speed, weight, bodycolor); + } + + //Установка позиции сущности + public void SetPosition(int x, int y, int widgh, int height) + { + startPosX = x; + startPosY = y; + pictureHeight = height; + pictureWidth = widgh; + } + + //Изменение направления перемещения + public void MoveTransport(Direction direction) + { + if (!pictureWidth.HasValue || !pictureHeight.HasValue) + { + return; + } + switch (direction) + { + case Direction.Right: + if (startPosX + entWidth + Traktor.Step < pictureWidth) + { + startPosX += Traktor.Step; + } + break; + case Direction.Left: + if (startPosX - Traktor.Step > 0) + { + startPosX -= Traktor.Step; + } + break; + case Direction.Down: + if (startPosY + entHeight + Traktor.Step < pictureHeight) + { + startPosY += Traktor.Step; + } + break; + case Direction.Up: + if (startPosY - Traktor.Step > 0) + { + startPosY -= Traktor.Step; + } + break; + } + } + + //Отрисовка сущности + public void DrawEntity(Graphics g) + { + + } + + //Смена границ формы + public void ChangeBorders(int width, int height) + { + pictureWidth = width; + pictureHeight = height; + if (pictureWidth <= entWidth || pictureHeight <= entHeight) + { + pictureWidth = null; + pictureHeight = null; + return; + } + if (startPosX + entWidth > pictureWidth) + { + startPosX = pictureWidth.Value - entWidth; + } + if (startPosY + entHeight > pictureHeight) + { + startPosY = pictureHeight.Value - entHeight; + } + } + } +} -- 2.25.1 From dc3460c6198b76de2d0807858eb3d04ffd88c0c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D0=BB=D0=B0=D0=B4=D0=B8=D1=81=D0=BB=D0=B0=D0=B2=20?= =?UTF-8?q?=D0=97=D0=B0=D1=85=D0=B0=D1=80=D0=BE=D0=B2?= Date: Fri, 16 Sep 2022 23:35:49 +0400 Subject: [PATCH 2/5] test --- Traktor/Traktor/TraktorDraw.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Traktor/Traktor/TraktorDraw.cs b/Traktor/Traktor/TraktorDraw.cs index bd68486..a3f3497 100644 --- a/Traktor/Traktor/TraktorDraw.cs +++ b/Traktor/Traktor/TraktorDraw.cs @@ -4,6 +4,8 @@ using System.Linq; using System.Text; using System.Threading.Tasks; +//test + namespace Traktor { // Класс, отвечающий за прорисовку и перемещение объекта-сущности -- 2.25.1 From 39f71b684c9d2efdda51aa6f6825a349502a496e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D0=BB=D0=B0=D0=B4=D0=B8=D1=81=D0=BB=D0=B0=D0=B2=20?= =?UTF-8?q?=D0=97=D0=B0=D1=85=D0=B0=D1=80=D0=BE=D0=B2?= Date: Sun, 18 Sep 2022 17:40:14 +0400 Subject: [PATCH 3/5] =?UTF-8?q?=D0=9E=D1=81=D1=82=D0=B0=D0=BB=D0=BE=D1=81?= =?UTF-8?q?=D1=8C=20=D0=BD=D0=B0=D1=80=D0=B8=D1=81=D0=BE=D0=B2=D0=B0=D1=82?= =?UTF-8?q?=D1=8C=20=D1=82=D1=80=D0=B0=D0=BA=D1=82=D0=BE=D1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Traktor/Traktor/DrawField.Designer.cs | 176 ++++++++++++++++++ Traktor/Traktor/DrawField.cs | 40 ++++ Traktor/Traktor/DrawField.resx | 63 +++++++ Traktor/Traktor/Form1.Designer.cs | 39 ---- Traktor/Traktor/Form1.cs | 10 - Traktor/Traktor/Program.cs | 2 +- .../Traktor/Properties/Resources.Designer.cs | 114 ++++++++++++ .../{Form1.resx => Properties/Resources.resx} | 16 ++ Traktor/Traktor/Resources/arrowDown.png | Bin 0 -> 33332 bytes Traktor/Traktor/Resources/arrowLeft.png | Bin 0 -> 36265 bytes Traktor/Traktor/Resources/arrowRight.png | Bin 0 -> 37173 bytes Traktor/Traktor/Resources/arrowUp.png | Bin 0 -> 33395 bytes ...w-5ac00b2487fba8.612718301522535204557.png | Bin 0 -> 37173 bytes Traktor/Traktor/Traktor.csproj | 15 ++ Traktor/Traktor/TraktorDraw.cs | 11 +- 15 files changed, 434 insertions(+), 52 deletions(-) create mode 100644 Traktor/Traktor/DrawField.Designer.cs create mode 100644 Traktor/Traktor/DrawField.cs create mode 100644 Traktor/Traktor/DrawField.resx delete mode 100644 Traktor/Traktor/Form1.Designer.cs delete mode 100644 Traktor/Traktor/Form1.cs create mode 100644 Traktor/Traktor/Properties/Resources.Designer.cs rename Traktor/Traktor/{Form1.resx => Properties/Resources.resx} (78%) create mode 100644 Traktor/Traktor/Resources/arrowDown.png create mode 100644 Traktor/Traktor/Resources/arrowLeft.png create mode 100644 Traktor/Traktor/Resources/arrowRight.png create mode 100644 Traktor/Traktor/Resources/arrowUp.png create mode 100644 Traktor/Traktor/Resources/kisspng-computer-icons-arrow-encapsulated-postscript-left-arrow-5ac00b2487fba8.612718301522535204557.png diff --git a/Traktor/Traktor/DrawField.Designer.cs b/Traktor/Traktor/DrawField.Designer.cs new file mode 100644 index 0000000..d9f7264 --- /dev/null +++ b/Traktor/Traktor/DrawField.Designer.cs @@ -0,0 +1,176 @@ +namespace Traktor +{ + partial class DrawField + { + /// + /// 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.pictureBoxTraktor = new System.Windows.Forms.PictureBox(); + this.statusStrip = new System.Windows.Forms.StatusStrip(); + this.toolStripStatusLabelSpeed = new System.Windows.Forms.ToolStripStatusLabel(); + this.toolStripStatusLabelWeight = new System.Windows.Forms.ToolStripStatusLabel(); + this.toolStripStatusLabelBodyColor = new System.Windows.Forms.ToolStripStatusLabel(); + this.buttonCreate = new System.Windows.Forms.Button(); + this.buttonLEFT = new System.Windows.Forms.Button(); + this.buttonRIGHT = new System.Windows.Forms.Button(); + this.buttonDOWN = new System.Windows.Forms.Button(); + this.buttonUP = new System.Windows.Forms.Button(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxTraktor)).BeginInit(); + this.statusStrip.SuspendLayout(); + this.SuspendLayout(); + // + // pictureBoxTraktor + // + this.pictureBoxTraktor.Dock = System.Windows.Forms.DockStyle.Fill; + this.pictureBoxTraktor.Location = new System.Drawing.Point(0, 0); + this.pictureBoxTraktor.Name = "pictureBoxTraktor"; + this.pictureBoxTraktor.Size = new System.Drawing.Size(800, 450); + this.pictureBoxTraktor.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; + this.pictureBoxTraktor.TabIndex = 0; + this.pictureBoxTraktor.TabStop = false; + this.pictureBoxTraktor.Resize += new System.EventHandler(this.PictureBoxTraktor_Resize); + // + // statusStrip + // + this.statusStrip.ImageScalingSize = new System.Drawing.Size(20, 20); + this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripStatusLabelSpeed, + this.toolStripStatusLabelWeight, + this.toolStripStatusLabelBodyColor}); + this.statusStrip.Location = new System.Drawing.Point(0, 424); + this.statusStrip.Name = "statusStrip"; + this.statusStrip.Size = new System.Drawing.Size(800, 26); + this.statusStrip.TabIndex = 1; + // + // toolStripStatusLabelSpeed + // + this.toolStripStatusLabelSpeed.Name = "toolStripStatusLabelSpeed"; + this.toolStripStatusLabelSpeed.Size = new System.Drawing.Size(80, 20); + this.toolStripStatusLabelSpeed.Text = "Скорость: "; + // + // toolStripStatusLabelWeight + // + this.toolStripStatusLabelWeight.Name = "toolStripStatusLabelWeight"; + this.toolStripStatusLabelWeight.Size = new System.Drawing.Size(40, 20); + this.toolStripStatusLabelWeight.Text = "Вес: "; + // + // toolStripStatusLabelBodyColor + // + this.toolStripStatusLabelBodyColor.Name = "toolStripStatusLabelBodyColor"; + this.toolStripStatusLabelBodyColor.Size = new System.Drawing.Size(95, 20); + this.toolStripStatusLabelBodyColor.Text = "Цвет кузова:"; + // + // 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(29, 362); + this.buttonCreate.Name = "buttonCreate"; + this.buttonCreate.Size = new System.Drawing.Size(94, 29); + this.buttonCreate.TabIndex = 2; + this.buttonCreate.Text = "Создать"; + this.buttonCreate.UseVisualStyleBackColor = true; + this.buttonCreate.Click += new System.EventHandler(this.ButtonCreate_Click); + // + // buttonLEFT + // + this.buttonLEFT.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.buttonLEFT.BackgroundImage = global::Traktor.Properties.Resources.arrowLeft; + this.buttonLEFT.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.buttonLEFT.Location = new System.Drawing.Point(673, 361); + this.buttonLEFT.Name = "buttonLEFT"; + this.buttonLEFT.Size = new System.Drawing.Size(30, 30); + this.buttonLEFT.TabIndex = 3; + this.buttonLEFT.UseVisualStyleBackColor = true; + // + // buttonRIGHT + // + this.buttonRIGHT.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.buttonRIGHT.BackgroundImage = global::Traktor.Properties.Resources.arrowRight; + this.buttonRIGHT.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.buttonRIGHT.Location = new System.Drawing.Point(745, 361); + this.buttonRIGHT.Name = "buttonRIGHT"; + this.buttonRIGHT.Size = new System.Drawing.Size(30, 30); + this.buttonRIGHT.TabIndex = 4; + this.buttonRIGHT.UseVisualStyleBackColor = true; + // + // buttonDOWN + // + this.buttonDOWN.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.buttonDOWN.BackgroundImage = global::Traktor.Properties.Resources.arrowDown; + this.buttonDOWN.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.buttonDOWN.Location = new System.Drawing.Point(709, 379); + this.buttonDOWN.Name = "buttonDOWN"; + this.buttonDOWN.Size = new System.Drawing.Size(30, 30); + this.buttonDOWN.TabIndex = 5; + this.buttonDOWN.UseVisualStyleBackColor = true; + // + // buttonUP + // + this.buttonUP.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.buttonUP.BackgroundImage = global::Traktor.Properties.Resources.arrowUp; + this.buttonUP.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.buttonUP.Location = new System.Drawing.Point(709, 343); + this.buttonUP.Name = "buttonUP"; + this.buttonUP.Size = new System.Drawing.Size(30, 30); + this.buttonUP.TabIndex = 6; + this.buttonUP.UseVisualStyleBackColor = true; + // + // DrawField + // + 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.statusStrip); + this.Controls.Add(this.buttonUP); + this.Controls.Add(this.buttonDOWN); + this.Controls.Add(this.buttonRIGHT); + this.Controls.Add(this.buttonLEFT); + this.Controls.Add(this.buttonCreate); + this.Controls.Add(this.pictureBoxTraktor); + this.Name = "DrawField"; + this.Text = "Трактор"; + ((System.ComponentModel.ISupportInitialize)(this.pictureBoxTraktor)).EndInit(); + this.statusStrip.ResumeLayout(false); + this.statusStrip.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private PictureBox pictureBoxTraktor; + private StatusStrip statusStrip; + private ToolStripStatusLabel toolStripStatusLabelSpeed; + private ToolStripStatusLabel toolStripStatusLabelWeight; + private ToolStripStatusLabel toolStripStatusLabelBodyColor; + private Button buttonCreate; + private Button buttonLEFT; + private Button buttonRIGHT; + private Button buttonDOWN; + private Button buttonUP; + } +} \ No newline at end of file diff --git a/Traktor/Traktor/DrawField.cs b/Traktor/Traktor/DrawField.cs new file mode 100644 index 0000000..0b29dc8 --- /dev/null +++ b/Traktor/Traktor/DrawField.cs @@ -0,0 +1,40 @@ +namespace Traktor +{ + public partial class DrawField : Form + { + private TraktorDraw _Traktor; + + public DrawField() + { + InitializeComponent(); + } + + // + private void Draw() + { + Bitmap bmp = new(pictureBoxTraktor.Width, pictureBoxTraktor.Height); + Graphics gr = Graphics.FromImage(bmp); + _Traktor?.DrawEntity(gr); + pictureBoxTraktor.Image = bmp; + } + + // + private void ButtonCreate_Click(object sender, EventArgs e) + { + Random random = new Random(); + _Traktor = new TraktorDraw(); + _Traktor.Init(random.Next(10, 70), random.Next(2500, 7000), Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256))); + _Traktor.SetPosition(random.Next(10, 50), random.Next(10, 50), pictureBoxTraktor.Width, pictureBoxTraktor.Height); + toolStripStatusLabelSpeed.Text = $": {_Traktor.Traktor.Speed}"; + toolStripStatusLabelWeight.Text = $": {_Traktor.Traktor.Weight}"; + toolStripStatusLabelBodyColor.Text = $" : {_Traktor.Traktor.BodyColor.Name}"; + Draw(); + } + + private void PictureBoxTraktor_Resize(object sender, EventArgs e) + { + _Traktor?.ChangeBorders(pictureBoxTraktor.Width, pictureBoxTraktor.Height); + Draw(); + } + } +} \ No newline at end of file diff --git a/Traktor/Traktor/DrawField.resx b/Traktor/Traktor/DrawField.resx new file mode 100644 index 0000000..2c0949d --- /dev/null +++ b/Traktor/Traktor/DrawField.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/Traktor/Traktor/Form1.Designer.cs b/Traktor/Traktor/Form1.Designer.cs deleted file mode 100644 index 552ebe5..0000000 --- a/Traktor/Traktor/Form1.Designer.cs +++ /dev/null @@ -1,39 +0,0 @@ -namespace Traktor -{ - 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 - } -} \ No newline at end of file diff --git a/Traktor/Traktor/Form1.cs b/Traktor/Traktor/Form1.cs deleted file mode 100644 index fb1db22..0000000 --- a/Traktor/Traktor/Form1.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace Traktor -{ - public partial class Form1 : Form - { - public Form1() - { - InitializeComponent(); - } - } -} \ No newline at end of file diff --git a/Traktor/Traktor/Program.cs b/Traktor/Traktor/Program.cs index 6bdd61c..c7b1b20 100644 --- a/Traktor/Traktor/Program.cs +++ b/Traktor/Traktor/Program.cs @@ -11,7 +11,7 @@ namespace Traktor // To customize application configuration such as set high DPI settings or default font, // see https://aka.ms/applicationconfiguration. ApplicationConfiguration.Initialize(); - Application.Run(new Form1()); + Application.Run(new DrawField()); } } } \ No newline at end of file diff --git a/Traktor/Traktor/Properties/Resources.Designer.cs b/Traktor/Traktor/Properties/Resources.Designer.cs new file mode 100644 index 0000000..f6f63c8 --- /dev/null +++ b/Traktor/Traktor/Properties/Resources.Designer.cs @@ -0,0 +1,114 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// Исполняемая версия:4.0.30319.42000 +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторной генерации кода. +// +//------------------------------------------------------------------------------ + +namespace Traktor.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("Traktor.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 arrowDown { + get { + object obj = ResourceManager.GetObject("arrowDown", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Поиск локализованного ресурса типа System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap arrowLeft { + get { + object obj = ResourceManager.GetObject("arrowLeft", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Поиск локализованного ресурса типа System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap arrowRight { + get { + object obj = ResourceManager.GetObject("arrowRight", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Поиск локализованного ресурса типа System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap arrowUp { + get { + object obj = ResourceManager.GetObject("arrowUp", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Поиск локализованного ресурса типа System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap kisspng_computer_icons_arrow_encapsulated_postscript_left_arrow_5ac00b2487fba8_612718301522535204557 { + get { + object obj = ResourceManager.GetObject("kisspng-computer-icons-arrow-encapsulated-postscript-left-arrow-5ac00b2487fba8.61" + + "2718301522535204557", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + } +} diff --git a/Traktor/Traktor/Form1.resx b/Traktor/Traktor/Properties/Resources.resx similarity index 78% rename from Traktor/Traktor/Form1.resx rename to Traktor/Traktor/Properties/Resources.resx index 1af7de1..b0b0fbb 100644 --- a/Traktor/Traktor/Form1.resx +++ b/Traktor/Traktor/Properties/Resources.resx @@ -117,4 +117,20 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ..\Resources\kisspng-computer-icons-arrow-encapsulated-postscript-left-arrow-5ac00b2487fba8.612718301522535204557.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\arrowDown.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\arrowLeft.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\arrowRight.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\arrowUp.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + \ No newline at end of file diff --git a/Traktor/Traktor/Resources/arrowDown.png b/Traktor/Traktor/Resources/arrowDown.png new file mode 100644 index 0000000000000000000000000000000000000000..56c7aaf51e81e14f787f4f17c2e0775835f78515 GIT binary patch literal 33332 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 DGng4; literal 0 HcmV?d00001 diff --git a/Traktor/Traktor/Resources/arrowLeft.png b/Traktor/Traktor/Resources/arrowLeft.png new file mode 100644 index 0000000000000000000000000000000000000000..55b0ae983be4076c9827693b360e420ad1462d42 GIT binary patch literal 36265 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%0AQ&kfr3uL?oO;rTo=e>RCkF?ZK1JRoB>fewUL2 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 CGf5%< literal 0 HcmV?d00001 diff --git a/Traktor/Traktor/Resources/arrowRight.png b/Traktor/Traktor/Resources/arrowRight.png new file mode 100644 index 0000000000000000000000000000000000000000..9a3a8c152ae45949c9624fd6b89bc6eb9e6cb28e GIT binary patch literal 37173 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%0DUp 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 CEe@0b literal 0 HcmV?d00001 diff --git a/Traktor/Traktor/Resources/kisspng-computer-icons-arrow-encapsulated-postscript-left-arrow-5ac00b2487fba8.612718301522535204557.png b/Traktor/Traktor/Resources/kisspng-computer-icons-arrow-encapsulated-postscript-left-arrow-5ac00b2487fba8.612718301522535204557.png new file mode 100644 index 0000000000000000000000000000000000000000..9a3a8c152ae45949c9624fd6b89bc6eb9e6cb28e GIT binary patch literal 37173 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%0DUp zuf1#kX{(Ck7ubSklWJ5T1`1m)k430qpvxF7urlHDD9S*{M5w_4&H|$}Hk1|`7bQj( z^i~3H;bCBy0);NbKpnVi%-D(yM?wu+fs&OKE5c~fb>$H}=bn38{s_)b?K$WBIG^u1 z-|si)o_mk|r5Hx~HHgU6Z~;eL%RmYr$cWc#OnybLAZF!ogFX0m9$$Tz0SO)pRmTOb zt)s|=#Y1&kKG1Thb;b@tdb+jQeP+N}1vtuhI!T0GButmGK|3(=3yB(QIXP+)cD%|+ zn}yD7VG(cAaeo;?i0I+ldX%DR7*I1c@c9^}@J%!`Dy2e|!208&OiKMZoJ@c0Ty$dB zkq4xFbp!qwmT|q|h~w{EoxRFbz+E2k zX#0Tw!{bQJL^ypVPtA6p1ZL%khG_nhHtQuaH=px;3*sM2UorLPI_Ns8>HN0Z5Ss#R^qHG32Gglp1Z%`a*KyEh0 z1_$1}0~T{6^8GYcfn6h9st+k2{^c@sdQ++7Cj>8_^Pvq@TLiR&b~Tcvg{@+yQVe&A z7iN!{{1!lF4V4Stf?@YRXadbm>blih_JOFrrb z9BZh%m~2>zS-wGZardLZ%T2IY`bu(D$DcC1d<8H#Cnf8+)U9U{c$^*-Dy=JH@4}BZ z2dxA=fH87Y5CBfM!bW`=O`;S$T6(Ly3Ro4Eg_pZ)Yg`7}X~Msw%QppqEP>G91VU7~ zy@VVoY_$j&B2iTVAH&4`+#KnfMuYtXnp;#go$P&gjtI~s6-@NXkx=kV!mlfHZ?n<0 zyZe|{1JnphM5>I9Ei|RUOXD!q|D%jH0$5~I6=vwgKzU8Z+rRzA@Xz-*RvG;w;Rg>a zvZWkpoUwhNSw^k093Kfft)JRQM%#Cb=~#qm;3ZR66g3fU37KUQ22QhGsTO6Nv+%Dh zC6D%&Ku-DE87*fvOTj8kWvgPHbM>ckSx`D|#S;K}CAij_r3tjWujM?fYxK~ZA0j8n z?HBp?nCS!}_sp5RuwENuFJRQ8mm=yn;+rU-fRU(one-I=wq}#1X{?fJ zWsI>DB{85Wg%?pDoz%Ie~I!aRjO?YdByMdh} z*nJJL#CT!Q=9ZE-yd8hX4NO1)O^ye++^bSomZQenable + + + True + True + Resources.resx + + + + + + ResXFileCodeGenerator + Resources.Designer.cs + + + \ No newline at end of file diff --git a/Traktor/Traktor/TraktorDraw.cs b/Traktor/Traktor/TraktorDraw.cs index a3f3497..22b86c4 100644 --- a/Traktor/Traktor/TraktorDraw.cs +++ b/Traktor/Traktor/TraktorDraw.cs @@ -34,7 +34,7 @@ namespace Traktor //Установка позиции сущности public void SetPosition(int x, int y, int widgh, int height) - { + {//сделать проверку!!!!! startPosX = x; startPosY = y; pictureHeight = height; @@ -80,6 +80,13 @@ namespace Traktor //Отрисовка сущности public void DrawEntity(Graphics g) { + if (startPosX < 0 || startPosY < 0 || !pictureHeight.HasValue || !pictureWidth.HasValue) + { + return; + } + + Pen pen = new Pen(Color.Blue); + } @@ -104,4 +111,4 @@ namespace Traktor } } } -} +} \ No newline at end of file -- 2.25.1 From 2b46ad4f0369fcddfadbb086d2087163371f9e04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D0=BB=D0=B0=D0=B4=D0=B8=D1=81=D0=BB=D0=B0=D0=B2=20?= =?UTF-8?q?=D0=97=D0=B0=D1=85=D0=B0=D1=80=D0=BE=D0=B2?= Date: Sun, 18 Sep 2022 20:03:24 +0400 Subject: [PATCH 4/5] =?UTF-8?q?=D0=9B=D0=B0=D0=B1=D0=BE=D1=80=D0=B0=D1=82?= =?UTF-8?q?=D0=BE=D1=80=D0=BD=D0=B0=20=E2=84=961=20=D0=B3=D0=BE=D1=82?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Traktor/Traktor/DrawField.Designer.cs | 49 +++++++++++++++++---------- Traktor/Traktor/DrawField.cs | 24 ++++++++++++- Traktor/Traktor/TraktorDraw.cs | 47 +++++++++++++++++++++---- 3 files changed, 94 insertions(+), 26 deletions(-) diff --git a/Traktor/Traktor/DrawField.Designer.cs b/Traktor/Traktor/DrawField.Designer.cs index d9f7264..7b6efa5 100644 --- a/Traktor/Traktor/DrawField.Designer.cs +++ b/Traktor/Traktor/DrawField.Designer.cs @@ -46,8 +46,9 @@ // this.pictureBoxTraktor.Dock = System.Windows.Forms.DockStyle.Fill; this.pictureBoxTraktor.Location = new System.Drawing.Point(0, 0); + this.pictureBoxTraktor.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.pictureBoxTraktor.Name = "pictureBoxTraktor"; - this.pictureBoxTraktor.Size = new System.Drawing.Size(800, 450); + this.pictureBoxTraktor.Size = new System.Drawing.Size(700, 338); this.pictureBoxTraktor.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; this.pictureBoxTraktor.TabIndex = 0; this.pictureBoxTraktor.TabStop = false; @@ -60,35 +61,37 @@ this.toolStripStatusLabelSpeed, this.toolStripStatusLabelWeight, this.toolStripStatusLabelBodyColor}); - this.statusStrip.Location = new System.Drawing.Point(0, 424); + this.statusStrip.Location = new System.Drawing.Point(0, 316); this.statusStrip.Name = "statusStrip"; - this.statusStrip.Size = new System.Drawing.Size(800, 26); + this.statusStrip.Padding = new System.Windows.Forms.Padding(1, 0, 12, 0); + this.statusStrip.Size = new System.Drawing.Size(700, 22); this.statusStrip.TabIndex = 1; // // toolStripStatusLabelSpeed // this.toolStripStatusLabelSpeed.Name = "toolStripStatusLabelSpeed"; - this.toolStripStatusLabelSpeed.Size = new System.Drawing.Size(80, 20); + this.toolStripStatusLabelSpeed.Size = new System.Drawing.Size(65, 17); this.toolStripStatusLabelSpeed.Text = "Скорость: "; // // toolStripStatusLabelWeight // this.toolStripStatusLabelWeight.Name = "toolStripStatusLabelWeight"; - this.toolStripStatusLabelWeight.Size = new System.Drawing.Size(40, 20); + this.toolStripStatusLabelWeight.Size = new System.Drawing.Size(32, 17); this.toolStripStatusLabelWeight.Text = "Вес: "; // // toolStripStatusLabelBodyColor // this.toolStripStatusLabelBodyColor.Name = "toolStripStatusLabelBodyColor"; - this.toolStripStatusLabelBodyColor.Size = new System.Drawing.Size(95, 20); + this.toolStripStatusLabelBodyColor.Size = new System.Drawing.Size(75, 17); this.toolStripStatusLabelBodyColor.Text = "Цвет кузова:"; // // 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(29, 362); + this.buttonCreate.Location = new System.Drawing.Point(25, 272); + this.buttonCreate.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.buttonCreate.Name = "buttonCreate"; - this.buttonCreate.Size = new System.Drawing.Size(94, 29); + this.buttonCreate.Size = new System.Drawing.Size(82, 22); this.buttonCreate.TabIndex = 2; this.buttonCreate.Text = "Создать"; this.buttonCreate.UseVisualStyleBackColor = true; @@ -99,50 +102,58 @@ this.buttonLEFT.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); this.buttonLEFT.BackgroundImage = global::Traktor.Properties.Resources.arrowLeft; this.buttonLEFT.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.buttonLEFT.Location = new System.Drawing.Point(673, 361); + this.buttonLEFT.Location = new System.Drawing.Point(589, 271); + this.buttonLEFT.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.buttonLEFT.Name = "buttonLEFT"; - this.buttonLEFT.Size = new System.Drawing.Size(30, 30); + this.buttonLEFT.Size = new System.Drawing.Size(26, 22); this.buttonLEFT.TabIndex = 3; this.buttonLEFT.UseVisualStyleBackColor = true; + this.buttonLEFT.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::Traktor.Properties.Resources.arrowRight; this.buttonRIGHT.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.buttonRIGHT.Location = new System.Drawing.Point(745, 361); + this.buttonRIGHT.Location = new System.Drawing.Point(652, 271); + this.buttonRIGHT.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.buttonRIGHT.Name = "buttonRIGHT"; - this.buttonRIGHT.Size = new System.Drawing.Size(30, 30); + this.buttonRIGHT.Size = new System.Drawing.Size(26, 22); this.buttonRIGHT.TabIndex = 4; this.buttonRIGHT.UseVisualStyleBackColor = true; + this.buttonRIGHT.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::Traktor.Properties.Resources.arrowDown; this.buttonDOWN.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.buttonDOWN.Location = new System.Drawing.Point(709, 379); + this.buttonDOWN.Location = new System.Drawing.Point(620, 284); + this.buttonDOWN.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.buttonDOWN.Name = "buttonDOWN"; - this.buttonDOWN.Size = new System.Drawing.Size(30, 30); + this.buttonDOWN.Size = new System.Drawing.Size(26, 22); this.buttonDOWN.TabIndex = 5; this.buttonDOWN.UseVisualStyleBackColor = true; + this.buttonDOWN.Click += new System.EventHandler(this.ButtonMove_Click); // // buttonUP // this.buttonUP.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); this.buttonUP.BackgroundImage = global::Traktor.Properties.Resources.arrowUp; this.buttonUP.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.buttonUP.Location = new System.Drawing.Point(709, 343); + this.buttonUP.Location = new System.Drawing.Point(620, 257); + this.buttonUP.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.buttonUP.Name = "buttonUP"; - this.buttonUP.Size = new System.Drawing.Size(30, 30); + this.buttonUP.Size = new System.Drawing.Size(26, 22); this.buttonUP.TabIndex = 6; this.buttonUP.UseVisualStyleBackColor = true; + this.buttonUP.Click += new System.EventHandler(this.ButtonMove_Click); // // DrawField // - this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F); + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(800, 450); + this.ClientSize = new System.Drawing.Size(700, 338); this.Controls.Add(this.statusStrip); this.Controls.Add(this.buttonUP); this.Controls.Add(this.buttonDOWN); @@ -150,8 +161,10 @@ this.Controls.Add(this.buttonLEFT); this.Controls.Add(this.buttonCreate); this.Controls.Add(this.pictureBoxTraktor); + this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.Name = "DrawField"; this.Text = "Трактор"; + this.Click += new System.EventHandler(this.ButtonMove_Click); ((System.ComponentModel.ISupportInitialize)(this.pictureBoxTraktor)).EndInit(); this.statusStrip.ResumeLayout(false); this.statusStrip.PerformLayout(); diff --git a/Traktor/Traktor/DrawField.cs b/Traktor/Traktor/DrawField.cs index 0b29dc8..9785d3d 100644 --- a/Traktor/Traktor/DrawField.cs +++ b/Traktor/Traktor/DrawField.cs @@ -23,7 +23,7 @@ namespace Traktor { Random random = new Random(); _Traktor = new TraktorDraw(); - _Traktor.Init(random.Next(10, 70), random.Next(2500, 7000), Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256))); + _Traktor.Init(random.Next(100, 200), random.Next(2500, 5000), Color.FromArgb(random.Next(0, 256), random.Next(0, 256), random.Next(0, 256))); _Traktor.SetPosition(random.Next(10, 50), random.Next(10, 50), pictureBoxTraktor.Width, pictureBoxTraktor.Height); toolStripStatusLabelSpeed.Text = $": {_Traktor.Traktor.Speed}"; toolStripStatusLabelWeight.Text = $": {_Traktor.Traktor.Weight}"; @@ -31,6 +31,28 @@ namespace Traktor Draw(); } + private void ButtonMove_Click(object sender, EventArgs e) + { + // + string name = ((Button)sender)?.Name ?? string.Empty; + switch (name) + { + case "buttonUP": + _Traktor?.MoveTransport(Direction.Up); + break; + case "buttonDOWN": + _Traktor?.MoveTransport(Direction.Down); + break; + case "buttonLEFT": + _Traktor?.MoveTransport(Direction.Left); + break; + case "buttonRIGHT": + _Traktor?.MoveTransport(Direction.Right); + break; + } + Draw(); + } + private void PictureBoxTraktor_Resize(object sender, EventArgs e) { _Traktor?.ChangeBorders(pictureBoxTraktor.Width, pictureBoxTraktor.Height); diff --git a/Traktor/Traktor/TraktorDraw.cs b/Traktor/Traktor/TraktorDraw.cs index 22b86c4..5291f70 100644 --- a/Traktor/Traktor/TraktorDraw.cs +++ b/Traktor/Traktor/TraktorDraw.cs @@ -22,9 +22,9 @@ namespace Traktor /// Высота окна отрисовки private int? pictureHeight = null; /// Ширина отрисовки сущности - private readonly int entWidth = 0; + private readonly int entWidth = 130; /// Высота отрисовки сущности - private readonly int entHeight = 0; + private readonly int entHeight = 100; public void Init(int speed, float weight, Color bodycolor) { @@ -33,12 +33,18 @@ namespace Traktor } //Установка позиции сущности - public void SetPosition(int x, int y, int widgh, int height) - {//сделать проверку!!!!! + public void SetPosition(int x, int y, int width, int height) + { + if (x < 0 || y < 0 || width < x + entWidth || height < y + entHeight) + { + pictureHeight = null; + pictureWidth = null; + return; + } startPosX = x; startPosY = y; pictureHeight = height; - pictureWidth = widgh; + pictureWidth = width; } //Изменение направления перемещения @@ -57,7 +63,7 @@ namespace Traktor } break; case Direction.Left: - if (startPosX - Traktor.Step > 0) + if (startPosX-10 - Traktor.Step > 0) { startPosX -= Traktor.Step; } @@ -85,9 +91,36 @@ namespace Traktor return; } - Pen pen = new Pen(Color.Blue); + Pen pen_Black_1pxl = new Pen(Color.Black, 1); + Pen pen_Black_2pxl = new Pen(Color.Black, 2); + g.DrawRectangle(pen_Black_1pxl, startPosX, startPosY, 40, 30); + g.DrawRectangle(pen_Black_1pxl, startPosX, startPosY + 30, 100, 35); + g.DrawRectangle(pen_Black_1pxl, startPosX+72, startPosY + 10, 5, 20); + g.DrawEllipse(pen_Black_1pxl, startPosX-15, startPosY+67, 30, 30); + g.DrawEllipse(pen_Black_1pxl, startPosX+85, startPosY + 67, 30, 30); + g.DrawEllipse(pen_Black_1pxl, startPosX + 20, startPosY + 82, 15, 15); + g.DrawEllipse(pen_Black_1pxl, startPosX + 40, startPosY + 82, 15, 15); + g.DrawEllipse(pen_Black_1pxl, startPosX + 60, startPosY + 82, 15, 15); + g.DrawEllipse(pen_Black_1pxl, startPosX + 35, startPosY + 68, 10, 10); + g.DrawEllipse(pen_Black_1pxl, startPosX + 55, startPosY + 68, 10, 10); + g.DrawLine(pen_Black_2pxl, startPosX, startPosY + 67, startPosX + 100, startPosY + 67); + g.DrawLine(pen_Black_2pxl, startPosX, startPosY + 97, startPosX + 100, startPosY + 97); + + Brush br = new SolidBrush(Traktor?.BodyColor ?? Color.Black); + g.FillRectangle(br, startPosX, startPosY, 40, 30); + g.FillRectangle(br, startPosX, startPosY + 30, 100, 35); + + Brush brBlack = new SolidBrush(Color.Black); + g.FillRectangle(brBlack, startPosX + 72, startPosY + 10, 5, 20); + g.FillEllipse(brBlack, startPosX - 15, startPosY + 67, 30, 30); + g.FillEllipse(brBlack, startPosX + 85, startPosY + 67, 30, 30); + g.FillEllipse(brBlack, startPosX + 20, startPosY + 82, 15, 15); + g.FillEllipse(brBlack, startPosX + 40, startPosY + 82, 15, 15); + g.FillEllipse(brBlack, startPosX + 60, startPosY + 82, 15, 15); + g.FillEllipse(brBlack, startPosX + 35, startPosY + 68, 10, 10); + g.FillEllipse(brBlack, startPosX + 55, startPosY + 68, 10, 10); } //Смена границ формы -- 2.25.1 From 471ece01d3599ba3bb9fd548a0fb831a035c47bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D0=BB=D0=B0=D0=B4=D0=B8=D1=81=D0=BB=D0=B0=D0=B2=20?= =?UTF-8?q?=D0=97=D0=B0=D1=85=D0=B0=D1=80=D0=BE=D0=B2?= Date: Mon, 19 Sep 2022 10:18:10 +0400 Subject: [PATCH 5/5] =?UTF-8?q?=D0=94=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Traktor/Traktor/DrawField.Designer.cs | 46 +++++++++++---------------- 1 file changed, 19 insertions(+), 27 deletions(-) diff --git a/Traktor/Traktor/DrawField.Designer.cs b/Traktor/Traktor/DrawField.Designer.cs index 7b6efa5..0455f1e 100644 --- a/Traktor/Traktor/DrawField.Designer.cs +++ b/Traktor/Traktor/DrawField.Designer.cs @@ -46,9 +46,8 @@ // this.pictureBoxTraktor.Dock = System.Windows.Forms.DockStyle.Fill; this.pictureBoxTraktor.Location = new System.Drawing.Point(0, 0); - this.pictureBoxTraktor.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); this.pictureBoxTraktor.Name = "pictureBoxTraktor"; - this.pictureBoxTraktor.Size = new System.Drawing.Size(700, 338); + this.pictureBoxTraktor.Size = new System.Drawing.Size(800, 425); this.pictureBoxTraktor.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; this.pictureBoxTraktor.TabIndex = 0; this.pictureBoxTraktor.TabStop = false; @@ -61,37 +60,35 @@ this.toolStripStatusLabelSpeed, this.toolStripStatusLabelWeight, this.toolStripStatusLabelBodyColor}); - this.statusStrip.Location = new System.Drawing.Point(0, 316); + this.statusStrip.Location = new System.Drawing.Point(0, 425); this.statusStrip.Name = "statusStrip"; - this.statusStrip.Padding = new System.Windows.Forms.Padding(1, 0, 12, 0); - this.statusStrip.Size = new System.Drawing.Size(700, 22); + this.statusStrip.Size = new System.Drawing.Size(800, 26); this.statusStrip.TabIndex = 1; // // toolStripStatusLabelSpeed // this.toolStripStatusLabelSpeed.Name = "toolStripStatusLabelSpeed"; - this.toolStripStatusLabelSpeed.Size = new System.Drawing.Size(65, 17); + this.toolStripStatusLabelSpeed.Size = new System.Drawing.Size(80, 20); this.toolStripStatusLabelSpeed.Text = "Скорость: "; // // toolStripStatusLabelWeight // this.toolStripStatusLabelWeight.Name = "toolStripStatusLabelWeight"; - this.toolStripStatusLabelWeight.Size = new System.Drawing.Size(32, 17); + this.toolStripStatusLabelWeight.Size = new System.Drawing.Size(40, 20); this.toolStripStatusLabelWeight.Text = "Вес: "; // // toolStripStatusLabelBodyColor // this.toolStripStatusLabelBodyColor.Name = "toolStripStatusLabelBodyColor"; - this.toolStripStatusLabelBodyColor.Size = new System.Drawing.Size(75, 17); + this.toolStripStatusLabelBodyColor.Size = new System.Drawing.Size(95, 20); this.toolStripStatusLabelBodyColor.Text = "Цвет кузова:"; // // 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(25, 272); - this.buttonCreate.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.buttonCreate.Location = new System.Drawing.Point(29, 363); this.buttonCreate.Name = "buttonCreate"; - this.buttonCreate.Size = new System.Drawing.Size(82, 22); + this.buttonCreate.Size = new System.Drawing.Size(94, 29); this.buttonCreate.TabIndex = 2; this.buttonCreate.Text = "Создать"; this.buttonCreate.UseVisualStyleBackColor = true; @@ -102,10 +99,9 @@ this.buttonLEFT.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); this.buttonLEFT.BackgroundImage = global::Traktor.Properties.Resources.arrowLeft; this.buttonLEFT.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.buttonLEFT.Location = new System.Drawing.Point(589, 271); - this.buttonLEFT.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.buttonLEFT.Location = new System.Drawing.Point(673, 361); this.buttonLEFT.Name = "buttonLEFT"; - this.buttonLEFT.Size = new System.Drawing.Size(26, 22); + this.buttonLEFT.Size = new System.Drawing.Size(30, 29); this.buttonLEFT.TabIndex = 3; this.buttonLEFT.UseVisualStyleBackColor = true; this.buttonLEFT.Click += new System.EventHandler(this.ButtonMove_Click); @@ -115,10 +111,9 @@ this.buttonRIGHT.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); this.buttonRIGHT.BackgroundImage = global::Traktor.Properties.Resources.arrowRight; this.buttonRIGHT.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.buttonRIGHT.Location = new System.Drawing.Point(652, 271); - this.buttonRIGHT.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.buttonRIGHT.Location = new System.Drawing.Point(745, 361); this.buttonRIGHT.Name = "buttonRIGHT"; - this.buttonRIGHT.Size = new System.Drawing.Size(26, 22); + this.buttonRIGHT.Size = new System.Drawing.Size(30, 29); this.buttonRIGHT.TabIndex = 4; this.buttonRIGHT.UseVisualStyleBackColor = true; this.buttonRIGHT.Click += new System.EventHandler(this.ButtonMove_Click); @@ -128,10 +123,9 @@ this.buttonDOWN.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); this.buttonDOWN.BackgroundImage = global::Traktor.Properties.Resources.arrowDown; this.buttonDOWN.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.buttonDOWN.Location = new System.Drawing.Point(620, 284); - this.buttonDOWN.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.buttonDOWN.Location = new System.Drawing.Point(709, 379); this.buttonDOWN.Name = "buttonDOWN"; - this.buttonDOWN.Size = new System.Drawing.Size(26, 22); + this.buttonDOWN.Size = new System.Drawing.Size(30, 29); this.buttonDOWN.TabIndex = 5; this.buttonDOWN.UseVisualStyleBackColor = true; this.buttonDOWN.Click += new System.EventHandler(this.ButtonMove_Click); @@ -141,27 +135,25 @@ this.buttonUP.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); this.buttonUP.BackgroundImage = global::Traktor.Properties.Resources.arrowUp; this.buttonUP.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - this.buttonUP.Location = new System.Drawing.Point(620, 257); - this.buttonUP.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.buttonUP.Location = new System.Drawing.Point(709, 343); this.buttonUP.Name = "buttonUP"; - this.buttonUP.Size = new System.Drawing.Size(26, 22); + this.buttonUP.Size = new System.Drawing.Size(30, 29); this.buttonUP.TabIndex = 6; this.buttonUP.UseVisualStyleBackColor = true; this.buttonUP.Click += new System.EventHandler(this.ButtonMove_Click); // // DrawField // - this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F); + this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(700, 338); - this.Controls.Add(this.statusStrip); + this.ClientSize = new System.Drawing.Size(800, 451); this.Controls.Add(this.buttonUP); this.Controls.Add(this.buttonDOWN); this.Controls.Add(this.buttonRIGHT); this.Controls.Add(this.buttonLEFT); this.Controls.Add(this.buttonCreate); this.Controls.Add(this.pictureBoxTraktor); - this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); + this.Controls.Add(this.statusStrip); this.Name = "DrawField"; this.Text = "Трактор"; this.Click += new System.EventHandler(this.ButtonMove_Click); -- 2.25.1