Class Polygon

java.lang.Object
cds.healpix.common.sphgeom.Polygon

public final class Polygon extends Object
Class defining (and storing the vertices of) a polygon on the unit sphere. The original 2D method comes from https://wrf.ecse.rpi.edu//Research/Short_Notes/pnpoly.html We adapted it here to the case of the sphere. Remark: in the case of polygons having all their points on a semi-hemisphere, we could have use the classical 2D algorithm on the points projected on a plane by the Gnomonic projections (centered to the center of the MEC). In the gnomonic projection, all great circles arc are strait lines.
Author:
F.-X. Pineau
  • Constructor Details

  • Method Details

    • nVertices

      public int nVertices()
      Returns the number of vertices the polygon contains.
      Returns:
      the number of vertices the polygon contains.
    • vertex

      public CooXYZ vertex(int vertexIndex)
      Returns the vertex located at the given index in the polygin vertex list.
      Parameters:
      vertexIndex - index of the vertex we want to access (in [0, nVertices[
      Returns:
      the vertex located at the given index in the polygin vertex list.
    • contains

      public boolean contains(CooXYZ p)
      Returns true if the polygon contain the point p.
      Parameters:
      p - point to test
      Returns:
      true if the polygon contain the point p.
    • intersectSegAB

      public boolean intersectSegAB(CooXYZ a, CooXYZ b)
      Returns true if an edge of the polygone intersects the line defined by the two given points.
      Parameters:
      a - first segment point
      b - second segment point
      Returns:
      true if an edge of the polygone intersects the line defined by the two given points.