CODING ★ EL FANTASTICO MUNDO DE LAS IMÁGENES FRACTALES|Amstrad Semanal) ★

Fractales
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

El programa que hoy proponemos desde esta artística sección le va a permitir obtener hermosas representaciones de montañas, utilizando para ello un complejo algoritmo muy conocido y usado en el cine de fantasía e imaginación.

La geometría fractal pertenece a una de esas extrañas ramas matemáticas cuyo cometido roza lo incomprensible. Su fundamento básico es el estudio de unas curvas (variedades, dirían los puristas) que se encuentran más allá del mundo unidimensional de las líneas, pero que no alcanzan la bidimensionalidad de las superficies; de ahí su cabalístico nombre, fractal, y que pretende explicar la dimensión fraccionaria de su naturaleza.

Una de las aplicaciones que los no matemáticos supieron encontrarle a estas teorías fue la elaboración de asombrosas montañas, y fue precisamente Lucas Film, famosa compañía dedicada a la realización de películas con grandes efectos especiales, quien desarrolló el proceso que formaría muchas de las montañas que aparecen en sus fantásticos paisajes.

Naturalente, no podemos pretender que en nuestro pequeño CPC o incluso en nuestro PC 1512, vayan a producirse imágenes excesivamente realistas. La necesidad de grandes resoluciones, paletas de color muy amplias y elevadas capacidades de cálculo y memoria, relegan este tipo de aplicaciones al terreno de los grandes ordenadores, que quedan muy lejos de nuestras capacidades.
No obstante, lo que sí podremos es obtener una aproximación de estos sorprendentes resultados en el monitor de nuestro equipo, y sobre todo y lo que es más importante, aprenderemos la forma en la que se realizan.

El proceso de formación de la montaña se fundamenta principalmente en la transformación de un triángulo, del cual generaremos cuatro nuevos triángulos, de cada uno de los cuales generaremos cuatro nuevos triángulos, y así sucesivamente. En la imagen que ilustra la fase 1 podemos apreciar el triángulo con el que comenzaremos a trabajar. Lo primero que va hacer nuestro programa es calcular los puntos medios de cada lado. Posteriormente movemos este punto medio en la vertical, en un factor proporcional a la longitud del lado. De esta forma obtendremos tres puntos, que junto a los tres vértices del viejo triángulo van a formar cuatro nuevos triángulos, como puede apreciarse en la imagen de la fase 2. En este caso en particular, el incremento ha sido negativo y por eso los puntos medios han bajado.

Si a cada uno de estos cuatro triángulos le aplicásemos el proceso anteriormente descrito, lo que obtendríamos es algo parecido a lo que se muestra en la fase 3.

Según aumenta la fase, iremos obteniendo cada vez un mayor numero de triángulos, y la perfección de nuestra montaña y su realismo será también cada vez mayor.

En nuestro caso particular, tanto en la versión CPC como en la versión PC, alcanzamos una profundidad de seis niveles. Dado que comenzamos con un triángulo, el número final de triángulo que tendremos será de Ix4x4x4x4x4 , lo que supone exactamente la cifra de 1.024 triángulos. Y para el caso de que queramos profundizar un nivel más, la cifra sería ya de 4.096.
La forma en la que nuestro programa, en dmbas versiones, almacena los triángulos es muy simple. Para ello utilizamos dos matrices, VX y BY, de 1.200 por 3. En VX almacenamos las coordenadas X de los tres vértices y en BY las coordenadas Y.

Para realizar la transformación lo que hacemos es coger los puntos medios de cada triángulo y les aplicamos un incremento aleatorio, extraído en la línea 110 del programa. En nuestro programa hemos dado unos valores comprendidos entre —0.15 y 0.25, para la versión PC y entre —0.15 y 0.15 para la versión CPC. Nótese que estos valores permanecen constantes en cada triángulo, y se emplean para modificar los puntos medios de cada uno de los lados.

Una vez que obtenemos estos nuevos puntos, los incluimos en nuestro array, sustituyendo el viejo triángulo, que ya no nos sirve para nada, por el nuevo, por uno de los generados, y poniendo el resto al principio de lo que nos queda libre del array.

Una vez que hemos realizado la transformación de todos los triángulos, comenzamos de nuevo la tarea, y así hasta cinco veces que son controladas por el bucle de la línea 81 a 332.

El bucle final es el encargado de pintar todos los triángulos en la pantalla, formando de esta manera una montaña aleatoria, más o menos convincente.

Existen varios parámetros que pueden ser modificados, y con los que obtendremos resultados totalmente distintos, que se prestan a ser experimentados. Lo primero que podemos cambiar el es triángulo inicial. Para ello deberemos modificar los valores de las líneas 40, 50 y 60. La profundidad es otro de los valores que podremos alterar variando la constante (5) del bucle por un valor más bajo, ya que no hay memoria para más. Por último, podremos variar el intervalo del incremento, modificando los valores de la línea 110.

El resultado de todo esto no es una variedad fractal, pero si nuestro ordenador fuese capaz de realizar esta tarea infinitas veces y nosotros la paciencia, la enorme paciencia de esperarle, lo obtenido sí que sería una variedad de estas características.


AS

★ PUBLISHERS: Hobby Press , Amstrad Semanal
★ YEAR: 1987
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ LiCENCE: LISTING
★ COLLECTION: AMSTRAD SEMANAL 1987
★ AUTHOR(S): ???
 



★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
 » Fractales    (Amstrad  Semanal)    SPANISH    LISTINGDATE: 2026-07-06
DL: 0
TYPE: PDF
SiZE: 340Ko
NOTE: Supplied by archive.org ; 1 page/PDFlib v1.6

Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.732-desktop/c
Page créée en 097 millisecondes et consultée 28 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.