2014-02-24 3 views
1

현재 프랙탈 생성 작업을하고 있으며 원하는 색상으로 무작위 화를 추가하려고하지만 프랙탈을 구현하고 원하는 사양으로 작동하도록했습니다. 현재무작위 화 색상 파이썬 프랙탈

나는 프로그램이 실행 된 후 임의의 색상으로 표시 할 전체 프랙탈 있지만 각 수준 또는 다른 임의의 색이되도록 각 다리에 대한 싶습니다, 나는 이것을 생성하기 위해 파이 게임을 사용하고 있습니다. 프랙탈 및 색상에 대한 RGB 값.

import pygame 
import random 
fractal_level = 3 
colblue = (0,61,103) 
colbk = (0,0,0) 


color = random.sample(xrange(0,255), 3) 
def fract_draw(x, y, width, height, count): 

    pygame.draw.line(screen,color,[x + width*.25,height//2+y],[x + width*.75,height//2+y],2) 
    pygame.draw.line(screen,color,[x+width*.25,(height*.5)//2+y],[x+width*.25,(height*1.5)//2+y],2) 
    pygame.draw.line(screen,color,[x + width*.75,(height*.5)//2+y],[x + width*.75,(height*1.5)//2+y],2) 

    if count > 0: 
     count -= 1 
     fract_draw(x, y,       width // 2, height // 2, count) 
     fract_draw(x + width // 2, y,    width // 2, height // 2, count) 
     fract_draw(x, y + width // 2,    width // 2, height // 2, count) 
     fract_draw(x + width // 2, y + width // 2, width // 2, height // 2, count) 


pygame.init() 
size = [750, 750] 
screen = pygame.display.set_mode(size) 
clock = pygame.time.Clock() 
screen.fill(colblue) 

fract_draw(0, 0, 750, 750, fractal_level)  
pygame.display.flip() 
clock.tick(20) 

코드 나는 아래 최소한의 코드를 유지하기 위해 시도 된 것 같은 SYS 출구와 파이 게임 종료와 함께 최적화 된 100 %가 아닌 경우 죄송합니다.

답변

0

간단한 방법 : 완벽했다

import pygame 
import random 
fractal_level = 3 
colblue = (0,61,103) 
colbk = (0,0,0) 

def fract_draw(x, y, width, height, count): 

    color = random.sample(xrange(0,255), 3) 
    pygame.draw.line(screen,color,[x + width*.25,height//2+y],[x + width*.75,height//2+y],2) 
    color = random.sample(xrange(0,255), 3) 
    pygame.draw.line(screen,color,[x+width*.25,(height*.5)//2+y],[x+width*.25,(height*1.5)//2+y],2) 
    color = random.sample(xrange(0,255), 3) 
    pygame.draw.line(screen,color,[x + width*.75,(height*.5)//2+y],[x + width*.75,(height*1.5)//2+y],2) 
+0

. 나는 그것을 매우 고맙게 여기며, 매우 우아한 결과를 얻었으며, 크게 감사드립니다. –