First doc update
This commit is contained in:
30
README.md
Normal file
30
README.md
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
# Manigraph: Graficadora de variedades
|
||||||
|
Diaz Camacho Pedro Emilio
|
||||||
|
|
||||||
|
# Resumen
|
||||||
|
manigraph es un graficador de variedades que lee archivos binarios, con la información de
|
||||||
|
una variedad y grafica esta variedad en una proyección tridimensional, se puede
|
||||||
|
interactuar con el programa usando el teclado o mouse.
|
||||||
|
|
||||||
|
# Tecnologias
|
||||||
|
## Lenguajes de programación
|
||||||
|
- C89
|
||||||
|
## Librerias
|
||||||
|
- OpenGL
|
||||||
|
- GLFW
|
||||||
|
- cglm
|
||||||
|
|
||||||
|
# Compilación
|
||||||
|
Para compilar basta usar ´make´ pero también se pueden usar los siguientes comandos.
|
||||||
|
## Linux
|
||||||
|
´´´
|
||||||
|
cc -fPIC -shared -D_GLFW_X11 -D_GLFW_BUILD_DLL ./ext/glfw/src/*.c -o libglfw.so
|
||||||
|
cc -L. -lglfw -lGL -I ext/cglm/include/ -I ext/glfw/include/ src/*.c -o manigraph
|
||||||
|
´´´
|
||||||
|
|
||||||
|
# Ejecutar
|
||||||
|
Para ejecutar el programa antes de instalarse base usar ´make run´, sin embargo también se puede usar lo siguiente
|
||||||
|
## Linux
|
||||||
|
´´´
|
||||||
|
LD_LIBRARY_PATH=. ./manigraph
|
||||||
|
´´´
|
||||||
@@ -1,58 +1,31 @@
|
|||||||
# Manual de Diseño
|
# Manual de Diseño
|
||||||
Diaz Camacho Pedro Emilio
|
Diaz Camacho Pedro Emilio
|
||||||
|
|
||||||
# Resumen
|
|
||||||
manigraph es un graficador de variedades que lee archivos binarios con un forma
|
|
||||||
to espacial, este viene con un manual explicando como correr el programa, como
|
|
||||||
interactuar con el programa y las especificaciones del archivo binario.
|
|
||||||
|
|
||||||
# Tecnologias
|
|
||||||
## Lenguajes:
|
|
||||||
- C89
|
|
||||||
## Librerias:
|
|
||||||
- OpenGL
|
|
||||||
- GLFW
|
|
||||||
- cglm
|
|
||||||
|
|
||||||
# Archivos
|
|
||||||
- Ejecutable.
|
|
||||||
- Ejemplo.
|
|
||||||
- Una libreria tipo STB, con las funciones para hacer variedades con una
|
|
||||||
funcion parametrizadora.
|
|
||||||
- LA PARAMETRIZACION DEBE SER CONTINUA.
|
|
||||||
- El codigo fuente de un programa que cree la variedad de una botella
|
|
||||||
de klein usando esta libreria.
|
|
||||||
- Manual
|
|
||||||
- Explicando como correr el programa desde la terminal.
|
|
||||||
- Explicando como interactuar con el programa con el teclado y mouse.
|
|
||||||
- Explicando el formato binario de las variedaedes.
|
|
||||||
- Explicando la libreria STB.
|
|
||||||
|
|
||||||
# Objetivos
|
# Objetivos
|
||||||
## Prioridad alta
|
## Prioridad alta
|
||||||
- [] El programa debe actualizarse cuando interactuan con el.
|
- [ ] El programa debe actualizarse cuando interactuan con el.
|
||||||
- [] El usuario quiere:
|
- [ ] El usuario quiere:
|
||||||
- [X] Ver 3 ejes en todo momento.
|
- [X] Ver 3 ejes en todo momento.
|
||||||
- [] Ver que ejes esta viendo.
|
- [ ] Ver que ejes esta viendo.
|
||||||
- [] Ver cuantos ejes hay.
|
- [ ] Ver cuantos ejes hay.
|
||||||
- [X] El usuario quiere:
|
- [X] El usuario quiere:
|
||||||
- [X] Rotar estos ejes,
|
- [X] Rotar estos ejes,
|
||||||
- [X] Ver donde quedan los ejes despues de la rotados.
|
- [X] Ver donde quedan los ejes despues de la rotados.
|
||||||
- [] El usuario experimentado quiere ejecutar el programa y pasar la variedad:
|
- [ ] El usuario experimentado quiere ejecutar el programa y pasar la variedad:
|
||||||
- [] Como argumento del programa.
|
- [ ] Como argumento del programa.
|
||||||
- [] Desde la entrada standar del programa.
|
- [ ] Desde la entrada standar del programa.
|
||||||
|
|
||||||
## Prioridad media
|
## Prioridad media
|
||||||
|
|
||||||
- [] El usuario quiere:
|
- [ ] El usuario quiere:
|
||||||
- [] Cambiar los ejes que se ven por pares.
|
- [ ] Cambiar los ejes que se ven por pares.
|
||||||
- [] Cambiar los ejes donde esta la informacion de los ejes.
|
- [ ] Cambiar los ejes donde esta la informacion de los ejes.
|
||||||
- [] El usuario quiere interactuar con el programa:
|
- [] El usuario quiere interactuar con el programa:
|
||||||
- [] Usando solo el mouse.
|
- [ ] Usando solo el mouse.
|
||||||
- [] Usando solo el teclado.
|
- [ ] Usando solo el teclado.
|
||||||
|
|
||||||
## Prioridad baja
|
## Prioridad baja
|
||||||
- [] El usuario quiere guardar las transformaciones como un archivo GIF.
|
- [ ] El usuario quiere guardar las transformaciones como un archivo GIF.
|
||||||
|
|
||||||
# Camino
|
# Camino
|
||||||
|
|
||||||
@@ -78,10 +51,10 @@ interactuar con el programa y las especificaciones del archivo binario.
|
|||||||
1. Usando el mouse.
|
1. Usando el mouse.
|
||||||
1. Usando el teclado.
|
1. Usando el teclado.
|
||||||
0. Detalles.
|
0. Detalles.
|
||||||
0. Se anima el cambio de eje.
|
1. Se anima el cambio de eje.
|
||||||
0. Se hace el generador de GIF.
|
1. Se hace el generador de GIF.
|
||||||
0. Se puede cambiar el shader
|
1. Se puede cambiar el shader
|
||||||
0. Documentacion
|
1. Documentacion
|
||||||
|
|
||||||
# Cronograma
|
# Cronograma
|
||||||
|
|
||||||
@@ -98,24 +71,3 @@ interactuar con el programa y las especificaciones del archivo binario.
|
|||||||
||1.2 Programa ejemplo mobius|13-Oct-2024|
|
||1.2 Programa ejemplo mobius|13-Oct-2024|
|
||||||
||1.3 Programa ejemplo klein|20-Oct-2024|
|
||1.3 Programa ejemplo klein|20-Oct-2024|
|
||||||
|
|
||||||
|
|
||||||
## Problemas
|
|
||||||
OpenGL esperan objetos tridimensionales, no de n dimensiones.
|
|
||||||
|
|
||||||
Usando glVertexAttribPointer podemos pasar las coordenadas que
|
|
||||||
queramos de los puntos de las variedades, y con ello usar objetos 3D en
|
|
||||||
el shader.
|
|
||||||
|
|
||||||
## Rotar ejes por pares en una animacion continua.
|
|
||||||
- Con glVertexAttribPointer podemos pasar las coordenadas del eje
|
|
||||||
seleccionado, al shader.
|
|
||||||
- Con la funcion mix del shader y bloqueando el input, podemos hacer
|
|
||||||
una animacion pasando una variable con la cpu.
|
|
||||||
- Cuando la animacion termine intercambiar los indices del layout,
|
|
||||||
usando glVertexAttribPointer otra vez.
|
|
||||||
|
|
||||||
## Volumen de la variedad.
|
|
||||||
Dado que la funcion parametrizadora es continua, mandamos la frontera
|
|
||||||
de un n-cubo a la frontera de una variedad, por lo que solo basta
|
|
||||||
graficar la frontera de la variedad.
|
|
||||||
|
|
||||||
|
|||||||
22
doc/es/tech/problemas.md
Normal file
22
doc/es/tech/problemas.md
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
# Problemas esperados al desarrollar
|
||||||
|
Diaz Camacho Pedro Emilio
|
||||||
|
|
||||||
|
## OpenGL esperan objetos tridimensionales, no de n dimensiones.
|
||||||
|
|
||||||
|
Usando glVertexAttribPointer podemos pasar las coordenadas que
|
||||||
|
queramos de los puntos de las variedades, y con ello usar objetos 3D en
|
||||||
|
el shader.
|
||||||
|
|
||||||
|
## Rotar ejes por pares en una animacion continua.
|
||||||
|
- Con glVertexAttribPointer podemos pasar las coordenadas del eje
|
||||||
|
seleccionado, al shader.
|
||||||
|
- Con la funcion mix del shader y bloqueando el input, podemos hacer
|
||||||
|
una animacion pasando una variable con la cpu.
|
||||||
|
- Cuando la animacion termine intercambiar los indices del layout,
|
||||||
|
usando glVertexAttribPointer otra vez.
|
||||||
|
|
||||||
|
## Volumen de la variedad.
|
||||||
|
Dado que la funcion parametrizadora es continua, mandamos la frontera
|
||||||
|
de un n-cubo a la frontera de una variedad, por lo que solo basta
|
||||||
|
graficar la frontera de la variedad.
|
||||||
|
|
||||||
Reference in New Issue
Block a user