Fabric

By BlueThen on May 09, 2009

Image

;Fabric
;Made by BlueThen on May 9th, 2009.
;To install, paste the script in your Remotes (alt + r)
;Then type /fabric or right click the channel or status and click "Fabric"
menu channel,status {
  Fabric: Fabric
}
alias Fabric {
  window -paoCzdk0 +tnbL @Fabric -1 -1 400 400
  %fab.z = 1
  %fab.x = 12
  while (%fab.x) {
    %fab.y = 12
    while (%fab.y) {
      hadd -m X %fab.z $calc(16* %fab.x)
      hadd -m Z %fab.z $calc(16* %fab.y)
      hadd -m D %fab.z $fab.d($hget(x,%fab.z), $hget(z,%fab.z),96,96)
      inc %fab.z
      dec %fab.y
    }
    dec %fab.x
  }
  set %fab.a 1
  fab.frame
}
alias -l fab.frame {
  if ($window(@fabric)) {
    clear -n @fabric
    drawfill -n @fabric 1 1 1 1
    %fab.z = 144
    while (%fab.z) {
      %fab.y = $calc(150+15* $sin($calc(%fab.a + $hget(D, %fab.z)*3)).deg)
      %fab.r = $calc(127.52+127.52* $sin($calc(%fab.a + $hget(D, %fab.z)*3)).deg)
      drawdot -nr @fabric $rgb(%fab.r,%fab.r,%fab.r) 5 $fab.iso($hget(x,%fab.z),%fab.y,$hget(z,%fab.z)) 
      dec %fab.z
    }
    dec %fab.a 10
    drawline @fabric
    .timer 1 0 fab.frame
  }
  else {
    unset %fab.*
    hfree X
    hfree Z
    hfree D
  }
}
alias fab.iso return $calc(($1 - $3)*0.866+200) $calc(($1 + $3)*0.5- $2 +230)
alias fab.d return $calc((($3 - $1)^2+($4 - $2)^2)^0.5)

Comments

Sign in to comment.
d8e93jf9vwp   -  Aug 24, 2010

This is madness.

 Respond  
knoeki   -  May 10, 2009

awesome effect... you should totally make a whole demo with picwin stuff :_)

 Respond  
BlueThen   -  May 09, 2009

Thanks.

 Respond  
SumWon   -  May 09, 2009

Wow! That is really cool. Gratz on the 50 snippets BT.

 Respond  
^Neptune   -  May 09, 2009

How the hell are you so good at math. :|

 Respond  
PuNkTuReD   -  May 09, 2009

you love your picwins dont ya m8?
always something fresh!
good work ma8.

 Respond  
Aucun50   -  May 09, 2009

That's neat, congrats on the 50 snippets.

 Respond  
BlueThen   -  May 09, 2009

50 snippets!

 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.