![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
natika |
|
|||
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 27.3.2014 Репутация: нет Всего: нет |
Добрый день пожскажите пожалуйста, я пишу программку которая определяет какой цвет получился из заданных трех цветов: красный, зеленый и синий то есть SetColor tester = new SetColor (255, 0, 0); конструктор ипользует три числа в диапазоне от 0 до 1, которые задают относительную долю красной, зеленой и синей составляющей цвета. у меня в програмке 13 цветов класса Color хранятся в TreeSet, и вот я не знаю есть ли способ что бы напрямую обращаться к Классу Color c этими тремя состовляющими что бы определить цвет, например я ввожу с клавиатуры три состовляюших цвета и возможно ли такое что бы диапазон не задавать самой например не расписывать с какого дипазона по какой получается такой то цвет а взять готовые расчеты уже из класса Color или так нельзя сделать?
|
|||
|
||||
Mirkes |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 586 Регистрация: 18.8.2011 Где: Красноярск Репутация: 7 Всего: 17 |
Ну и формулировочка ![]() Видимо 255 это число из диапазона 0-1. Вообще у класса Color есть конструкторы 1. public Color(int r, int g, int b) 2. public Color(float r, float g, float b) и много других. Если Вас интересует задание долями, то это второй конструктор. Однако, доли в конструкторе определяются как интенсивности красной, зеленой и синей составляющей цвета, что не есть "доля красной, зеленой и синей составляющей цвета". Поясняю. 1. Если r=g=b=1 это белый цвет, все три краски в равных долях. 2. Если r=g=b=0.5 это серый цвет, но три краски в равных долях. 3. Если r=g=b=0 это черный цвет, но три краски опять в равных долях. Вообще говоря пропорции смешения цветов задает что-то вроде оттенка, а вот их сумма - интенсивность. Надеюсь это поможет -------------------- Mirkes |
|||
|
||||
natika |
|
|||
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 27.3.2014 Репутация: нет Всего: нет |
А подскажите пожалуйста возможно ли с помощью этого конструктора public Color(int r, int g, int b) получить цвет из класса Color есть ли такая функция которая если я ввожу три цвета она возвращает результат цвета из класса Color, например я ввожу public Color(255, 0, 0) а функция возвращает что это красный цвет. или такую функцию нужно вручную делать и диапазон цвета тоже вручную определять? |
|||
|
||||
Mirkes |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 586 Регистрация: 18.8.2011 Где: Красноярск Репутация: 7 Всего: 17 |
А слабо открыть текст класса Color?
Вот цвета, определенные в нем:
Но названий цветов он Вам не даст, поскольку их у него у самого нету. В принципе Вы можете создать массив из grb и сравнивать с ним Ваш цвет Или еще можно через map. Начал писать и понял, что не понимаю вопроса. Красный цвет определяется именно так, как Вы написали
Посему если вы вызовете new Color(255, 0, 0), то точно получите красный цвет. А можете просто сказать Color.red; Результат будет тот же. Или Вы хотите, что бы он Вам писал "Красный". Уточните, что Вам нужно, а то глупо отвечать на не заданный вопрос ![]() -------------------- Mirkes |
||||
|
|||||
natika |
|
|||
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 27.3.2014 Репутация: нет Всего: нет |
Спасибо Вам за информацию, я смотрела текст класса Color и знаю диапазон этих цветов,
![]() |
|||
|
||||
Pawl |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 649 Регистрация: 22.4.2008 Где: Витебск Репутация: 7 Всего: 28 |
поэтому лучше выложите код с комментариями ![]() -------------------- В действительности всё совсем не так, как на самом деле |
|||
|
||||
natika |
|
|||
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 27.3.2014 Репутация: нет Всего: нет |
||||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |