Advertisement
Guest User

Untitled

a guest
Jun 11th, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. SCREEN 400,300
  2. 'Const sw=400
  3. 'Const sh=300
  4. sw=200
  5. sh=150
  6. SCREEN sw,sh,0,2
  7. Smooth2D ON
  8. kuva=LoadImage("media/map.bmp")
  9. ResizeImage kuva,sw,sh
  10. DrawImage kuva,0,0
  11. DrawScreen
  12. Dim offset(sw,sh,1) As Float
  13. Dim col(sw,sh,2)
  14. 'Lock' Image(kuva)
  15. For x=1 To sw-1
  16.     For y=1 To sh-1
  17.         ox=0
  18.         oy=0
  19.         For xx=-1 To 1
  20.             For yy=-1 To 1
  21.                 PickImageColor kuva,x+xx,y+yy
  22.                 If xx And yy Then
  23.                     c=((getRGB(RED)+getRGB(GREEN)+getRGB(BLUE)))/3
  24.                     'v=GetPixel(x+xx,y+yy)
  25.                    
  26.                     If xx=0 And yy=0 Then d=c
  27.                     d=Distance(0,0,xx,yy)
  28.                     ox=ox+c*xx/d
  29.                    
  30.                     oy=oy+c*yy/d
  31.                 Else
  32.                     col(x,y,0)=getRGB(RED)
  33.                     col(x,y,1)=getRGB(GREEN)
  34.                     col(x,y,2)=getRGB(BLUE)
  35.                 EndIf
  36.             Next yy
  37.         Next xx
  38.         'SetWindow ""+ox
  39.         'normalisoini tΓ€nne
  40.         offset(x,y,0)=ox'-d*3
  41.         offset(x,y,1)=oy'-d*3
  42.     Next y
  43.     SetWindow ""+(x/2)
  44. Next x
  45. 'Unlock
  46.  
  47.  
  48. Repeat
  49.     t=Timer()/3
  50.     x1=sw/2+Sin(t/5)*sw/3
  51.     x2=sw/2+Sin(t/7)*sw/3
  52.     x3=sw/2+Sin(t/11)*sw/3
  53.     y1=sh/2+Sin(t/7)*sh/3
  54.     y2=sh/2+Sin(t/11)*sh/3
  55.     y3=sh/2+Sin(t/13)*sh/3
  56.     Lock
  57.    
  58.     For x=1 To sw-1
  59.         a= Not a
  60.         For y=1+a To sh-2 Step 2
  61.             'v3=ATan(20/Distance(x3,y3,x+offset(x,y,0),y+offset(x,y,1)))
  62.             'v2=ATan(20/Distance(x2,y2,x+offset(x,y,0),y+offset(x,y,1)))
  63.             'v=ATan(20/Distance(x1,y1,x+offset(x,y,0),y+offset(x,y,1)))
  64.             'PutPixel2 x,y,'v+v2 shl 8 +v3 shl 16'<>0)*255
  65.             v#=ATan(20/Distance(x1,y1,x+offset(x,y,0),y+offset(x,y,1)))/90
  66.             v3#=ATan(20/Distance(x3,y3,x+offset(x,y,0),y+offset(x,y,1)))/90
  67.             v2#=ATan(20/Distance(x2,y2,x+offset(x,y,0),y+offset(x,y,1)))/90
  68.             'v#=valo(int(x+offset(x,y,0)+256+sw+x1),Int(y+offset(x,y,1)+256+sh)+x2)
  69.             PutPixel2 x,y,Int(col(x,y,0)*v Shl 16+col(x,y,1)*v2 Shl 8+col(x,y,2)*v3)
  70.             'CopyBox int(x+offset(x,y,0)),Int(y+offset(x,y,1)),1,1,x-sw/2,y-sh/2,Image(kuva),SCREEN()
  71.         Next y
  72.     Next x
  73.     Unlock
  74.     SetWindow ""+FPS()
  75.     DrawScreen OFF
  76. Forever
  77. WaitKey
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement