1. manual de usuario · o open: abrir un fichero de la aplicación que previamente ha sido salvado....
TRANSCRIPT
1. MANUAL DE USUARIO
En esta sección explicaremos de manera detallada cómo utilizar el software
implementado en este proyecto. En primero lugar haremos una explicación de cómo
funciona la operativa de manera genérica. Luego haremos un repaso por cada una de
las funcionalidades de la aplicación.
1.1. Funcionamiento general
El objetivo de este software es resolver problemas relacionados con el
posicionamiento de guardias en un terreno poliédrico. Cómo se ha explicado con
anterioridad, en lo que concierna a la resolución de este tipo de problemas, se puede
partir de una representación del terreno consistente en la proyección de este terreno
sobre un plano. La resultante de proyectar el terreno sobre un plano es un grafo
triangulado.
Por tanto, el primer paso para poder resolver los diferentes problemas de
posicionamiento de guardias es partir de un grafo triangulado. Una vez generado el
grafo triangulado, el usuario podrá la problemática de posicionamiento de guardias
sobre él.
La operativa genérica del software implementado es la siguiente:
1. Añadir, mover y eliminar puntos. El usuario podrá generar una nube de
puntos manualmente o podrá generar una de una manera aleatoria,
simplemente suministrando a la aplicación el número de puntos que se
quieren generar.
2. Partiendo de esa nube de puntos el usuario podrá realizar un grafo
triangulado, eligiendo uno de los siguientes algoritmos de triangulación:
a. Algoritmo de Greedy
b. Algoritmo de Dalaunay
c. Algoritmo de Capas
d. Algoritmo Incremental
3. Una vez obtenido el grafo triangulado, el usuario podrá resolver cada uno
de los siguientes problemas de posicionamiento de guardias, que a su vez se
corresponden con funcionalidades de la aplicación:
a. Posicionar un guardia de vértice y visualizar cuales de los triángulos
del grafo están vigilados.
b. Buscar un posicionamiento de guardias vértice que garantice que
todos los triángulos del grafo triangulado están vigilados mediante
una estrategia de Greedy.
c. Buscar un posicionamiento de guardias arista que garantice que
todos los triángulos del grafo triangulado estén vigilados.
d. Buscar un posicionamiento de guardias aristas abiertos que
garantice que todos los triángulos del grafo triangulado estén
vigilados.
e. Permitir el posicionamiento manual de los guardias abiertos. El
software irá informando según se vayan posicionamientos, que
triángulos están vigilados, mostrándolos de diferente color. También
indicará el número de triángulos que faltan por vigilar.
1.2. Interfaz de usuario
En esta sección se va a describir el interfaz de usuario. En que áreas se compone y se
explicará en detalle que acciones se pueden iniciar desde cada parte de cada área.
El interfaz de usuario se puede dividir en cinco zonas:
• Menús verticales
• Barra de operaciones
• Área de representación gráfica
• Barra informativa
• Consola informativa
FIGURA 1 - INTERFAZ DE USUARIO
Menús verticales:
Es una barra de menús verticales que contiene los siguientes elementos:
• File: Opciones relativas a ficheros
o New: Reiniciar el área de representación gráfica
o Open: Abrir un fichero de la aplicación que previamente ha sido
salvado.
o Save: Salvar el estado actual del área de representación gráfica en
un fichero.
• Help: Información sobre la aplicación
o User’s manual: Visualiza este manual en una versión HTML.
o About…: Información sobre la versión y el estado de la aplicación.
Barra de operaciones
FIGURA 2 - IU - BARRA DE OPERACIONES
En la barra de operaciones el usuario puede usar todas las acciones disponibles en la
aplicación. La barra de operaciones se divide en cuatro áreas intercaladas por
separadores. Las cuatro áreas a las que nos referimos son las siguientes:
• Opciones de fichero: Son las mismas opciones que pueden ser accionadas
desde el menú vertical:
o Icono nuevo: Al accionarlo se reinicia el área de representación
gráfica
o Icono abrir: Al accionarlo se abre un fichero de la aplicación que
previamente ha sido salvado.
o Icono guardar: Al accionarlo se salva el estado actual del área de
representación gráfica en un fichero.
• Opciones de vértices: Es un conjunto de icono que representan una serie de
acciones que el usuario puede utilizar para crear, seleccionar y borrar
vértices.
o Icono añadir vértice: Cambia la herramienta que esta seleccionada y
que se acciona mediante el ratón. La herramienta seleccionada es
añadir vértice. Se añadirá un vértice a cada clic del ratón.
o Icono vértices aleatorios: Permite al usuario crear un conjunto de
vértices o nube de puntos aleatorios. El usuario tiene que
seleccionar el número de vértices que quiere generar
aleatoriamente.
o Icono eliminar vértice: Al accionarlo se elimina el vértice que esté
seleccionado en ese momento.
o Icono seleccionar vértice: Cambia la herramienta que está
seleccionada y que se acciona mediante el ratón. La herramienta
seleccionada es seleccionar vértice. Se seleccionará el vértice
cuando se haga clic sobre el que esté situado el puntero.
• Opciones de triangulaciones: Es un conjunto de iconos que representan una
serie de acciones para realizar triangulaciones con el conjunto de vértices
que hay creados en el área de representación gráfica.
o Icono triangulación Incremental: Realiza una triangulación
siguiendo el algoritmo de triangulación Incremental. Previamente el
usuario debe haber generado al menos tres vértices.
o Icono triangulación Delaunay: Realiza una triangulación siguiendo el
algoritmo de triangulación Delaunay. Previamente el usuario debe
haber generado al menos tres vértices.
o Icono triangulación “greedy”: Realiza una triangulación siguiendo el
algoritmo de triangulación “greedy”. Previamente el usuario debe
haber generado al menos tres vértices.
o Icono triangulación por Capas: Realiza una triangulación siguiendo
el algoritmo de triangulación por Capas. Previamente el usuario
debe haber generado al menos tres vértices.
• Opciones de operaciones de búsqueda de guardias: Es una lista
seleccionable con las operaciones de búsqueda de guardias que el usuario
puede hacer sobre las triangulaciones. Para que este seleccionable se visible
se tiene que cumplir la precondición de que exista una triangulación.
o Añadir guardia en vértice: Se añade un guardia en el vértice
seleccionado. Por otro lado, se colorean los triángulos que están
vigilados. Se cambia la herramienta seleccionada a una nueva
herramienta que surge mientras esta opción esta seleccionada. Esta
herramienta está representada por un nuevo botón que “Añadir
Guardia”. Mientras esta herramienta esté seleccionada, el usuario
con el ratón podrá cambiar al guardia de vértice.
o Calcular guardias vértice: Posiciona en la triangulación los guardias
vértice necesarios para que todos los triángulos estén vigilados.
o Calcular guardias arista: Posiciona en la triangulación los guardias
arista necesarios para vigilar todos los triángulos.
o Calcular guardias arista abiertos: Posiciona en la triangulación los
guardias arista abiertos necesarios para vigilar todos los triángulos.
o Calcular guardias arista abiertos manual: Permite al usuario ir
posicionando guardias arista abiertos manualmente. Se cambia la
herramienta seleccionada a una nueva herramienta que está
disponible mientras esta acción esta seleccionada. Esta herramienta
está representada por un nuevo botón “Añadir Guardia Arista”.
Área de representación gráfica
Es el área donde se visualizan las acciones que va tomando el usuario. En ella el
usuario puede:
• Agregar nuevos vértices
• Mover los vértices de ubicación.
• Seleccionar vértices
• Eliminar vértices
• Visualizar las triangulaciones
• Visualizar las operaciones de búsqueda de guardias
Barra informativa
La barra informativa consta a su vez de otras dos zonas.
• Una zona, alineada a la izquierda, donde informa sobre la herramienta que
esta seleccionada. También informa sobre la posición del vértice que está
seleccionado.
• Otra zona, alineada a la derecha, que informa sobre la posición actual del
puntero del ratón.
Consola informativa
La consola informativa es una ventana donde la aplicación mostrara un detalle
descriptivo de cada una de las operaciones realizadas. En concreto dará el detalle de:
• Los vértices existentes
• Las aristas existentes
• Los triángulos existentes en las triangulaciones
• Los guardias existentes en las triangulaciones
• El número de triángulos vigilados por los guardias
FIGURA 3 - OPERATIVAS - CONSOLA INFORMATIVA
La consola informativa aparecerá automáticamente siempre y cuando se visualicen
nuevos mensajes.
1.3. Descripción de las diferentes operativas
En esta sección se van a describir cada una de las operativas disponibles en el software
implementado. La descripción consistirá en una guía de los pasos que tiene que ir
ejecutando el usuario para llevar a cabo la operativa.
Generar una nube de puntos o vértices
Existen dos maneras de generar una nube de puntos. Se puede hacer manualmente
posicionando cada vértice arbitrariamente con el puntero del ratón o
automáticamente. De manera automática, el usuario tan sólo tiene que elegir el
número de vértices a posicionar y esto se posicionarán en una posición aleatoria.
Posicionamiento manual:
• En primer lugar, elegir la herramienta “Añadir vértice”.
FIGURA 4 - OPERATIVAS - AGREGAR VÉRTICE
• El puntero del ratón adoptará la forma de una cruz. El usuario podrá elegir
arbitrariamente en que posición agregar el vértice, posicionando el puntero
del ratón en el lugar elegido del área de representación gráfica. En la parte
derecha de la barra de información, serán visibles las coordenadas donde
está situado el puntero del ratón. El usuario puede añadir tantos vértices
cómo considere necesario.
FIGURA 5 - OPERATIVAS - POSICIONAR VÉRTICES
Seleccionar vértices:
• En primer lugar, se debe cambiar la herramienta seleccionada a
“Seleccionar vértice”.
FIGURA 6 - OPERATIVA - HERRAMIENTA SELECCIONAR VÉRTICE
• El puntero del ratón adoptará la forma de una flecha. El usuario elegir el
vértice a seleccionar posicionando el ratón sobre él y haciendo clic izquierdo
lo seleccionará. Visualmente aparecerá una circunferencia azul alrededor
del vértice y en la barra informativa en la parte izquierda, aparecerán las
coordenadas del vértice seleccionado.
FIGURA 7 - OPERATIVAS - VÉRTICE SELECCIONADO
Eliminar y mover un vértice:
• Primero el usuario debe tener seleccionado un vértice. Una vez
seleccionado el vértice pulsamos en el icono eliminar vértice y este se
elimina.
FIGURA 8 - OPERATIVAS - ELIMINAR VÉRTICE
• Una vez seleccionado el vértice también es posible moverlo a otra posición.
El usuario deberá hacer un clic prolongado y arrastrar el vértice
arbitrariamente donde quiera.
Generar un grafo triangulado
Es prerrequisito para iniciar esta operativa que al menos haya 3 vértices en el área de
representación gráfica. Si se pulsa sobre alguno de los iconos de triangulación sin
haber posicionado un mínimo de tres vértices, se visualizará un mensaje advirtiéndolo.
FIGURA 9 - OPERATIVAS - MÍNIMO DE VÉRTICES
Una vez que el usuario ha generado una nube de puntos ya es posible iniciar la
operativa de generar un grafo triangulado. Existen 4 operativas que generan grafos
triangulados siguiendo 4 algoritmos diferentes. Para iniciar estas operativas:
• Triangulación Incremental
• Triangulación Delaunay
• Triangulación “greedy”
• Triangulación por capas
FIGURA 10 - OPERATIVAS - TRIANGULACIÓN INCREMENTAL
FIGURA 11 - OPERATIVAS - TRIANGULACIÓN DELAUNAY
FIGURA 12 - OPERATIVAS - TRIANGULACIÓN “GREEDY”
FIGURA 13 - OPERATIVAS - TRIANGULACIÓN POR CAPAS
• Una vez seleccionada la triangulación a realizar con una nube de puntos en
el área de representación gráfica, la aplicación realizará el algoritmo
correspondiente y visualizará la representación de la triangulación.
FIGURA 14 - OPERATIVAS - TRIANGULACIÓN GENERADA
Modificar una triangulación
Las triangulaciones pueden ser modificadas en tiempo real. Esto significa varias cosas.
Una es que el usuario puede cambiar el algoritmo con el cual realizar la triangulación, y
la aplicación automáticamente redibujará el grafo triangulado, utilizando este
algoritmo. Por otro lado, el usuario podrá seguir modificando la nube de puntos en la
que está basada la triangulación, borrando o añadiendo vértices, y el grafo triangulado
se recalculará utilizando el algoritmo seleccionado.
Añadir guardia en vértice
El usuario previamente a iniciar esta operativa tiene que haber generado un grafo
triangulado. Una vez hecho esto, el usuario tendrá disponible una lista seleccionable
en el interfaz, las opciones de operaciones de búsqueda de guardias. El usuario podrá
seleccionar la operación de búsqueda de guardias que quiera realizar.
• El usuario selecciona la operativa “Añadir guardia en vértice”
• La aplicación posicionara un guardia en el vértice que esté seleccionado.
• La aplicación mostrará un nuevo botón que permitirá elegir una nueva
herramienta “Añadir guardia” que estará seleccionada por defecto.
Mientras esta herramienta esté seleccionada el usuario podrá modificar la
ubicación del guardia.
• Al posicionar el guardia, la aplicación mostrará que triángulos son los
vigilados rellenando su fondo.
FIGURA 15 - OPERATIVAS - AÑADIR GUARDIA EN VÉRTICE
El usuario podrá cambiar la herramienta si lo desea a “seleccionar vértice” o “añadir
vértice”. Por lo tanto, podrá modificar la triangulación existente, la cual se recalculará
automáticamente adicionalmente se recalculará los triángulos vigilados por el guardia.
Calcular guardias en vértice
El usuario previamente a iniciar esta operativa tiene que haber generado un grafo
triangulado. Una vez hecho esto, el usuario tendrá disponible una lista seleccionable
en el interfaz, las opciones de operaciones de búsqueda de guardias. El usuario podrá
seleccionar la operación de búsqueda de guardias que quiera realizar.
• El usuario selecciona la operativa “Calcular guardia vértice”.
• La aplicación calculará los guardias vértices necesarios para vigilar el grafo
triangulado y los representará como puntos rojos gruesos.
FIGURA 16 - OPERATIVAS - CALCULAR GUARDIAS VÉRTICES
El usuario podrá cambiar la herramienta si lo desea a “seleccionar vértice” o “añadir
vértice”. Por lo tanto, podrá modificar la triangulación existente, la cual se recalculará
automáticamente adicionalmente se recalculará los guardias necesarios para vigilar
todo el grafo triangulado.
Calcular guardias arista
El usuario previamente a iniciar esta operativa tiene que haber generado un grafo
triangulado. Una vez hecho esto, el usuario tendrá disponible una lista seleccionable
en el interfaz, las opciones de operaciones de búsqueda de guardias. El usuario podrá
seleccionar la operación de búsqueda de guardias que quiera realizar.
• El usuario selecciona la operativa “Calcular guardia arista”.
• La aplicación calcula los guardias arista necesarios para vigilar el grafo
triangulado y lo muestra representándolo como dos aristas rojas con un
grosor mayor al resto de aristas
FIGURA 17 - OPERATIVAS - CALCULAR GUARDIAS ARISTAS
El usuario podrá cambiar la herramienta si lo desea a “seleccionar vértice” o “añadir
vértice”. Por lo tanto, podrá modificar la triangulación existente, la cual se recalculará
automáticamente adicionalmente se recalculará los guardias necesarios para vigilar
todo el grafo triangulado.
Calcular guardias arista abierto
El usuario previamente a iniciar esta operativa tiene que haber generado un grafo
triangulado. Una vez hecho esto, el usuario tendrá disponible una lista seleccionable
en el interfaz, las opciones de operaciones de búsqueda de guardias. El usuario podrá
seleccionar la operación de búsqueda de guardias que quiera realizar.
• El usuario selecciona la operativa “calcular guardias arista abierto”
• La aplicación calcula los guardias aristas abiertos necesarios para vigilar la
totalidad del grafo triangulado. Lo muestra representándolo como dos
aristas rojas con un grosor mayor al resto de aristas
FIGURA 18 – OPERATIVAS- CALCULAR GUARDIAS ARISTAS ABIERTO
El usuario podrá cambiar la herramienta si lo desea a “seleccionar vértice” o “añadir
vértice”. Por lo tanto, podrá modificar la triangulación existente, la cual se recalculará
automáticamente adicionalmente se recalculará los guardias necesarios para vigilar
todo el grafo triangulado.
Calcular guardias arista abierto manual
El usuario previamente a iniciar esta operativa tiene que haber generado un grafo
triangulado. Una vez hecho esto, el usuario tendrá disponible una lista seleccionable
en el interfaz, las opciones de operaciones de búsqueda de guardias. El usuario podrá
seleccionar la operación de búsqueda de guardias que quiera realizar.
• El usuario selecciona la operativa “Calcular guardias aristas abierto manual”
• La aplicación mostrará un nuevo botón que permitirá elegir una nueva
herramienta “Añadir guardia arista” que estará seleccionada por defecto.
Mientras esta herramienta esté seleccionada el usuario podrá añadir
nuevos guardias o quitarlos haciendo clic en la arista que él quiera.
• Al posicionar el guardia, la aplicación mostrará que triángulos son los
vigilados rellenando su fondo.
FIGURA 19 - OPERATIVAS - CALCULAR GUARDIAS ARISTA MANUAL
La consola informativa mostrará la información relativa a los triángulos vigilados. Este
es un ejemplo:
Triángulos de la triangulación:
Triángulo 1 [ 295 : 164 ] [ 196 : 276 ] [ 272 : 113 ]
Triángulo 2 [ 295 : 164 ] [ 518 : 57 ] [ 272 : 113 ]
Triángulo 3 [ 196 : 276 ] [ 386 : 370 ] [ 295 : 164 ]
Triángulo 4 [ 461 : 316 ] [ 386 : 370 ] [ 295 : 164 ]
Triángulo 5 [ 461 : 316 ] [ 518 : 57 ] [ 295 : 164 ]
Triángulo 6 [ 461 : 316 ] [ 510 : 412 ] [ 386 : 370 ]
Triángulo 7 [ 510 : 412 ] [ 518 : 57 ] [ 461 : 316 ]
Número de guardias arista abierta: 2
Guardias colocados en las aristas:
Guardia arista 1 [ 295 : 164 ] [ 461 : 316 ]
Guardia arista 2 [ 196 : 276 ] [ 295 : 164 ]
Número de triángulo vigilados: 4
Triángulo 1 [ 461 : 316 ] [ 386 : 370 ] [ 295 : 164 ]
Triángulo 2 [ 461 : 316 ] [ 518 : 57 ] [ 295 : 164 ]
Triángulo 3 [ 295 : 164 ] [ 196 : 276 ] [ 272 : 113 ]
Triángulo 4 [ 196 : 276 ] [ 386 : 370 ] [ 295 : 164 ]
No todos los triángulos están vigilados. Faltan 3 por vigilar
El usuario podrá cambiar la herramienta si lo desea a “seleccionar vértice” o “añadir
vértice” y modificar la triangulación existente, la cual se recalculará automáticamente.
Adicionalmente se recalculará los guardias necesarios para vigilar todo el grafo
triangulado.
Reiniciar el área de representación gráfica
El usuario puede reiniciar el área de representación gráfica. Al hacer esto
desaparecerán todas las representaciones gráficas y por tanto todos los guardias de los
grafos triangulados, todas las triangulaciones y todas las nubes de puntos (conjunto de
vértices).
En resumen, el área quedará totalmente en blanco para que el usuario comience de
nuevo a generar una nueva nube de puntos.
Para realizar esta acción el usuario debe activar el icono “Nuevo”.
FIGURA 20 - OPERATIVAS - REINICIAR