블로그 이미지
Leeway is... the freedom that someone has to take the action they want to or to change their plans.
maetel

Notice

Recent Post

Recent Comment

Recent Trackback

Archive

calendar

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
  • total
  • today
  • yesterday

Category

2007. 7. 6. 15:22 Code/NodeBox


size(400,400)
speed(15)

def setup():
    global mx
    global my
    global t

    global x0
    global y0
    global x1
    global y1
    global x2
    global y2
    global x3
    global y3
    global x4
    global y4
    global x5
    global y5
    global x6
    global y6
    global x7
    global y7
   
    global d
    global s
    global r
    global u
    global p
   
    t=20 #term
    mx=range(t)
    my=range(t)

    for n in range(t):
        mx[n]=-200
        my[n]=-200
       
    x0=range(t)
    y0=range(t)
    x1=range(t)
    y1=range(t)
    x2=range(t)
    y2=range(t)
    x3=range(t)
    y3=range(t)
    x4=range(t)
    y4=range(t)
    x5=range(t)
    y5=range(t)
    x6=range(t)
    y6=range(t)
    x7=range(t)
    y7=range(t)
   
    u=range(t)   
    p=range(t)
           
    d=10 #distance
    s=2 #initial size
    r=0.9 #ratio of size decreasing

   
def draw():
    global mx
    global my
    global t

    global x0
    global y0
    global x1
    global y1
    global x2
    global y2
    global x3
    global y3
    global x4
    global y4
    global x5
    global y5
    global x6
    global y6
    global x7
    global y7
   
    global d
    global s
    global r
    global u
    global p  
       
    for i in range(t-1):
        mx[i]=mx[i+1]
        my[i]=my[i+1]
       
        mx[t-1]=MOUSEX
        my[t-1]=MOUSEY

    rectc(mx[i],my[i],s,s)
   
    for i in range(t):       
        u[i]=(t-i)*5 #to controll the stages of popping
        p[i]=-i #to controll the sizes of popping
       
        x0[i]=mx[i]+u[i]
        y0[i]=my[i]
        x1[i]=mx[i]+u[i]
        y1[i]=my[i]+u[i]
        x2[i]=mx[i]
        y2[i]=my[i]+u[i]
        x3[i]=mx[i]-u[i]
        y3[i]=my[i]+u[i]
        x4[i]=mx[i]-u[i]
        y4[i]=my[i]
        x5[i]=mx[i]-u[i]
        y5[i]=my[i]-u[i]
        x6[i]=mx[i]
        y6[i]=my[i]-u[i]
        x7[i]=mx[i]+u[i]
        y7[i]=my[i]-u[i]
               
        rectc(x0[i], y0[i], s*(r**p[i]),s*(r**p[i]))
        rectc(x1[i], y1[i], s*(r**p[i]),s*(r**p[i]))
        rectc(x2[i], y2[i], s*(r**p[i]),s*(r**p[i]))
        rectc(x3[i], y3[i], s*(r**p[i]),s*(r**p[i]))
        rectc(x4[i], y4[i], s*(r**p[i]),s*(r**p[i]))
        rectc(x5[i], y5[i], s*(r**p[i]),s*(r**p[i]))
        rectc(x6[i], y6[i], s*(r**p[i]),s*(r**p[i]))
        rectc(x7[i], y7[i], s*(r**p[i]),s*(r**p[i]))
       
       
def rectc(xc,yc,w,h):
    x=xc-w/2
    y=yc-h/2
    rect(x,y,w,h)

## lesson 1. 마우스의 궤적을 따라 퍼져나가는 사각형들의 배열을 구성해 주는 range u변수는 전체 인덱스와 동일한 i에 관하여 정의되어야 한다.
##  또한, 새로운 자취일수록 그 배열의 진행 단계가 나중이어야, 즉 덜 퍼진 상태여야 하므로, "t(=range의 범위)-i"가 된다.
## 그러므로, 물론 사각형 배열의 크기를 (작아지게) 조절해 주는 range 변수 p도 i에 관하여 다시 정의해 주어야 한다.
  

'Code > NodeBox' 카테고리의 다른 글

popping_1.1  (0) 2007.07.09
popping_1.0 (수정 중)  (0) 2007.07.06
storing_test  (0) 2007.07.05
pop_test  (0) 2007.07.05
matrix_glimmer_dim  (0) 2007.07.04
posted by maetel