Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Задача: Вывести на экран цветные точечки и указать, цветной обьект в консольном пр-ложении 
:(
    Опции темы
vikit
Дата 18.1.2009, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 18.1.2009

Репутация: нет
Всего: нет



Вот такую штуку мне надо на завтра здать:

Описать класс для представления цветных точек. Для точек задаются координаты и цвет при помощи трьох составляющих(красный, зеленый, синий, допустимый диапазон 0...255)
Должны быть определены: методы для для получения сейчашнего состояния обьекта, изменение цвета. В случае  получения некоректных значений должны возникать и обрабатыватся соответствующие исключения.

P.S. до этого писал только простые консольные прлижение где один класс и один метод, да и с цветом никогда не работал... кто шарит - разьясните пожалуйста!
Главное с цветом разшарится, а про классы и методы можно в инете почитать.
PM MAIL   Вверх
NightmareZ
Дата 19.1.2009, 00:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


[хакер]
**


Профиль
Группа: Участник
Сообщений: 699
Регистрация: 10.8.2006

Репутация: 1
Всего: 13



Код

using System;
using System.Drawing;

namespace My
{
    public class ColorPoint
    {
        private byte _red;
        private byte _green;
        private byte _blue;
        private int _x;
        private int _y;

        public ColorPoint(byte red, byte green, byte blue, int x, int y)
        {
            _red = red;
            _green = green;
            _blue = blue;

            _x = x;
            _y = y;
        }

        public ColorPoint(byte red, byte green, byte blue, Point point)
            : this(red, green, blue, point.X, point.Y)
        { }

        public ColorPoint(Color color, int x, int y)
            : this(color.R, color.G, color.B, x, y)
        { }

        public ColorPoint(Color color, Point point)
            : this(color.R, color.G, color.B, point.X, point.Y)
        { }

        public ColorPoint(byte red, byte green, byte blue)
            : this(red, green, blue, 0, 0)
        { }

        public ColorPoint(Color color)
            : this(color.R, color.G, color.B)
        { }

        public ColorPoint(int x, int y)
            : this(0, 0, 0, x, y)
        { }

        public ColorPoint(Point point)
            : this(point.X, point.Y)
        { }

        public ColorPoint()
            : this(0, 0, 0, 0, 0)
        { }

        public byte Red
        {
            get { return _red; }
            set { _red = value; }
        }

        public byte Green
        {
            get { return _green; }
            set { _green = value; }
        }

        public byte Blue
        {
            get { return _blue; }
            set { _blue = value; }
        }

        public int X
        {
            get { return _x; }
            set { _x = value; }
        }

        public int Y
        {
            get { return _y; }
            set { _y = value; }
        }

        public Color CurrentColor
        {
            get { return Color.FromArgb(255, _red, _green, _blue); }
            set
            {
                _red = value.R;
                _green = value.G;
                _blue = value.B;
            }
        }

        public Point CurrentCoords
        {
            get { return new Point(_x, _y); }
            set
            {
                _x = value.X;
                _y = value.Y;
            }
        }

        public void Draw(Graphics gfx)
        {
            using (Brush brush = new SolidBrush(Color.FromArgb(255, _red, _green, _blue)))
                gfx.FillRectangle(brush, _x, _y, 1, 1);
        }
    }
}



--------------------
NightmareZ.net - мой блог и сайт, мои проекты и прочий трэш
Ely-Art.ru - наша маленькая домашняя арт-студия
mugcraft.ru - кружки на любой вкус
PM WWW ICQ Skype GTalk AOL YIM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0804 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.