# PolylineVolumeOutlineGeometry

#### new Cesium.PolylineVolumeOutlineGeometry(options)
engine/Source/Core/PolylineVolumeOutlineGeometry.js 110

A description of a polyline with a volume (a 2D shape extruded along a polyline).

Name | Type | Description
--- | --- | ---
`options` | object | Object with the following properties:
Name | Type | Default | Description
--- | --- | --- | ---
`polylinePositions` | Array.<Cartesian3> |  | An array of positions that define the center of the polyline volume.
`shapePositions` | Array.<Cartesian2> |  | An array of positions that define the shape to be extruded along the polyline
`ellipsoid` | Ellipsoid | `Ellipsoid.default` | optional The ellipsoid to be used as a reference.
`granularity` | number | `CesiumMath.RADIANS_PER_DEGREE` | optional The distance, in radians, between each latitude and longitude. Determines the number of positions in the buffer.
`cornerType` | CornerType | `CornerType.ROUNDED` | optional Determines the style of the corners.

##### Example:

    function computeCircle(radius) {
      const positions = [];
      for (let i = 0; i < 360; i++) {
        const radians = Cesium.Math.toRadians(i);
        positions.push(new Cesium.Cartesian2(radius * Math.cos(radians), radius * Math.sin(radians)));
      }
      return positions;
    }

    const volumeOutline = new Cesium.PolylineVolumeOutlineGeometry({
      polylinePositions : Cesium.Cartesian3.fromDegreesArray([
        -72.0, 40.0,
        -70.0, 35.0
      ]),
      shapePositions : computeCircle(100000.0)
    });

##### See:

- PolylineVolumeOutlineGeometry#createGeometry

### Members

#### packedLength : number
engine/Source/Core/PolylineVolumeOutlineGeometry.js 138

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

### Methods

#### static Cesium.PolylineVolumeOutlineGeometry.createGeometry(polylineVolumeOutlineGeometry) → Geometry|undefined
engine/Source/Core/PolylineVolumeOutlineGeometry.js 263

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

Name | Type | Description
--- | --- | ---
`polylineVolumeOutlineGeometry` | PolylineVolumeOutlineGeometry | A description of the polyline volume outline.

##### Returns:

The computed vertices and indices.

#### static Cesium.PolylineVolumeOutlineGeometry.pack(value, array, startingIndex) → Array.<number>
engine/Source/Core/PolylineVolumeOutlineGeometry.js 150

Stores the provided instance into the provided array.

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

#### static Cesium.PolylineVolumeOutlineGeometry.unpack(array, startingIndex, result) → PolylineVolumeOutlineGeometry
engine/Source/Core/PolylineVolumeOutlineGeometry.js 207

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

##### Returns:

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

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