# CircleGeometry

#### new Cesium.CircleGeometry(options)
Core/CircleGeometry.js 54

  A description of a circle on the ellipsoid. Circle geometry can be rendered with both `Primitive` and `GroundPrimitive`.

  Name | Type | Description
  --- | --- | ---
  `options` | Object | Object with the following properties:
  Name | Type | Default | Description
  --- | --- | --- | ---
  `center` | Cartesian3 |  | The circle's center point in the fixed frame.
  `radius` | Number |  | The radius in meters.
  `ellipsoid` | Ellipsoid | `Ellipsoid.WGS84` | optional The ellipsoid the circle will be on.
  `height` | Number | `0.0` | optional The height above the ellipsoid.
  `granularity` | Number | `0.02` | optional The angular distance between points on the circle in radians.
  `vertexFormat` | VertexFormat | `VertexFormat.DEFAULT` | optional The vertex attributes to be computed.
  `extrudedHeight` | Number | `0.0` | optional The height of the extrusion relative to the ellipsoid.
  `stRotation` | Number | `0.0` | optional The rotation of the texture coordinates, in radians. A positive rotation is counter-clockwise.

  ##### Throws:

  - DeveloperError : radius must be greater than zero.
  - DeveloperError : granularity must be greater than zero.

  ##### Example:

      // Create a circle.
      var circle = new Cesium.CircleGeometry({
        center : Cesium.Cartesian3.fromDegrees(-75.59777, 40.03883),
        radius : 100000.0
      });
      var geometry = Cesium.CircleGeometry.createGeometry(circle);

  ##### Demo:

  - Cesium Sandcastle Circle Demo

  ##### See:

  - CircleGeometry.createGeometry
  - Packable

### Members

#### staticCesium.CircleGeometry.packedLength : Number
Core/CircleGeometry.js 86

  The number of elements used to pack the object into an array.

### Methods

#### staticCesium.CircleGeometry.createGeometry(circleGeometry) → Geometry
Core/CircleGeometry.js 157

  Computes the geometric representation of a circle on an ellipsoid, including its vertices, indices, and a bounding sphere.

  Name | Type | Description
  --- | --- | ---
  `circleGeometry` | CircleGeometry | A description of the circle.

  ##### Returns:

  The computed vertices and indices.

#### staticCesium.CircleGeometry.pack(value, array, startingIndex)
Core/CircleGeometry.js 95

  Stores the provided instance into the provided array.

  Name | Type | Default | Description
  --- | --- | --- | ---
  `value` | CircleGeometry |  | The value to pack.
  `array` | Array.<Number> |  | The array to pack into.
  `startingIndex` | Number | `0` | optional The index into the array at which to start packing the elements.

#### staticCesium.CircleGeometry.unpack(array, startingIndex, result) → CircleGeometry
Core/CircleGeometry.js 130

  Retrieves an instance from a packed array.

  Name | Type | Default | Description
  --- | --- | --- | ---
  `array` | Array.<Number> |  | The packed array.
  `startingIndex` | Number | `0` | optional The starting index of the element to be unpacked.
  `result` | CircleGeometry |  | optional The object into which to store the result.

  ##### Returns:

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