Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Semi - transparency za TBrush ???

[es] :: Pascal / Delphi / Kylix :: Semi - transparency za TBrush ???

[ Pregleda: 763 | Odgovora: 8 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

vortex77

Član broj: 91694
Poruke: 101
*.adsl.static.sezampro.yu.



Profil

icon Semi - transparency za TBrush ???30.06.2007. u 15:00

Kako da postignem semi-transparency za boje?

Problem je :
Imam dva polyline-a koja popunjavam sa 2 razlicite boje. Svaki od polyline-a ima svoj order po Z osi, tj. poredjani su jedan iza drugog. Treba postici da kada se delovi ovih "panela" preklapaju da se vidi i ona boja ispod (odnosno kombinacija 2 boje panela).

Mislim da je ovo najbolje resiti preko semi-transparency-a samih boja, ali ne znam kako da to odradim jer koliko sam video TBrush nema transparency....
30.06.2007. u 15:00 

viking13
Aleksandar Milanovic
Novi Beograd

Član broj: 131741
Poruke: 190
89.216.193.*



Profil

icon Re: Semi - transparency za TBrush ???30.06.2007. u 18:02
Citat:
vortex77: Kako da postignem semi-transparency za boje?
...
Mislim da je ovo najbolje resiti preko semi-transparency-a samih boja, ali ne znam kako da to odradim jer koliko sam video TBrush nema transparency....


To ćeš malo teže da izvedeš tako kako si zamislio.

Za takve stvari koristi GDI+.

http://www.progdigy.com/modules.php?name=gdiplus
viking ®
30.06.2007. u 18:02 

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 1467
*.adsl.sezampro.yu.



Profil

icon Re: Semi - transparency za TBrush ???30.06.2007. u 18:08
> Imam dva polyline-a koja popunjavam sa 2 razlicite boje. Svaki od polyline-a ima svoj order po Z osi, tj. poredjani su jedan iza drugog. Treba postici
> da kada se delovi ovih "panela" preklapaju da se vidi i ona boja ispod (odnosno kombinacija 2 boje panela).

Kako iscrtavaš ta dva objekta? Probaj sa BitBlt ima nekoliko flagova koji bi mogli da odgovaraju.
30.06.2007. u 18:08 

viking13
Aleksandar Milanovic
Novi Beograd

Član broj: 131741
Poruke: 190
89.216.193.*



Profil

icon Re: Semi - transparency za TBrush ???30.06.2007. u 18:49
Citat:
savkic: Kako iscrtavaš ta dva objekta? Probaj sa BitBlt ima nekoliko flagova koji bi mogli da odgovaraju.


Verovatno da može da se izvede, ali mislim da će tu da bude previše posla.

Ako je cilj izbeći Gdi+, možda je Graphics32 bolje rešenje?

http://graphics32.org/wiki/index.php
viking ®
30.06.2007. u 18:49 

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 1467
*.adsl.sezampro.yu.



Profil

icon Re: Semi - transparency za TBrush ???30.06.2007. u 23:06
> Verovatno da može da se izvede, ali mislim da će tu da bude previše posla.

Jedan osnovni DC na kome se nacrta prvi objekat, drugi DC na kome se nacrta drugi i onda se drugi spoji sa prvim, ništa komplikovano, dvadesetak linija koda.

30.06.2007. u 23:06 

viking13
Aleksandar Milanovic
Novi Beograd

Član broj: 131741
Poruke: 190
89.216.193.*



Profil

icon Re: Semi - transparency za TBrush ???30.06.2007. u 23:25
Citat:
savkic: > Verovatno da može da se izvede, ali mislim da će tu da bude previše posla.

Jedan osnovni DC na kome se nacrta prvi objekat, drugi DC na kome se nacrta drugi i onda se drugi spoji sa prvim, ništa komplikovano, dvadesetak linija koda.


Ovo apsolutno stoji kad je u pitanju full transparencija. To nije problem. Tu je stvarno potrebno nekoliko linija.

Mene brine ova polu transparencija. Kako ćeš da odrediš koliko je transparentan jedan u odnosu na drugi deo?

Verovatno da prvo treba odraditi smanjenje intenziteta oba dela, pa tek onda njihovo spajanje.

Znači potrebno je nekoliko BitBlt poziva, sa različitim parametrima. Plus što treba sesti i eksperimentisati kojim redosledom to mora da ide.

Mislim da nije toliko jednostavno i da si malo požurio.
viking ®
30.06.2007. u 23:25 

viking13
Aleksandar Milanovic
Novi Beograd

Član broj: 131741
Poruke: 190
89.216.193.*



Profil

icon Re: Semi - transparency za TBrush ???30.06.2007. u 23:46
Našao.

http://www.delphi-central.com/tutorials/AlphaBlend.aspx

Enjoy. :)


viking ®
30.06.2007. u 23:46 

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 1467
*.adsl.sezampro.yu.



Profil

icon Re: Semi - transparency za TBrush ???01.07.2007. u 00:08
> Mene brine ova polu transparencija. Kako ćeš da odrediš koliko je transparentan jedan u odnosu na drugi deo?
> Verovatno da prvo treba odraditi smanjenje intenziteta oba dela, pa tek onda njihovo spajanje.
> Znači potrebno je nekoliko BitBlt poziva, sa različitim parametrima. Plus što treba sesti i eksperimentisati kojim redosledom to mora da ide.
> Mislim da nije toliko jednostavno i da si malo požurio.

Shvatio sam da hoće samo da kombinuje dve boje i dobije treću, onaj deo u zagradi u njegovom pitanju me je naveo na pogrešan trag. Ako treba transparentnost, onda ne može BitBlt, mora Alpha blending i za to je Graphic32 dobro rešenje.
01.07.2007. u 00:08 

vortex77

Član broj: 91694
Poruke: 101
*.adsl.sezampro.yu.



Profil

icon Re: Semi - transparency za TBrush ???01.07.2007. u 17:13
Hvala!

Ovo je i vise nego sto mi je trebalo.... :))
01.07.2007. u 17:13 

[es] :: Pascal / Delphi / Kylix :: Semi - transparency za TBrush ???

[ Pregleda: 763 | Odgovora: 8 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.