Class DistanceCalculator

java.lang.Object
es.ull.mazesolver.agent.distance.DistanceCalculator
All Implemented Interfaces:
Serializable, Cloneable
Direct Known Subclasses:
EuclideanDistance, ManhattanDistance

public abstract class DistanceCalculator extends Object implements Serializable, Cloneable
Interfaz que implementan las clases que pueden medir la distancia entre 2 puntos en 2 dimensiones.
See Also:
Serialized Form
  • Constructor Details

    • DistanceCalculator

      public DistanceCalculator()
  • Method Details

    • fromType

      public static DistanceCalculator fromType(DistanceCalculator.DistanceType type)
      Método factoría que crea una instancia de alguna de las subclases dependiendo del tipo especificado.
      Parameters:
      type - Tipo de la clase que se quiere obtener.
      Returns:
      Una instancia de la clase.
    • distance

      public double distance(int x1, int y1, int x2, int y2)
      Mide la distancia entre 2 puntos.
      Parameters:
      x1 - Posición en el eje X del punto 1.
      y1 - Posición en el eje Y del punto 1.
      x2 - Posición en el eje X del punto 2.
      y2 - Posición en el eje Y del punto 2.
      Returns:
      Distancia entre los 2 puntos.
    • distance

      public abstract double distance(Point p1, Point p2)
      Mide la distancia entre 2 puntos.
      Parameters:
      p1 - Punto 1.
      p2 - Punto 2.
      Returns:
      Distancia entre los 2 puntos.
    • getType

      public abstract DistanceCalculator.DistanceType getType()
      Obtiene el tipo de la clase.
      Returns:
      El tipo de la clase.
    • clone

      public abstract Object clone()
      Overrides:
      clone in class Object