This commit is contained in:
илья 2024-05-15 17:30:13 +04:00
parent d7da8d2896
commit bae7048a16

View File

@ -83,7 +83,7 @@ public class DrawningLocomotive
if (_startPosX.HasValue && _startPosY.HasValue)
{
SetPosition(_startPosX.Value, _startPosY.Value);
SetPosition(_startPosX.Value, _startPosY.Value +10);
}
return true;
@ -183,67 +183,67 @@ public class DrawningLocomotive
//границы круисера
Point[] points = { new Point(_startPosX.Value + 2, _startPosY.Value), new Point(_startPosX.Value + 140, _startPosY.Value), new Point(_startPosX.Value + 140, _startPosY.Value + 20), new Point(_startPosX.Value, _startPosY.Value + 20) };
Point[] points = { new Point(_startPosX.Value + 2, _startPosY.Value +10), new Point(_startPosX.Value + 140, _startPosY.Value +10), new Point(_startPosX.Value + 140, _startPosY.Value +10 + 20), new Point(_startPosX.Value, _startPosY.Value +10 + 20) };
g.FillPolygon(additionalBrush, points);
g.DrawPolygon(pen, points);
g.FillRectangle(bodyBrush, _startPosX.Value, _startPosY.Value + 20, 140, 20);
g.DrawRectangle(pen, _startPosX.Value, _startPosY.Value + 20, 140, 20);
g.FillRectangle(bodyBrush, _startPosX.Value, _startPosY.Value +10 + 20, 140, 20);
g.DrawRectangle(pen, _startPosX.Value, _startPosY.Value +10 + 20, 140, 20);
//g.DrawLine(pen, _startPosX.Value + 2, _startPosY.Value, _startPosX.Value + 140, _startPosY.Value);
//g.DrawLine(pen, _startPosX.Value + 140, _startPosY.Value, _startPosX.Value + 140, _startPosY.Value + 20);
//g.DrawLine(pen, _startPosX.Value + 2, _startPosY.Value +10, _startPosX.Value + 140, _startPosY.Value +10);
//g.DrawLine(pen, _startPosX.Value + 140, _startPosY.Value +10, _startPosX.Value + 140, _startPosY.Value +10 + 20);
//g.DrawLine(pen, _startPosX.Value, _startPosY.Value + 20, _startPosX.Value + 5, _startPosY.Value );
//g.DrawLine(pen, _startPosX.Value, _startPosY.Value +10 + 20, _startPosX.Value + 5, _startPosY.Value +10 );
g.FillRectangle(wheelBrush, _startPosX.Value + 140, _startPosY.Value + 3, 7, 34);
g.FillRectangle(wheelBrush, _startPosX.Value + 140, _startPosY.Value +10 + 3, 7, 34);
//дверь
g.FillRectangle(bodyBrush, _startPosX.Value + 47, _startPosY.Value + 6, 15, 29);
g.DrawRectangle(pen, _startPosX.Value + 47, _startPosY.Value + 6, 15, 29);
g.FillRectangle(bodyBrush, _startPosX.Value + 47, _startPosY.Value +10 + 6, 15, 29);
g.DrawRectangle(pen, _startPosX.Value + 47, _startPosY.Value +10 + 6, 15, 29);
//окна
g.FillRectangle(glassBrush, _startPosX.Value + 12, _startPosY.Value + 3, 13, 14);
g.FillRectangle(glassBrush, _startPosX.Value + 28, _startPosY.Value + 3, 13, 14);
g.FillRectangle(glassBrush, _startPosX.Value + 124, _startPosY.Value + 3, 13, 14);
g.FillRectangle(glassBrush, _startPosX.Value + 12, _startPosY.Value +10 + 3, 13, 14);
g.FillRectangle(glassBrush, _startPosX.Value + 28, _startPosY.Value +10 + 3, 13, 14);
g.FillRectangle(glassBrush, _startPosX.Value + 124, _startPosY.Value +10 + 3, 13, 14);
//колёса
Point[] points2 = { new Point(_startPosX.Value + 5 , _startPosY.Value + 40), new Point(_startPosX.Value + 55, _startPosY.Value + 40), new Point(_startPosX.Value + 45, _startPosY.Value + 47), new Point(_startPosX.Value - 5, _startPosY.Value + 47) };
Point[] points2 = { new Point(_startPosX.Value + 5 , _startPosY.Value +10 + 40), new Point(_startPosX.Value + 55, _startPosY.Value +10 + 40), new Point(_startPosX.Value + 45, _startPosY.Value +10 + 47), new Point(_startPosX.Value - 5, _startPosY.Value +10 + 47) };
g.FillPolygon(wheelBrush, points2);
Point[] points3 = { new Point(_startPosX.Value + 145, _startPosY.Value + 47), new Point(_startPosX.Value + 95, _startPosY.Value + 47), new Point(_startPosX.Value + 85, _startPosY.Value + 40), new Point(_startPosX.Value + 135, _startPosY.Value + 40) };
Point[] points3 = { new Point(_startPosX.Value + 145, _startPosY.Value +10 + 47), new Point(_startPosX.Value + 95, _startPosY.Value +10 + 47), new Point(_startPosX.Value + 85, _startPosY.Value +10 + 40), new Point(_startPosX.Value + 135, _startPosY.Value +10 + 40) };
g.FillPolygon(wheelBrush, points3);
g.FillEllipse(wheelBrush2, _startPosX.Value + 37, _startPosY.Value + 41, 14, 14);
g.DrawEllipse(pen2, _startPosX.Value + 37, _startPosY.Value + 41, 15, 15);
g.FillEllipse(wheelBrush2, _startPosX.Value + 10, _startPosY.Value + 41, 14, 14);
g.DrawEllipse(pen2, _startPosX.Value + 10, _startPosY.Value + 41, 15, 15);
g.FillEllipse(wheelBrush2, _startPosX.Value + 37, _startPosY.Value +10 + 41, 14, 14);
g.DrawEllipse(pen2, _startPosX.Value + 37, _startPosY.Value +10 + 41, 15, 15);
g.FillEllipse(wheelBrush2, _startPosX.Value + 10, _startPosY.Value +10 + 41, 14, 14);
g.DrawEllipse(pen2, _startPosX.Value + 10, _startPosY.Value +10 + 41, 15, 15);
g.FillEllipse(wheelBrush2, _startPosX.Value + 93, _startPosY.Value + 41, 14, 14);
g.DrawEllipse(pen2, _startPosX.Value + 93, _startPosY.Value + 41, 15, 15);
g.FillEllipse(wheelBrush2, _startPosX.Value + 120, _startPosY.Value + 41, 14, 14);
g.DrawEllipse(pen2, _startPosX.Value + 120, _startPosY.Value + 41, 15, 15);
g.FillEllipse(wheelBrush2, _startPosX.Value + 93, _startPosY.Value +10 + 41, 14, 14);
g.DrawEllipse(pen2, _startPosX.Value + 93, _startPosY.Value +10 + 41, 15, 15);
g.FillEllipse(wheelBrush2, _startPosX.Value + 120, _startPosY.Value +10 + 41, 14, 14);
g.DrawEllipse(pen2, _startPosX.Value + 120, _startPosY.Value +10 + 41, 15, 15);
//внутренности поезда
if (EntityLocomotive.Pipe)
{
Point[] points4 = { new Point(_startPosX.Value + 20, _startPosY.Value ), new Point(_startPosX.Value + 30, _startPosY.Value), new Point(_startPosX.Value + 30, _startPosY.Value - 7), new Point(_startPosX.Value + 32, _startPosY.Value - 9), new Point(_startPosX.Value + 30, _startPosY.Value - 11), new Point(_startPosX.Value + 20, _startPosY.Value - 11), new Point(_startPosX.Value + 18, _startPosY.Value - 9), new Point(_startPosX.Value + 20, _startPosY.Value - 7), new Point(_startPosX.Value + 20, _startPosY.Value ) };
Point[] points4 = { new Point(_startPosX.Value + 20, _startPosY.Value +10 ), new Point(_startPosX.Value + 30, _startPosY.Value +10), new Point(_startPosX.Value + 30, _startPosY.Value +10 - 7), new Point(_startPosX.Value + 32, _startPosY.Value +10 - 9), new Point(_startPosX.Value + 30, _startPosY.Value +10 - 11), new Point(_startPosX.Value + 20, _startPosY.Value +10 - 11), new Point(_startPosX.Value + 18, _startPosY.Value +10 - 9), new Point(_startPosX.Value + 20, _startPosY.Value +10 - 7), new Point(_startPosX.Value + 20, _startPosY.Value +10 ) };
g.FillPolygon(wheelBrush, points4);
}
if (EntityLocomotive.Fueltank)
{
Point[] points5 = { new Point(_startPosX.Value + 52, _startPosY.Value + 50), new Point(_startPosX.Value + 92, _startPosY.Value + 50), new Point(_startPosX.Value + 87, _startPosY.Value + 35), new Point(_startPosX.Value + 57, _startPosY.Value + 35) };
Point[] points5 = { new Point(_startPosX.Value + 52, _startPosY.Value +10 + 50), new Point(_startPosX.Value + 92, _startPosY.Value +10 + 50), new Point(_startPosX.Value + 87, _startPosY.Value +10 + 35), new Point(_startPosX.Value + 57, _startPosY.Value +10 + 35) };
g.FillPolygon(wheelBrush, points5);
}
if (EntityLocomotive.Headlight)
{
g.DrawLine(pen3, _startPosX.Value, _startPosY.Value - 5, _startPosX.Value + 15, _startPosY.Value );
g.FillEllipse(headlightBrush, _startPosX.Value-2, _startPosY.Value - 6, 6, 14);
g.DrawEllipse(pen, _startPosX.Value-2 , _startPosY.Value - 6, 6, 14);
g.DrawLine(pen3, _startPosX.Value, _startPosY.Value +10 - 5, _startPosX.Value + 15, _startPosY.Value +10 );
g.FillEllipse(headlightBrush, _startPosX.Value-2, _startPosY.Value +10 - 6, 6, 14);
g.DrawEllipse(pen, _startPosX.Value-2 , _startPosY.Value +10 - 6, 6, 14);
}
}