Class UtilFunctions

java.lang.Object
org.gvsig.fmap.geom.jts.util.UtilFunctions

public class UtilFunctions extends Object
Author:
FJP TODO To change the template for this generated type comment go to Window - Preferences - Java - Code Generation - Code and Comments
  • Constructor Details

    • UtilFunctions

      public UtilFunctions()
  • Method Details

    • createCircle

      public static Arc2D createCircle(Point2D p1, Point2D p2, Point2D p3)
    • createCircle

      public static Arc2D createCircle(Point2D center, double radius)
    • createEllipse

      public static Shape createEllipse(Point2D init, Point2D end, double ydist)
    • getPerpendicular

      public static Point2D[] getPerpendicular(Point2D p1, Point2D p2, Point2D perp)
      Obtiene un par de puntos que definen la recta perpendicular a p1-p2 que pasa por el punto perp
      Parameters:
      p1 - punto de la recta p1-p2
      p2 - punto de la recta p1-p2
      perp - Punto por el que pasa la recta perpendicular, debe ser distinto a p2
      Returns:
      Array con dos puntos que definen la recta resultante
    • getParallel

      public static Point2D[] getParallel(Point2D p1, Point2D p2, double distance)
    • getPerpendicularPoint

      public static Point2D getPerpendicularPoint(Point2D p1, Point2D p2, Point2D perpPoint, double dist)
      Obtiene el punto que se encuentra a una distancia 'dist' de la recta p1-p2 y se encuentra en la recta perpendicular que pasa por perpPoint
      Parameters:
      p1 - Punto de la recta p1-p2
      p2 - Punto de la recta p1-p2
      perpPoint - Punto de la recta perpendicular
      dist - Distancia del punto que se quiere obtener a la recta p1-p2
      Returns:
      DOCUMENT ME!
    • getUnitVector

      public static Point2D getUnitVector(Point2D p1, Point2D p2)
      Devuelve un vector unitario en forma de punto a partir de dos puntos.
      Parameters:
      p1 - punto origen.
      p2 - punto destino.
      Returns:
      vector unitario.
    • getCenter

      public static Point2D getCenter(Point2D p1, Point2D p2, Point2D p3)
      Obtiene el centro del c�rculo que pasa por los tres puntos que se pasan como par�metro
      Parameters:
      p1 - primer punto del c�rculo cuyo centro se quiere obtener
      p2 - segundo punto del c�rculo cuyo centro se quiere obtener
      p3 - tercer punto del c�rculo cuyo centro se quiere obtener
      Returns:
      Devuelve null si los puntos est�n alineados o no son 3 puntos distintos
    • getIntersection

      public static Point2D getIntersection(Point2D p1, Point2D p2, Point2D p3, Point2D p4)
      Devuelve el punto de la intersecci�n entre las lineas p1-p2 y p3-p4.
      Parameters:
      p1 - punto de la recta p1-p2
      p2 - punto de la recta p1-p2
      p3 - punto de la recta p3-p4
      p4 - punto de la recta p3-p4
      Returns:
      DOCUMENT ME!
      Throws:
      RuntimeException - DOCUMENT ME!
    • getAngle

      public static double getAngle(Point2D start, Point2D end)
      Obtiene el �ngulo del vector que se pasa como par�metro con el vector horizontal de izquierda a derecha
      Parameters:
      start - punto origen del vector
      end - punto destino del vector
      Returns:
      angulo en radianes
    • angleDistance

      public static double angleDistance(double angle1, double angle2)
      Devuelve la distancia desde angle1 a angle2. Angulo en radianes de diferencia entre angle1 y angle2 en sentido antihorario
      Parameters:
      angle1 - angulo en radianes. Debe ser positivo y no dar ninguna vuelta a la circunferencia
      angle2 - angulo en radianes. Debe ser positivo y no dar ninguna vuelta a la circunferencia
      Returns:
      distancia entre los �ngulos
    • getPoint

      public static Point2D getPoint(Point2D p1, Point2D p2, double radio)
      Devuelve el punto de la recta que viene dada por los puntos p1 y p2 a una distancia radio de p1.
      Parameters:
      p1 - DOCUMENT ME!
      p2 - DOCUMENT ME!
      radio - DOCUMENT ME!
      Returns:
      DOCUMENT ME!
    • absoluteAngleDistance

      public static double absoluteAngleDistance(double angle1, double angle2)
      Devuelve la menor distancia desde angle1 a angle2.
      Parameters:
      angle1 - angulo en radianes. Debe ser positivo y no dar ninguna vuelta a la circunferencia
      angle2 - angulo en radianes. Debe ser positivo y no dar ninguna vuelta a la circunferencia
      Returns:
      distancia entre los �ngulos
    • createArc

      public static Arc2D createArc(Point2D p1, Point2D p2, Point2D p3)
      Obtiene un arco a partir de 3 puntos. Devuelve null si no se puede crear el arco porque los puntos est�n alineados o los 3 puntos no son distintos
      Parameters:
      p1 -
      p2 -
      p3 -
      Returns:
      Arco
    • createArc

      public static Arc2D createArc(Point2D center, double radius, double angSt, double angExt)
      Obtiene un arco a partir del centro, radio, angulo inicial y extension del angulo. Devuelve null si no lo puede crear.
      Parameters:
      center -
      radius -
      angSt - en radianes
      angExt - en radianes
      Returns:
      Arco
    • createArc2points

      public static Arc2D createArc2points(Point2D center, Point2D init, Point2D end)
      Obtiene un arco a partir del centro del arco y punto inicio y punto final Suponemos un Arco definicio CCW (CounterClockWise)
      Parameters:
      center -
      init -
      end -
      Returns:
      Arco
    • getPoint

      public static Point2D getPoint(Point2D p1, double an, double radio)
      Devuelve el punto a una distancia radio del punto p1 y aplicandole un �ngulo an. una distancia radio de p1.
      Parameters:
      p1 - DOCUMENT ME!
      radio - DOCUMENT ME!
      p2 - DOCUMENT ME!
      Returns:
      DOCUMENT ME!
    • createLine

      public static Line2D createLine(Point2D start, Point2D end)
      Obtiene una linea a partir de dos puntos. Devuelve null si no lo puede crear.
      Parameters:
      start -
      end -
      Returns:
      Linea
    • isLowAngle

      public static boolean isLowAngle(Point2D antp, Point2D lastp, Point2D interp, Point2D point)
      DOCUMENT ME!
      Parameters:
      antp - DOCUMENT ME!
      lastp - DOCUMENT ME!
      interp - DOCUMENT ME!
      point - DOCUMENT ME!
      Returns:
      DOCUMENT ME!