Оказалось, что в лаб1 должна быть лодка, а не катамаран, поэтому сделаны соответствующие изменения имен
This commit is contained in:
parent
b9c3608dd0
commit
6023d417fb
@ -11,18 +11,18 @@ namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Класс, отвечающий за прорисовку и перемещение объекта-сущности
|
/// Класс, отвечающий за прорисовку и перемещение объекта-сущности
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal class DrawingCatamaran
|
internal class DrawingBoat
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Класс-сущность
|
/// Класс-сущность
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public EntityCatamaran Catamaran { protected set; get; }
|
public EntityBoat Boat { protected set; get; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Левая координата отрисовки катамарана
|
/// Левая координата отрисовки лодки
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private float _startPosX;
|
private float _startPosX;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Верхняя кооридната отрисовки катамарана
|
/// Верхняя кооридната отрисовки лодки
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private float _startPosY;
|
private float _startPosY;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -34,26 +34,26 @@ namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private int? _pictureHeight = null;
|
private int? _pictureHeight = null;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Ширина отрисовки катамарана
|
/// Ширина отрисовки лодки
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private readonly int _catamaranWidth = 100;
|
private readonly int _boatWidth = 100;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Высота отрисовки катамарана
|
/// Высота отрисовки лодки
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private readonly int _catamaranHeight = 40;
|
private readonly int _boatHeight = 40;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Инициализация свойств
|
/// Инициализация свойств
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="speed">Скорость</param>
|
/// <param name="speed">Скорость</param>
|
||||||
/// <param name="weight">Вес катамарана</param>
|
/// <param name="weight">Вес лодки</param>
|
||||||
/// <param name="bodyColor">Цвет корпуса</param>
|
/// <param name="bodyColor">Цвет корпуса</param>
|
||||||
public void Init(int speed, float weight, Color bodyColor)
|
public void Init(int speed, float weight, Color bodyColor)
|
||||||
{
|
{
|
||||||
Catamaran = new EntityCatamaran();
|
Boat = new EntityBoat();
|
||||||
Catamaran.Init(speed, weight, bodyColor);
|
Boat.Init(speed, weight, bodyColor);
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Установка позиции катамарана
|
/// Установка позиции лодки
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="x">Координата X</param>
|
/// <param name="x">Координата X</param>
|
||||||
/// <param name="y">Координата Y</param>
|
/// <param name="y">Координата Y</param>
|
||||||
@ -81,36 +81,36 @@ namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
|||||||
{
|
{
|
||||||
// вправо
|
// вправо
|
||||||
case Direction.Right:
|
case Direction.Right:
|
||||||
if (_startPosX + _catamaranWidth + Catamaran.Step < _pictureWidth)
|
if (_startPosX + _boatWidth + Boat.Step < _pictureWidth)
|
||||||
{
|
{
|
||||||
_startPosX += Catamaran.Step;
|
_startPosX += Boat.Step;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
//влево
|
//влево
|
||||||
case Direction.Left:
|
case Direction.Left:
|
||||||
if (_startPosX - Catamaran.Step > 0)
|
if (_startPosX - Boat.Step > 0)
|
||||||
{
|
{
|
||||||
_startPosX -= Catamaran.Step;
|
_startPosX -= Boat.Step;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
//вверх
|
//вверх
|
||||||
case Direction.Up:
|
case Direction.Up:
|
||||||
if (_startPosY - Catamaran.Step > 0)
|
if (_startPosY - Boat.Step > 0)
|
||||||
{
|
{
|
||||||
_startPosY -= Catamaran.Step;
|
_startPosY -= Boat.Step;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
//вниз
|
//вниз
|
||||||
case Direction.Down:
|
case Direction.Down:
|
||||||
if (_startPosY + _catamaranHeight + Catamaran.Step < _pictureHeight)
|
if (_startPosY + _boatHeight + Boat.Step < _pictureHeight)
|
||||||
{
|
{
|
||||||
_startPosY += Catamaran.Step;
|
_startPosY += Boat.Step;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Отрисовка катамарана
|
/// Отрисовка лодки
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="g"></param>
|
/// <param name="g"></param>
|
||||||
public void DrawTransport(Graphics g)
|
public void DrawTransport(Graphics g)
|
||||||
@ -121,24 +121,24 @@ namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
SolidBrush brush = new SolidBrush(Catamaran.BodyColor);
|
SolidBrush brush = new SolidBrush(Boat.BodyColor);
|
||||||
|
|
||||||
PointF[] bodyPoints = new PointF[5];
|
PointF[] bodyPoints = new PointF[5];
|
||||||
bodyPoints[0] = new PointF(_startPosX, _startPosY);
|
bodyPoints[0] = new PointF(_startPosX, _startPosY);
|
||||||
bodyPoints[1] = new PointF(_startPosX + _catamaranWidth - _catamaranWidth / 4, _startPosY);
|
bodyPoints[1] = new PointF(_startPosX + _boatWidth - _boatWidth / 4, _startPosY);
|
||||||
bodyPoints[2] = new PointF(_startPosX + _catamaranWidth, _startPosY + _catamaranHeight / 2);
|
bodyPoints[2] = new PointF(_startPosX + _boatWidth, _startPosY + _boatHeight / 2);
|
||||||
bodyPoints[3] = new PointF(_startPosX + _catamaranWidth - _catamaranWidth / 4, _startPosY + _catamaranHeight);
|
bodyPoints[3] = new PointF(_startPosX + _boatWidth - _boatWidth / 4, _startPosY + _boatHeight);
|
||||||
bodyPoints[4] = new PointF(_startPosX, _startPosY + _catamaranHeight);
|
bodyPoints[4] = new PointF(_startPosX, _startPosY + _boatHeight);
|
||||||
|
|
||||||
// Отрисовка корпуса катамарана
|
// Отрисовка корпуса лодки
|
||||||
g.FillPolygon(brush, bodyPoints);
|
g.FillPolygon(brush, bodyPoints);
|
||||||
g.DrawPolygon(Pens.Black, bodyPoints);
|
g.DrawPolygon(Pens.Black, bodyPoints);
|
||||||
|
|
||||||
// Отрисовка головы катамарана
|
// Отрисовка головы лодки
|
||||||
g.FillEllipse(Brushes.White, _startPosX + _catamaranWidth / 8, _startPosY + _catamaranHeight / 8,
|
g.FillEllipse(Brushes.White, _startPosX + _boatWidth / 8, _startPosY + _boatHeight / 8,
|
||||||
_catamaranWidth / 2, _catamaranHeight - _catamaranHeight / 4);
|
_boatWidth / 2, _boatHeight - _boatHeight / 4);
|
||||||
g.DrawEllipse(Pens.Black, _startPosX + _catamaranWidth / 8, _startPosY + _catamaranHeight / 8,
|
g.DrawEllipse(Pens.Black, _startPosX + _boatWidth / 8, _startPosY + _boatHeight / 8,
|
||||||
_catamaranWidth / 2, _catamaranHeight - _catamaranHeight / 4);
|
_boatWidth / 2, _boatHeight - _boatHeight / 4);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -8,9 +8,9 @@ using System.Drawing;
|
|||||||
namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Класс-сущность "Автомобиль"
|
/// Класс-сущность "Лодка"
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal class EntityCatamaran
|
internal class EntityBoat
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Скорость
|
/// Скорость
|
||||||
@ -25,11 +25,11 @@ namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public Color BodyColor { get; private set; }
|
public Color BodyColor { get; private set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Шаг перемещения катамарана
|
/// Шаг перемещения лодки
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public float Step => Speed * 100 / Weight;
|
public float Step => Speed * 100 / Weight;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Инициализация полей объекта-класса катамарана
|
/// Инициализация полей объекта-класса лодки
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="speed"></param>
|
/// <param name="speed"></param>
|
||||||
/// <param name="weight"></param>
|
/// <param name="weight"></param>
|
4
FormCatamaran.Designer.cs → FormBoat.Designer.cs
generated
4
FormCatamaran.Designer.cs → FormBoat.Designer.cs
generated
@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
||||||
{
|
{
|
||||||
partial class FormCatamaran
|
partial class FormBoat
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Required designer variable.
|
/// Required designer variable.
|
||||||
@ -171,7 +171,7 @@ namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
|||||||
this.Controls.Add(this.pictureBox);
|
this.Controls.Add(this.pictureBox);
|
||||||
this.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
this.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
|
||||||
this.Name = "FormCatamaran";
|
this.Name = "FormCatamaran";
|
||||||
this.Text = "Катамаран";
|
this.Text = "Лодка";
|
||||||
this.statusStrip.ResumeLayout(false);
|
this.statusStrip.ResumeLayout(false);
|
||||||
this.statusStrip.PerformLayout();
|
this.statusStrip.PerformLayout();
|
||||||
this.groupBox.ResumeLayout(false);
|
this.groupBox.ResumeLayout(false);
|
@ -10,11 +10,11 @@ using System.Windows.Forms;
|
|||||||
|
|
||||||
namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
||||||
{
|
{
|
||||||
public partial class FormCatamaran : System.Windows.Forms.Form
|
public partial class FormBoat : System.Windows.Forms.Form
|
||||||
{
|
{
|
||||||
DrawingCatamaran catamaranDrawObj;
|
DrawingBoat boatDrawObj;
|
||||||
|
|
||||||
public FormCatamaran()
|
public FormBoat()
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
pictureBox.Image = new Bitmap(pictureBox.Width, pictureBox.Height);
|
pictureBox.Image = new Bitmap(pictureBox.Width, pictureBox.Height);
|
||||||
@ -24,18 +24,18 @@ namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
|||||||
{
|
{
|
||||||
Random rnd = new Random();
|
Random rnd = new Random();
|
||||||
|
|
||||||
catamaranDrawObj = new DrawingCatamaran();
|
boatDrawObj = new DrawingBoat();
|
||||||
catamaranDrawObj.Init(rnd.Next(50, 100), rnd.Next(50, 100), Color.FromArgb(rnd.Next(0, 255), rnd.Next(0, 255), rnd.Next(0, 255)));
|
boatDrawObj.Init(rnd.Next(50, 100), rnd.Next(50, 100), Color.FromArgb(rnd.Next(0, 255), rnd.Next(0, 255), rnd.Next(0, 255)));
|
||||||
catamaranDrawObj.SetPosition(rnd.Next(10, 50), rnd.Next(10, 50), pictureBox.Width, pictureBox.Height - statusStrip.Height);
|
boatDrawObj.SetPosition(rnd.Next(10, 50), rnd.Next(10, 50), pictureBox.Width, pictureBox.Height - statusStrip.Height);
|
||||||
toolStripStatusLabelSpeed.Text = $"Скорость: {catamaranDrawObj.Catamaran.Speed}";
|
toolStripStatusLabelSpeed.Text = $"Скорость: {boatDrawObj.Boat.Speed}";
|
||||||
toolStripStatusLabelWeight.Text = $"Вес: {catamaranDrawObj.Catamaran.Weight}";
|
toolStripStatusLabelWeight.Text = $"Вес: {boatDrawObj.Boat.Weight}";
|
||||||
toolStripStatusLabelColor.Text = $"Цвет: {catamaranDrawObj.Catamaran.BodyColor.Name}";
|
toolStripStatusLabelColor.Text = $"Цвет: {boatDrawObj.Boat.BodyColor.Name}";
|
||||||
RedrawCatamaran();
|
RedrawCatamaran();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void btn_move_Click(object sender, EventArgs e)
|
private void btn_move_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
if (catamaranDrawObj == null)
|
if (boatDrawObj == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
string btnName = ((Button)sender).Name;
|
string btnName = ((Button)sender).Name;
|
||||||
@ -44,22 +44,22 @@ namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
|||||||
{
|
{
|
||||||
case "btn_up":
|
case "btn_up":
|
||||||
{
|
{
|
||||||
catamaranDrawObj.MoveTransport(Direction.Up);
|
boatDrawObj.MoveTransport(Direction.Up);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "btn_down":
|
case "btn_down":
|
||||||
{
|
{
|
||||||
catamaranDrawObj.MoveTransport(Direction.Down);
|
boatDrawObj.MoveTransport(Direction.Down);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "btn_left":
|
case "btn_left":
|
||||||
{
|
{
|
||||||
catamaranDrawObj.MoveTransport(Direction.Left);
|
boatDrawObj.MoveTransport(Direction.Left);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "btn_right":
|
case "btn_right":
|
||||||
{
|
{
|
||||||
catamaranDrawObj.MoveTransport(Direction.Right);
|
boatDrawObj.MoveTransport(Direction.Right);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@ -72,7 +72,7 @@ namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
|||||||
{
|
{
|
||||||
Graphics g = Graphics.FromImage(pictureBox.Image);
|
Graphics g = Graphics.FromImage(pictureBox.Image);
|
||||||
g.Clear(Color.White);
|
g.Clear(Color.White);
|
||||||
catamaranDrawObj.DrawTransport(g);
|
boatDrawObj.DrawTransport(g);
|
||||||
pictureBox.Invalidate();
|
pictureBox.Invalidate();
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -17,7 +17,7 @@ namespace PIbd_21_Potapov_N.S._Catamaran_Base
|
|||||||
Application.EnableVisualStyles();
|
Application.EnableVisualStyles();
|
||||||
Application.SetHighDpiMode(HighDpiMode.SystemAware);
|
Application.SetHighDpiMode(HighDpiMode.SystemAware);
|
||||||
Application.SetCompatibleTextRenderingDefault(false);
|
Application.SetCompatibleTextRenderingDefault(false);
|
||||||
Application.Run(new FormCatamaran());
|
Application.Run(new FormBoat());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user