Class Grafo

java.lang.Object
  extended byGrafo

public class Grafo
extends java.lang.Object

Grafo

Clase que representa un objeto de tipo grafo para poder almacenar la información del mapa


Field Summary
 ListaRectas lr
           
 java.util.Vector vertices
           
 
Constructor Summary
Grafo()
          Constructor de la clase Grafo.
 
Method Summary
 Camino a_estrella(int vinicio, int vfin)
          a_estrella().
 void anyadeVertice(int vid, int puntox, int puntoy)
          anyadeVertice().
 void anyadeVerticeAsociado(int vorigen, int vdestino)
          anyadeVerticeAsociado().
 boolean anyadeVerticeTemporal(int posicion, int valor)
          anyadeVerticeTemporal().
 Camino calculaCamino(float p1x, float p1y, float p2x, float p2y)
          calculaCamino().
 void cargoDatos(java.lang.String fichero)
           
 float distanciaEuclidea(Vertice vertice1, Vertice vertice2)
           
 void eliminarVertices(int rango1, int rango2)
          eliminaVertice().
static java.util.Vector getCaminoMapa()
          getCaminoMapa().
 ListaRectas getListaRectas()
          getListaRectas().
 int getPosicionVertice(int vid)
          getPosicionVertice().
 Vertice getVertice(int vid)
          getVertice().
 void imprimoGrafo()
          imprimoGrafo().
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

vertices

public java.util.Vector vertices

lr

public ListaRectas lr
Constructor Detail

Grafo

public Grafo()
Constructor de la clase Grafo.

Method Detail

anyadeVertice

public void anyadeVertice(int vid,
                          int puntox,
                          int puntoy)
anyadeVertice(). Anyade un nuevo vértice al grafo

Parameters:
vid - int identificador para el vértice
puntox - int posición x del vértice en el mapa
puntoy - int posición y del vértice en el mapa

anyadeVerticeTemporal

public boolean anyadeVerticeTemporal(int posicion,
                                     int valor)
anyadeVerticeTemporal(). Rellena una posicion del vector con el valor de los vertices que se relacionan con los nuevos insertados en el grado

Parameters:
posicion - int con la posicion en la que se debe insertar
valor - int con el valor a insertar
Returns:
boolean indica si se ha podido realizar correctamente la insercion del vértice temporal

eliminarVertices

public void eliminarVertices(int rango1,
                             int rango2)
eliminaVertice(). Elimina una serie de información del grafo

Parameters:
rango1 - numero de vertices a eliminar desde el final
rango2 - numero de vertices temporales a eliminar su ultima arista relacionada

getPosicionVertice

public int getPosicionVertice(int vid)
getPosicionVertice(). Obtengo la posición de un vértice a partir de un identificador

Parameters:
vid - int identificador del vértice
Returns:
int posición en la que se encuentra el vértice indicado

getVertice

public Vertice getVertice(int vid)
getVertice(). Obtengo un Vertice a partir de un identificador

Parameters:
vid - int identificador del vértice a obtener

anyadeVerticeAsociado

public void anyadeVerticeAsociado(int vorigen,
                                  int vdestino)
anyadeVerticeAsociado(). Anyade un determinado vértice asociado a un vértice dado. Y viceversa

Parameters:
vorigen - int vértice origen
vdestino - int vértice destino

distanciaEuclidea

public float distanciaEuclidea(Vertice vertice1,
                               Vertice vertice2)

a_estrella

public Camino a_estrella(int vinicio,
                         int vfin)
a_estrella(). Algoritmo a-estrella para el cálculo del camino más corto entre dos vértices

Parameters:
vinicio - int vértice inicio
vfin - int vértice final

imprimoGrafo

public void imprimoGrafo()
imprimoGrafo(). Muestro los datos del grafo por pantalla


getListaRectas

public ListaRectas getListaRectas()
getListaRectas(). Obtengo la ListaRectas del Grafo

Returns:
ListaRectas total de las rectas del Grafo

cargoDatos

public void cargoDatos(java.lang.String fichero)

calculaCamino

public Camino calculaCamino(float p1x,
                            float p1y,
                            float p2x,
                            float p2y)
calculaCamino(). Calculo el camino más corto a partir de coordenadas en el mapa

Parameters:
p1x - Coordenada x del punto 1
p1y - Coordenada y del punto 1
p2x - Coordenada x del punto 2
p2y - Coordenada y del punto 2

getCaminoMapa

public static java.util.Vector getCaminoMapa()
getCaminoMapa(). Funcion para recoger el valor del Vector caminoMapa que se utilizara para dibujar el camino en el mapa de la aplicacion

Returns:
Vector ruta a seguir