Code: Select all
SCREEN 600, 400
Img = LoadImage("Media\soldier.bmp") // Pieni kuva
//Img = LoadImage("Media\map.bmp") // Iso kuva
Text 30, 20, "WrapImage_DatsuniG():"
Aika = Timer()
Img1 = WrapImage_DatsuniG(Img, 1)
Väliaika1 = Timer() - Aika : Aika = Timer()
Img2 = WrapImage_DatsuniG(Img, 2)
Väliaika2 = Timer() - Aika
Color cbwhite
DrawImage Img, 20, 50
Text 82, 62, "Alkuperäinen"
DrawImage Img1, 20, 100
Text 82, 112, "Mode 1 - Aikaa kului: " + Väliaika1 + "ms"
DrawImage Img2, 20, 150
Text 82, 162, "Mode 2 - Aikaa kului: " + Väliaika2 + "ms"
Line 305, 0, 305, 200
Text 330, 20, "WrapImage_Cerebro():"
Aika = Timer()
Img1 = WrapImage_Cerebro(Img, 1)
Väliaika1 = Timer() - Aika : Aika = Timer()
Img2 = WrapImage_Cerebro(Img, 2)
Väliaika2 = Timer() - Aika
Color cbwhite
DrawImage Img, 320, 50
Text 382, 62, "Alkuperäinen"
DrawImage Img1, 320, 100
Text 382, 112, "Mode 1 - Aikaa kului: " + Väliaika1 + "ms"
DrawImage Img2, 320, 150
Text 382, 162, "Mode 2 - Aikaa kului: " + Väliaika2 + "ms"
Line 0, 200, ScreenWidth(), 200
Text 250, 220, "ResizeImage:"
Aika = Timer()
Img1 = CloneImage(Img)
ResizeImage Img1, -ImageWidth(Img1), ImageHeight(Img1)
Väliaika1 = Timer() - Aika : Aika = Timer()
Img2 = CloneImage(Img)
ResizeImage Img2, ImageWidth(Img2), -ImageHeight(Img2)
Väliaika2 = Timer() - Aika
Color cbwhite
DrawImage Img, 200, 250
Text 262, 262, "Alkuperäinen"
DrawImage Img1, 200, 300
Text 262, 312, "Mode 1 - Aikaa kului: " + Väliaika1 + "ms"
DrawImage Img2, 200, 350
Text 262, 362, "Mode 2 - Aikaa kului: " + Väliaika2 + "ms"
DrawScreen
WaitKey
Function WrapImage_DatsuniG(img,mode)
img1 = MakeImage(ImageWidth(img),ImageHeight(img))
Lock Image(img)
Lock Image(img1)
Select mode
Case 1
For i=ImageWidth(img) To 0 Step -1
For a=ImageHeight(img) To 0 Step -1
PutPixel2 Abs(i),Abs(a),GetPixel2(ImageWidth(img)-i,ImageHeight(img)-a,Image(img)),Image(img1)
Next a
Next i
Case 2
For i=0 To ImageWidth(img)
For a=ImageHeight(img) To 0 Step -1
PutPixel2 i,Abs(a),GetPixel2(i,ImageHeight(img)-a,Image(img)),Image(img1)
Next a
Next i
Default
MakeError "Invalid mode!"
EndSelect
Unlock Image(img)
Unlock Image(img1)
Return img1
EndFunction
Function WrapImage_Cerebro(Img, Mode)
IW = ImageWidth(Img)
IH = ImageHeight(Img)
Ret = MakeImage(IW, IH)
Select Mode
Case 1
For I = 0 To IW
CopyBox I, 0, 1, IH, IW - I, 0, Image(Img), Image(Ret)
Next I
Case 2
For I = 0 To IH
CopyBox 0, I, IW, 1, 0, IH - I, Image(Img), Image(Ret)
Next I
Default
MakeError "Invalid mode!"
EndSelect
Return Ret
End Function