Login Register
Frontpage Code library Pastebin

MirrorImage

Author: MetalRain
Added: 15. toukokuuta 2011 kello 16.21
Edited: 15. toukokuuta 2011 kello 16.21
Category: Grafiikka

Description

Peilaa annetun kuvan vaaka ja/tai pystyasennossa ja palauttaa peilatun kuvan. Funktio jättää lähdekuvan koskemattomaksi. Huomattavasti nopeampi kuin ResizeImagen käyttö kuvan peilaukseen. MirrorImage(Simg,hor=1,ver=0,Dimg=0) Simg = Lähdekuva, joka käännetään (kuvamuuttuja) hor = peilataanko vaakasuunnassa (0 = ei, 1 = peilataan) ver = peilataanko pystysuunnassa (0 = ei, 1 = peilataan) Dimg = Kohdekuva, mikäli haluaa käyttää jo aiemmin luotua kuvaa (kuvamuuttuja)

Code

Select all
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Function MirrorImage(Simg,hor=1,ver=0,Dimg=0)

    w=ImageWidth(Simg)
    h=ImageHeight(Simg)
    
    If Dimg = 0 Then 
        Dimg=MakeImage(w,h)
    ElseIf ImageWidth(Dimg)<>w Or ImageHeight(Dimg)<>h Then 
        If dimg Then DeleteImage dimg
        dimg=MakeImage(w,h)
    EndIf 
    
    If hor Then 
        For x=0 To w-1
            CopyBox x,0,1,h,w-x,0,Image(Simg),Image(Dimg)     
        Next x
    EndIf
    
    If ver And hor Then temp = CloneImage(Dimg) Else temp = Simg

    If ver Then 
        For y=0 To h-1
            CopyBox 0,y,w,1,0,h-y,Image(temp),Image(Dimg)     
        Next y
    EndIf 
    
    If ver And hor Then DeleteImage temp
    
    Return Dimg
    
End Function 

Comments

No comments. You can be first!

Leave a comment

You must be logged in to comment.