Создать класс Point (точка). На его основе создать классы ColoredPoint и Line - C#
Формулировка задачи:
Необходимо:
Создать класс Point (точка). На его основе создать классы ColoredPoint и Line
(линия). На основе класса Line создать классы ColoredLine и PolyLine (многоугольник).
В классах описать следующие элементы:
• конструкторы с параметрами и конструкторы по умолчанию;
• свойства для установки и получения значений всех координат, а также для
изменения цвета и получения текущего цвета;
• для линий — методы изменения угла поворота линий относительно первой
точки;
• для многоугольника — метод масштабирования. Создать класс Point (точка). На его основе создать классы ColoredPoint и Line
(линия). На основе класса Line создать классы ColoredLine и PolyLine (многоугольник).
В классах описать следующие элементы:
• конструкторы с параметрами и конструкторы по умолчанию;
• свойства для установки и получения значений всех координат, а также для
изменения цвета и получения текущего цвета;
• для линий — методы изменения угла поворота линий относительно первой
точки;
• для многоугольника — метод масштабирования.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Lb9
{
class Poin
{
protected int Xpos;
protected int Ypos;
public Poin(int x, int y)
{
Xpos = x;
Ypos = y;
}
public virtual void Draw()
{
Console.WriteLine("Poin in: ({0},{1})", Xpos, Ypos);
}
}
class ColorPoint : Poin
{
string clr;
public ColorPoint(int x, int y, string color)
: base(x, y)
{
clr = color;
}
public override void Draw()
{
Console.WriteLine("Point in: ({0},{1}) color: {2}", Xpos, Ypos, clr);
}
}
class Line : Poin
{
protected int Xo;
protected int Yo;
public Line(int x, int y, int a, int u)
: base(x, y)
{
Xo = a;
Yo = u;
}
public override void Draw()
{
Console.WriteLine("Line in: Начальная точка ({0},{1}) конечная точка ({2},{3}) ", Xpos, Ypos, Xo, Yo);
}
}
class ColoredLine : Line
{
string clr;
public ColoredLine(int x, int y, int a, int u, string color)
: base(x, y, a, u)
{
Xo = a;
Yo = u;
clr = color;
}
public override void Draw()
{
Console.WriteLine("Line in: Начальная точка ({0},{1}) конечная точка ({2},{3}) color: {4} ", Xpos, Ypos, Xo, Yo, clr);
}
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Родительский класс point");
Console.WriteLine("point введите координату X ");
int k = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("point введите координату Y ");
int l = Convert.ToInt16(Console.ReadLine());
Poin onepoint = new Poin(k, l);
onepoint.Draw();
Console.WriteLine();
Console.WriteLine();
Console.WriteLine("Дочерний класс ColorPoint");
Console.WriteLine("ColorPoint введите координату X ");
k = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("ColorPoint введите координату Y ");
l = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("ColorPoint введите цвет");
string s = Console.ReadLine();
Poin pt = new ColorPoint(k, l, s);
pt.Draw();
Console.WriteLine();
Console.WriteLine();
Console.WriteLine("Класс Line, образован от класса Point ");
Console.WriteLine("Line введите координату X ");
k = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("Line введите координату Y ");
l = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("Координаты конца линии ");
Console.WriteLine("Line введите координату X ");
int m = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("Line введите координату Y ");
int z = Convert.ToInt16(Console.ReadLine());
Poin lin = new Line(k, l, m, z);
lin.Draw();
Console.WriteLine();
Console.WriteLine();
Console.WriteLine("Класс ColoredLine, образован от класса Line ");
Console.WriteLine("ColoredLine введите координату X ");
k = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("ColoredLine введите координату Y ");
l = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("Координаты конца линии ");
Console.WriteLine("ColoredLine введите координату X ");
m = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("ColoredLine введите координату Y ");
z = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("ColorLine введите цвет");
s = Console.ReadLine();
Poin cln = new ColoredLine(k, l, m, z, s);
cln.Draw();
Console.WriteLine();
Console.WriteLine();
Console.ReadLine();
}
}
}Помогите в составлении дефолтных конструкторов (и как их наполнить), дополнительных методов и класса полигона.
Решение задачи: «Создать класс Point (точка). На его основе создать классы ColoredPoint и Line»
textual
Листинг программы
Poin onepoint = new Poin(2, 6);