Simulación no apta para alérgicos
Una simulación de cómo el polvo que flota en el ambiente se deposita sobre una superficie. Una partícula de polvo se mueve al azar por el aire, con una cierta atracción hacia el centro de la pantalla. Si el polvo se acerca a otra mota, se pega a ella y deja de moverse.
para empezar # Inicializamos la pantalla, el lapiz, la tortuga reponetodo pontamañopantalla [400 400] poncolorpapel negro subelapiz ocultatortuga poncolorlapiz amarillo # # Dibujamos una mota de polvo "semilla" punto posicion haz "max 4 polvo fin para polvo centro giraderecha azar 360 avanza :max haz "col 0 mientras [:max < 182] [ mientras [:col = 0] [ poncolorlapiz negro punto posicion # borra punto previo ponrumbo hacia [ 0 0 ] giraizquierda 30 giraderecha azar 420 avanza 1 haz "col vecinos? poncolorlapiz amarillo punto posicion] haz "maxnew 2 + distancia [ 0 0 ] si :maxnew > :max [ haz "max :maxnew] polvo ] fin para vecinos? # Determina si los pixeles vecinos estan ocupados o no # devuelve '1' si hay polvo vecino, '0' si no repitepara [i -1 1] [ repitepara [j -1 1] [ haz "r elemento 1 encuentracolor lista :i + elemento 1 posicion :j + elemento 2 posicion si :r = 255 [devuelve 1] ] ] devuelve 0 fin |