# PolygonGraphics

#### new Cesium.PolygonGraphics(options)
engine/Source/DataSources/PolygonGraphics.js 60

Describes a polygon defined by an hierarchy of linear rings which make up the outer shape and any nested holes. The polygon conforms to the curvature of the globe and can be placed on the surface or at altitude and can optionally be extruded into a volume.

Name | Type | Description
--- | --- | ---
`options` | PolygonGraphics.ConstructorOptions | optional Object describing initialization options

##### Demo:

- Cesium Sandcastle Polygon Demo

##### See:

- Entity

### Members

#### arcType : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 264

Gets or sets the `ArcType` Property specifying the type of lines the polygon edges use.

Default Value: `ArcType.GEODESIC`

#### classificationType : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 290

Gets or sets the `ClassificationType` Property specifying whether this polygon will classify terrain, 3D Tiles, or both when on the ground.

Default Value: `ClassificationType.BOTH`

#### closeBottom : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 256

Gets or sets a boolean specifying whether or not the bottom of an extruded polygon is included.

#### closeTop : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 249

Gets or sets a boolean specifying whether or not the top of an extruded polygon is included.

#### readonly definitionChanged : Event
engine/Source/DataSources/PolygonGraphics.js 118

Gets the event that is raised whenever a property or sub-property is changed or modified.

#### distanceDisplayCondition : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 280

Gets or sets the `DistanceDisplayCondition` Property specifying at what distance from the camera that this polygon will be displayed.

#### extrudedHeight : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 166

Gets or sets the numeric Property specifying the altitude of the polygon extrusion. If `PolygonGraphics#perPositionHeight` is false, the volume starts at `PolygonGraphics#height` and ends at this altitude. If `PolygonGraphics#perPositionHeight` is true, the volume starts at the height of each `PolygonGraphics#hierarchy` position and ends at this altitude.

#### extrudedHeightReference : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 174

Gets or sets the Property specifying the extruded `HeightReference`.

Default Value: `HeightReference.NONE`

#### fill : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 198

Gets or sets the boolean Property specifying whether the polygon is filled with the provided material.

Default Value: `true`

#### granularity : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 190

Gets or sets the numeric Property specifying the angular distance between points on the polygon.

Default Value: `{CesiumMath.RADIANS_PER_DEGREE}`

#### height : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 149

Gets or sets the numeric Property specifying the constant altitude of the polygon.

Default Value: `0.0`

#### heightReference : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 157

Gets or sets the Property specifying the `HeightReference`.

Default Value: `HeightReference.NONE`

#### hierarchy : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 137

Gets or sets the Property specifying the `PolygonHierarchy`.

#### material : MaterialProperty
engine/Source/DataSources/PolygonGraphics.js 206

Gets or sets the Property specifying the material used to fill the polygon.

Default Value: `Color.WHITE`

#### outline : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 214

Gets or sets the Property specifying whether the polygon is outlined.

Default Value: `false`

#### outlineColor : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 222

Gets or sets the Property specifying the `Color` of the outline.

Default Value: `Color.BLACK`

#### outlineWidth : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 233

Gets or sets the numeric Property specifying the width of the outline.

Note: This property will be ignored on all major browsers on Windows platforms. For details, see (@link https://github.com/CesiumGS/cesium/issues/40}.

Default Value: `1.0`

#### perPositionHeight : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 242

Gets or sets the boolean specifying whether or not the the height of each position is used. If true, the shape will have non-uniform altitude defined by the height of each `PolygonGraphics#hierarchy` position. If false, the shape will have a constant altitude as specified by `PolygonGraphics#height`.

#### shadows : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 273

Get or sets the enum Property specifying whether the polygon casts or receives shadows from light sources.

Default Value: `ShadowMode.DISABLED`

#### show : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 130

Gets or sets the boolean Property specifying the visibility of the polygon.

Default Value: `true`

#### stRotation : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 182

Gets or sets the numeric property specifying the rotation of the polygon texture counter-clockwise from north. Only has an effect if textureCoordinates is not defined.

Default Value: `0`

#### textureCoordinates : Property|undefined
engine/Source/DataSources/PolygonGraphics.js 305

A Property specifying texture coordinates as a `PolygonHierarchy` of `Cartesian2` points. Has no effect for ground primitives.

#### zIndex : ConstantProperty|undefined
engine/Source/DataSources/PolygonGraphics.js 298

Gets or sets the zIndex Prperty specifying the ordering of ground geometry. Only has an effect if the polygon is constant and neither height or extrudedHeight are specified.

Default Value: `0`

### Methods

#### clone(result) → PolygonGraphics
engine/Source/DataSources/PolygonGraphics.js 314

Duplicates this instance.

Name | Type | Description
--- | --- | ---
`result` | PolygonGraphics | optional The object onto which to store the result.

##### Returns:

The modified result parameter or a new instance if one was not provided.

#### merge(source)
engine/Source/DataSources/PolygonGraphics.js 349

Assigns each unassigned property on this object to the value of the same property on the provided source object.

Name | Type | Description
--- | --- | ---
`source` | PolygonGraphics | The object to be merged into this object.

### Type Definitions

#### Cesium.PolygonGraphics.ConstructorOptions
engine/Source/DataSources/PolygonGraphics.js 18

Initialization options for the PolygonGraphics constructor

##### Properties:

Name | Type | Attributes | Default | Description
--- | --- | --- | --- | ---
`show` | Property | boolean | <optional> | true | A boolean Property specifying the visibility of the polygon.
`hierarchy` | Property | PolygonHierarchy | Array.<Cartesian3> | <optional> |  | A Property specifying the `PolygonHierarchy`.
`height` | Property | number | <optional> | 0 | A numeric Property specifying the altitude of the polygon relative to the ellipsoid surface.
`heightReference` | Property | HeightReference | <optional> | HeightReference.NONE | A Property specifying what the height is relative to.
`extrudedHeight` | Property | number | <optional> |  | A numeric Property specifying the altitude of the polygon's extruded face relative to the ellipsoid surface.
`extrudedHeightReference` | Property | HeightReference | <optional> | HeightReference.NONE | A Property specifying what the extrudedHeight is relative to.
`stRotation` | Property | number | <optional> | 0.0 | A numeric property specifying the rotation of the polygon texture counter-clockwise from north. Only has an effect if textureCoordinates is not defined.
`granularity` | Property | number | <optional> | Cesium.Math.RADIANS_PER_DEGREE | A numeric Property specifying the angular distance between each latitude and longitude point.
`fill` | Property | boolean | <optional> | true | A boolean Property specifying whether the polygon is filled with the provided material.
`material` | MaterialProperty | Color | <optional> | Color.WHITE | A Property specifying the material used to fill the polygon.
`outline` | Property | boolean | <optional> | false | A boolean Property specifying whether the polygon is outlined.
`outlineColor` | Property | Color | <optional> | Color.BLACK | A Property specifying the `Color` of the outline.
`outlineWidth` | Property | number | <optional> | 1.0 | A numeric Property specifying the width of the outline.
`perPositionHeight` | Property | boolean | <optional> | false | A boolean specifying whether or not the height of each position is used.
`closeTop` | boolean | boolean | <optional> | true | When false, leaves off the top of an extruded polygon open.
`closeBottom` | boolean | boolean | <optional> | true | When false, leaves off the bottom of an extruded polygon open.
`arcType` | Property | ArcType | <optional> | ArcType.GEODESIC | The type of line the polygon edges must follow.
`shadows` | Property | ShadowMode | <optional> | ShadowMode.DISABLED | An enum Property specifying whether the polygon casts or receives shadows from light sources.
`distanceDisplayCondition` | Property | DistanceDisplayCondition | <optional> |  | A Property specifying at what distance from the camera that this polygon will be displayed.
`classificationType` | Property | ClassificationType | <optional> | ClassificationType.BOTH | An enum Property specifying whether this polygon will classify terrain, 3D Tiles, or both when on the ground.
`zIndex` | ConstantProperty | number | <optional> | 0 | A property specifying the zIndex used for ordering ground geometry. Only has an effect if the polygon is constant and neither height or extrudedHeight are specified.
`textureCoordinates` | Property | PolygonHierarchy | <optional> |  | A Property specifying texture coordinates as a `PolygonHierarchy` of `Cartesian2` points. Has no effect for ground primitives.

Need help? The fastest way to get answers is from the community and team on the Cesium Forum.