Bienvenido a Klr20mg

Cronicas de un desarrollador

Actualmente soy Jefe de Desarrollo del area Flash en Sapotek de México en la cual trabajo desde hace mas de 4 años. Desarrollando aplicaciones en Flash para Web mas comúnmente llamadas (RIAs)

Estas en : Blog » Matemáticas + Flash = El Triángulo de Sierpinski
  • Decrease font size
  • Default font size
  • Increase font size
  • color default
  • color verde
  • color azul
Matemáticas + Flash = El Triángulo de Sierpinski
AddThis Social Bookmark Button
Post2PDF Print
January 24th, 2005

Desde hace un tiempo me ha estado llamando la atención los fractales y aplicar dichas formulas en Flash.

Siendo que hay formulas muy complejas para dichos fractales, comencé por una formula mas o menos simple que da como resultado el triangulo de Sierpinski que en la teoría dice así

“El matemático polaco Waclaw Sierpinski introdujo este fractal en 1919. Partamos (iteración n=0) de la superficie de un triángulo equilátero de lado unidad. Seguidamente (iteración n=1) tomemos los puntos medios de cada lado y construyamos a partir de ellos un triángulo equilátero invertido de lado 1/2. Lo recortamos. Ahora (iteración n=2) repetimos el proceso con cada uno de los tres triángulos de lado 1/2 que nos quedan. Así que recortamos, esta vez, tres triángulos invertidos de lado 1/4.”

Se puede encontrar más teoría y formulas para fractales en www.fractales.org

Bueno pasemos a flash. Todo lo anterior dio como resultado

Un par de funciones recursivas que se ejecutan dependiendo las interacciones que especifiquemos, el código queda así:

Actionscript:
  1. function init(){
  2.     this.createEmptyMovieClip("big", 1);
  3.     time(230, 10, 10, 7);
  4. }
  5. function triangulo(largo, x, y) {
  6.     h = Math.round(y+Math.sqrt(3)*largo)
  7.     big.lineStyle(1,0x666666,100);
  8.     big.moveTo(x, y);
  9.     big.lineTo(x-largo, h);
  10.     big.lineTo(x+largo, h);
  11.     big.lineTo(x, y);
  12. };
  13. function time(largo, xIni, yIni, max) {
  14.     var i = 0;
  15.     var max = max
  16.     var wait = setInterval(function(){
  17.         if (i++<max--) {
  18.             xIni += largo;
  19.             largo = largo/2
  20.             triangulo(largo, xIni, yIni);
  21.             time(largo, xIni-largo, yIni+Math.sqrt(3)*largo, max);
  22.             time(largo, xIni-2*largo, yIni, max);
  23.             time(largo, xIni, yIni, max);                        
  24.         } else {
  25.             clearInterval(wait);
  26.         }
  27.     }, 1000, largo, xIni, yIni, max);
  28. };
  29. init();


Y el resultado visible así.

Pueden usar el menu secundario de Flash para aumentar el tamaño del swf y ver el resultado....

PD. Si alguien tiene algún ejemplo de fractales en flash y lo quiere compartir es bienvenido. :D:D

Comentarios

5 Comentarios en “Matemáticas + Flash = El Triángulo de Sierpinski”

nice 8D

nibblesmx escribio el 2-February-2005 a las 1:25 pm

wow

o_O

papuchango escribio el 3-February-2005 a las 1:25 pm

wawa, que bueno
me encanta sierpinski
mirá quando pudera
http://dmtr.org/generative/?id=43

dimitre escribio el 27-February-2005 a las 6:55 pm

disculpa la pregunta, en el script cuando declaras "big"--> es un triangulo que has hecho conla herramienta lapiz o todo esta creado enteramente en el script?
Gracias por tu respuesta

lexxex desde Perú escribio el 30-October-2005 a las 11:35 pm

No.

big es un MovieClip vacio que he creado en la segunsda linea

this.createEmptyMovieClip("big", 1);

Tmeister escribio el 30-October-2005 a las 11:37 pm

Leave a Reply

 Blog editado por:

Enrique Chavez aka Tmeister
Si los codigos de este sitio te han ayudado y gustas ayudar de alguna forma:

 Compra Links

 Suscribete


AddThis Social Bookmark Button

 Archivo

2008
2007
2006
2005
2004