# WallOutlineGeometry

#### new Cesium.WallOutlineGeometry(options)
Core/WallOutlineGeometry.js 72

A description of a wall outline. A wall is defined by a series of points, which extrude down to the ground. Optionally, they can extrude downwards to a specified height.

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

`options`

Object

Object with the following properties:

Name | Type | Default | Description
--- | --- | --- | ---
`positions` | Array.<Cartesian3> |  | An array of Cartesian objects, which are the points of the wall.
`granularity` | Number | `CesiumMath.RADIANS_PER_DEGREE` | optional The distance, in radians, between each latitude and longitude. Determines the number of positions in the buffer.
`maximumHeights` | Array.<Number> |  | optional An array parallel to `positions` that give the maximum height of the wall at `positions`. If undefined, the height of each position in used.
`minimumHeights` | Array.<Number> |  | optional An array parallel to `positions` that give the minimum height of the wall at `positions`. If undefined, the height at each position is 0.0.
`ellipsoid` | Ellipsoid | `Ellipsoid.WGS84` | optional The ellipsoid for coordinate manipulation

##### Throws:

- DeveloperError : positions length must be greater than or equal to 2.
- DeveloperError : positions and maximumHeights must have the same length.
- DeveloperError : positions and minimumHeights must have the same length.

##### Example:

    // create a wall outline that spans from ground level to 10000 meters
    var wall = new Cesium.WallOutlineGeometry({
      positions : Cesium.Cartesian3.fromDegreesArrayHeights([
        19.0, 47.0, 10000.0,
        19.0, 48.0, 10000.0,
        20.0, 48.0, 10000.0,
        20.0, 47.0, 10000.0,
        19.0, 47.0, 10000.0
      ])
    });
    var geometry = Cesium.WallOutlineGeometry.createGeometry(wall);

##### See:

- WallGeometry#createGeometry
- WallGeometry#fromConstantHeight

### Members

#### packedLength : Number
Core/WallOutlineGeometry.js 113

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

### Methods

#### staticCesium.WallOutlineGeometry.createGeometry(wallGeometry) → Geometry|undefined
Core/WallOutlineGeometry.js 332

Computes the geometric representation of a wall outline, including its vertices, indices, and a bounding sphere.

Name | Type | Description
--- | --- | ---
`wallGeometry` | WallOutlineGeometry | A description of the wall outline.

##### Returns:

The computed vertices and indices.

#### staticCesium.WallOutlineGeometry.fromConstantHeights(options) → WallOutlineGeometry
Core/WallOutlineGeometry.js 283

A description of a walloutline. A wall is defined by a series of points, which extrude down to the ground. Optionally, they can extrude downwards to a specified height.

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

`options`

Object

Object with the following properties:

Name | Type | Default | Description
--- | --- | --- | ---
`positions` | Array.<Cartesian3> |  | An array of Cartesian objects, which are the points of the wall.
`maximumHeight` | Number |  | optional A constant that defines the maximum height of the wall at `positions`. If undefined, the height of each position in used.
`minimumHeight` | Number |  | optional A constant that defines the minimum height of the wall at `positions`. If undefined, the height at each position is 0.0.
`ellipsoid` | Ellipsoid | `Ellipsoid.WGS84` | optional The ellipsoid for coordinate manipulation

##### Returns:

##### Example:

    // create a wall that spans from 10000 meters to 20000 meters
    var wall = Cesium.WallOutlineGeometry.fromConstantHeights({
      positions : Cesium.Cartesian3.fromDegreesArray([
        19.0, 47.0,
        19.0, 48.0,
        20.0, 48.0,
        20.0, 47.0,
        19.0, 47.0,
      ]),
      minimumHeight : 20000.0,
      maximumHeight : 10000.0
    });
    var geometry = Cesium.WallOutlineGeometry.createGeometry(wall);

##### See:

- WallOutlineGeometry#createGeometry

#### staticCesium.WallOutlineGeometry.pack(value, array, startingIndex) → Array.<Number>
Core/WallOutlineGeometry.js 125

Stores the provided instance into the provided array.

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

##### Returns:

The array that was packed into

#### staticCesium.WallOutlineGeometry.unpack(array, startingIndex, result) → WallOutlineGeometry
Core/WallOutlineGeometry.js 192

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

##### Returns:

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