Compare commits

..

1 Commits

Author SHA1 Message Date
2400766509 Lab_1 2023-12-08 07:23:13 +04:00
17 changed files with 939 additions and 394 deletions

View File

@ -1,25 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.8.34525.116
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CarRepairShopView", "CarRepairShopView\CarRepairShopView.csproj", "{5CC03CDD-1895-4F1F-858F-52713F693403}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{5CC03CDD-1895-4F1F-858F-52713F693403}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5CC03CDD-1895-4F1F-858F-52713F693403}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5CC03CDD-1895-4F1F-858F-52713F693403}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5CC03CDD-1895-4F1F-858F-52713F693403}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {F3F1A98D-8A28-4388-85A4-17B0C31F0B66}
EndGlobalSection
EndGlobal

View File

@ -1,11 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net6.0-windows</TargetFramework>
<Nullable>enable</Nullable>
<UseWindowsForms>true</UseWindowsForms>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
</Project>

View File

@ -1,39 +0,0 @@
namespace CarRepairShopView
{
partial class Form1
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
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
}
}

View File

@ -1,10 +0,0 @@
namespace CarRepairShopView
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
}

View File

@ -1,120 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@ -1,17 +0,0 @@
namespace CarRepairShopView
{
internal static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[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 Form1());
}
}
}

View File

@ -0,0 +1,29 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DumpTruck
{
internal enum DirectionType
{
/// <summary>
/// Вверх
/// </summary>
Up = 1,
/// <summary>
/// Вниз
/// </summary>
Down = 2,
/// <summary>
/// Влево
/// </summary>
Left = 3,
/// <summary>
/// Вправо
/// </summary>
Right = 4
}
}

View File

@ -0,0 +1,144 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DumpTruck
{
internal class DrawningDumpTruck
{
/// <summary>
/// Класс-сущность
/// </summary>
public DumpTruck? DumpTruck { get; private set; }
/// <summary>
/// Ширина окна
/// </summary>
private int _pictureWidth;
/// <summary>
/// Высота окна
/// </summary>
private int _pictureHeight;
/// <summary>
/// Левая координата прорисовки автомобиля
/// </summary>
private int _startPosX;
/// <summary>
/// Верхняя кооридната прорисовки автомобиля
/// </summary>
private int _startPosY;
/// <summary>
/// Ширина прорисовки автомобиля
/// </summary>
// private readonly int _DumpTruckWidth = 200;
/// <summary>
/// Высота прорисовки автомобиля
/// </summary>
// private readonly int _DumpTruckHeight = 150;
/// <summary>
/// Инициализация свойств
/// </summary>
/// <param name="speed">Скорость</param>
/// <param name="weight">Вес</param>
/// <param name="bodyColor">Цвет кузова</param>
/// <param name="additionalColor">Дополнительный цвет</param>
/// <param name="width">Ширина картинки</param>
/// <param name="height">Высота картинки</param>
/// <returns>true - объект создан, false - проверка не пройдена,
public bool Init(int speed, double weight, Color bodyColor, Color
additionalColor, bool body, bool trailer, int width, int height)
{
_pictureWidth = width;
_pictureHeight = height;
DumpTruck = new DumpTruck();
DumpTruck.Init(speed, weight, bodyColor, additionalColor,
body, trailer);
return true;
}
/// <summary>
/// Установка позиции
/// </summary>
/// <param name="x">Координата X</param>
/// <param name="y">Координата Y</param>
public void SetPosition(int x, int y)
{
// TODO: Изменение x, y
_startPosX = x;
_startPosY = y;
}
/// <summary>
/// Изменение направления перемещения
/// </summary>
/// <param name="direction">Направление</param>
public void MoveTransport(DirectionType direction)
{
if (DumpTruck == null)
{
return;
}
switch (direction)
{
//влево
case DirectionType.Left:
if (_startPosX - DumpTruck.Step > 0)
{
_startPosX -= (int)DumpTruck.Step;
}
break;
//вверх
case DirectionType.Up:
if (_startPosY - DumpTruck.Step > 0)
{
_startPosY -= (int)DumpTruck.Step;
}
break;
// вправо
case DirectionType.Right:
if (_startPosX + _pictureWidth + DumpTruck.Step > FormDumpTruck.ActiveForm.ClientSize.Width)
{
_startPosX += (int)DumpTruck.Step;
}
break;
//вниз
case DirectionType.Down:
if (_startPosX + _pictureHeight + DumpTruck.Step > FormDumpTruck.ActiveForm.ClientSize.Height)
{
_startPosY += (int)DumpTruck.Step;
}
break;
}
}
public void DrawTransport(Graphics g)
{
if (DumpTruck == null)
{
return;
}
Pen pen = new(Color.Black);
Brush additionalBrush = new SolidBrush(DumpTruck.AdditionalColor);
//грани
g.DrawRectangle(pen, _startPosX + 80, _startPosY, 30, 40);
g.DrawRectangle(pen, _startPosX, _startPosY + 40, 110, 20);
//кузов
Brush br = new SolidBrush(DumpTruck.BodyColor);
g.FillRectangle(br, _startPosX + 81, _startPosY + 1, 29, 40);
Brush br1 = new SolidBrush(DumpTruck.AdditionalColor);
g.FillRectangle(br1, _startPosX + 1, _startPosY + 41, 109, 19);
Brush wheels = new SolidBrush(Color.Black);
g.FillEllipse(wheels, _startPosX, _startPosY + 63, 25, 25);
g.FillEllipse(wheels, _startPosX + 25, _startPosY + 63, 25, 25);
g.FillEllipse(wheels, _startPosX + 85, _startPosY + 63, 25, 25);
if (DumpTruck.Trailer)
{
Brush trailer = new SolidBrush(Color.Black);
g.FillRectangle(trailer, _startPosX, _startPosY, 5, 38);
g.FillRectangle(trailer, _startPosX + 5, _startPosY + 33, 70, 5);
g.FillRectangle(trailer, _startPosX + 70, _startPosY, 5, 38);
}
}
}
}

View File

@ -0,0 +1,58 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DumpTruck
{
internal class DumpTruck
{
/// <summary>
/// Скорость
/// </summary>
public int Speed { get; private set; }
/// <summary>
/// Вес
/// </summary>
public double Weight { get; private set; }
/// <summary>
/// Основной цвет
/// </summary>
public Color BodyColor { get; private set; }
/// <summary>
/// Дополнительный цвет (для опциональных элементов)
/// </summary>
public Color AdditionalColor { get; private set; }
/// <summary>
/// Признак (опция) наличия обвеса
/// </summary>
public bool Body { get; private set; }
/// <summary>
/// Признак (опция) наличия антикрыла
/// </summary>
public bool Trailer { get; private set; }
/// <summary>
/// Шаг перемещения автомобиля
/// </summary>
public double Step => (double)Speed * 100 / Weight;
/// <summary>
/// Инициализация полей объекта-класса спортивного автомобиля
/// </summary>
/// <param name="speed">Скорость</param>
/// <param name="weight">Вес автомобиля</param>
/// <param name="bodyColor">Основной цвет</param>
/// <param name="additionalColor">Дополнительный цвет</param>
public void Init(int speed, double weight, Color bodyColor, Color
additionalColor, bool body, bool trailer)
{
Speed = speed;
Weight = weight;
BodyColor = bodyColor;
AdditionalColor = additionalColor;
Body = body;
Trailer = trailer;
}
}
}

View File

@ -1,39 +0,0 @@
namespace DumpTruck
{
partial class Form1
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
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
}
}

View File

@ -1,10 +0,0 @@
namespace DumpTruck
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
}

View File

@ -1,120 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@ -0,0 +1,138 @@
namespace DumpTruck
{
partial class FormDumpTruck
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormDumpTruck));
this.pictureBoxDumpTruck = new System.Windows.Forms.PictureBox();
this.Button_Create = new System.Windows.Forms.Button();
this.buttonUp = 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();
((System.ComponentModel.ISupportInitialize)(this.pictureBoxDumpTruck)).BeginInit();
this.SuspendLayout();
//
// pictureBoxDumpTruck
//
this.pictureBoxDumpTruck.Dock = System.Windows.Forms.DockStyle.Fill;
this.pictureBoxDumpTruck.Location = new System.Drawing.Point(0, 0);
this.pictureBoxDumpTruck.Name = "pictureBoxDumpTruck";
this.pictureBoxDumpTruck.Size = new System.Drawing.Size(800, 450);
this.pictureBoxDumpTruck.TabIndex = 0;
this.pictureBoxDumpTruck.TabStop = false;
this.pictureBoxDumpTruck.Click += new System.EventHandler(this.ButtonMove_Click);
//
// Button_Create
//
this.Button_Create.Location = new System.Drawing.Point(30, 407);
this.Button_Create.Name = "Button_Create";
this.Button_Create.Size = new System.Drawing.Size(75, 23);
this.Button_Create.TabIndex = 1;
this.Button_Create.Text = "Создать";
this.Button_Create.UseVisualStyleBackColor = true;
this.Button_Create.Click += new System.EventHandler(this.Button_Create_Click);
//
// buttonUp
//
this.buttonUp.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("buttonUp.BackgroundImage")));
this.buttonUp.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.buttonUp.Location = new System.Drawing.Point(734, 375);
this.buttonUp.Name = "buttonUp";
this.buttonUp.Size = new System.Drawing.Size(24, 26);
this.buttonUp.TabIndex = 2;
this.buttonUp.Text = "1";
this.buttonUp.UseVisualStyleBackColor = true;
this.buttonUp.Click += new System.EventHandler(this.ButtonMove_Click);
//
// buttonLeft
//
this.buttonLeft.BackColor = System.Drawing.SystemColors.ControlDark;
this.buttonLeft.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("buttonLeft.BackgroundImage")));
this.buttonLeft.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.buttonLeft.Location = new System.Drawing.Point(704, 407);
this.buttonLeft.Name = "buttonLeft";
this.buttonLeft.Size = new System.Drawing.Size(24, 26);
this.buttonLeft.TabIndex = 3;
this.buttonLeft.Text = "3";
this.buttonLeft.UseVisualStyleBackColor = false;
this.buttonLeft.Click += new System.EventHandler(this.ButtonMove_Click);
//
// buttonRight
//
this.buttonRight.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("buttonRight.BackgroundImage")));
this.buttonRight.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.buttonRight.Location = new System.Drawing.Point(764, 407);
this.buttonRight.Name = "buttonRight";
this.buttonRight.Size = new System.Drawing.Size(24, 26);
this.buttonRight.TabIndex = 4;
this.buttonRight.Text = "4";
this.buttonRight.UseVisualStyleBackColor = true;
this.buttonRight.Click += new System.EventHandler(this.ButtonMove_Click);
//
// buttonDown
//
this.buttonDown.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("buttonDown.BackgroundImage")));
this.buttonDown.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;
this.buttonDown.Location = new System.Drawing.Point(734, 407);
this.buttonDown.Name = "buttonDown";
this.buttonDown.Size = new System.Drawing.Size(24, 26);
this.buttonDown.TabIndex = 5;
this.buttonDown.Text = "2";
this.buttonDown.UseVisualStyleBackColor = true;
this.buttonDown.Click += new System.EventHandler(this.ButtonMove_Click);
//
// FormDumpTruck
//
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.buttonRight);
this.Controls.Add(this.buttonLeft);
this.Controls.Add(this.buttonUp);
this.Controls.Add(this.Button_Create);
this.Controls.Add(this.pictureBoxDumpTruck);
this.Name = "FormDumpTruck";
this.Text = "FormDumpTruck";
this.Load += new System.EventHandler(this.FormDumpTruck_Load);
((System.ComponentModel.ISupportInitialize)(this.pictureBoxDumpTruck)).EndInit();
this.ResumeLayout(false);
}
#endregion
private PictureBox pictureBoxDumpTruck;
private Button Button_Create;
private Button buttonUp;
private Button buttonLeft;
private Button buttonRight;
private Button buttonDown;
}
}

View File

@ -0,0 +1,78 @@
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 DumpTruck
{
public partial class FormDumpTruck : Form
{
private DrawningDumpTruck? _drawningDumpTruck;
public FormDumpTruck()
{
InitializeComponent();
}
private void Draw()
{
if (_drawningDumpTruck == null)
{
return;
}
Bitmap bmp = new(pictureBoxDumpTruck.Width,
pictureBoxDumpTruck.Height);
Graphics gr = Graphics.FromImage(bmp);
_drawningDumpTruck.DrawTransport(gr);
pictureBoxDumpTruck.Image = bmp;
}
/// <summary>
/// Обработка нажатия кнопки "Создать"
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Button_Create_Click(object sender, EventArgs e)
{
Random random = new();
_drawningDumpTruck = new DrawningDumpTruck();
_drawningDumpTruck.Init(130, 1000,
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)), true,
Convert.ToBoolean(random.Next(0, 2)), pictureBoxDumpTruck.Width, pictureBoxDumpTruck.Height);
_drawningDumpTruck.SetPosition(random.Next(30, 100), random.Next(30, 100));
Draw();
}
private void ButtonMove_Click(object sender, EventArgs e)
{
if (_drawningDumpTruck == null)
{
return;
}
string name = ((Button)sender)?.Name ?? string.Empty;
switch (name)
{
case "buttonUp":
_drawningDumpTruck.MoveTransport(DirectionType.Up);
break;
case "buttonDown":
_drawningDumpTruck.MoveTransport(DirectionType.Down);
break;
case "buttonLeft":
_drawningDumpTruck.MoveTransport(DirectionType.Left);
break;
case "buttonRight":
_drawningDumpTruck.MoveTransport(DirectionType.Right);
break;
}
Draw();
}
private void FormDumpTruck_Load(object sender, EventArgs e)
{
}
}
}

View File

@ -0,0 +1,491 @@
<root>
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="buttonUp.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
AElFTkSuQmCC
</value>
</data>
<data name="buttonLeft.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAA4QAAAOEBAMAAAALYOIIAAAABGdBTUEAALGPC/xhBQAAABJQTFRF5ubm
AQEB////AAAAa2trubm55kNtzgAAAAlwSFlzAAAOvwAADr8BOAVTJAAAFy1JREFUeNrtnV2S6ka2RkFB
v7ese98VCmkA6hwBlzsB4tjzn0qTPxLC5lBCKH++qsVDVy932yf5VmxD1lbmPnT+1R78C5RD4pBH4pBH
4pBH4pBH4pBH4pBH4pBH4pBH4pBH4pBH4pBH4pBH4pBH4pDH6VWFvw6qInHII3HII3HII3HII3HII3HI
I3HII3HII3HII3HII3HII3HII3HII3EIY/hJ700WiUMeiUMeiUMeiUMeiUMeiUMeiUMeiUMeiUMeiUMe
iUMeiUMeiUMeiUMepxe9N3UkDnkkDnkkDnkkDnkkDnkkDnkkDnkkDnkkDnkkDnkkDnkkDnkkDnkkDmEM
P+m9ySJxyCNxyCNxyCNxyCNxyCNxyCNxyCNxyCNxyCNxyCNxyCNxyCNxyCNxyOP0ovemjsQhj8Qhj8Qh
j8Qhj8Qhj8Qhj8Qhj8Qhj8Qhj8Qhj8Qhj8Qhj8Qhj8QhjOEnvTdZJA55JA55JA55JA55JA55JA55JA55
JA55JA55JA55JA55JA55JA55JA55nF703tSROOSROOSROOSROOSROOSROOSROOSROOSROOSROOSROOSR
OOSROOSROIQx/KT3JovEIY/EIY/EIY/EIY/EIY/EIY/EIY/EIY/EIY/EIY/EIY/EIY/EIY/EIY/Ti96b
OhKHPBKHPBKHPBKHPBKHPBKHPBKHPBKHPBKHPBKHPBKHPBKHPBKHPBKHMIaf9N5kkTjk8We+//9DoThe
/0ChNvYGhdo4NCjUxrZuGhRK48WMKFTG7liPNQqFsTqZsUahMFZD3dQoVMb2YmoUKmN3bUYUKqP9IKQK
lbHqa9N8R4Xh9QO6a63zZ26v5t+0fCXx7D4IncI/UCiI3dG4rzJUoSpWJ/9llCpUxWrwX2SoQlkMe3qq
UBa7q/8gpApV0e7pR6pQGKu+MQ1VqIxD3TSGKhRG26c3fBYKY3WtbwapQmHsb8oMVSiM7oOQKlTG257e
mO9dheHnN+0X3vf0rhRvL1q+WugfWEOhLro+PQqVcWjM1KBAoSR2Z7unR6Eu2q8yBoXC2J38nh6Fsug+
CFGojNOeHoWq6D8IUaiLp8kgCkVx+iBEoSraB9ZQKI32kUMUKqM9T/+DFIbXN+qfVX5Pv2wQGrr2Uhj6
9K8U0rUvG8OeniqUxWszGkMVCuO8p6cKRXEw056eKtTEdvrlNlWoivY8vaEKhdGdp6cKhbGf77SgCjUx
nKenCmWxC+fpqUJVnJ+9pwpF8f7sPVWoifY8fV3/zCoMP9X7Z204RmieNghrWr7l4+snLVBYPrp771Eo
jL15/aQFCkvHcO89CnUx3HuPQlWc771HoSjOe3oUimI1TJZQKIpDs8IZCgvG9tyMKFR+D+4YIQqF34N/
9h6Fuu+h8scIUaj7HtrL7+60qDnZpPGkxfU+AMa8bBAauvZF4rynf18hXfsynrTolwNgqELBRbd1U29V
SBWWgLevMmNNFXa6CrtrPY5U4QLVFu329FThEsUWXQ12LC9VuESxRfs9PVW4RK1FhzvyqMIlai06nKen
CpcotejpPD1VuESlRbfTLYdU4RKVFn1uRmOoQmGF83W/VGHA8FOlQ+b29MHG+gZhTcu3nCctfjcABoUq
i/Z7ehQuUWvRvx8Ag0KNRU97ehQuUWrRYSwvCh9QadHzeXoULlFp0ZcXA2BQqLDoYz0aFB6EFfZmbFD4
BGUWbc/To/AZyiz6iwEwKCx+0e48PQqfocii3cUyKHyKEqucztOj8BlOr6JbYlOffnOD0NC1z4znrwfA
GLr2Ja/yaD590oIqzIt9M+3pqcIXWPAq7cUyhio8CCu0e3pDFR50FV7XDYChCotdpT9PTxV+jaWucvUA
GKqw0GW1qwfAUIVlLmsa4UMVrsAil2XP09dUobDC+wgfqnAFFrisapgvlqEKV2CBy7JfZajCNRh+ltcS
s3v6vRqENS3fDOg+CFG4Aot90qI2NQpXYaHLai+7PmmBwuTYnpsahcoK57G8KFyBJS7rvqdH4QoscFnV
0OztDIVpcWpPoFBV4bYBMCgsZ1mVO0aIwvVY2rIqf54eheuxtGUN/jw9Ctdjacu67HMtCQqz4XSeHoXr
cXoV0QO77+lD3vQL12MZT1oMtamTKKRrHwkXe3qqUFKh3dOPVOFWLGAd9oPQjFThVsy/jqr/aAAMVZh/
HX4sL1W4GbOvoz1/NgCGKsy+juuHA2Cowtzr6He+04IqTI3DxwNgqMLM67iYxlCFygp3GABDFWZdh/3l
tqEKhRW6O/Kowu0YfuZrevk+fQg4UoOwpuUbEUOfHoWyCu15eoNCZYV9EmcojIduPj0KlRXOe3oUiiq8
7+lRqKnwtN8AGBRmWYfd06NQWWFrjxGiUFnhuRlRKK3Qn6dHoazCyo/wQaGswvk8PQpVFc7P3qPwc4Xh
lbjLdd17AIyha5/2Dz4lftLC0LXfGe2e3lCFwgpbe90vVais0H2Vyauw+0avDAr9vfdZFf7P/3+jV3qF
YU+fU+H3eqVWOJ+nD39+HoX1d3qlVthGGgDzgzGxwvmyWDSIKow3AAaFaRRW/XyxDBo0FdpjhOS+N6ZU
2J2TXUuCwijo2xPkvjcm7HL5PX2WBuG3xnRPWoQ+PbnvjckUTnt6ct8bUymMPQAGhbEV2nvvyb0WVmjv
vSf3SJhGoT1PT+6RMInC7hJ9AEyNwpgK/Xl6co+ECRRWJ4LWVjidpyf3SJigCi/+oVFyj4TxFU7P3pN7
JIyucH72ntwjYWyFfZ3lWpKfhCHuWP3C+1hemnyxMK5C++w9QUfGqArdVxmCjowxFfo9PUFHxogKq5QD
YAwKIygMe3qCjowRFZ5TDoAxKNxf4bSnJ+jIGE2hn09P0LoKWz+fnqB1FV4MQSfCSArteXqCToNxFLpn
7wk6DUZRONiLZQg6EUZR6J+9J+g0GONhmXOTfgBMTct3R4VHnrRIivsr7LMMgKlRuJvCtuFJi7S4u8Jz
U5NsUtxb4TXTAJgahTsptHt6kk2L+yocsg2AqVG4i0J/np5k0+KuCjMOgKlRuIPC6Y48kk2L+ymcz9OT
bFrcTWHl2xMkq6twvu6XZBPjXgrDvfckm0FheH3aL7R7+vCPpI2XFndS6O69J9ksuI/CNvsAGIPCzxT6
PT3JZsFdFIY9PclmwR0Uzvfek2wW/FzhPJaXZPPg5wrbsyHKnPixwvsIH5LNg58qtF9liDIrfqiwYgCM
usLbnr4hyrz4mUIGwBhxhZU/T0+UWfEjheE8PVFmxU+etJj69PTtsuIHCuc+PVFmxe0K7316osyKmxUu
xvISZVbcqtDOp2cATBG4VaHb0xNlCbhRYffLMACmENymMOzpibIE3HanRc8AGKOtcAjn6YmyBNyk8My1
JAXhFoVXBsCUhBsU9pNBoiwC31c4zBfLEGUR+L7CiyG7ojC4Wd0vdF9laNSVhG8qtPPpya4sfE9h5fv0
ZFcSvqdw8Pfek11J+J7CCwNgjLZCN5+e7IQV9obsCsQ3FA7zWF6yKwnfUMgAmDJxvUJ7CI3sCsTVCt0D
a2RXIK5V6M/Tk12BuFJh6x9XI7sCcZ3CLpynJ7sCcZXC+Tw92RWIq/qF854+/E006krCNQoHBsCUjGsU
3vf0ZFcgrlDIABh1hXZPT1gF45cK3b33hFUwfjkAxp2nJ6yC8SuF/jw9YRWMrxVO5+kJq2B8fS3JdJ6e
sArGLwbAGMKqlRUyAEYCXw2AOc/XVBJWwfjiWhJ7jJCwysffKqzceXrCKh+DuScDYJy/8P+iM1cw/lah
79MTVvn4G4VTn56wysfnCuc9PWGVj08VMgBGCZ8qvO/pCat8fKbQnqcnHRl8orC61gyAEcJ/KnTn6UlH
B/+hsHLn6UlHB/+hsHWPHJKODv5dYThPTzo6+HeFJ+60MNoKp/P0pKODjwrdvfekI6Zw2S+8D3WlFaeD
DwNg7mN5SUcHl09a9A0DYARx8aSFO0ZIOnJ4V2jn05OOIN4HwFwZACOu8DSOxKGt8F/+tljSkcPFJC3n
kHTkcDHPzv2Cm3TkcLEv7M41T+AL4vK3MwNbe0V8+AXbYPgdqR4+ngk9Tf876ejg48mmuVVBOjr49679
xf9PtOJ08O8Kh7qpSUdaYdjhk44O/uMhxNsOn3S0FR7cYCbS0cEnZyqGC09zK+GzYzH9/L2VsATw2eG0
+YwvYSngM4V2h086MvhU4aG9kI4MPldYDaQjg88V3r7SjKQjrrA7MmdLXaG/M4GwysffK2ztXZaEVT6+
uMySIxaKLd+HK2UXO3zCKhhfXex83+ETVsH48ob89kxY5ePrIQcDYZWPr0eN2B2+/UAkrILxq4E/tx2+
YXJa0fjl5LQLCtUVtjeHhFUyfj2C0t4QTFgF44pBsD2DYIvGNeOYr/4MN2GViavm2p+nX62SXYG4SuE8
2J7sCsRVCrt+RGGxGFQ96Rc+4LFxf2f4m2jUlYQrFXZnQxNfXOFth4/CMnGtQrfDJ7sScbXC21caHqUp
Etcr7K7z41BkVxK+odBeLdSQnbTCcA6f7MrCdxR2vb8tkeyKwrcU+nP4ZFcWvqfQncMnu7LwPYWH4UJ2
4gr9NfpkVxK+qdA9pU92ReG7Cg+2h092JeG6fuEDzj18+nZF4AaFQ9gdEmUZuEHhvMMnyiJwi8LuWI9k
p63Q3aVPdoXgJoVty79IjbhCv8MnyiJwm0K/wyfKInCjQneXPlEWgVsVunP4YegoUWbFzQrtOfzwcUiU
WXGzwtvH4TR1lCiz4naFh+5o/O9aiTIrfqDw0P1CYa2t8ODO4RNlZgwy1vcLl2in5TX07TLjRwrDDp8o
s+JnCh92+CSbBz9UeL9Lnyhz4acK55v2iDIXfqrw9nF4+240EqWwwtvH4fRgKclmwc8VHuw5fKKUVmh3
+ESprbAafNeJZLPgLgq700iU4gq7K1GqK7Tz8Ek2D+6lsCXKXLiXQvuUPslmwY/6hUus7Dl894+kjZcW
d1Po5uGTrLTCQxsckmxa3FHhtMMn2bS4o8JD2OGTbFrcVaGflkeyaXFfhW6HT7JpcWeFLcmqK7zt8Ek2
Me6t0E3LI1mjrNDOwydZI62wvZBsUtxf4TweiKDTYASFtx2+mztK0GkwgsK2u9bWIUGnwZD+5/3CB3Tz
8MOfQFcvMsZROJCsusL7TXsEHR0jKeyOk0GCjo2xFHa/ph0+QUfGaArnHT5BR8ZoCucdPkFHxngKu5P/
VylBR8aICt05fIKOjhEVunP4BB0dYyqshqZhtEx0jKnwUNkdPkFHxqgKD9W1ma+lIfdIGFehO4dvCLoW
Vjg/pU/u0TBGv/ABpx0+Tb5YGF2hnYdP0NoK7Tz8hqDjYXyFbevn4ZN7JEygsPLz8Mk9EiZQ6Hf45B4L
Uyi05/AZLRMNkyi87fBrco+FaRQe2nraiZL73phIYTU0KIyEiRTa8UDkXksrPPib9sh9f0ym8OCf0if3
3TGhwoHc1RXac/jkvj+GfKP1Cx+ew7g2NPn2x5QK3U175bx/95/fAJMqXPTwsyv0/xr6DphW4XTTXjEK
zTfAtArvO/ysCm//fTSPcQhjYoXzDj+3wm/0tSa1wmmHn/V91/dv5OHf68qYXKGblmeyK6QKP0F7l37e
9938719/heX8FV7CmEGhO4efV+Ef3Td65VBoz+HnVfjvtO83Cab9g+20vLxViMJP0T6l73emVKGoQvuU
vv9WTBWqKgw37VGFe2D4maJfuMQ27PCzNNtu30hTv9+ImOsPnubho1BW4cHt8EcUKivsjgaF4gpvO3yD
Qm2FdoePQmmF93P4KFRVePtKM6JQW6Hb4aNQWqHt4TcolFboz+GjUFhhd/J36aNQVmHr5uGjUFmhe0of
hdIK7VP6DQo/UBheOZte9in9EDD9ws2Ydx3TTXt07WUV2h0+Vait0M3DpwqlFbZh0hpVuBmzryPs8KnC
zZh9He4cPlX4AeZfh5+HTxVuxgLW4abl1VThVixgHfYcflNThVuxhHVUp/lGE6pQU+Ghu1KF27GMdUxP
6VOFG7CMdUxP6VOFG7CQdVQnqvB9DD8L6YFNv/AOedMvXIGlLau7OIcoXI/FLautqUJxhQ87fBSuwPKW
VZ3mrx4oXIMFLqu7ovAdLHFZdh4+CjtlhfcdPgpXYJHLuu3wG/eBiMIVWOayqqNBobbCgzuHj8JVWOoq
7Tl8FK7CYlfppuWhcAWWu8qeKlRXaO/SR+EKnF4FtsTac9ha0C9cgyUuy87DD9HvrZCufarnMHoTSSFV
mOw5jD/DhxdV+DUWuix3lz5VuApLXaXf4VOFK7DYVfp5+FTh11juKvuRKlyFBa/SPqVPFX6NJa/yMv9q
hSp8gSWvcjqHTxW+xKJX2U8OqcIXWPYqjzVVeNBW6M/hU4UvsfBVupv2qMLf4BRS+OuFop+HT7/wGaos
uq9RKK7QzcNH4TPUWfQFhc9RZ9H3HT4KH1Bo0fMOH4UPqLToI1X4DKUW/cvv8FH4gFqLvlCFB22F07Q8
FC5Ra9HVyQ2tROESxRbtrxZC4RLVFt2ebw5RuES1Rdun9BsULlFu0dVth4/CJU4voQ7ZMcigX/iAUoue
dvh07Zcotehph08VLlFr0WGHTxUuUWvR9i59qlBaodvhN1ThA6ot2u3wqcIlqi3a7vDrmipcoNyiq77+
QCFVWAJWx3rSQhWKLtrOw6cKO2WFh/ZCFS5QcdHV0FCFnbTC+SsNVSj8Hvxd+j+9CsNPzYaZ2+HT8lV+
D66Hj0Lp92Dv0m9GFCq/h+o4/7obhaLYnSdLKFTFcNMeCnXfQzWED0MUyuK0w0ehMF5RKP4euu6MQnWF
LQrVFdpz+CgUx/kcPgplcXpKH4W6ON+l/+MUhpd8/2zu4dO1l8XqtPpRGrr2hWLY4VOFynimCtXfUksV
yr+l2w5/pAq18XjbNVCF2njf4VOFqnheMVqGKiwah9o0VKE29uNIFYqjO4dPFSpje3aiqEJd9PPwqUJl
dPPwOdmkjSdjaPmK49WMKNTG9tKgUByH5sVoGRRKYF+PKBTH6ziiUBz9Dh+Futj5HT4KhbHq3eXBKBTG
6s+aKhRHNw8fhdI4n8NHoSrO5/BRKIvzU/oolMXpKX1ONgnj2f+mja69LoYdPl17XbQ9/IYqlMbqz5Eq
FEd7l/68P6QKJfG2w29qqlAZFzt8qlAU7zt8qlAV5x0+VSiL7YUqVMeWKpTHvnYXsVOFwng0s0KqUBR/
2T4FVSiNtoffGE426eJth+9/z0bLVxanHT4KdXG6Sx+Fumif0h9RqIzuHP6IQmW0PXyqUBxPVKE8Xg0K
xbG9GBSK40AVymP/HxSqY4VCsCAkDnkkDnmcXj+iX/itkTjkkTjkkTjkkTjkkTjkkTjkkTjkkTjkkTjk
kTjkkTjkkTjkkTjkkTiEMfyk9yaLxCGPxCGPxCGPxCGPxCGPxCGPxCGPxCGPxCGPxCGPxCGPxCGPxCGP
xCGP04vemzoShzwShzwShzwShzwShzwShzwShzwShzwShzwShzwShzwShzwShzwShzCGn/TeZJE45JE4
5JE45JE45JE45JE45JE45JE45JE45JE45JE45JE45JE45JE45HF60XtTR+KQR+KQR+KQR+KQR+KQR+KQ
R+KQR+KQR+KQR+KQR+KQR+KQR+KQR+IQxvCT3pssEoc8Eoc8Eoc8Eoc8Eoc8Eoc8Eoc8Eoc8Eoc8Eoc8
Eoc8Eoc8Eoc8Eoc8Ti96b+pIHPJIHPJIHPJIHPJIHPJIHPJIHPJIHPJIHPJIHPJIHPJIHPJIHPJIHMIY
ftJ7k0XikEfikEfikEfikEfikEfikEfikEfikEfikEfikEfikEfikEfikEfikMfpRe9NHYlDHolDHolD
HolDHolDHolDHolDHolDHolDHolDHolDHolDHolDHolDFbvuv59U64TBojvPAAAAAElFTkSuQmCC
</value>
</data>
<data name="buttonRight.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
BxV3u/8HvQ0pN6ppBNIAAAAASUVORK5CYII=
</value>
</data>
<data name="buttonDown.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
</root>

View File

@ -11,7 +11,7 @@ namespace DumpTruck
// 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 FormDumpTruck());
}
}
}

View File

@ -1,2 +0,0 @@
TruckStorage
test|100:100:White;100:100:White;100:100:White;100:100:White;100:100:White;100:100:White;100:100:White;100:100:White;100:100:White;100:100:White;100:100:White;100:100:White;100:100:White;100:100:White;100:100:White;100:100:Lime;100:100:Blue:Black:True;100:100:White:Black:True;100:100:White:Black:False;100:100:White;