forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Blitz3D (http://forum.boolean.name/forumdisplay.php?f=45)
-   -   Pixel (http://forum.boolean.name/showthread.php?t=11810)

is.SarCasm 29.01.2010 17:36

Pixel
 
При сохранение цвета пикселя read пикселем то выводит цифры например белый -1 а какой-то другой что то типа: -1780...
Программа та расшифрует (write pixel), а мне как? Мне нужно узнать РГБ пикселя а не это.

impersonalis 29.01.2010 17:47

Ответ: Pixel
 
http://forum.boolean.name/showthread.php?t=1090
не самый лучший алгоритм - ищи по форуму

вот как зпаковать:
http://forum.boolean.name/showpost.p...3&postcount=12
в общем - http://www.google.com/search?client=...utf-8&oe=utf-8

ABTOMAT 29.01.2010 17:49

Ответ: Pixel
 
это AARRGGBB
int, в котором первый байт указывает на альфу, второй - на красный канал, и т.д.
битовым сложением/умножением вытащи из него нужное

* Алгоритм имепра и правда не труЪ.
Вот нарыл обратную операцию:
Function ARGB(A#,R,G,B)
Return (Int(A*255) Shl 24) Or (R Shl 16) Or (G Shl 8) Or B
End Function
Надеюсь, поймёшь как сделать то что тебе нужно.
Ищи на Blitzetc'е, там статьи соотв. были.

К примеру, вот:
http://blitzetc.blitzmax.ru/index.ph...%D0%BA%D0% B8

is.SarCasm 30.06.2010 23:12

Ответ: Pixel
 
Нда, хотел решить эту задачку сам, но фиг! В интернете никаких данных не нашел, только если мне доно будет ARGB, но только не в блице. Короче у меня нихрена не вышло. Мда я задавал этот вопрос не только на этом форуме, всего ответов - 4. И то не полные.
Вот тут то что я наговнокодил, первая фунция неправильно работает, а вторая сверхнеправильно:
Цитата:

Function ConvertTOrgb(aarrggbb)
Local pix = aarrggbb
a=(pix And $FF000000) Shr 24
r=(pix And $FF0000) Shr 16
g=(pix And $FF00) Shr 8
b=(pix And $FF)
Print r
Print g
Print b
WaitKey
End Function


Function ConvertTOaarrggbb(r,g,b)

Print (Int(255) Shl 24) Or (R Shl 16) Or (G Shl 8 ) Or B
WaitKey()
End Function

Reizel 30.06.2010 23:50

Ответ: Pixel
 
а чо тебе не нравится GetColor???

Я сам не знаю как из ARGB to RGB конвертнуть :)

Скорость вродь немногим больше...
И вообще, igorian, Учи лучше C#, тебе ее изучить будет просто, тем более один товарищ пишет враппер к хорсу...В общем на сях вродь легче с этим битовым сложением - вычитанием - умножением???

is.SarCasm 30.06.2010 23:54

Ответ: Pixel
 
Да я понял что легче, но головоломка неплохая.

2Павел Я и так сейчас частично с++ учу. Вот доучу свою часть, посмотрю что там с с# (а если ксорс то гуд, может я когда нить сделаю свои танки, какими я хотел их сделать )

Reizel 01.07.2010 00:26

Ответ: Pixel
 
Igorian, бросай ты это дело неблагодарное - С++ сложен как поступление в МГУ на бесплатной основе :-D
А C# даж я выучил. Вообще легко.
UPD там в 10 раз быстрее блица :)

is.SarCasm 01.07.2010 00:29

Ответ: Pixel
 
Предлагаю не засырать тему. Зайди в асю и там поговорим. У меня еще остались незаконченные дела на блице, которые того стоят. Помести свой пост в оффтоп

Dream 01.07.2010 02:37

Ответ: Pixel
 
Цитата:

Сообщение от Павел (Сообщение 152348)
Igorian, бросай ты это дело неблагодарное - С++ сложен как поступление в МГУ на бесплатной основе :-D
А C# даж я выучил. Вообще легко.
UPD там в 10 раз быстрее блица :)

то что ты называешь "выучил" на самом деле, поверхностные понятие о синтаксисе языка)


Часовой пояс GMT +4, время: 11:20.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot