SlideShare una empresa de Scribd logo
1 de 21
INSTITUTO TECNOLÓGICO DE OAXACA
NOMBRE DE LA CARRERA:
INGENIERIA EN SISTEMAS COMPUTACIONALES
NOMBRE DE LA MATERÍA:
GRAFICACIÓN
CLAVE: SCC-1010
NOMBRE DEL PROYECTO:
REPRESENTACIÓN DE UNA MONTAÑA USANDO OPENGL
https://www.linkedin.com/in/benjaminjoaquinmartinez/
SEMESTRE: SEPTIMO (7º)
GRUPO: “IS-A”
HORA: 17:00 – 18:00 HRS
FECHA: 12 DE DICIEMBRE DE 2016
2
Tabla decontenido
ÍNDICE DE FIGURAS................................................................................................................... 3
ÍNDICE DE TABLAS..................................................................................................................... 3
1. MARCOCONTEXTUAL ............................................................................................................ 4
1.1 NOMBRE DEL PROYECTO ........................................................................................................ 4
1.2 INTRODUCCIÓN ................................................................................................................... 4
1.3 OBJETIVO GENERAL............................................................................................................... 4
1.4OBJETIVOS ESPECÍFICOS.......................................................................................................... 4
2. MARCOTEÓRICO ................................................................................................................... 5
2.1 GRÁFICO POR COMPUTADORA................................................................................................. 5
2.2 OPENGL ............................................................................................................................ 5
2.3 LENGUAJE DE PROGRAMACIÓN C++.......................................................................................... 5
2.4 GLUT ............................................................................................................................... 5
2.5 MONTAÑA ......................................................................................................................... 6
2.6 FRACTAL............................................................................................................................ 6
2.7 TEXTURA ........................................................................................................................... 6
2.8 RECURSIVIDAD .................................................................................................................... 6
2.9 MODELADO........................................................................................................................ 6
2.10 RENDERIZAR ..................................................................................................................... 7
2.11 GRAFICO3D...................................................................................................................... 7
2.12 ARTESANÍADESOFTWARE...................................................................................................... 7
3. MARCO METODOLÓGICO...................................................................................................... 7
4 FUNCIONES............................................................................................................................ 8
4.1 TRASLACIÓN....................................................................................................................... 8
4.2 ROTACIÓN.......................................................................................................................... 9
4.3 RUGOSIDAD........................................................................................................................ 9
4.4 ESCALA.............................................................................................................................. 9
4.4 PROFUNDIDAD .................................................................................................................... 9
4.5 POSICIÓN INICIAL ................................................................................................................10
4.6 ESTABLECER LUZ ORIGEN.......................................................................................................10
4.7 NUEVA MONTAÑA...............................................................................................................10
4.7 RESUMEN DE FUNCIONES......................................................................................................11
5 ILUSTRACIONES.....................................................................................................................12
6 VISTA FINAL..........................................................................................................................20
7 CONCLUSIÓN ........................................................................................................................21
3
Índice de Figuras
Ilustración 1. Malla principal ................................................................................................12
Ilustración 2. Malla con 9 vértices (segunda iteración)........................................................12
Ilustración 3. Malla con n iteraciones...................................................................................13
Ilustración 4. Montaña con efecto de luz y sombra .............................................................13
Ilustración 5. Aumento de rugosidad ...................................................................................14
Ilustración 6. Montaña con división de altitud por color ....................................................14
Ilustración 8. Traslación negativa sobre eje x.......................................................................15
Ilustración 7. Traslación positiva sobre eje x........................................................................15
Ilustración 9. Traslación positiva en eje y.............................................................................16
Ilustración 10. Traslación negativa en eje y..........................................................................16
Ilustración 11. Traslación positiva en eje z...........................................................................17
Ilustración 12. Traslación negativa en eje z..........................................................................17
Ilustración 13. Escala reductiva ............................................................................................18
Ilustración 14. Escala aumentada .........................................................................................18
Ilustración 15. Rotación en eje y...........................................................................................19
Ilustración 16. Rotación en eje x...........................................................................................19
Ilustración 17. Rotación en eje z...........................................................................................20
Ilustración 18. Vista de la montaña final ..............................................................................20
Índice de tablas
Tabla 1. Funciones del teclado para el programa.................................................................11
4
1. MARCOCONTEXTUAL
1.1 Nombre del proyecto
Representación de una montaña utilizando OpenGL
1.2 Introducción
Desde la aparición de la graficación por computadora se ha facilitado la representación
virtual de los objetos visibles del universo y todo lo que podamos imaginar, aún si ello no
existe.
Estos gráficos que se generan por computadora pueden emplearse en diferentes áreas
como el cine, los videojuegos, publicidad, simuladores, etcétera, pues ayuda a visualizar
datos complejos de forma sencilla,representar escenas,y en algunos casos,interactuar con
ellas en tiempo real.
En las escenas que podemos realizar, muchas veces tenemos la necesitad de proyectar
elementos de la naturaleza, los cuales tienen estructuras fractales. Esta característica es
posible definir en algún lenguaje de programación y facilitar esto con ayuda de alguna
librería gráfica.
1.3 Objetivo general
Modelar gráficamente una montaña.
1.4Objetivos específicos
 Elaborar el modelado de una montaña 

 Codificar el modelado con lenguaje C++
 Utilizar la librería OpenGL para la codificación
 Implementar la interacción con la escena
 Realizar la documentación para los usuarios 

5
2. MARCOTEÓRICO
2.1 Gráfico por computadora
Se denomina grafico por computadora a las imágenes las cuales son generadas mediante el
uso de software ordenadores pueden dividirse en gráficos 2D y gráficos 3D (aparenta
profundidad).
2.2 OpenGl
OpenGL (Open Graphics Library) es una especificación estándar que define una API
multilenguaje y multiplataforma para escribir aplicaciones que produzcan gráficos 2D y 3D.
La interfaz consiste en más de 250 funciones diferentes que pueden usarse para dibujar
escenas tridimensionales complejas a partir de primitivas geométricas simples, tales como
puntos, líneas y triángulos. Fue desarrollada originalmente por Silicon Graphics Inc. (SGI) en
19922 y se usa ampliamente en CAD, realidad virtual, representación científica,
visualización de información y simulación de vuelo. También se usa en desarrollo de
videojuegos, donde compite con Direct3D en plataformas Microsoft Windows. Actualmente
se encuentra en su versión 4.4 liberada el 22 de julio de 2013.
2.3 Lenguaje de programación C++
C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne
Stroustrup. La intención de su creación fue el extender al exitoso lenguaje de programación
C con mecanismos que permitan lamanipulación de objetos. En esesentido, desde elpunto
de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.
Posteriormente seañadieron facilidades deprogramación genérica,que sesumó a los otros
dos paradigmas que ya estaban admitidos (programación estructurada y la programación
orientada a objetos). Por esto se suele decir que el C++ es un lenguaje de programación
multiparadigma.
2.4 GLUT
Es una biblioteca de utilidades para programas OpenGL que principalmente proporciona
diversas funciones de entrada/salida con el sistema operativo. Entre las funciones que
6
ofrece se incluyen declaración y manejo de ventanas y la interacción por medio de teclado
y ratón. También posee rutinas para el dibujado de diversas primitivas geométricas (tanto
sólidas como en modo wireframe) que incluyen cubos, esferas y teteras. También tiene
soporte para creación de menús emergentes.
2.5 Montaña
El término montaña proviene del latín mons. En geografía, una montaña o un monte es un
conjunto de rocas, tierra, piedras y, en su caso, lava, que forman una elevación natural de
gran altura y de grandes dimensiones (mayor de 700 m) sobre el terreno.
2.6 Fractal
Un fractal es un objeto geométrico cuya estructura básica, fragmentada o irregular, se
repite a diferentes escalas. El término fue propuesto por el matemático Benoît Mandelbrot
en 1975 y deriva del latín fractus, que significa quebrado o fracturado. Muchas estructuras
naturales son de tipo fractal. La propiedad matemática clave de un objeto genuinamente
fractal es que su dimensión métrica fractal es un número no entero.
2.7 Textura
Una textura es una imagen del tipo bitmap utilizada para cubrir la superficie de un objeto
virtual, ya sea tridimensional o bidimensional, con un programa de gráficos especial.
Multitexturizado es el uso de más de una textura a la vez en un polígono.
2.8 Recursividad
Es la forma en la cual se especifica un proceso basado en su propia definición.
2.9 Modelado
Arte o técnica que consiste en dar la forma deseada a una materia blanda.
7
2.10 Renderizar
Es un término usado en jerga informática para referirse al proceso de generar una imagen
o vídeo mediante el cálculo de iluminación GI partiendo de un modelo en 3D. Este término
técnico es utilizado por los animadores o productores audiovisuales (CG)y en programas de
diseño en 3D.
2.11 Grafico3D
El término gráficos 3D por computadora (o por ordenador) se refiere a trabajos de arte
gráfico que son creados con ayuda de software y programas especiales en general, o de
términos, de técnicas y tecnología relacionadas con los gráficos de dimensiones altamente
concentradas pueden ser grises o azul con rojo.
2.12 Artesaníadesoftware
En la artesanía del software se pone el énfasis en las capacidades de desarrollo del
programador y su capacidad de aprendizaje constante, como una forma de resolver los
problemas habituales de la industria que surgen por un enfoque hacia el software como
producto en lugar de como arte. Donde la industria tradicional pone varios niveles de
consultores, analistas, diseñadores y programadores, la artesanía del software, basada en
las directrices del desarrollo ágil (Agile Manifestó), da prioridad a la figura del desarrollador
artesano, trabajando dentro de un grupo de artesanos de mayor o menor nivel.
Aprendizaje y mejora constante, gusto por la perfección entendiendo que ésta es
inalcanzable, productos sólidos, bien construidos y pasión por el oficio. Soy un artesano;
artesano del software.
3. MARCO METODOLÓGICO
1. Se realizara un boceto a mano para darse la idea de la implementación en el cual el
objeto a dibujar “Montaña” quedara plasmado.
2. Utilización de superficie plana que será la guía con la cual se dividirá para tener la
referencia de la ubicación de los objetos.
8
3. Creación de un método recursivo para que vaya calculando 

4. Creación de un segundo boceto codificado en OpenGl mediante el uso de figuras
tridimensionales simples (sin texturas).
5. De la figura plana se hace una división en cuatro partes. 

6. Se le asigna una altura aleatoria a los 5 vértices 

7. Se repite el proceso en cada iteración. 

8. Aplicación de efectos de profundidad e iluminación alescenario resultado del último
paso.
9. Le hicimos algunas modificaciones porque la vista de la cámara no podía apreciar de
cerca la textura.
10. Aplicación de la rugosidad. 

11. Se le aplica color a la montaña, esto de acuerdo a la altura de cada vértice.
12. Pruebas finales.
4 FUNCIONES
4.1 Traslación
Con la traslación le damos movimiento a la gráfica de la montaña.
La tecla “” traslada la figura en el eje de las “equis” (x). Cuando se presiona esa tecla la
montaña se moverá a la izquierda, representaría un movimiento negativo en el eje de las
equis (x); y cuando la tecla presionada es “”, el gráfico se moverá en sentido positivo,
recorriéndose a la derecha.
El movimiento vertical del gráfico de la montaña está dado por el uso de la tecla “”, donde
se moverá hacia abajo, y por el contrario siendo la tecla “” la montaña se trasladará hacia
arriba.
El gráfico de la montaña se deslizará en la profundidad usando la tecla “o”, representando
con esta el eje “z”. Si la tecla se presiona la figura representará un movimiento de
9
acercamiento a la pantalla; y si se presiona la tecla “p” el gráfico describirá una traslación
que aparentará lejanía a la pantalla.
4.2 Rotación
La figura es capaz de rotar, y lo hará en 6 direcciones dependiendo de las teclas que sean
presionadas. Si se presiona la tecla “F1” la figura rotará sobre el eje “x” hacia arriba, si es
presionada la tecla “1” la figura rotara sobre el eje “x” hacia abajo.
La figura rotara hacia la derecha sobre el eje “y” si es presionada la tecla “F2” rotara al lado
opuesto si se presiona la tecla “2”.
Para que la figura rote sobre el eje “z” se implementaron las teclas “F3” para rotación
contraria a las manecillas del reloj o la tecla “3” para rotación similar a las manecillas del
reloj.
4.3 Rugosidad
La montaña puede aumentar o disminuir su rugosidad y con esto aumentar la altura de los
“picos” en su superficie. Esto por la cantidad de veces que la malla calcula las alturas
aleatorias de sus puntos (o intersecciones en esa malla).
4.4 Escala
Laescalatambién puede modificarse, aumentando en 0.1 en los tres ejes.Si se presiona “+”
aumentara y si se presiona la tecla “-“ disminuirá la escala
4.4 Profundidad
La profundidad y las iteraciones también pueden cambiar. La montaña puede aumentar o
disminuir sus iteraciones, y con esto mejorar su textura, agregar complejidad y aumentar la
cantidad de “picos” en su superficie o todo lo contrario al reducir la cantidad de figuras en
la malla inicial y simplificar la figura. Esto por la cantidad de veces que la malla inicial se
divide y calcula sus puntos para las alturas aleatorias de sus puntos (o intersecciones en esa
malla).
10
Para lograr esto, se presiona las teclas “F5” para reducir las iteraciones al restar uno, o “F6”
para aumentarlas, sumando uno a la profundidad cada que se presiona.
4.5 Posición inicial
Si se desea ver el gráfico de la montaña centrado y en una posición horizontal, se presiona
la tecla “r” y con esto las transformaciones de traslación, rotación y escalabilidad regresan
a la normalidad y se podrá ver el gráfico completamente de frente y observar mejor sus
transformaciones, tal y como se encontraba al inicio, en cuanto a posición se refiere, pues
las iteraciones y rugosidad no se ven alterados
4.6 Establecer luz origen
Para poder darle un mayor realismo a la figura se implementaron las funciones de luz de
openGL (Luz ambiental, luz difusa y luz especular) añadiendo a esta una posición donde se
establecería el origen de la luz. La posición del origen de luz la podemos cambiar usando las
teclas “x, X, y, X, z, Z” para mover sobre los ejes “x”, “y” o “z”. Si la tecla se presiona con
mayúsculas activadas la traslación de punto origen de luz se moverá positivamente sobre
cada eje, de lo contrario si la tecla es presionada sin activar mayúsculas el movimiento será
negativo sobre cada eje.
4.7 Nueva montaña
Adicional seimplemento una función para que cuando seapresionada la tecla“F4” cree una
nueva montaña.
11
4.7 Resumen de Funciones
Tabla 1. Funciones del teclado para el programa
TECLA FUNCIÓN DESCRIPCIÓN
 Traslación Traslación negativa sobre el eje x
 Traslación Traslación positiva sobre el eje x
 Traslación Traslación positiva sobre el eje y
 Traslación Traslación negativa sobre el eje y
o Traslación Traslación negativa sobre el eje z
p Traslación Traslación positiva sobre el eje z
F1 Rotación Rotar sobre el eje x hacia arriba
1 Rotación Rotar sobre el eje x hacia abajo
F2 Rotación Rotar sobre el eje y hacia la derecha
2 Rotación Rotar sobre el eje y hacia la izquierda
F3 Rotación Rotar sobre el eje z hacia la izquierda
3 Rotación Rotar sobre el eje z hacia la derecha
F4 Nuevo Crear nueva montaña
F5 Iteración Aumentar las iteraciones para dividir la malla principal
F6 Iteración Disminuir las iteraciones para dividir la malla principal
+ Escala Aumentar el tamaño de la figura
- Escala Disminuir el tamaño de la figura
X Traslación Traslación positiva sobre el eje x el origen de luz
x Traslación Traslación negativa sobre el eje x el origen de luz
Y Traslación Traslación positiva sobre el eje y el origen de luz
y Traslación Traslación negativa sobre el eje y el origen de luz
Z Traslación Traslación positiva sobre el eje z el origen de luz
z Traslación Traslación negativa sobre el eje z el origen de luz
ESC Escape Salir del programa
12
5 ILUSTRACIONES
Ilustración 1. Malla principal
Ilustración 2. Malla con 9 vértices (segunda iteración)
13
Ilustración 3. Malla con n iteraciones
Ilustración 4. Montaña con efecto de luz y sombra
14
Ilustración 5. Aumento de rugosidad
Ilustración 6. Montaña con división de altitud por color
15
Ilustración 8. Traslación positiva sobre eje x
Ilustración 7. Traslación negativa sobre eje x
16
Ilustración 9. Traslación positiva en eje y
Ilustración 10. Traslación negativa en eje y
17
Ilustración 11. Traslación positiva en eje z
Ilustración 12. Traslación negativa en eje z
18
Ilustración 13. Escala reductiva
Ilustración 14. Escala aumentada
19
Ilustración 15. Rotación en eje y
Ilustración 16. Rotación en eje x
20
Ilustración 17. Rotación en eje z
6 VISTA FINAL
Ilustración 18. Vista de la montaña final
21
7 CONCLUSIÓN
Durante la realización de este trabajo se hizo notable la importancia de los fractales. El
campo de acción de los fractales no ha parado de ampliarse desde las investigaciones de
Mandelbrot en los 70’s. A partir de eso, muchos científicos han descubierto que la
geometría fractal es una poderosa herramienta para el descubrimiento de los secretos de
una amplia variedad de sistemas y solución de los problemas importantes de la ciencia
aplicada.
Entre la gran variedad de fractales que existen hoy en día se decidió utilizar el fractal de
paisaje puesto que éste cuenta con el algoritmo de subdivisión y proporciona de una
manera más realista y flexible el cálculo de las estructuras de la montaña. Con esta técnica,
se logró cierto grado de realismo en el paisaje.
Se utilizó la especificación estándar OpenGL, visto que este es por sus características el
mejor cuando se trata de generar efectos visuales, escenas, imágenes realistas entre otras
cosas, debido a su portabilidad, estandarización y potencia gráfica. De igual manera la
interfaz consiste en más de 250 funciones diferentes que pueden usarse para dibujar
escenas tridimensionales complejas a partir de primitivas geométricas simples, tales como
puntos, líneas y triángulos.

Más contenido relacionado

La actualidad más candente

Cloud computing. retos y oportunidades
Cloud computing. retos y oportunidadesCloud computing. retos y oportunidades
Cloud computing. retos y oportunidadesLogisman
 
Autodesk auto cad 2010
Autodesk auto cad 2010Autodesk auto cad 2010
Autodesk auto cad 2010v8enlinea
 
Autocad aca user_guide_spanish
Autocad aca user_guide_spanishAutocad aca user_guide_spanish
Autocad aca user_guide_spanishRig Faby
 
Macros excel
Macros excelMacros excel
Macros excelFraneles
 
Corel draw x3_-_manual_en_español
Corel draw x3_-_manual_en_españolCorel draw x3_-_manual_en_español
Corel draw x3_-_manual_en_españolRAIKO PK
 
Autocad lt pdf_users-guide_esp
Autocad lt pdf_users-guide_espAutocad lt pdf_users-guide_esp
Autocad lt pdf_users-guide_espU G
 
Estudio sistemas gestion_contenidos_web_cms
Estudio sistemas gestion_contenidos_web_cmsEstudio sistemas gestion_contenidos_web_cms
Estudio sistemas gestion_contenidos_web_cmsDulce Adaly Rmz C.
 
Guía rápida básica de AutoCAD
Guía rápida básica de AutoCADGuía rápida básica de AutoCAD
Guía rápida básica de AutoCADVectoraula
 

La actualidad más candente (13)

87119116 manual-inventor
87119116 manual-inventor87119116 manual-inventor
87119116 manual-inventor
 
Tutorial inventor5
Tutorial inventor5Tutorial inventor5
Tutorial inventor5
 
Cloud computing. retos y oportunidades
Cloud computing. retos y oportunidadesCloud computing. retos y oportunidades
Cloud computing. retos y oportunidades
 
Autodesk auto cad 2010
Autodesk auto cad 2010Autodesk auto cad 2010
Autodesk auto cad 2010
 
Autocad aca user_guide_spanish
Autocad aca user_guide_spanishAutocad aca user_guide_spanish
Autocad aca user_guide_spanish
 
Cuaderno de prácticas
Cuaderno de prácticasCuaderno de prácticas
Cuaderno de prácticas
 
Macros excel
Macros excelMacros excel
Macros excel
 
Manual de visual basic.net
Manual de visual basic.netManual de visual basic.net
Manual de visual basic.net
 
Corel draw x3_-_manual_en_español
Corel draw x3_-_manual_en_españolCorel draw x3_-_manual_en_español
Corel draw x3_-_manual_en_español
 
Autocad lt pdf_users-guide_esp
Autocad lt pdf_users-guide_espAutocad lt pdf_users-guide_esp
Autocad lt pdf_users-guide_esp
 
Estudio sistemas gestion_contenidos_web_cms
Estudio sistemas gestion_contenidos_web_cmsEstudio sistemas gestion_contenidos_web_cms
Estudio sistemas gestion_contenidos_web_cms
 
Guía rápida básica de AutoCAD
Guía rápida básica de AutoCADGuía rápida básica de AutoCAD
Guía rápida básica de AutoCAD
 
1 manual del civil 3d
1  manual del civil 3d1  manual del civil 3d
1 manual del civil 3d
 

Similar a Documentacion montaña

24965846 sap-2000-v14-manual-espanol
24965846 sap-2000-v14-manual-espanol24965846 sap-2000-v14-manual-espanol
24965846 sap-2000-v14-manual-espanolLinda Ordoñez
 
Metal sheet inventor
Metal sheet inventorMetal sheet inventor
Metal sheet inventorgiotronics
 
Mini manual-de-visual-basic-para-excel-1204832796330179-2
Mini manual-de-visual-basic-para-excel-1204832796330179-2Mini manual-de-visual-basic-para-excel-1204832796330179-2
Mini manual-de-visual-basic-para-excel-1204832796330179-2seinpec
 
Contenidos manual se st4
Contenidos manual se st4Contenidos manual se st4
Contenidos manual se st4William Fagua
 
Creacion de mapas conceptuales cmap tools
Creacion de mapas conceptuales cmap toolsCreacion de mapas conceptuales cmap tools
Creacion de mapas conceptuales cmap toolsCristian Benavides
 
Creacion mapasconceptuales
Creacion mapasconceptualesCreacion mapasconceptuales
Creacion mapasconceptualesDIOSCALFRE
 
Creacion mapasconceptuales
Creacion mapasconceptualesCreacion mapasconceptuales
Creacion mapasconceptualesNataly Vanegas
 
Creacion mapasconceptuales
Creacion mapasconceptualesCreacion mapasconceptuales
Creacion mapasconceptualeslalitamarinde
 
Creacion mapasconceptuales
Creacion mapasconceptualesCreacion mapasconceptuales
Creacion mapasconceptualesLuis Bruno
 
Manual de visual basic para excel
Manual de visual basic para excelManual de visual basic para excel
Manual de visual basic para excelpablozapataramos
 
José garcía manual de visual basic para excel
José garcía   manual de visual basic para excelJosé garcía   manual de visual basic para excel
José garcía manual de visual basic para excelMario Tapia Guajardo
 
José garcía manual de visual basic para excel
José garcía   manual de visual basic para excelJosé garcía   manual de visual basic para excel
José garcía manual de visual basic para excelMario Tapia Guajardo
 
Manual Teorico
Manual TeoricoManual Teorico
Manual Teoricoyennismart
 
Desarrollo de un Prototipo de Entornos Virtuales para Fines Didacticos en Emp...
Desarrollo de un Prototipo de Entornos Virtuales para Fines Didacticos en Emp...Desarrollo de un Prototipo de Entornos Virtuales para Fines Didacticos en Emp...
Desarrollo de un Prototipo de Entornos Virtuales para Fines Didacticos en Emp...EILLENMILAGROSVEGASA1
 
Mini Manual De Visual Basic Para Excel
Mini Manual De Visual Basic Para ExcelMini Manual De Visual Basic Para Excel
Mini Manual De Visual Basic Para ExcelAlbe Rincon
 

Similar a Documentacion montaña (20)

24965846 sap-2000-v14-manual-espanol
24965846 sap-2000-v14-manual-espanol24965846 sap-2000-v14-manual-espanol
24965846 sap-2000-v14-manual-espanol
 
Metal sheet inventor
Metal sheet inventorMetal sheet inventor
Metal sheet inventor
 
PLC
PLC PLC
PLC
 
Mini manual-de-visual-basic-para-excel-1204832796330179-2
Mini manual-de-visual-basic-para-excel-1204832796330179-2Mini manual-de-visual-basic-para-excel-1204832796330179-2
Mini manual-de-visual-basic-para-excel-1204832796330179-2
 
Contenidos manual se st4
Contenidos manual se st4Contenidos manual se st4
Contenidos manual se st4
 
Creacion de mapas conceptuales cmap tools
Creacion de mapas conceptuales cmap toolsCreacion de mapas conceptuales cmap tools
Creacion de mapas conceptuales cmap tools
 
Creacion mapasconceptuales
Creacion mapasconceptualesCreacion mapasconceptuales
Creacion mapasconceptuales
 
Creacion mapasconceptuales
Creacion mapasconceptualesCreacion mapasconceptuales
Creacion mapasconceptuales
 
Creacion mapasconceptuales
Creacion mapasconceptualesCreacion mapasconceptuales
Creacion mapasconceptuales
 
Creacion mapasconceptuales
Creacion mapasconceptualesCreacion mapasconceptuales
Creacion mapasconceptuales
 
Manual de visual basic para excel
Manual de visual basic para excelManual de visual basic para excel
Manual de visual basic para excel
 
José garcía manual de visual basic para excel
José garcía   manual de visual basic para excelJosé garcía   manual de visual basic para excel
José garcía manual de visual basic para excel
 
José garcía manual de visual basic para excel
José garcía   manual de visual basic para excelJosé garcía   manual de visual basic para excel
José garcía manual de visual basic para excel
 
Manual C++
Manual C++Manual C++
Manual C++
 
Manual Teorico
Manual TeoricoManual Teorico
Manual Teorico
 
C++
C++C++
C++
 
Desarrollo de un Prototipo de Entornos Virtuales para Fines Didacticos en Emp...
Desarrollo de un Prototipo de Entornos Virtuales para Fines Didacticos en Emp...Desarrollo de un Prototipo de Entornos Virtuales para Fines Didacticos en Emp...
Desarrollo de un Prototipo de Entornos Virtuales para Fines Didacticos en Emp...
 
Mini Manual De Visual Basic Para Excel
Mini Manual De Visual Basic Para ExcelMini Manual De Visual Basic Para Excel
Mini Manual De Visual Basic Para Excel
 
Tesis nave industrial
Tesis nave industrialTesis nave industrial
Tesis nave industrial
 
Tutorial autocad-civil-3d-2012-bc3a1sico-v
Tutorial autocad-civil-3d-2012-bc3a1sico-vTutorial autocad-civil-3d-2012-bc3a1sico-v
Tutorial autocad-civil-3d-2012-bc3a1sico-v
 

Más de Benjamín Joaquín Martínez

Más de Benjamín Joaquín Martínez (20)

Sistemas de detección de intrusiones.pdf
Sistemas de detección de intrusiones.pdfSistemas de detección de intrusiones.pdf
Sistemas de detección de intrusiones.pdf
 
Portafolio ingles.pdf
Portafolio ingles.pdfPortafolio ingles.pdf
Portafolio ingles.pdf
 
Tabla de llamadas para linux x86_64 bits.pdf
Tabla de llamadas para linux x86_64 bits.pdfTabla de llamadas para linux x86_64 bits.pdf
Tabla de llamadas para linux x86_64 bits.pdf
 
Sistema de registro con php
Sistema de registro con phpSistema de registro con php
Sistema de registro con php
 
compiladores6Benjamin133467.pdf
compiladores6Benjamin133467.pdfcompiladores6Benjamin133467.pdf
compiladores6Benjamin133467.pdf
 
Compiladores5_Benjamin133467.pdf
Compiladores5_Benjamin133467.pdfCompiladores5_Benjamin133467.pdf
Compiladores5_Benjamin133467.pdf
 
133467 compiladores 4.pdf
133467 compiladores 4.pdf133467 compiladores 4.pdf
133467 compiladores 4.pdf
 
133467_COMPILADORES3.pdf
133467_COMPILADORES3.pdf133467_COMPILADORES3.pdf
133467_COMPILADORES3.pdf
 
133467_COMPILADORES2
133467_COMPILADORES2133467_COMPILADORES2
133467_COMPILADORES2
 
COMPILADORES1.pdf
COMPILADORES1.pdfCOMPILADORES1.pdf
COMPILADORES1.pdf
 
Algoritmos de búsqueda.pdf
Algoritmos de búsqueda.pdfAlgoritmos de búsqueda.pdf
Algoritmos de búsqueda.pdf
 
Logica proposicional
Logica proposicionalLogica proposicional
Logica proposicional
 
Lenguajes para dispositivos moviles 133467
Lenguajes para dispositivos moviles 133467Lenguajes para dispositivos moviles 133467
Lenguajes para dispositivos moviles 133467
 
Bd distribuidas
Bd distribuidasBd distribuidas
Bd distribuidas
 
diseño de bases de datos distribuidas
diseño de bases de datos distribuidas   diseño de bases de datos distribuidas
diseño de bases de datos distribuidas
 
procesamiento de consultas distribuidas
procesamiento de consultas distribuidasprocesamiento de consultas distribuidas
procesamiento de consultas distribuidas
 
Algoritmo de INGRES
Algoritmo de INGRES Algoritmo de INGRES
Algoritmo de INGRES
 
Fragmentación
FragmentaciónFragmentación
Fragmentación
 
Modelo cliente servidor
Modelo cliente servidorModelo cliente servidor
Modelo cliente servidor
 
Arquitectura de bases de datos distribuidas
Arquitectura de bases de datos distribuidasArquitectura de bases de datos distribuidas
Arquitectura de bases de datos distribuidas
 

Último

TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxTECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxUPSE
 
Modelado de Casos de uso del negocio
Modelado de  Casos  de  uso  del negocioModelado de  Casos  de  uso  del negocio
Modelado de Casos de uso del negocioMagemyl Egana
 
El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)Samuel Solís Fuentes
 
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfTECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfUPSE
 
contabilidad para la inflacion, contabilidad superior
contabilidad para la inflacion, contabilidad superiorcontabilidad para la inflacion, contabilidad superior
contabilidad para la inflacion, contabilidad superiorDalia Rodriguez
 
S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdf
S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdfS07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdf
S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdflarryluna927
 
Especificación casos de uso del negocio
Especificación  casos de uso del negocioEspecificación  casos de uso del negocio
Especificación casos de uso del negocioMagemyl Egana
 

Último (7)

TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxTECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
 
Modelado de Casos de uso del negocio
Modelado de  Casos  de  uso  del negocioModelado de  Casos  de  uso  del negocio
Modelado de Casos de uso del negocio
 
El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)
 
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfTECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
 
contabilidad para la inflacion, contabilidad superior
contabilidad para la inflacion, contabilidad superiorcontabilidad para la inflacion, contabilidad superior
contabilidad para la inflacion, contabilidad superior
 
S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdf
S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdfS07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdf
S07_s1-Control Acceso-Amenazas de seguridad de capa 2.pdf
 
Especificación casos de uso del negocio
Especificación  casos de uso del negocioEspecificación  casos de uso del negocio
Especificación casos de uso del negocio
 

Documentacion montaña

  • 1. INSTITUTO TECNOLÓGICO DE OAXACA NOMBRE DE LA CARRERA: INGENIERIA EN SISTEMAS COMPUTACIONALES NOMBRE DE LA MATERÍA: GRAFICACIÓN CLAVE: SCC-1010 NOMBRE DEL PROYECTO: REPRESENTACIÓN DE UNA MONTAÑA USANDO OPENGL https://www.linkedin.com/in/benjaminjoaquinmartinez/ SEMESTRE: SEPTIMO (7º) GRUPO: “IS-A” HORA: 17:00 – 18:00 HRS FECHA: 12 DE DICIEMBRE DE 2016
  • 2. 2 Tabla decontenido ÍNDICE DE FIGURAS................................................................................................................... 3 ÍNDICE DE TABLAS..................................................................................................................... 3 1. MARCOCONTEXTUAL ............................................................................................................ 4 1.1 NOMBRE DEL PROYECTO ........................................................................................................ 4 1.2 INTRODUCCIÓN ................................................................................................................... 4 1.3 OBJETIVO GENERAL............................................................................................................... 4 1.4OBJETIVOS ESPECÍFICOS.......................................................................................................... 4 2. MARCOTEÓRICO ................................................................................................................... 5 2.1 GRÁFICO POR COMPUTADORA................................................................................................. 5 2.2 OPENGL ............................................................................................................................ 5 2.3 LENGUAJE DE PROGRAMACIÓN C++.......................................................................................... 5 2.4 GLUT ............................................................................................................................... 5 2.5 MONTAÑA ......................................................................................................................... 6 2.6 FRACTAL............................................................................................................................ 6 2.7 TEXTURA ........................................................................................................................... 6 2.8 RECURSIVIDAD .................................................................................................................... 6 2.9 MODELADO........................................................................................................................ 6 2.10 RENDERIZAR ..................................................................................................................... 7 2.11 GRAFICO3D...................................................................................................................... 7 2.12 ARTESANÍADESOFTWARE...................................................................................................... 7 3. MARCO METODOLÓGICO...................................................................................................... 7 4 FUNCIONES............................................................................................................................ 8 4.1 TRASLACIÓN....................................................................................................................... 8 4.2 ROTACIÓN.......................................................................................................................... 9 4.3 RUGOSIDAD........................................................................................................................ 9 4.4 ESCALA.............................................................................................................................. 9 4.4 PROFUNDIDAD .................................................................................................................... 9 4.5 POSICIÓN INICIAL ................................................................................................................10 4.6 ESTABLECER LUZ ORIGEN.......................................................................................................10 4.7 NUEVA MONTAÑA...............................................................................................................10 4.7 RESUMEN DE FUNCIONES......................................................................................................11 5 ILUSTRACIONES.....................................................................................................................12 6 VISTA FINAL..........................................................................................................................20 7 CONCLUSIÓN ........................................................................................................................21
  • 3. 3 Índice de Figuras Ilustración 1. Malla principal ................................................................................................12 Ilustración 2. Malla con 9 vértices (segunda iteración)........................................................12 Ilustración 3. Malla con n iteraciones...................................................................................13 Ilustración 4. Montaña con efecto de luz y sombra .............................................................13 Ilustración 5. Aumento de rugosidad ...................................................................................14 Ilustración 6. Montaña con división de altitud por color ....................................................14 Ilustración 8. Traslación negativa sobre eje x.......................................................................15 Ilustración 7. Traslación positiva sobre eje x........................................................................15 Ilustración 9. Traslación positiva en eje y.............................................................................16 Ilustración 10. Traslación negativa en eje y..........................................................................16 Ilustración 11. Traslación positiva en eje z...........................................................................17 Ilustración 12. Traslación negativa en eje z..........................................................................17 Ilustración 13. Escala reductiva ............................................................................................18 Ilustración 14. Escala aumentada .........................................................................................18 Ilustración 15. Rotación en eje y...........................................................................................19 Ilustración 16. Rotación en eje x...........................................................................................19 Ilustración 17. Rotación en eje z...........................................................................................20 Ilustración 18. Vista de la montaña final ..............................................................................20 Índice de tablas Tabla 1. Funciones del teclado para el programa.................................................................11
  • 4. 4 1. MARCOCONTEXTUAL 1.1 Nombre del proyecto Representación de una montaña utilizando OpenGL 1.2 Introducción Desde la aparición de la graficación por computadora se ha facilitado la representación virtual de los objetos visibles del universo y todo lo que podamos imaginar, aún si ello no existe. Estos gráficos que se generan por computadora pueden emplearse en diferentes áreas como el cine, los videojuegos, publicidad, simuladores, etcétera, pues ayuda a visualizar datos complejos de forma sencilla,representar escenas,y en algunos casos,interactuar con ellas en tiempo real. En las escenas que podemos realizar, muchas veces tenemos la necesitad de proyectar elementos de la naturaleza, los cuales tienen estructuras fractales. Esta característica es posible definir en algún lenguaje de programación y facilitar esto con ayuda de alguna librería gráfica. 1.3 Objetivo general Modelar gráficamente una montaña. 1.4Objetivos específicos  Elaborar el modelado de una montaña 
  Codificar el modelado con lenguaje C++  Utilizar la librería OpenGL para la codificación  Implementar la interacción con la escena  Realizar la documentación para los usuarios 

  • 5. 5 2. MARCOTEÓRICO 2.1 Gráfico por computadora Se denomina grafico por computadora a las imágenes las cuales son generadas mediante el uso de software ordenadores pueden dividirse en gráficos 2D y gráficos 3D (aparenta profundidad). 2.2 OpenGl OpenGL (Open Graphics Library) es una especificación estándar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan gráficos 2D y 3D. La interfaz consiste en más de 250 funciones diferentes que pueden usarse para dibujar escenas tridimensionales complejas a partir de primitivas geométricas simples, tales como puntos, líneas y triángulos. Fue desarrollada originalmente por Silicon Graphics Inc. (SGI) en 19922 y se usa ampliamente en CAD, realidad virtual, representación científica, visualización de información y simulación de vuelo. También se usa en desarrollo de videojuegos, donde compite con Direct3D en plataformas Microsoft Windows. Actualmente se encuentra en su versión 4.4 liberada el 22 de julio de 2013. 2.3 Lenguaje de programación C++ C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne Stroustrup. La intención de su creación fue el extender al exitoso lenguaje de programación C con mecanismos que permitan lamanipulación de objetos. En esesentido, desde elpunto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido. Posteriormente seañadieron facilidades deprogramación genérica,que sesumó a los otros dos paradigmas que ya estaban admitidos (programación estructurada y la programación orientada a objetos). Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma. 2.4 GLUT Es una biblioteca de utilidades para programas OpenGL que principalmente proporciona diversas funciones de entrada/salida con el sistema operativo. Entre las funciones que
  • 6. 6 ofrece se incluyen declaración y manejo de ventanas y la interacción por medio de teclado y ratón. También posee rutinas para el dibujado de diversas primitivas geométricas (tanto sólidas como en modo wireframe) que incluyen cubos, esferas y teteras. También tiene soporte para creación de menús emergentes. 2.5 Montaña El término montaña proviene del latín mons. En geografía, una montaña o un monte es un conjunto de rocas, tierra, piedras y, en su caso, lava, que forman una elevación natural de gran altura y de grandes dimensiones (mayor de 700 m) sobre el terreno. 2.6 Fractal Un fractal es un objeto geométrico cuya estructura básica, fragmentada o irregular, se repite a diferentes escalas. El término fue propuesto por el matemático Benoît Mandelbrot en 1975 y deriva del latín fractus, que significa quebrado o fracturado. Muchas estructuras naturales son de tipo fractal. La propiedad matemática clave de un objeto genuinamente fractal es que su dimensión métrica fractal es un número no entero. 2.7 Textura Una textura es una imagen del tipo bitmap utilizada para cubrir la superficie de un objeto virtual, ya sea tridimensional o bidimensional, con un programa de gráficos especial. Multitexturizado es el uso de más de una textura a la vez en un polígono. 2.8 Recursividad Es la forma en la cual se especifica un proceso basado en su propia definición. 2.9 Modelado Arte o técnica que consiste en dar la forma deseada a una materia blanda.
  • 7. 7 2.10 Renderizar Es un término usado en jerga informática para referirse al proceso de generar una imagen o vídeo mediante el cálculo de iluminación GI partiendo de un modelo en 3D. Este término técnico es utilizado por los animadores o productores audiovisuales (CG)y en programas de diseño en 3D. 2.11 Grafico3D El término gráficos 3D por computadora (o por ordenador) se refiere a trabajos de arte gráfico que son creados con ayuda de software y programas especiales en general, o de términos, de técnicas y tecnología relacionadas con los gráficos de dimensiones altamente concentradas pueden ser grises o azul con rojo. 2.12 Artesaníadesoftware En la artesanía del software se pone el énfasis en las capacidades de desarrollo del programador y su capacidad de aprendizaje constante, como una forma de resolver los problemas habituales de la industria que surgen por un enfoque hacia el software como producto en lugar de como arte. Donde la industria tradicional pone varios niveles de consultores, analistas, diseñadores y programadores, la artesanía del software, basada en las directrices del desarrollo ágil (Agile Manifestó), da prioridad a la figura del desarrollador artesano, trabajando dentro de un grupo de artesanos de mayor o menor nivel. Aprendizaje y mejora constante, gusto por la perfección entendiendo que ésta es inalcanzable, productos sólidos, bien construidos y pasión por el oficio. Soy un artesano; artesano del software. 3. MARCO METODOLÓGICO 1. Se realizara un boceto a mano para darse la idea de la implementación en el cual el objeto a dibujar “Montaña” quedara plasmado. 2. Utilización de superficie plana que será la guía con la cual se dividirá para tener la referencia de la ubicación de los objetos.
  • 8. 8 3. Creación de un método recursivo para que vaya calculando 
 4. Creación de un segundo boceto codificado en OpenGl mediante el uso de figuras tridimensionales simples (sin texturas). 5. De la figura plana se hace una división en cuatro partes. 
 6. Se le asigna una altura aleatoria a los 5 vértices 
 7. Se repite el proceso en cada iteración. 
 8. Aplicación de efectos de profundidad e iluminación alescenario resultado del último paso. 9. Le hicimos algunas modificaciones porque la vista de la cámara no podía apreciar de cerca la textura. 10. Aplicación de la rugosidad. 
 11. Se le aplica color a la montaña, esto de acuerdo a la altura de cada vértice. 12. Pruebas finales. 4 FUNCIONES 4.1 Traslación Con la traslación le damos movimiento a la gráfica de la montaña. La tecla “” traslada la figura en el eje de las “equis” (x). Cuando se presiona esa tecla la montaña se moverá a la izquierda, representaría un movimiento negativo en el eje de las equis (x); y cuando la tecla presionada es “”, el gráfico se moverá en sentido positivo, recorriéndose a la derecha. El movimiento vertical del gráfico de la montaña está dado por el uso de la tecla “”, donde se moverá hacia abajo, y por el contrario siendo la tecla “” la montaña se trasladará hacia arriba. El gráfico de la montaña se deslizará en la profundidad usando la tecla “o”, representando con esta el eje “z”. Si la tecla se presiona la figura representará un movimiento de
  • 9. 9 acercamiento a la pantalla; y si se presiona la tecla “p” el gráfico describirá una traslación que aparentará lejanía a la pantalla. 4.2 Rotación La figura es capaz de rotar, y lo hará en 6 direcciones dependiendo de las teclas que sean presionadas. Si se presiona la tecla “F1” la figura rotará sobre el eje “x” hacia arriba, si es presionada la tecla “1” la figura rotara sobre el eje “x” hacia abajo. La figura rotara hacia la derecha sobre el eje “y” si es presionada la tecla “F2” rotara al lado opuesto si se presiona la tecla “2”. Para que la figura rote sobre el eje “z” se implementaron las teclas “F3” para rotación contraria a las manecillas del reloj o la tecla “3” para rotación similar a las manecillas del reloj. 4.3 Rugosidad La montaña puede aumentar o disminuir su rugosidad y con esto aumentar la altura de los “picos” en su superficie. Esto por la cantidad de veces que la malla calcula las alturas aleatorias de sus puntos (o intersecciones en esa malla). 4.4 Escala Laescalatambién puede modificarse, aumentando en 0.1 en los tres ejes.Si se presiona “+” aumentara y si se presiona la tecla “-“ disminuirá la escala 4.4 Profundidad La profundidad y las iteraciones también pueden cambiar. La montaña puede aumentar o disminuir sus iteraciones, y con esto mejorar su textura, agregar complejidad y aumentar la cantidad de “picos” en su superficie o todo lo contrario al reducir la cantidad de figuras en la malla inicial y simplificar la figura. Esto por la cantidad de veces que la malla inicial se divide y calcula sus puntos para las alturas aleatorias de sus puntos (o intersecciones en esa malla).
  • 10. 10 Para lograr esto, se presiona las teclas “F5” para reducir las iteraciones al restar uno, o “F6” para aumentarlas, sumando uno a la profundidad cada que se presiona. 4.5 Posición inicial Si se desea ver el gráfico de la montaña centrado y en una posición horizontal, se presiona la tecla “r” y con esto las transformaciones de traslación, rotación y escalabilidad regresan a la normalidad y se podrá ver el gráfico completamente de frente y observar mejor sus transformaciones, tal y como se encontraba al inicio, en cuanto a posición se refiere, pues las iteraciones y rugosidad no se ven alterados 4.6 Establecer luz origen Para poder darle un mayor realismo a la figura se implementaron las funciones de luz de openGL (Luz ambiental, luz difusa y luz especular) añadiendo a esta una posición donde se establecería el origen de la luz. La posición del origen de luz la podemos cambiar usando las teclas “x, X, y, X, z, Z” para mover sobre los ejes “x”, “y” o “z”. Si la tecla se presiona con mayúsculas activadas la traslación de punto origen de luz se moverá positivamente sobre cada eje, de lo contrario si la tecla es presionada sin activar mayúsculas el movimiento será negativo sobre cada eje. 4.7 Nueva montaña Adicional seimplemento una función para que cuando seapresionada la tecla“F4” cree una nueva montaña.
  • 11. 11 4.7 Resumen de Funciones Tabla 1. Funciones del teclado para el programa TECLA FUNCIÓN DESCRIPCIÓN  Traslación Traslación negativa sobre el eje x  Traslación Traslación positiva sobre el eje x  Traslación Traslación positiva sobre el eje y  Traslación Traslación negativa sobre el eje y o Traslación Traslación negativa sobre el eje z p Traslación Traslación positiva sobre el eje z F1 Rotación Rotar sobre el eje x hacia arriba 1 Rotación Rotar sobre el eje x hacia abajo F2 Rotación Rotar sobre el eje y hacia la derecha 2 Rotación Rotar sobre el eje y hacia la izquierda F3 Rotación Rotar sobre el eje z hacia la izquierda 3 Rotación Rotar sobre el eje z hacia la derecha F4 Nuevo Crear nueva montaña F5 Iteración Aumentar las iteraciones para dividir la malla principal F6 Iteración Disminuir las iteraciones para dividir la malla principal + Escala Aumentar el tamaño de la figura - Escala Disminuir el tamaño de la figura X Traslación Traslación positiva sobre el eje x el origen de luz x Traslación Traslación negativa sobre el eje x el origen de luz Y Traslación Traslación positiva sobre el eje y el origen de luz y Traslación Traslación negativa sobre el eje y el origen de luz Z Traslación Traslación positiva sobre el eje z el origen de luz z Traslación Traslación negativa sobre el eje z el origen de luz ESC Escape Salir del programa
  • 12. 12 5 ILUSTRACIONES Ilustración 1. Malla principal Ilustración 2. Malla con 9 vértices (segunda iteración)
  • 13. 13 Ilustración 3. Malla con n iteraciones Ilustración 4. Montaña con efecto de luz y sombra
  • 14. 14 Ilustración 5. Aumento de rugosidad Ilustración 6. Montaña con división de altitud por color
  • 15. 15 Ilustración 8. Traslación positiva sobre eje x Ilustración 7. Traslación negativa sobre eje x
  • 16. 16 Ilustración 9. Traslación positiva en eje y Ilustración 10. Traslación negativa en eje y
  • 17. 17 Ilustración 11. Traslación positiva en eje z Ilustración 12. Traslación negativa en eje z
  • 18. 18 Ilustración 13. Escala reductiva Ilustración 14. Escala aumentada
  • 19. 19 Ilustración 15. Rotación en eje y Ilustración 16. Rotación en eje x
  • 20. 20 Ilustración 17. Rotación en eje z 6 VISTA FINAL Ilustración 18. Vista de la montaña final
  • 21. 21 7 CONCLUSIÓN Durante la realización de este trabajo se hizo notable la importancia de los fractales. El campo de acción de los fractales no ha parado de ampliarse desde las investigaciones de Mandelbrot en los 70’s. A partir de eso, muchos científicos han descubierto que la geometría fractal es una poderosa herramienta para el descubrimiento de los secretos de una amplia variedad de sistemas y solución de los problemas importantes de la ciencia aplicada. Entre la gran variedad de fractales que existen hoy en día se decidió utilizar el fractal de paisaje puesto que éste cuenta con el algoritmo de subdivisión y proporciona de una manera más realista y flexible el cálculo de las estructuras de la montaña. Con esta técnica, se logró cierto grado de realismo en el paisaje. Se utilizó la especificación estándar OpenGL, visto que este es por sus características el mejor cuando se trata de generar efectos visuales, escenas, imágenes realistas entre otras cosas, debido a su portabilidad, estandarización y potencia gráfica. De igual manera la interfaz consiste en más de 250 funciones diferentes que pueden usarse para dibujar escenas tridimensionales complejas a partir de primitivas geométricas simples, tales como puntos, líneas y triángulos.