Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Вниз

Полупрозрачность   Найти похожие ветки 

 
Владимир2   (2002-09-03 10:32) [0]

Проблема.
Нужно получить эффект наложения на отрисованную область "затенённых стёкол" (залитые фигуры), при этом те участки области, которые "видны" через одно "стекло", затенены немного (по контуру "стекла"), через два "стекла" - больше, через три - ещё больше и т.д. Затенение "стёкол" - одинаковое.

Подскажите, пожалуйста:

1. Можно ли добиться такого эффекта, комбинируя режимы отрисовки, копирования, маски и т.п., без расчёта областей пересечения.

2. Каков порядок действий при этом. Кажется, перебрал все комбинации, ничего не получается. Смог только, если пересекаются два "стекла", больше - никак.

Заранее благодарю за помощь в решении этой "простой" задачи.


 
Ч а й н и к   (2002-09-03 17:18) [1]

Ну смотри:

можно по пиксельно просто изменять оттенок пикселя картинки.

например так:
var x,y:integer;OdnoSteklo:TColor;
begin
for x:=1 to image1.Width do
for y:=1 to image1.Height do
image1.Canvas.Pixels[x,y]:=image1.Canvas.Pixels[x,y] or OdnoSteklo;
end;

OdnoSteklo можешь задавать как после колор диалога так и програмно. Например OdnoSteklo:=$111111 . Тогда картинка посветлеет. Эксперементальным пуьем я думаю ты дальше справишься


 
SI-riuss   (2002-09-03 20:12) [2]

Да не мучайся:
http://g32.org/
Компонента Graphics32 - качай и радуйся. Тут все для 2Д-графики.


 
Ч а й н и к   (2002-09-03 22:37) [3]

А если вместо or поставишь and и число например $eeeeee то картинка сделается темнее.


 
Владимир2   (2002-09-04 10:45) [4]

Спасибо за ответы.

Чайнику: попиксельно - медленно, к тому же я не знаю какой области затенения принадлежит точка, нужны дополнительные проверки/вычисления.

SI-riuss: спасибо за ссылку. Я не знал об этой библиотеке.



Страницы: 1 вся ветка

Форум: "Media";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.006 c
14-51940
greenrul
2002-11-21 00:47
2002.12.16
MACINTOSH - какие IDE есть для него?


14-51886
Bublichek
2002-11-22 15:52
2002.12.16
ОПРОС


14-51926
Anatoly Podgoretsky
2002-11-23 14:34
2002.12.16
Именинники 23 ноября


3-51619
Bakch
2002-11-28 09:01
2002.12.16
Опять


6-51870
boolean
2002-10-07 13:40
2002.12.16
Help





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский