Фикс ошибки с цветами
This commit is contained in:
@@ -19,12 +19,12 @@ namespace Liner.Drawing
|
|||||||
/// <param name="deck">Признак наличия доп палубы</param>
|
/// <param name="deck">Признак наличия доп палубы</param>
|
||||||
/// <param name="width">Ширина картинки</param>
|
/// <param name="width">Ширина картинки</param>
|
||||||
/// <param name="height">Высота картинки</param>
|
/// <param name="height">Высота картинки</param>
|
||||||
public DrawingBigLiner(int speed, double weight, Color bodyColor, Color bottomColor, bool swimmingPool, bool deck, int width, int height)
|
public DrawingBigLiner(int speed, double weight, Color bottomColor, Color bodyColor, bool swimmingPool, bool deck, int width, int height)
|
||||||
: base(speed,weight,bodyColor,bottomColor,width,height,100,80)
|
: base(speed,weight,bodyColor,width,height,100,80)
|
||||||
{
|
{
|
||||||
if(EntityLiner!= null)
|
if(EntityLiner!= null)
|
||||||
{
|
{
|
||||||
EntityLiner = new EntityBigLiner(speed, weight, bodyColor, bottomColor, deck, swimmingPool);
|
EntityLiner = new EntityBigLiner(speed, weight,bottomColor, bodyColor, deck, swimmingPool);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -41,8 +41,8 @@ namespace Liner.Drawing
|
|||||||
}
|
}
|
||||||
Pen pen = new(Color.Black);
|
Pen pen = new(Color.Black);
|
||||||
Brush poolBrush = new SolidBrush(Color.Blue);
|
Brush poolBrush = new SolidBrush(Color.Blue);
|
||||||
Brush bottomBrush = new SolidBrush(EntityLiner.BottomColor);
|
Brush bottomBrush = new SolidBrush(liner.BottomColor);
|
||||||
Brush deckBrush = new SolidBrush(EntityLiner.BodyColor);
|
Brush deckBrush = new SolidBrush(liner.BodyColor);
|
||||||
// палуба
|
// палуба
|
||||||
Point[] firstDeck = {new Point(_startPosX + 30, _startPosY), new Point(_startPosX + 30 + 60, _startPosY),
|
Point[] firstDeck = {new Point(_startPosX + 30, _startPosY), new Point(_startPosX + 30 + 60, _startPosY),
|
||||||
new Point(_startPosX + 30 + 60, _startPosY + 20), new Point(_startPosX + 30, _startPosY + 20)};
|
new Point(_startPosX + 30 + 60, _startPosY + 20), new Point(_startPosX + 30, _startPosY + 20)};
|
||||||
@@ -76,5 +76,12 @@ namespace Liner.Drawing
|
|||||||
g.DrawPolygon(pen, bottom);//рисуем нижний корпус
|
g.DrawPolygon(pen, bottom);//рисуем нижний корпус
|
||||||
if (liner.SwimmingPool) { g.FillPolygon(poolBrush, pool); }//рисуем бассейн
|
if (liner.SwimmingPool) { g.FillPolygon(poolBrush, pool); }//рисуем бассейн
|
||||||
}
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// установка цвета большого лайнера
|
||||||
|
/// </summary>
|
||||||
|
public void SetAddColor(Color color)
|
||||||
|
{
|
||||||
|
(EntityLiner as EntityBigLiner).BodyColor = color;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -63,32 +63,32 @@ namespace Liner.Drawing
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="speed">Скорость</param>
|
/// <param name="speed">Скорость</param>
|
||||||
/// <param name="weight">Вес лайнера</param>
|
/// <param name="weight">Вес лайнера</param>
|
||||||
/// <param name="bodyColor">Основной цвет</param>
|
/// <param name="bottomColor">Основной цвет</param>
|
||||||
/// <param name="width">Ширина картинки</param>
|
/// <param name="width">Ширина картинки</param>
|
||||||
/// <param name="height">Высота картинки</param>
|
/// <param name="height">Высота картинки</param>
|
||||||
public DrawingLiner(int speed, double weight, Color bodyColor, Color bottomColor, int width, int height)
|
public DrawingLiner(int speed, double weight, Color bottomColor, int width, int height)
|
||||||
{
|
{
|
||||||
_pictureWidth = width;
|
_pictureWidth = width;
|
||||||
_pictureHeight = height;
|
_pictureHeight = height;
|
||||||
EntityLiner = new EntityLiner(speed, weight, bodyColor, bottomColor);
|
EntityLiner = new EntityLiner(speed, weight, bottomColor);
|
||||||
}
|
}
|
||||||
/// <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="bottomColor">Основной цвет</param>
|
||||||
/// <param name="width">Ширина картинки</param>
|
/// <param name="width">Ширина картинки</param>
|
||||||
/// <param name="height">Высота картинки</param>
|
/// <param name="height">Высота картинки</param>
|
||||||
/// <param name="linerWidth">Ширина прорисовки лайнера</param>
|
/// <param name="linerWidth">Ширина прорисовки лайнера</param>
|
||||||
/// <param name="linerHeight">Высота прорисовки лайнера</param>
|
/// <param name="linerHeight">Высота прорисовки лайнера</param>
|
||||||
protected DrawingLiner(int speed, double weight, Color bodyColor, Color bottomColor, int width, int height,int linerWidth,int linerHeight)
|
protected DrawingLiner(int speed, double weight, Color bottomColor, int width, int height,int linerWidth,int linerHeight)
|
||||||
{
|
{
|
||||||
_linerHeight = linerHeight;
|
_linerHeight = linerHeight;
|
||||||
_linerWidth = linerWidth;
|
_linerWidth = linerWidth;
|
||||||
_pictureWidth = width;
|
_pictureWidth = width;
|
||||||
_pictureHeight = height;
|
_pictureHeight = height;
|
||||||
EntityLiner = new EntityLiner(speed, weight, bodyColor, bottomColor);
|
EntityLiner = new EntityLiner(speed, weight, bottomColor);
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Установка позиции
|
/// Установка позиции
|
||||||
@@ -113,8 +113,8 @@ namespace Liner.Drawing
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Pen pen = new(Color.Black);
|
Pen pen = new(Color.Black);
|
||||||
Brush bottomBrush = new SolidBrush(EntityLiner.BottomColor);
|
Brush bottomBrush = new SolidBrush(EntityLiner.BottomColor);
|
||||||
Brush deckBrush = new SolidBrush(EntityLiner.BodyColor);
|
Brush deckBrush = new SolidBrush(Color.Black);//черная палуба по умолчанию
|
||||||
// палуба
|
// палуба
|
||||||
Point[] firstDeck = {new Point(_startPosX + 30, _startPosY), new Point(_startPosX + 30 + 60, _startPosY),
|
Point[] firstDeck = {new Point(_startPosX + 30, _startPosY), new Point(_startPosX + 30 + 60, _startPosY),
|
||||||
new Point(_startPosX + 30 + 60, _startPosY + 20), new Point(_startPosX + 30, _startPosY + 20)};
|
new Point(_startPosX + 30 + 60, _startPosY + 20), new Point(_startPosX + 30, _startPosY + 20)};
|
||||||
|
|||||||
@@ -17,6 +17,10 @@ namespace Liner.Entities
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public bool Deck { get; private set; }
|
public bool Deck { get; private set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
/// Доп цвет
|
||||||
|
/// </summary>
|
||||||
|
public Color BodyColor { get; set; }
|
||||||
|
/// <summary>
|
||||||
/// Конструктор с параметрами
|
/// Конструктор с параметрами
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="speed">Скорость</param>
|
/// <param name="speed">Скорость</param>
|
||||||
@@ -25,10 +29,11 @@ namespace Liner.Entities
|
|||||||
/// <param name="bottomColor">Дополнительный цвет</param>
|
/// <param name="bottomColor">Дополнительный цвет</param>
|
||||||
/// <param name="deck">Признак наличия доп палубы</param>
|
/// <param name="deck">Признак наличия доп палубы</param>
|
||||||
/// <param name="swimmingPool">Признак наличия бассейна</param>
|
/// <param name="swimmingPool">Признак наличия бассейна</param>
|
||||||
public EntityBigLiner(int speed, double weight, Color bodyColor, Color bottomColor,bool deck, bool swimmingPool) : base(speed, weight, bodyColor,bottomColor)
|
public EntityBigLiner(int speed, double weight, Color bottomColor,Color bodyColor,bool deck, bool swimmingPool) : base(speed, weight, bottomColor)
|
||||||
{
|
{
|
||||||
Deck = deck;
|
Deck = deck;
|
||||||
SwimmingPool = swimmingPool;
|
SwimmingPool = swimmingPool;
|
||||||
|
BodyColor = bodyColor;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,10 +20,6 @@ namespace Liner.Entities
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Основной цвет
|
/// Основной цвет
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public Color BodyColor { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// Доп цвет
|
|
||||||
/// </summary>
|
|
||||||
public Color BottomColor { get; set; }
|
public Color BottomColor { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Шаг
|
/// Шаг
|
||||||
@@ -34,13 +30,11 @@ namespace Liner.Entities
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="speed">Скорость</param>
|
/// <param name="speed">Скорость</param>
|
||||||
/// <param name="weight">Вес лайнера</param>
|
/// <param name="weight">Вес лайнера</param>
|
||||||
/// <param name="bodyColor">Основной цвет</param>
|
/// <param name="bottomColor">Основной цвет</param>
|
||||||
/// <param name="bottomColor">Доп цвет</param>
|
public EntityLiner(int speed, double weight, Color bottomColor)
|
||||||
public EntityLiner(int speed, double weight, Color bodyColor, Color bottomColor)
|
|
||||||
{
|
{
|
||||||
Speed = speed;
|
Speed = speed;
|
||||||
Weight = weight;
|
Weight = weight;
|
||||||
BodyColor = bodyColor;
|
|
||||||
BottomColor = bottomColor;
|
BottomColor = bottomColor;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -113,7 +113,7 @@ namespace Liner
|
|||||||
{
|
{
|
||||||
case "labelSimpleObject":
|
case "labelSimpleObject":
|
||||||
_liner = new DrawingLiner((int)numericUpDownSpeed.Value,
|
_liner = new DrawingLiner((int)numericUpDownSpeed.Value,
|
||||||
(int)numericUpDownWeight.Value, Color.White, Color.Black, pictureBoxObject.Width,
|
(int)numericUpDownWeight.Value, Color.White, pictureBoxObject.Width,
|
||||||
pictureBoxObject.Height);
|
pictureBoxObject.Height);
|
||||||
break;
|
break;
|
||||||
case "labelModifiedObject":
|
case "labelModifiedObject":
|
||||||
@@ -150,7 +150,7 @@ namespace Liner
|
|||||||
case "labelAddColor":
|
case "labelAddColor":
|
||||||
if (!(_liner is DrawingBigLiner))
|
if (!(_liner is DrawingBigLiner))
|
||||||
return;
|
return;
|
||||||
(_liner as DrawingBigLiner).EntityLiner.BodyColor = (Color)e.Data.GetData(typeof(Color));
|
(_liner as DrawingBigLiner).SetAddColor((Color)e.Data.GetData(typeof(Color)));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
DrawLiner();
|
DrawLiner();
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ namespace Liner
|
|||||||
addColor = dialog.Color;
|
addColor = dialog.Color;
|
||||||
}
|
}
|
||||||
_drawingLiner = new DrawingLiner(random.Next(100, 300),
|
_drawingLiner = new DrawingLiner(random.Next(100, 300),
|
||||||
random.Next(1000, 3000), mainColor, addColor,
|
random.Next(1000, 3000), mainColor,
|
||||||
pictureBoxLiner.Width, pictureBoxLiner.Height);
|
pictureBoxLiner.Width, pictureBoxLiner.Height);
|
||||||
_drawingLiner.SetPosition(random.Next(10, 100), random.Next(10, 100));
|
_drawingLiner.SetPosition(random.Next(10, 100), random.Next(10, 100));
|
||||||
Draw();
|
Draw();
|
||||||
|
|||||||
Reference in New Issue
Block a user