OpenLayers v4.0.1 API - Class: Polyline

# Class: Polyline

This documentation is for OpenLayers v4.0.1. The latest is v.

## ol.format.Polyline

Feature format for reading and writing data in the Encoded Polyline Algorithm Format.

#### new ol.format.Polyline(opt_options)

src/ol/format/polyline.js, line 27

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

  `options`

  Optional configuration object.

  Name | Type | Description
  --- | --- | ---
  `factor` | number | undefined | The factor by which the coordinates values will be scaled. Default is `1e5`.
  `geometryLayout` | ol.geom.GeometryLayout | undefined | Layout of the feature geometries created by the format reader. Default is `ol.geom.GeometryLayout.XY`.

### Extends

- ol.format.TextFeature

### Methods

#### ol.format.Polyline.decodeDeltas(encoded, stride, opt_factor){Array.<number>}

src/ol/format/polyline.js, line 102

  Decode a list of n-dimensional points from an encoded string

  Name | Type | Description
  --- | --- | ---
  `encoded` | string | An encoded string.
  `stride` | number | The number of dimension of the points in the encoded string.
  `factor` | number | The factor by which the resulting numbers will be divided. Default is `1e5`.

  ##### Returns:

  A list of n-dimensional points.

#### ol.format.Polyline.decodeFloats(encoded, opt_factor){Array.<number>}

src/ol/format/polyline.js, line 159

  Decode a list of floating point numbers from an encoded string

  Name | Type | Description
  --- | --- | ---
  `encoded` | string | An encoded string.
  `factor` | number | The factor by which the result will be divided. Default is `1e5`.

  ##### Returns:

  A list of floating point numbers.

#### ol.format.Polyline.encodeDeltas(numbers, stride, opt_factor){string}

src/ol/format/polyline.js, line 67

  Encode a list of n-dimensional points and return an encoded string

  Attention: This function will modify the passed array!

  Name | Type | Description
  --- | --- | ---
  `numbers` | Array.<number> | A list of n-dimensional points.
  `stride` | number | The number of dimension of the points in the list.
  `factor` | number | The factor by which the numbers will be multiplied. The remaining decimal places will get rounded away. Default is `1e5`.

  ##### Returns:

  The encoded string.

#### ol.format.Polyline.encodeFloats(numbers, opt_factor){string}

src/ol/format/polyline.js, line 139

  Encode a list of floating point numbers and return an encoded string

  Attention: This function will modify the passed array!

  Name | Type | Description
  --- | --- | ---
  `numbers` | Array.<number> | A list of floating point numbers.
  `factor` | number | The factor by which the numbers will be multiplied. The remaining decimal places will get rounded away. Default is `1e5`.

  ##### Returns:

  The encoded string.

#### readFeature(source, opt_options){ol.Feature}

src/ol/format/polyline.js, line 276

  Read the feature from the Polyline source. The coordinates are assumed to be in two dimensions and in latitude, longitude order.

  Name | Type | Description
  --- | --- | ---
  `source` | Document | Node | Object | string | Source.

  `options`

  Read options.

  Name | Type | Description
  --- | --- | ---
  `dataProjection` | ol.ProjectionLike | Projection of the data we are reading. If not provided, the projection will be derived from the data (where possible) or the `defaultDataProjection` of the format is assigned (where set). If the projection can not be derived from the data and if no `defaultDataProjection` is set for a format, the features will not be reprojected.
  `featureProjection` | ol.ProjectionLike | Projection of the feature geometries created by the format reader. If not provided, features will be returned in the `dataProjection`.

  ##### Returns:

  Feature.

#### readFeatures(source, opt_options){Array.<ol.Feature>}

src/ol/format/polyline.js, line 298

  Read the feature from the source. As Polyline sources contain a single feature, this will return the feature in an array.

  Name | Type | Description
  --- | --- | ---
  `source` | Document | Node | Object | string | Source.

  `options`

  Read options.

  Name | Type | Description
  --- | --- | ---
  `dataProjection` | ol.ProjectionLike | Projection of the data we are reading. If not provided, the projection will be derived from the data (where possible) or the `defaultDataProjection` of the format is assigned (where set). If the projection can not be derived from the data and if no `defaultDataProjection` is set for a format, the features will not be reprojected.
  `featureProjection` | ol.ProjectionLike | Projection of the feature geometries created by the format reader. If not provided, features will be returned in the `dataProjection`.

  ##### Returns:

  Features.

#### readGeometry(source, opt_options){ol.geom.Geometry}

src/ol/format/polyline.js, line 319

  Read the geometry from the source.

  Name | Type | Description
  --- | --- | ---
  `source` | Document | Node | Object | string | Source.

  `options`

  Read options.

  Name | Type | Description
  --- | --- | ---
  `dataProjection` | ol.ProjectionLike | Projection of the data we are reading. If not provided, the projection will be derived from the data (where possible) or the `defaultDataProjection` of the format is assigned (where set). If the projection can not be derived from the data and if no `defaultDataProjection` is set for a format, the features will not be reprojected.
  `featureProjection` | ol.ProjectionLike | Projection of the feature geometries created by the format reader. If not provided, features will be returned in the `dataProjection`.

  ##### Returns:

  Geometry.

#### readProjection(source){ol.proj.Projection}

src/ol/format/polyline.js, line 349

  Read the projection from a Polyline source.

  Name | Type | Description
  --- | --- | ---
  `source` | Document | Node | Object | string | Source.

  ##### Returns:

  Projection.

#### writeGeometry(geometry, opt_options){string}

src/ol/format/polyline.js, line 383

  Write a single geometry in Polyline format.

  Name | Type | Description
  --- | --- | ---
  `geometry` | ol.geom.Geometry | Geometry.

  `options`

  Write options.

  Name | Type | Description
  --- | --- | ---
  `dataProjection` | ol.ProjectionLike | Projection of the data we are writing. If not provided, the `defaultDataProjection` of the format is assigned (where set). If no `defaultDataProjection` is set for a format, the features will be returned in the `featureProjection`.
  `featureProjection` | ol.ProjectionLike | Projection of the feature geometries that will be serialized by the format writer. If not provided, geometries are assumed to be in the `dataProjection` if that is set; in other words, they are not transformed.
  `rightHanded` | boolean | undefined | When writing geometries, follow the right-hand rule for linear ring orientation. This means that polygons will have counter-clockwise exterior rings and clockwise interior rings. By default, coordinates are serialized as they are provided at construction. If `true`, the right-hand rule will be applied. If `false`, the left-hand rule will be applied (clockwise for exterior and counter-clockwise for interior rings). Note that not all formats support this. The GeoJSON format does use this property when writing geometries.
  `decimals` | number | undefined | Maximum number of decimal places for coordinates. Coordinates are stored internally as floats, but floating-point arithmetic can create coordinates with a large number of decimal places, not generally wanted on output. Set a number here to round coordinates. Can also be used to ensure that coordinates read in can be written back out with the same number of decimals. Default is no rounding.

  ##### Returns:

  Geometry.