Rectangle - Cesium Documentation

# Rectangle

#### new Rectangle(west, south, east, north)

  A two dimensional region specified as longitude and latitude coordinates.

  Name | Type | Default | Description
  --- | --- | --- | ---
  `west` | Number | `0.0` | optional The westernmost longitude, in radians, in the range [-Pi, Pi].
  `south` | Number | `0.0` | optional The southernmost latitude, in radians, in the range [-Pi/2, Pi/2].
  `east` | Number | `0.0` | optional The easternmost longitude, in radians, in the range [-Pi, Pi].
  `north` | Number | `0.0` | optional The northernmost latitude, in radians, in the range [-Pi/2, Pi/2].

  ##### See:

  - Packable
  Source: Core/Rectangle.js, line 35

### Members

#### staticconstantRectangle.MAX_VALUE :Rectangle

  The largest possible rectangle.
  Source: Core/Rectangle.js, line 700

#### staticRectangle.packedLength :Number

  The number of elements used to pack the object into an array.
  Source: Core/Rectangle.js, line 97

#### east :Number

  The easternmost longitude in radians in the range [-Pi, Pi].
  Default Value: `0.0`
  Source: Core/Rectangle.js, line 58

#### height :Number

  Gets the height of the rectangle in radians.
  Source: Core/Rectangle.js, line 86

#### north :Number

  The northernmost latitude in radians in the range [-Pi/2, Pi/2].
  Default Value: `0.0`
  Source: Core/Rectangle.js, line 66

#### south :Number

  The southernmost latitude in radians in the range [-Pi/2, Pi/2].
  Default Value: `0.0`
  Source: Core/Rectangle.js, line 50

#### west :Number

  The westernmost longitude in radians in the range [-Pi, Pi].
  Default Value: `0.0`
  Source: Core/Rectangle.js, line 42

#### width :Number

  Gets the width of the rectangle in radians.
  Source: Core/Rectangle.js, line 75

### Methods

#### staticRectangle.center(rectangle, result) → Cartographic

  Computes the center of an rectangle.

  Name | Type | Description
  --- | --- | ---
  `rectangle` | Rectangle | The rectangle for which to find the center
  `result` | Cartographic | optional The object onto which to store the result.

  ##### Returns:

  The modified result parameter or a new Cartographic instance if none was provided.
  Source: Core/Rectangle.js, line 492

#### staticRectangle.clone(rectangle, result) → Rectangle

  Duplicates an Rectangle.

  Name | Type | Description
  --- | --- | ---
  `rectangle` | Rectangle | The rectangle to clone.
  `result` | Rectangle | optional The object onto which to store the result, or undefined if a new instance should be created.

  ##### Returns:

  The modified result parameter or a new Rectangle instance if none was provided. (Returns undefined if rectangle is undefined)
  Source: Core/Rectangle.js, line 261

#### staticRectangle.computeHeight(rectangle) → Number

  Computes the height of a rectangle in radians.

  Name | Type | Description
  --- | --- | ---
  `rectangle` | Rectangle | The rectangle to compute the height of.

  ##### Returns:

  The height.
  Source: Core/Rectangle.js, line 176

#### staticRectangle.computeWidth(rectangle) → Number

  Computes the width of a rectangle in radians.

  Name | Type | Description
  --- | --- | ---
  `rectangle` | Rectangle | The rectangle to compute the width of.

  ##### Returns:

  The width.
  Source: Core/Rectangle.js, line 157

#### staticRectangle.contains(rectangle, cartographic) → Boolean

  Returns true if the cartographic is on or inside the rectangle, false otherwise.

  Name | Type | Description
  --- | --- | ---
  `rectangle` | Rectangle | The rectangle
  `cartographic` | Cartographic | The cartographic to test.

  ##### Returns:

  true if the provided cartographic is inside the rectangle, false otherwise.
  Source: Core/Rectangle.js, line 586

#### staticRectangle.equals(left, right) → Boolean

  Compares the provided rectangles and returns `true` if they are equal, `false` otherwise.

  Name | Type | Description
  --- | --- | ---
  `left` | Rectangle | optional The first Rectangle.
  `right` | Rectangle | optional The second Rectangle.

  ##### Returns:

  `true` if left and right are equal; otherwise `false`.
  Source: Core/Rectangle.js, line 306

#### staticRectangle.fromCartographicArray(cartographics, result) → Rectangle

  Creates the smallest possible Rectangle that encloses all positions in the provided array.

  Name | Type | Description
  --- | --- | ---
  `cartographics` | Array.<Cartographic> | The list of Cartographic instances.
  `result` | Rectangle | optional The object onto which to store the result, or undefined if a new instance should be created.

  ##### Returns:

  The modified result parameter or a new Rectangle instance if none was provided.
  Source: Core/Rectangle.js, line 223

#### staticRectangle.fromDegrees(west, south, east, north, result) → Rectangle

  Creates an rectangle given the boundary longitude and latitude in degrees.

  Name | Type | Default | Description
  --- | --- | --- | ---
  `west` | Number | `0.0` | optional The westernmost longitude in degrees in the range [-180.0, 180.0].
  `south` | Number | `0.0` | optional The southernmost latitude in degrees in the range [-90.0, 90.0].
  `east` | Number | `0.0` | optional The easternmost longitude in degrees in the range [-180.0, 180.0].
  `north` | Number | `0.0` | optional The northernmost latitude in degrees in the range [-90.0, 90.0].
  `result` | Rectangle |  | optional The object onto which to store the result, or undefined if a new instance should be created.

  ##### Returns:

  The modified result parameter or a new Rectangle instance if none was provided.

  ##### Example:

      var rectangle = Cesium.Rectangle.fromDegrees(0.0, 20.0, 10.0, 30.0);

  Source: Core/Rectangle.js, line 198

#### staticRectangle.intersection(rectangle, otherRectangle, result) → Rectangle|undefined

  Computes the intersection of two rectangles

  Name | Type | Description
  --- | --- | ---
  `rectangle` | Rectangle | On rectangle to find an intersection
  `otherRectangle` | Rectangle | Another rectangle to find an intersection
  `result` | Rectangle | optional The object onto which to store the result.

  ##### Returns:

  The modified result parameter, a new Rectangle instance if none was provided or undefined if there is no intersection.
  Source: Core/Rectangle.js, line 527

#### staticRectangle.northeast(rectangle, result) → Cartographic

  Computes the northeast corner of an rectangle.

  Name | Type | Description
  --- | --- | ---
  `rectangle` | Rectangle | The rectangle for which to find the corner
  `result` | Cartographic | optional The object onto which to store the result.

  ##### Returns:

  The modified result parameter or a new Cartographic instance if none was provided.
  Source: Core/Rectangle.js, line 446

#### staticRectangle.northwest(rectangle, result) → Cartographic

  Computes the northwest corner of an rectangle.

  Name | Type | Description
  --- | --- | ---
  `rectangle` | Rectangle | The rectangle for which to find the corner
  `result` | Cartographic | optional The object onto which to store the result.

  ##### Returns:

  The modified result parameter or a new Cartographic instance if none was provided.
  Source: Core/Rectangle.js, line 423

#### staticRectangle.pack(value, array, startingIndex)

  Stores the provided instance into the provided array.

  Name | Type | Default | Description
  --- | --- | --- | ---
  `value` | Rectangle |  | 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.

  Source: Core/Rectangle.js, line 106

#### staticRectangle.southeast(rectangle, result) → Cartographic

  Computes the southeast corner of an rectangle.

  Name | Type | Description
  --- | --- | ---
  `rectangle` | Rectangle | The rectangle for which to find the corner
  `result` | Cartographic | optional The object onto which to store the result.

  ##### Returns:

  The modified result parameter or a new Cartographic instance if none was provided.
  Source: Core/Rectangle.js, line 469

#### staticRectangle.southwest(rectangle, result) → Cartographic

  Computes the southwest corner of an rectangle.

  Name | Type | Description
  --- | --- | ---
  `rectangle` | Rectangle | The rectangle for which to find the corner
  `result` | Cartographic | optional The object onto which to store the result.

  ##### Returns:

  The modified result parameter or a new Cartographic instance if none was provided.
  Source: Core/Rectangle.js, line 400

#### staticRectangle.subsample(rectangle, ellipsoid, surfaceHeight, result) → Array.<Cartesian3>

  Samples an rectangle so that it includes a list of Cartesian points suitable for passing to `BoundingSphere#fromPoints`. Sampling is necessary to account for rectangles that cover the poles or cross the equator.

  Name | Type | Default | Description
  --- | --- | --- | ---
  `rectangle` | Rectangle |  | The rectangle to subsample.
  `ellipsoid` | Ellipsoid | `Ellipsoid.WGS84` | optional The ellipsoid to use.
  `surfaceHeight` | Number | `0.0` | optional The height of the rectangle above the ellipsoid.
  `result` | Array.<Cartesian3> |  | optional The array of Cartesians onto which to store the result.

  ##### Returns:

  The modified result parameter or a new Array of Cartesians instances if none was provided.
  Source: Core/Rectangle.js, line 626

#### staticRectangle.unpack(array, startingIndex, result)

  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` | Rectangle |  | optional The object into which to store the result.

  Source: Core/Rectangle.js, line 132

#### staticRectangle.validate(rectangle)

  Checks an Rectangle's properties and throws if they are not in valid ranges.

  Name | Type | Description
  --- | --- | ---
  `rectangle` | Rectangle | The rectangle to validate

  ##### Throws:

  - DeveloperError : `north` must be in the interval [`-Pi/2`, `Pi/2`].
  - DeveloperError : `south` must be in the interval [`-Pi/2`, `Pi/2`].
  - DeveloperError : `east` must be in the interval [`-Pi`, `Pi`].
  - DeveloperError : `west` must be in the interval [`-Pi`, `Pi`].
  Source: Core/Rectangle.js, line 349

#### clone(result) → Rectangle

  Duplicates this Rectangle.

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

  ##### Returns:

  The modified result parameter or a new Rectangle instance if none was provided.
  Source: Core/Rectangle.js, line 283

#### equals(other) → Boolean

  Compares the provided Rectangle with this Rectangle componentwise and returns `true` if they are equal, `false` otherwise.

  Name | Type | Description
  --- | --- | ---
  `other` | Rectangle | optional The Rectangle to compare.

  ##### Returns:

  `true` if the Rectangles are equal, `false` otherwise.
  Source: Core/Rectangle.js, line 294

#### equalsEpsilon(other, epsilon) → Boolean

  Compares the provided Rectangle with this Rectangle componentwise and returns `true` if they are within the provided epsilon, `false` otherwise.

  Name | Type | Description
  --- | --- | ---
  `other` | Rectangle | optional The Rectangle to compare.
  `epsilon` | Number | The epsilon to use for equality testing.

  ##### Returns:

  `true` if the Rectangles are within the provided epsilon, `false` otherwise.
  Source: Core/Rectangle.js, line 325