Personal tools
You are here: Home Development Documents gvSIG desktop 1.9 Plugins Plugin de redes Subsistemas Solvers + GUI Interfaz de usuario común
Document Actions

Interfaz de usuario común

by Francisco José Peñarrubia last modified 2010-06-01 22:44

Descripción del GUI que permite realizar una serie de operaciones comunes a la mayoría de los geoprocesos de red.

Introducción.

La idea es que los geoprocesos de red se integren dentro del futuro gestor global de geoprocesos. Mietras llega, les daremos forma de geoprocesos para que la migración sea sencilla, al menos en cuanto a las barras de progreso, threads, etc.

Los problemas que tenemos que resolver suelen tener unas operaciones en común: Poner puntos (flags) sobre la red y gestionar esos puntos (mover, guardar, recuperar, etc). Por esos hemos creado el Gestor de Paradas.

El Gestor de Paradas.

En los cálculos sobre la red a menudo se trata de ubicar una serie de puntos sobre la red y realizar operaciones con ellos (pasar por esos puntos -> camino mínimo, reordenar esos puntos -> TSP (Traveling Salesman Problem), distancias orígenes - destinos, etc).

Unas veces son puntos de paso, otras veces pueden ser puntos desde los que se hacen reocorridos por la red....

El Gestor de Paradas es un cuadro de diálogo que sirve al usuario para interactuar con todos esos puntos, aunque cada geoproceso puede definir sus propios cuadros de diálogo.

El Gestor de Paradas está asociado a una red (Network) , así que muestra los flags que tiene la red de la capa activa. Si activamos otra capa, las paradas ya no serán las mismas. Se podría ver como un patrón Modelo-Vista. El Modelo es el objeto Network (con el grafo, las paradas, las velocidades, etc) y el cuadro de diálogo es una Vista de ese modelo que permite interactuar con él (cambiar orden de paradas, etiquetas, atributos, velocidades...).

Debe ser lo suficientemente genérico para servir al máximo nº de geoprocesos y lo más útil y ágil posible para el usuario.

Herramientas de red.

Son botones como el de sitiuar un flag sobre un arco, situar un flag sobre un nodo, eliminar un flag, poner un coste o barrera sobre un arco, definir giros prohibidos.

Cuando ponemos un flag, se utiliza una tolerancia para buscar el arco más cercano a ese punto. Si lo ubicamos sobre un arco, se calcula el porcentaje sobre ese arco para ubicarlo con exactitud. Si lo situamos sobre un nodo, se busca el nodo más cercano.

Nota: En el piloto, al poner una barrera sobre un arco, en realidad estábamos marcando TODO el arco como barrera, porque el mecanismo es el mismo que el de asociar un coste. Le asociamos un -1 que indica que no se puede pasar por todo el arco. Eso quiere decir que si algún flag está encima, no llegábamos a él. En la versión definitiva distinguiremos entre asociar un coste, prohibir un tramo o poner una barrera. Los costes y prohibiciones irán sobre los arcos. Las barreras insertarán un nodo en un arco para dividirlo en 2 y permitir que si hay un flag en ese arco, pueda alcanzarse por el otro sentido.

FIXME: EXPLICAR EN LA PARTE DE NETWORK TODO LO QUE SE HACE CUANDO SE PONE UN FLAG (DIVIR LOS ARCOS, MODIFICAR LA RED, ETC).


Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: