RectanglePrimitive - Cesium Documentation

# RectanglePrimitive

#### new RectanglePrimitive(options)

  A renderable rectangle.

  Name | Type | Description
  --- | --- | ---

  `options`

  Object

  optional Object with the following properties:

  Name | Type | Default | Description
  --- | --- | --- | ---
  `ellipsoid` | Ellipsoid | `Ellipsoid.WGS84` | optional The ellipsoid that the rectangle is drawn on.
  `rectangle` | Rectangle |  | optional The rectangle, which defines the rectangular region to draw.
  `granularity` | Number | `CesiumMath.RADIANS_PER_DEGREE` | optional The distance, in radians, between each latitude and longitude in the underlying geometry.
  `height` | Number | `0.0` | optional The height, in meters, that the rectangle is raised above the `RectanglePrimitive#ellipsoid`.
  `rotation` | Number | `0.0` | optional The angle, in radians, relative to north that the rectangle is rotated. Positive angles rotate counter-clockwise.
  `textureRotationAngle` | Number | `0.0` | optional The rotation of the texture coordinates, in radians. A positive rotation is counter-clockwise.
  `show` | Boolean | `true` | optional Determines if this primitive will be shown.
  `material` | Material |  | optional The surface appearance of the primitive.
  `id` | Object |  | optional A user-defined object to return when the instance is picked with `Scene#pick`
  `asynchronous` | Boolean | `true` | optional Determines if the rectangle will be created asynchronously or block until ready.
  `debugShowBoundingVolume` | Boolean | `false` | optional For debugging only. Determines if the primitive's commands' bounding spheres are shown.

  ##### Example:

      var rectanglePrimitive = new Cesium.RectanglePrimitive({
        rectangle : Cesium.Rectangle.fromDegrees(0.0, 20.0, 10.0, 30.0)
      });
      primitives.add(rectanglePrimitive);

  Source: Scene/RectanglePrimitive.js, line 57

### Members

#### asynchronous :Boolean

  Determines if the geometry instances will be created and batched on a web worker.
  Default Value: `true`
  Source: Scene/RectanglePrimitive.js, line 177

#### debugShowBoundingVolume :Boolean

  This property is for debugging only; it is not for production use nor is it optimized.

  Draws the bounding sphere for each draw command in the primitive.

  Default Value: `false`
  Source: Scene/RectanglePrimitive.js, line 189

#### ellipsoid :Ellipsoid

  The ellipsoid that the rectangle is drawn on.
  Default Value: `Ellipsoid.WGS84`
  Source: Scene/RectanglePrimitive.js, line 67

#### granularity :Number

  The distance, in radians, between each latitude and longitude in the underlying geometry. A lower granularity fits the curvature of the `RectanglePrimitive#ellipsoid` better, but uses more triangles.
  Default Value: `CesiumMath.RADIANS_PER_DEGREE`
  Source: Scene/RectanglePrimitive.js, line 89

#### height :Number

  The height, in meters, that the rectangle is raised above the `RectanglePrimitive#ellipsoid`.
  Default Value: `0.0`
  Source: Scene/RectanglePrimitive.js, line 99

#### id :Object

  User-defined object returned when the rectangle is picked.
  Default Value: `undefined`

  ##### See:

  - Scene#pick
  Source: Scene/RectanglePrimitive.js, line 166

#### material :Material

  The surface appearance of the primitive. This can be one of several built-in `Material` objects or a custom material, scripted with Fabric.

  The default material is `Material.ColorType`.

  ##### Example:

      // 1. Change the color of the default material to yellow
      rectangle.material.uniforms.color = new Cesium.Color(1.0, 1.0, 0.0, 1.0);

      // 2. Change material to horizontal stripes
      rectangle.material = Cesium.Material.fromType(Material.StripeType);

  ##### See:

  - Fabric
  Source: Scene/RectanglePrimitive.js, line 155

#### rectangle :Rectangle

  The rectangle, which defines the rectangular region to draw.
  Default Value: `undefined`
  Source: Scene/RectanglePrimitive.js, line 77

#### rotation :Number

  The angle, in radians, relative to north that the rectangle is rotated. Positive angles rotate counter-clockwise.
  Default Value: `0.0`
  Source: Scene/RectanglePrimitive.js, line 110

#### show :Boolean

  Determines if this primitive will be shown.
  Default Value: `true`
  Source: Scene/RectanglePrimitive.js, line 131

#### textureRotationAngle :Number

  The angle, in radians, relative to north that the primitive's texture is rotated. Positive angles rotate counter-clockwise.
  Default Value: `0.0`
  Source: Scene/RectanglePrimitive.js, line 121

### Methods

#### destroy() → undefined

  Destroys the WebGL resources held by this object. Destroying an object allows for deterministic release of WebGL resources, instead of relying on the garbage collector to destroy this object.
  Once an object is destroyed, it should not be used; calling any function other than `isDestroyed` will result in a `DeveloperError` exception. Therefore, assign the return value (`undefined`) to the object as done in the example.

  ##### Returns:

  ##### Throws:

  - DeveloperError : This object was destroyed, i.e., destroy() was called.

  ##### Example:

      rectangle = rectangle && rectangle.destroy();

  ##### See:

  - Rectangle#isDestroyed
  Source: Scene/RectanglePrimitive.js, line 303

#### isDestroyed() → Boolean

  Returns true if this object was destroyed; otherwise, false.
  If this object was destroyed, it should not be used; calling any function other than `isDestroyed` will result in a `DeveloperError` exception.

  ##### Returns:

  `true` if this object was destroyed; otherwise, `false`.

  ##### See:

  - Rectangle#destroy
  Source: Scene/RectanglePrimitive.js, line 282

#### update()

  Called when `Viewer` or `CesiumWidget` render the scene to get the draw commands needed to render this primitive.

  Do not call this function directly. This is documented just to list the exceptions that may be propagated when the scene is rendered:

  ##### Throws:

  - DeveloperError : this.ellipsoid must be defined.
  - DeveloperError : this.material must be defined.
  - DeveloperError : this.granularity must be defined.
  Source: Scene/RectanglePrimitive.js, line 206