Исправления движения
This commit is contained in:
parent
077feaab14
commit
ee56e16284
@ -16,9 +16,9 @@ public class DiselLoko
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public Color ColorBody { get; private set; }
|
public Color ColorBody { get; private set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// цвет колеса
|
/// цвет бака
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Color ColorWheel { get; private set; }
|
public Color ColorComportament { get; private set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Признак наличия трубы
|
/// Признак наличия трубы
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -33,20 +33,20 @@ public class DiselLoko
|
|||||||
public double Step => Speed * 100 / Weight;
|
public double Step => Speed * 100 / Weight;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
/// Инициализация
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="speed"></param>
|
/// <param name="speed"></param>
|
||||||
/// <param name="weight"></param>
|
/// <param name="weight"></param>
|
||||||
/// <param name="colorBody"></param>
|
/// <param name="colorBody"></param>
|
||||||
/// <param name="colorWheel"></param>
|
/// <param name="Comportament"></param>
|
||||||
/// <param name="isTube"></param>
|
/// <param name="isTube"></param>
|
||||||
/// <param name="isComportament"></param>
|
/// <param name="isComportament"></param>
|
||||||
public void Init(int speed, double weight, Color colorBody, Color colorWheel, bool isTube, bool isComportament)
|
public void Init(int speed, double weight, Color colorBody, Color Comportament, bool isTube, bool isComportament)
|
||||||
{
|
{
|
||||||
Speed = speed;
|
Speed = speed;
|
||||||
Weight = weight;
|
Weight = weight;
|
||||||
ColorBody = colorBody;
|
ColorBody = colorBody;
|
||||||
ColorWheel = colorWheel;
|
ColorComportament = Comportament;
|
||||||
IsTube = isTube;
|
IsTube = isTube;
|
||||||
IsComportament = isComportament;
|
IsComportament = isComportament;
|
||||||
}
|
}
|
||||||
|
@ -49,14 +49,14 @@ public class DrawningDiselLoko
|
|||||||
/// <param name="speed">Скорость</param>
|
/// <param name="speed">Скорость</param>
|
||||||
/// <param name="weight">Вес</param>
|
/// <param name="weight">Вес</param>
|
||||||
/// <param name="colorBody">Цвет тела</param>
|
/// <param name="colorBody">Цвет тела</param>
|
||||||
/// <param name="colorWheel">Цвет колёс</param>
|
/// <param name="colorComportament">Цвет колёс</param>
|
||||||
/// <param name="isTube">Признак езды</param>
|
/// <param name="isTube">Признак езды</param>
|
||||||
/// <param name="isComportament">Признак заполнености</param>
|
/// <param name="isComportament">Признак заполнености</param>
|
||||||
|
|
||||||
public void Init(int speed, double weight, Color colorBody, Color colorWheel, bool isTube, bool isComportament)
|
public void Init(int speed, double weight, Color colorBody, Color colorComportament, bool isTube, bool isComportament)
|
||||||
{
|
{
|
||||||
DiselLoko = new DiselLoko();
|
DiselLoko = new DiselLoko();
|
||||||
DiselLoko.Init(speed, weight, colorBody, colorWheel, isTube, isComportament);
|
DiselLoko.Init(speed, weight, colorBody, colorComportament, isTube, isComportament);
|
||||||
_pictureWidth = null;
|
_pictureWidth = null;
|
||||||
_pictureHeight = null;
|
_pictureHeight = null;
|
||||||
_startPosX = null;
|
_startPosX = null;
|
||||||
@ -140,14 +140,14 @@ public class DrawningDiselLoko
|
|||||||
return true;
|
return true;
|
||||||
// вправо
|
// вправо
|
||||||
case Direction.Right:
|
case Direction.Right:
|
||||||
if (_startPosX.Value + DiselLoko.Step + _drawingCarWidth/2 < _pictureWidth.Value - _drawingCarWidth)
|
if (_startPosX.Value + DiselLoko.Step +40 < _pictureWidth.Value - _drawingCarWidth)
|
||||||
{
|
{
|
||||||
_startPosX += (int)DiselLoko.Step;
|
_startPosX += (int)DiselLoko.Step;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
//вниз
|
//вниз
|
||||||
case Direction.Down:
|
case Direction.Down:
|
||||||
if (_startPosY.Value + DiselLoko.Step + _drawingCarWidth / 4 < _pictureHeight.Value - _drawingCarHeight)
|
if (_startPosY.Value + DiselLoko.Step + 10< _pictureHeight.Value - _drawingCarHeight)
|
||||||
{
|
{
|
||||||
_startPosY += (int)DiselLoko.Step;
|
_startPosY += (int)DiselLoko.Step;
|
||||||
}
|
}
|
||||||
@ -171,7 +171,7 @@ public class DrawningDiselLoko
|
|||||||
Pen pen = new(Color.Black);
|
Pen pen = new(Color.Black);
|
||||||
Brush additionalBrush = new SolidBrush(DiselLoko.ColorBody);
|
Brush additionalBrush = new SolidBrush(DiselLoko.ColorBody);
|
||||||
Brush blueBrush = Brushes.Blue;
|
Brush blueBrush = Brushes.Blue;
|
||||||
Brush grayBrush = Brushes.Gray;
|
|
||||||
|
|
||||||
|
|
||||||
Pen blackPen = new Pen(Color.Black, 2);
|
Pen blackPen = new Pen(Color.Black, 2);
|
||||||
@ -186,7 +186,9 @@ public class DrawningDiselLoko
|
|||||||
new Point(_startPosX.Value-10, _startPosY.Value + _drawingCarHeight/2)
|
new Point(_startPosX.Value-10, _startPosY.Value + _drawingCarHeight/2)
|
||||||
|
|
||||||
};
|
};
|
||||||
g.DrawPolygon(blackPen, trainBody);
|
Brush br = new SolidBrush(DiselLoko.ColorBody);
|
||||||
|
g.FillPolygon(br, trainBody);
|
||||||
|
|
||||||
|
|
||||||
//разделительная линия
|
//разделительная линия
|
||||||
|
|
||||||
@ -294,7 +296,8 @@ public class DrawningDiselLoko
|
|||||||
new Point(_startPosX.Value +130 , _startPosY.Value + _drawingCarHeight-5), // Нижний правый угол
|
new Point(_startPosX.Value +130 , _startPosY.Value + _drawingCarHeight-5), // Нижний правый угол
|
||||||
new Point(_startPosX.Value + 110, _startPosY.Value + _drawingCarHeight-5) // Нижний левый угол
|
new Point(_startPosX.Value + 110, _startPosY.Value + _drawingCarHeight-5) // Нижний левый угол
|
||||||
};
|
};
|
||||||
g.FillPolygon(grayBrush, fuelTank);
|
Brush br2 = new SolidBrush(DiselLoko.ColorComportament);
|
||||||
|
g.FillPolygon(br2, fuelTank);
|
||||||
g.DrawPolygon(blackPen, fuelTank);
|
g.DrawPolygon(blackPen, fuelTank);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -50,7 +50,9 @@
|
|||||||
|
|
||||||
Draw();
|
Draw();
|
||||||
}
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// Кнопки движения
|
||||||
|
/// </summary>
|
||||||
private void ButtonMove_Click(object sender, EventArgs e)
|
private void ButtonMove_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
if (_drawningDiselLoko == null)
|
if (_drawningDiselLoko == null)
|
||||||
|
@ -3,13 +3,11 @@ namespace PrLaba1
|
|||||||
internal static class Program
|
internal static class Program
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The main entry point for the application.
|
/// Вход в программу
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[STAThread]
|
[STAThread]
|
||||||
static void Main()
|
static void Main()
|
||||||
{
|
{
|
||||||
// To customize application configuration such as set high DPI settings or default font,
|
|
||||||
// see https://aka.ms/applicationconfiguration.
|
|
||||||
ApplicationConfiguration.Initialize();
|
ApplicationConfiguration.Initialize();
|
||||||
Application.Run(new FormDiselLoko());
|
Application.Run(new FormDiselLoko());
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user