Alimentación
La base de datos de árboles y texturas es la base del sistema. Los datos describen la conformación física de los árboles dentro del huerto, sus las ramas, hojas y fruta. Ademas de la descripción fisiológica, tiene descriptores visuales de la aparencia de la corteza, color de las hojas, fruta y pedicelos.
La estructura inicial de la base de datos se indica a continuación. Sin embargo es importante notar que esta estructura tiene que adecuarse a los requerimientos de representación gráfica en Blender, y su posterior exportación, así que perfectamente puede modificarse durante el desarrollo. Particularmente, la base inicial supone que ramas y troncos sean lineas rectas. Esta suposición es claramente débil, y podría tener que reemplazarse con la confección de ramas como un conjunto de curvas.
Otra posible modificación de la estructura de la base de datos es que identificar cada hoja en el huerto podría ser innecesario. Posiblemente se puede generar las hojas dentro de Blender mismo, utilizando funciones que dan valores aleatorias. En ese caso, la base de datos tendría que tener información de la distribución probabilística de los atributos de las hojas. En el caso de los frutos, es probable que tengan que estar deterministicamente definidos antes de ejecutar el sistema, ya qu se podría querer hacer comparaciones entre la entrada a Blender y su salida.
La base de datos mismo puede ser un archivo XML, sino algo como SQLite. El programa primero pide la ubicación de la cámara y su orientación. Hace el cálculo de que árbol tendría que poder ver y lee el archivo / dBase para levantar los datos de ese árbol. En principio se deja pendiente la necesidad de representar árboles del fondo. Para empezar es el paso mas simple. Un segundo paso es tener árboles estocásticos atrás del árbol principal. Y si eso todavía no cumple, entonces hay que levantar esos árboles que están dentro de las dos o tres hileras atrás del arbol principal, que estarían dentro del campo de visión de la cámara. En ningún caso se tiene que levantar todos los árboles de la base de datos.
Una vez que el programa ha levantado los datos del arbol / los árboles, tiene que enviarselos a Blender. Aqui hay un script en Python que abre un socket UDP a Blender y le envia paquetes de datos a Blender. Aqui hay otro script en Python que corre dentro de Blender y recibe los datos via el socket desde el anterior script. Estos dos scripts fueron hechos por Javier Hanneman.
- Hileras
- Número/ID
- Orientación
- Inicio
- Fin
- Árboles
- Hilera
- Posicion
- Variedad
- Año plantación
- Diámetro
- Ángulo
- Textura
- Ramas
- Rama base
- Posicion
- Orientación
- Diámetro
- Largo
- Textura
- Dardos
- Rama base
- Posicion
- Orientación
- Largo
- Textura
- Hojas
- Rama o dardo
- Posicion
- Orientación
- Tamaño
- Textura
- Frutos
- Rama o dardo
- Posicion
- Tamaño
- Textura
- Largo pedicelo
- Textura pedicelo
- Orientación pedicelo