overlay?
Übersicht

![]() |
matzBetreff: overlay? |
![]() Antworten mit Zitat ![]() |
---|---|---|
moin!
...wollte mal wissen, ob es möglich ist, dass eine bei einem bild einfarbige fläche (zb 255,0,0) durch ein anderes bild bedeckt wird... (overlay/bluebox-effekt) ...würd mich über ein code-beispiel freuen! grüße matz |
||
![]() |
Clonker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hier mal ein Codebeispiel.
Du brauchst zwei Bilder dafür. image2 ist das Hintergrundbild. image ist das eigenliche Bild. Bei blauanteil kannst du einstellen ab welchem blauanteil der Hintergrund gezeichnet werden soll. Code: [AUSKLAPPEN] image2 = LoadImage("Bild2.bmp") ;Hier änderbar image = LoadImage("Bild1.bmp") ;Hier änderbar blauanteil = 200 ;Hier ändern save=0 ;Hier änderbar IW = imagewidth(image) IH = imageHeight(image) Dim bild(IW,IH,3) Dim bild2(IW,IH,3) Graphics IW,IH,32,2 image = LoadImage("Bild1.bmp") image2 = LoadImage("Bild2.bmp") ;bilder in den speicher lesen DrawImage image,0,0 LOCKBUFFER FRONTBUFFER() For x=0 to IW For y=0 To IH rgb=READPIXELFAST(x,y) r=(rgb AND $FF0000)/$10000 g=(rgb AND $FF00)/$100 b=rgb AND $FF a=(rgb AND $FF000000)/$1000000 bild(x,y,0) = rgb bild(x,y,1) = r bild(x,y,2) = g bild(x,y,3) = b NExt next UNLOCKBUFFER FRONTBUFFER() DrawImage image2,0,0 LOCKBUFFER FRONTBUFFER() For x=0 to IW For y=0 To IH rgb=READPIXELFAST(x,y) r=(rgb AND $FF0000)/$10000 g=(rgb AND $FF00)/$100 b=rgb AND $FF a=(rgb AND $FF000000)/$1000000 bild2(x,y,0) = rgb bild2(x,y,1) = r bild2(x,y,2) = g bild2(x,y,3) = b NExt next UNLOCKBUFFER FRONTBUFFER() cls Color 255,0,0 Text IW/2-50,IH/2,"Taste drücken zu fortsetzen..." waitkey tempsecalt = Millisecs() temp = createImage(IW,IH) SetBuffer ImageBuffer(temp) LOCKBUFFER For x=0 to IW For y=0 To IH if bild(x,y,3) > blauanteil Then rgb=bild2(x,y,0) Else rgb=bild(x,y,0) Endif WritePixelFast x,y,rgb NExt next UNLOCKBUFFER SetBuffer FrontBuffer() cls DrawImage temp,0,0 IF save = 1 Then SaveImage("bild.bmp", temp) Endif Waitkey() End Achja wictig dabei ist dass die Bilder gleichgroß sind. |
||
Die exzessive Akkumulation von Fremdwörtern suggeriert pseudointellektuelle Kompetenz.
Athlon XP 2800|Radeon 9600 Pro|512MB DDR RAM|240GB Festplatte |
![]() |
matz |
![]() Antworten mit Zitat ![]() |
---|---|---|
;Achja wictig dabei ist dass die Bilder gleichgroß sind.
...kann das "eigentliche bild" nicht größer sein und zb. mit den pfeiltasten durchgescrollt werden? |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group