Python 随机颜色分形
我目前正在进行分形生成,我已经按照我想要的规格构建了分形并发挥了作用,尽管我希望向它添加随机着色。目前 程序运行后,我将整个分形显示为随机颜色,但我希望分形的每个级别甚至每个分支都是不同的随机颜色,我使用pygame生成此分形和颜色的RGB值Python 随机颜色分形,python,random,colors,rgb,Python,Random,Colors,Rgb,我目前正在进行分形生成,我已经按照我想要的规格构建了分形并发挥了作用,尽管我希望向它添加随机着色。目前 程序运行后,我将整个分形显示为随机颜色,但我希望分形的每个级别甚至每个分支都是不同的随机颜色,我使用pygame生成此分形和颜色的RGB值 import pygame import random fractal_level = 3 colblue = (0,61,103) colbk = (0,0,0) color = random.sample(xrange(0,255), 3) def
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 exit和pygame exit进行100%优化,因为我一直在尝试将代码降至最低。最简单的方法:
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)
那太完美了。我非常欣赏它,它产生了非常优雅的效果,我非常欣赏它。