org.apache.lucene.geo

## Class XYPolygon

- java.lang.Object
- - org.apache.lucene.geo.XYGeometry
  - - org.apache.lucene.geo.XYPolygon

    public final class XYPolygon
    extends XYGeometry

Represents a polygon in cartesian space. You can construct the Polygon directly with `float[]`, `float[]` x, y arrays coordinates.

### Field Summary

Fields
`float` `maxX` maximum x of this polygon's bounding box area
`float` `maxY` maximum y of this polygon's bounding box area
`float` `minX` minimum x of this polygon's bounding box area
`float` `minY` minimum y of this polygon's bounding box area

### Constructor Summary

Constructors
Constructor and Description
`XYPolygon(float[] x, float[] y, XYPolygon... holes)` Creates a new Polygon from the supplied x, y arrays, and optionally any holes.

### Method Summary

All Methods Instance Methods Concrete Methods
`boolean` `equals(Object obj)`
`XYPolygon[]` `getHoles()` Returns a copy of the internal holes array
`float[]` `getPolyX()` Returns a copy of the internal x array
`float` `getPolyX(int vertex)` Returns x value at given index
`float[]` `getPolyY()` Returns a copy of the internal y array
`float` `getPolyY(int vertex)` Returns y value at given index
`GeoUtils.WindingOrder` `getWindingOrder()` Returns the winding order (CW, COLINEAR, CCW) for the polygon shell
`int` `hashCode()`
`int` `numHoles()` returns the number of holes for the polygon
`int` `numPoints()` returns the number of vertex points
`protected Component2D` `toComponent2D()` get a Component2D from this object
`String` `toString()`

### Methods inherited from class org.apache.lucene.geo.XYGeometry

`create`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Field Detail

#### minX

    public final float minX

minimum x of this polygon's bounding box area

#### maxX

    public final float maxX

maximum x of this polygon's bounding box area

#### minY

    public final float minY

minimum y of this polygon's bounding box area

#### maxY

    public final float maxY

maximum y of this polygon's bounding box area

### Constructor Detail

#### XYPolygon

    public XYPolygon(float[] x,
                     float[] y,
                     XYPolygon... holes)

Creates a new Polygon from the supplied x, y arrays, and optionally any holes.

### Method Detail

#### numPoints

    public int numPoints()

returns the number of vertex points

#### getPolyX

    public float[] getPolyX()

Returns a copy of the internal x array

#### getPolyX

    public float getPolyX(int vertex)

Returns x value at given index

#### getPolyY

    public float[] getPolyY()

Returns a copy of the internal y array

#### getPolyY

    public float getPolyY(int vertex)

Returns y value at given index

#### getHoles

    public XYPolygon[] getHoles()

Returns a copy of the internal holes array

#### getWindingOrder

    public GeoUtils.WindingOrder getWindingOrder()

Returns the winding order (CW, COLINEAR, CCW) for the polygon shell

#### numHoles

    public int numHoles()

returns the number of holes for the polygon

#### toComponent2D

    protected Component2D toComponent2D()

Description copied from class: `XYGeometry`
get a Component2D from this object

Specified by:
  `toComponent2D` in class `XYGeometry`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `Object`

#### equals

    public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`