1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| art88 |
18.02.2006 15:54
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 40 Пол: Мужской Реальное имя: Артём Репутация: 0 |
Здача:
Изобразить расположенный на поверхности гладкий красный шар(освещённый). ------------------------------------------------- Проблема: Думаю, что большую часть этой задачи я решил(см. Globe.pas). Осталось правильно раскрасить шар. Вот формула яркоти поверхности I= kр Iр + kн Iнcos(a) kр - коэффициент отражения рассеянного света (kд<1); kн - коэффициент отражения направленного света; Iр - интенсивность рассеянного света; Iн - интенсивность падающего света; а - угол между направлением света и нормалью к поверхности. I у меня считается, вопрос только в том, как задать оттенки красного. Пробовал в цикле менять угол от 0 до пи, считать I и делать SetRGBPalette(j, $FF*I, 00, 00), но кроме красного откуда-то берутся и другие цвета. Помогите пожалуйста! (Для тех, у кого не читаются комментарии globe.doc) Прикрепленные файлы
GLOBE.PAS ( 3.69 килобайт )
Кол-во скачиваний: 191 |
![]() ![]() |
| volvo |
18.02.2006 16:07
Сообщение
#2
|
|
Гость |
Пробовал в цикле менять угол от 0 до пи, считать I и делать SetRGBPalette(j, $FF*I, 00, 00), но кроме красного откуда-то берутся и другие цвета. Из TP Хелпа по процедуре SetRgbPalette: Цитата(TP Help) Restrictions: У тебя IBM8514?SetRGBPalette can be used only with the IBM 8514 driver and the VGA. Насколько я вижу, у тебя вообще 16-цветный режим устанавливается... Как же ты хочешь в нем получить НЕСКОЛЬКО оттенков красного? Попробуй использовать 256-цветный (например, SVGA.BGI) |
art88 Трёхерная графика. Шар 18.02.2006 15:54
art88 Ну, хорошо, подключил я SVGA.bgi(Globe2.pas).
А ка... 18.02.2006 18:06
volvo Посмотрел я твою программу... :blink:
I у меня с... 19.02.2006 13:47
art88 Хорошо, тогда у меня ещё вопрос, где можно найти в... 19.02.2006 17:12
art88 Я тут уже почти доделал программу, она изображает ... 12.03.2006 18:20![]() ![]() |
|
Текстовая версия | 8.12.2025 5:40 |