RGB =>> Default |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
RGB =>> Default |
Despot |
Сообщение
#1
|
Гость |
Как перевести пиксел из RGB палитры в обычную для Pascal (например, для 16 цветов?)
|
GLuk |
Сообщение
#2
|
Профи Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: 0 |
Что ты имеешь ввиду ??? :oНет такого понятия "пиксел из RGB палитры". Тама не пиксели, а значения составляющих. У меня есть только одно предположение, что ты хочешь этим выразить - возможно фишка в этом: тебе нужно урезать кол-во цветов с 256/16M до 16/4/2... или, может, ты просто не значешь как его прочитать. Короче, сформулируй вопрос поточнее
|
Shadow |
Сообщение
#3
|
Lonely_Raven Группа: Пользователи Сообщений: 640 Пол: Мужской Репутация: 1 |
SetRGBPalette (c,r,g,B);
c цвет r красный градац g зелен b синий может ето оно то что нада : -------------------- Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ --------------------- RTFM - Read the fucking manual --------------------- http://www.livejournal.com/users/lonley_raven/ |
Despot |
Сообщение
#4
|
Гость |
мне нужно прочитать информацию из bmp файла...
каждая точка в нем описана тремя значениями red green и blue ... а потом прочитанную информацию отобразить в граф. режиме Pascal... (проблема в том, как из знач. в rgb преобразовать в обычную для Pascal 16-цветную палитру) |
GLuk |
Сообщение
#5
|
Профи Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: 0 |
Вишь ли Despot "обычная для Pascal 16-цветная палитра" - это первые 16 цветов той самой RGB-палитры ;). Если ты спрашиваешь, как изменить вот эти первые 16 цветов, то код следующий (асм, паскаль):
Код asm mov dx,3C8h {Режим записи PEL-адреса} mov al,0 {Стартовый адрес регистра} out dx,al {Говорим об это ЦАП-у} inc dx {Запись данных} cld mov cx,16*3 {16 штук} push ds mov ds,word ptr P + 2 {Это адрес палитры} mov si,word ptr P {Этот код для переделанной палитры BGR -> RGB} @PalSet:lodsb {Получаем байт в AL} out dx,al {Посылаем в ЦАП} loop @PalSet pop ds mov ah,0 {Ждем клавишу} int 16h end; Procedure PaletteSet; Type RGB = record Red:Byte; Green:Byte; Blue:Byte; {Alpha:Byte; Это ежели под Win'95} end; Palette = array[1..256] of RGB; {На всякий случай - это массив для чтения палитры} Var P:^Palette; I:Integer; begin Port[$3C8]:=0; For i:=1 to 256 do begin Port[$3C9]:=P^[i].Blue DIV 4; {Что характерно - порядок обратный B=>G=>R, да и вывод изображения идет снизу вверх} Port[$3C9]:=P^[i].Green DIV 4; Port[$3C9]:=P^[i].Red DIV 4; end; end; Но если и это не то, дык выложил бы исходник, глянули бы. И сколько цветов картинка? |
Despot |
Сообщение
#6
|
Гость |
А если без asm? Я просто asm не знаю совсем, а потому не понимаю я этого программного кода и применить не могу ??? Да, и динамические структуры
постарайся не использовать... пожалуйста:-) |
GLuk |
Сообщение
#7
|
Профи Группа: Пользователи Сообщений: 775 Пол: Мужской Репутация: 0 |
Я ваще не понимаю, что тебе надо. Хочешь, оставь мыло и я скину на него исходник работы с BMP-форматом на Паскале... :o :o :o
|
Despot |
Сообщение
#8
|
Гость |
ЧТо мне надо?... Сколько уже можно объяснять?:-) :-/
Я прочитываю информацию из bmp файла... дохожу до информации о точках, собственно... считываю значения red green blue......... для точки. Как мне теперь эту точку отобразить на экране? если чего, то мыло: 2karmen@mail.ru |
Shadow |
Сообщение
#9
|
Lonely_Raven Группа: Пользователи Сообщений: 640 Пол: Мужской Репутация: 1 |
кину тебе библию ;D для работы с BMP
полность на ПАСЛЕ погодь трошки ----------- на 256 цевтов уместе с драевером svga256.bgi -------------------- Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ --------------------- RTFM - Read the fucking manual --------------------- http://www.livejournal.com/users/lonley_raven/ |
Alex |
Сообщение
#10
|
Бывалый Группа: Пользователи Сообщений: 201 Репутация: 0 |
Shadow, кинь мне тоже!PLZ!!
|
Shadow |
Сообщение
#11
|
Lonely_Raven Группа: Пользователи Сообщений: 640 Пол: Мужской Репутация: 1 |
УГУ кидаю УЖО :-*
-------------------- Программа делает то что вы ей приказали а не то что бы ВАМ хотелось бы.
МЕРФИ --------------------- RTFM - Read the fucking manual --------------------- http://www.livejournal.com/users/lonley_raven/ |
Slam |
Сообщение
#12
|
Пионер Группа: Пользователи Сообщений: 136 Пол: Мужской Репутация: 0 |
Поделись хорошей вещью komarik15@yandex.ru ;)
|
Текстовая версия | 23.12.2024 21:21 |