Screencast Python. Рисування фракталу, та подальша оптимізація коду. Також трохи про Psyco і декоратори

16 Jun 2009
Posted by spirit

В цьому скрінкасті:

  • фрактал
  • множество Мельдерброта
  • pyGame
  • декоратори
  • оптимізація коду
  • Psyco

Screencast Python. Рисування і Оптимізація from presidentua on Vimeo.

Нижче отриманий код.

#! /usr/bin/python
# -*- coding: utf-8 -*-
 
#http://ru.wikipedia.org/wiki/Множество_Мандельброта
 
__author__="Spirit"
__date__ ="$15.06.2009 9:15:18$"
 
import psyco
psyco.full()
 
import pygame
 
import time
def print_timing(func):
  def wrapper(*args,**kwargs):
      t1 = time.time()
      res = func(*args,**kwargs)
      t2 = time.time()
      print '%s took %0.3f ms' % (func.func_name, (t2-t1)*1000.0)
      return res
  return wrapper
 
maxX = 600
maxY = 400
 
@print_timing
def fractal():
	window = pygame.display.get_surface()
	window.fill((255,255,255))
	for x in xrange(0, maxX):
		for y in xrange(0, maxY):
			X = Cx = 0.005*x-2
			Y = Cy = 0.005*y-1
			for n in xrange(0,64):
				X2 = X*X
				Y2 = Y*Y
				if ( (X2 + Y2) >= 4): break
				X, Y = X2 - Y2 + Cx , 2*X*Y + Cy
			window.set_at((x,y), (255-4*n,255-4*n,255-4*n) )
 
def main():
	pygame.init()
	pygame.display.set_mode((maxX, maxY))
	pygame.display.set_caption('Fractal')
 
	fractal()
 
	pygame.display.flip()
 
	while 1:
		for event in pygame.event.get():
			if event.type == pygame.QUIT:
				exit()
 
if __name__ == "__main__":
	main()

Comments

То ниодного скринкаста, то сразу два )

Особенно понравился модуль Психо. Спасибо за скринкасты

Anonymous | Jun 16th, 2009 at 10:33 am

Так модуль Psyco дійсно крутий, я навіть не знаю як раніше без нього обходився )

spirit | Jun 16th, 2009 at 10:34 am
 
 
 

Contacts

Роман Хоменко aka PresidentUA
mail/jabber: spirt40@gmail.com

Creative Commons License

отдых египет. valium online. обрати внимание на мебель петербург,гардеробные петербург. Online meta trader 4 for your business, you can work with it, everyone sais it is good enogh.