com.amap.api.maps2d.model

## 类 Polygon

- java.lang.Object
- - com.amap.api.maps2d.model.Polygon

-     public final class Polygon
      extends java.lang.Object

  这个定义了在地图表面的多边形。一个多边形可以凸面体，也可是凹面体。它有以下属性：
  - 边框

    一个多边开的边框由一系列的顺时针或逆时针顶点组成。边框不需要声明起点和终点一致。如果边框的起点与终点不一致，API会自动将它封闭。

  - 边框宽度

    边框的宽度以像素为单位，不会受可视区域缩放级别的影响。默认为10。

  - 边框颜色

    边框颜色是一个ARGB格式，ARGB请参考android.graphics.Color。默认为黑色。

  - 填充颜色

    填充颜色是一个ARGB格式，ARGB格式可参考android.graphics.Color。默认是透明的。如果多边形的几何图形不正确，则填充颜色不会被绘制。

  - Z轴

    Z轴是控制覆盖物重复区域的绘制顺序的值。Z轴较大的覆盖物会在绘制在Z轴较小的覆盖物上面。如果两个覆盖物的Z轴数值相同，则覆盖情况将随机。默认为0。

  - 可见性

    标示多边形是否可见。如果可见性为否，则不会被绘制。 多边形方法必须在主线程中调用，否则会抛出IllegalStateException。

  从以下版本开始:
    V2.0

- - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `boolean` | `contains(LatLng latLng)` 判断多边形是否包含传入的经纬度点。
    `boolean` | `equals(java.lang.Object paramObject)` 判断两个Polygon是否相同，通过id判断
    `int` | `getFillColor()` 返回多边形填充颜色
    `java.lang.String` | `getId()` Gets this polygon's id.
    `java.util.List<LatLng>` | `getPoints()` 返回多边形顶点的列表。
    `int` | `getStrokeColor()` 返回多边形的边框颜色
    `float` | `getStrokeWidth()` 返回边框宽度
    `float` | `getZIndex()` 返回多边形的Z轴值
    `int` | `hashCode()`
    `boolean` | `isVisible()` 返回多边形的可见属性。
    `void` | `remove()` 从地图上删除当前多边形。
    `void` | `setFillColor(int color)` 设置多边形填充颜色
    `void` | `setPoints(java.util.List<LatLng> points)` 设置多边形的顶点。
    `void` | `setStrokeColor(int color)` 设置多边形边框颜色
    `void` | `setStrokeWidth(float width)` 设置多边形边框宽度。
    `void` | `setVisible(boolean visible)` 设置多边形的可见属性。
    `void` | `setZIndex(float zIndex)` 设置多边形的Z轴数值。

    - ### 从类继承的方法 java.lang.Object

      `getClass, notify, notifyAll, toString, wait, wait, wait`

- - ### 方法详细资料

    - #### remove

          public void remove()

      从地图上删除当前多边形。
      从以下版本开始:
        V2.0

    - #### getId

          public java.lang.String getId()

      Gets this polygon's id.
      返回:
        返回多边形Id。Id是区分一个地图里不同多边形的标识。
      从以下版本开始:
        V2.0

    - #### setPoints

          public void setPoints(java.util.List<LatLng> points)

      设置多边形的顶点。设置完成后再修改顶点列表的值，不会影响多边形。
      参数:
        `points` - 多边形顶点列表
      从以下版本开始:
        V2.0

    - #### getPoints

          public java.util.List<LatLng> getPoints()

      返回多边形顶点的列表。如果调用此方法后，多边形的顶点发生了变化，列表的值不会随之改变。如果调用此方法获得顶点坐标后并且修改了顶点坐标， 也不会作用到当前多边形。如果需要修改多边形的顶点值必须调用setPoints(List)。
      从以下版本开始:
        V2.0

    - #### setStrokeWidth

          public void setStrokeWidth(float width)

      设置多边形边框宽度。
      参数:
        `width` - 多边形边框宽度，单位像素
      从以下版本开始:
        V2.0

    - #### getStrokeWidth

          public float getStrokeWidth()

      返回边框宽度
      返回:
        宽度的像素值
      从以下版本开始:
        V2.0

    - #### setStrokeColor

          public void setStrokeColor(int color)

      设置多边形边框颜色
      参数:
        `color` - 边框颜色，ARGB格式。
      从以下版本开始:
        V2.0

    - #### getStrokeColor

          public int getStrokeColor()

      返回多边形的边框颜色
      返回:
        ARGB格式
      从以下版本开始:
        V2.0

    - #### setFillColor

          public void setFillColor(int color)

      设置多边形填充颜色
      参数:
        `color` - 填充颜色的ARGB格式
      从以下版本开始:
        V2.0

    - #### getFillColor

          public int getFillColor()

      返回多边形填充颜色
      返回:
        多边形填充颜色，ARGB格式。
      从以下版本开始:
        V2.0

    - #### setZIndex

          public void setZIndex(float zIndex)

      设置多边形的Z轴数值。数值更高的多边形将绘制在数值较低的上面。
      参数:
        `zIndex` - 多边形Z轴数值
      从以下版本开始:
        V2.0

    - #### getZIndex

          public float getZIndex()

      返回多边形的Z轴值
      返回:
        多边形的Z轴值
      从以下版本开始:
        V2.0

    - #### setVisible

          public void setVisible(boolean visible)

      设置多边形的可见属性。当不可见时，多边形将不会被绘制，但是其他属性将会保存。
      参数:
        `visible` - true为可见；false不可见。
      从以下版本开始:
        V2.0

    - #### isVisible

          public boolean isVisible()

      返回多边形的可见属性。
      返回:
        多边形的可见属性
      从以下版本开始:
        V2.0

    - #### contains

          public boolean contains(LatLng latLng)

      判断多边形是否包含传入的经纬度点。
      参数:
        `latlng` - 经纬度点。
      返回:
        True多边形包含这个点，false 多边形未包含这个点。
      从以下版本开始:
        v2.2.1

    - #### equals

          public boolean equals(java.lang.Object paramObject)

      判断两个Polygon是否相同，通过id判断
      覆盖:
        `equals` 在类中 `java.lang.Object`
      参数:
        `paramObject` - 需要判断的Polygon
      返回:
        true表示相同，false 则不为同一个，或者不是Polygon

    - #### hashCode

          public int hashCode()

      覆盖:
        `hashCode` 在类中 `java.lang.Object`