Français
Source/ Codesnippets

Effekte Grafische

 
grafisches Aufhellen / Abdunkeln

je denke cet beiden Prozeduren expliquer sich selbst, sommes pas qui schnellsten, mais marcher et se mettre un bisl qui Funktionsweise solcher Operationen dar.
KompilierenMarqueSéparation
proc void_gfxbright

    parameters x%,y%,xx%,yy%
    declare q%,w%,rr%,gg%,bb%,p&
    w%=y%

    while lt(w%,yy%)

        q%=x%

        while lt(q%,xx%)

            p&=getpixel(q%,w%)
            rr%=getrvalue(p&)
            gg%=getgvalue(p&)
            bb%=getbvalue(p&)
            rr%=(255-rr%)/5+rr%
            gg%=(255-gg%)/5+gg%
            bb%=(255-bb%)/5+bb%
            setpixel q%,w%,rgb(rr%,gg%,bb%)
            add q%,1

        wend

        add w%,1

    wend

endproc


KompilierenMarqueSéparation
proc void_gfxdark

    parameters x%,y%,xx%,yy%
    declare q%,w%,rr%,gg%,bb%,p&
    w%=y%

    tandis que lt(w%,yy%)

        q%=x%

        tandis que lt(q%,xx%)

            p&=getpixel(q%,w%)
            rr%=getrvalue(p&)
            gg%=getgvalue(p&)
            bb%=getbvalue(p&)
            rr%=rr%-(rr%/6)
            gg%=gg%-(gg%/6)
            bb%=bb%-(bb%/6)
            setpixel q%,w%,rgb(rr%,gg%,bb%)
            add q%,1

        Wend

        add w%,1

    Wend

endproc


Grafische Effekte de Sebastian König:
KompilierenMarqueSéparation
proc Graustufen

    parameters startx%,starty%,endx%,endy%
    declare x%,y%
    declare r%,g%,b%
    let x%=startx%
    let y%=starty%
    let endx%=@add(startx%,endx%)
    let endy%=@add(starty%,endy%)

    tandis que @Lt(y%,endy%)

        tandis que @Lt(x%,endx%)

            let r%=@div&(@add(@add(@GetRValue(@GetPixel(% X, y%)),@GetGValue(
            @GetPixel(% X, y%))),@GetBValue(@GetPixel(% X, y%))),3)
            let g%=r%
            let b%=g%
            SetPixel % X, y%,@RGB(r%,g%,b%)
            inc x%

        Wend

        let x%=startx%
        inc y%

    Wend

endproc


KompilierenMarqueSéparation
proc Weichzeichnen

    parameters startx%,starty%,endx%,endy%
    declare x%,y%
    declare r%,g%,b%
    let x%=startx%
    let y%=starty%
    let endx%=@sub(@add(startx%,endx%),1)
    let endy%=@sub(@add(starty%,endy%),1)

    tandis que @Lt(y%,endy%)

        tandis que @Lt(x%,endx%)

            let r%=@div&(@add(@add(@GetRValue(@getPixel(% X, y%)),@GetRValue(@getPixel(@add(% X,1),y%))),
            @GetRValue(@getPixel(x%,@add(y%,1)))),3)
            let g%=@div&(@add(@add(@GetGValue(@getPixel(% X, y%)),@GetGValue(@getPixel(@add(% X,1),y%))),
            @GetGValue(@getPixel(x%,@add(y%,1)))),3)
            let b%=@div&(@add(@add(@GetBValue(@getPixel(% X, y%)),@GetBValue(@getPixel(@add(% X,1),y%))),
            @GetBValue(@getPixel(x%,@add(y%,1)))),3)
            SetPixel % X, y%,@RGB(r%,g%,b%)
            inc x%

        Wend

        let x%=startx%
        inc y%

    Wend

endproc


KompilierenMarqueSéparation
proc Stark_Weichzeichnen

    parameters startx%,starty%,endx%,endy%
    declare x%,y%
    declare r%,g%,b%
    declare value1%,value2%,value3%,value4%,value5%
    let x%=@add(startx%,1)
    let y%=@add(starty%,1)
    let endx%=@sub(@add(startx%,endx%),1)
    let endy%=@sub(@add(starty%,endy%),1)

    tandis que @Lt(y%,endy%)

        tandis que @Lt(x%,endx%)

            let value1%=@getRValue(@GetPixel(% X, y%))
            let value2%=@getRValue(@GetPixel(@add(% X,1),y%))
            let value3%=@getRValue(@GetPixel(x%,@add(y%,1)))
            let value4%=@getRValue(@getPixel(@sub(% X,1),y%))
            let value5%=@getRValue(@getPixel(x%,@sub(y%,1)))
            let r%=@div&(@add(@add(@add(value1%,value2%),@add(value3%,value4%)),value5%),5)
            let value1%=@getGValue(@GetPixel(% X, y%))
            let value2%=@getGValue(@GetPixel(@add(% X,1),y%))
            let value3%=@getGValue(@GetPixel(x%,@add(y%,1)))
            let value4%=@getGValue(@getPixel(@sub(% X,1),y%))
            let value5%=@getGValue(@getPixel(x%,@sub(y%,1)))
            let g%=@div&(@add(@add(@add(value1%,value2%),@add(value3%,value4%)),value5%),5)
            let value1%=@getBValue(@GetPixel(% X, y%))
            let value2%=@getBValue(@GetPixel(@add(% X,1),y%))
            let value3%=@getBValue(@GetPixel(x%,@add(y%,1)))
            let value4%=@getBValue(@getPixel(@sub(% X,1),y%))
            let value5%=@getBValue(@getPixel(x%,@sub(y%,1)))
            let b%=@div&(@add(@add(@add(value1%,value2%),@add(value3%,value4%)),value5%),5)
            SetPixel % X, y%,@RGB(r%,g%,b%)
            inc x%

        Wend

        let x%=startx%
        inc y%

    Wend

endproc


KompilierenMarqueSéparation
proc Halbton

    parameters startx%,starty%,endx%,endy%
    declare x%,y%
    declare color%
    let x%=startx%
    let y%=starty%
    let endx%=@add(startx%,endx%)
    let endy%=@add(starty%,endy%)

    tandis que @Lt(y%,endy%)

        tandis que @Lt(x%,endx%)

            let color%=@div&(@add(@add(@GetRValue(@GetPixel(% X, y%)),@GetGValue(
            @GetPixel(% X, y%))),@GetBValue(@GetPixel(% X, y%))),3)
            cas @equ(color%,@div&(255,2)) : let color%=@RGB(255,255,255)
            cas @Lt(color%,@div&(255,2))  : let color%=@RGB(0,0,0)
            cas @Gt(color%,@div&(255,2))  : let color%=@RGB(255,255,255)
            SetPixel x%,y%,color%
            inc x%

        Wend

        let x%=startx%
        inc y%

    Wend

endproc

 
23.03.2004  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

2.321 Views

Untitledvor 0 min.
p.specht12.12.2021
Sven Bader16.11.2021
Normann Strübli31.03.2020
iF03.06.2018
plus...

Themeninformationen

cet Thema hat 1 participant:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie