*****************************************************************************
* SISTEMA PARA TOUR VIRTUAL BASADO EN PANNELLUM. By Daniel Jaworski - 2021  *
* daniel@vallepunilla.com.ar                                                *
* Este programa permite crear de forma visual, tours virtuales              *
* multiresolución basados en Pannellum.                                     *
*****************************************************************************

DESCRIPCIÓN:

Desde hace tiempo realizo tours virtuales, adoptando PANNELLUM para la visualización de los mismos. Me entusiasmó
la posibilidad de tener un sistema de software libre para crear los recorridos. No obstante la dificultad y 
complejidad radica en la necesidad de escribir muchas líneas de código, debiendo invertir mucho tiempo para 
obtener un resultado.
El sistema que presento es un aporte para facilitar la tarea de todos quienes adoptaron PANNELLUM para sus tours.
Permite crear de forma sencilla y visual un recorrido virtual estándar, a manera de plantilla, que si bien se puede 
modificar con posterioridad esta herramienta realiza el trabajo más importante y engorroso. 

Estas son las características principales:
1. El sistema crea un tour completo, no obstante puede ser modificado posteriormente
2. Tiene opciones tales como:
	a. Vistas en miniatura de las escenas que componen el tour, se puede navegar a través de ellas.
	b. Incorporar un logo en la esquina superior izquierda.
	c. Elegir iniciar el tour con un click.
	d. Incorporar una imagen inicial cuando se selecciona iniciar el tour con un click
	e. Efecto zoom-out al entrar en una escena
	f. Hotspots animados.
	g. Controles de zoom y pantalla completa. Botón de regreso a la escena principal. Botón para ocultar o mostrar las miniaturas
3. El sistema genera todos los archivos necesarios y los guarda en una carpeta. La misma se sube al servidor web tal cual fue generada
4. Genera miniaturas de cada escena, con un logo de 360º sobreimpreso. 
5. Posibilidad de volver a crear el tour sin necesidad de comenzar desde cero.


REQUERIMIENTOS:

        1. Servidor Apache + php instalados
        2. Requiere Python 3.2+ (o Python 2.7), el paquete Python Pillow
        3. Hugin instalado en la carpeta raiz (se necesita nona.exe)

USO:

        1. Copiar las imagenes equirectangulares en la carpeta "origen"
        2. Ingresar en la pagina de inicio del programa. Se creará la carpeta ARCHIVOFINAL y se visualizarán las
	   imagenes de la carpeta "origen".
        3. Seleccionar una escena y hacer click en "procesar".
	4. Repetir el proceso para cada imagen del tour. Las ya procesadas se marcan con un recuadro naranja.
	5. Se pueden procesar todas las imagenes con un sólo click seleccionando el botón correspondiente.
	6. Procesadas todas las imágenes, hacer click en "Agregar hotspots".
	7. Seleccionar una imagen para agregarle hotspots
	8. Hacer click en la imagen equirectangular para seleccionar la vista inicial. Una vez seleccionada hacer click en "Establecer vista inicial"
	9. Para establecer hotspots:
          	a. En la imagen equirectangular hacer click para ubicación del hotspot.
          	b. En las miniaturas la escena a enlazar.
          	c. Un texto para el hotspot.
    	   Para finalizar hacer click en "Agregar"
	10. Repetir la operación con todos los hotspots. Finalizar con el botón "Grabar hotspots en la escena".
	11. Elegir otra imagen y repetir el proceso de agregar hotspots, o finalizar el tour
	12. Completar los datos solicitados para finalizar el tour:
		a. Nombre del tour: Es el título que llevará el tour.
		b. Crear miniaturas: el programa generará miniaturas de cada escena y las incorporará al tour.
		c. Autoload: Si el tour se iniciará haciendo click. En caso negativo, se desplega un campo para ingresar una imagen de inicio.
		d. Imagen inicial: Se puede elegir una imagen .jpg, como sugerencia la equirectangular "principal.jpg".
		e. Logo: Se puede incorporar un logo, debe ser de tipo .png con transparencia.
		f. El tour se creará al hacer click en "Crear el tour".
	13. En caso de querer volver a compilar el tour, hacer click en el botón correspondiente.	
	14. La carpeta "ARCHIVOFINAL" es la que contiene el tour completo. El programa crea las subcarpetas siguientes:
		a. "Chicas": contiene las miniaturas en caso de haber optado por la opción de crear miniaturas.
		b. "Chicas360": Contiene las mismas miniaturas a las que se superpone un ícono de 360º
		c. "CONFIG": Contiene los archivos auxiliares del tour creado.
		d. "css": Contiene los archivos de estilos.
		e. "extras": Contiene archivos de imagenes (Imagen inicial y logo)
		f. "imagenes": Contiene las imagenes de todas las escenas del tour.
		g. "js": Contiene los archivos .js del tour

ATENCIÓN:
El sistema funciona en entorno Windows, no habiéndolo probado en otros sistemas, de todos modos debería funcionar.
El tamaño de las imágenes equirectangulares que uso es de 7776x3888. No sabría si funciona en tamaños más grandes.
El sistema puede tener errores, no soy un programador destacado. Puedes escribirme a daniel@vallepunilla.com.ar si deseas colaborar
para perfeccionar este proyecto.


  
***********************************************************
* PANNELLUM Y GENERATE.PY SON CREACIÓN DE MATTHEW PETROFF *
***********************************************************





