Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.16;
Скачать: CL | DM;

Вниз

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

 
Владимир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 вся ветка

Текущий архив: 2002.12.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
4-51995
Lexa1900
2002-11-02 20:36
2002.12.16
Можно ли получить handle компонента от нажатия мышки?


4-52019
Sergei_tlt
2002-11-04 22:10
2002.12.16
Помогите понять


14-51956
danilka
2002-11-26 09:30
2002.12.16
разбор математических выражений


4-52036
NT
2002-11-05 07:33
2002.12.16
опрос по копированию


3-51577
Yury
2002-11-27 11:19
2002.12.16
Connect to Exchange Server