Class: GMLBase

ol/format/GMLBase~GMLBase


import GMLBase from 'ol/format/GMLBase';

Abstract base class; normally only used for creating subclasses and not instantiated in apps. Feature base format for reading and writing data in the GML format. This class cannot be instantiated, it contains only base content that is shared with versioned format classes GML2 and GML3.

new GMLBase(options)

Name Type Description
featureNS Object.<string, string> | string | undefined

Feature namespace. If not defined will be derived from GML. If multiple feature types have been configured which come from different feature namespaces, this will be an object with the keys being the prefixes used in the entries of featureType array. The values of the object will be the feature namespaces themselves. So for instance there might be a featureType item topp:states in the featureType array and then there will be a key topp in the featureNS object with value http://www.openplans.org/topp.

featureType Array.<string> | string | undefined

Feature type(s) to parse. If multiple feature types need to be configured which come from different feature namespaces, featureNS will be an object with the keys being the prefixes used in the entries of featureType array. The values of the object will be the feature namespaces themselves. So for instance there might be a featureType item topp:states and then there will be a key named topp in the featureNS object with value http://www.openplans.org/topp.

srsName string | undefined

srsName to use when writing geometries.

surface boolean (defaults to false)

Write gml:Surface instead of gml:Polygon elements. This also affects the elements in multi-part geometries.

curve boolean (defaults to false)

Write gml:Curve instead of gml:LineString elements. This also affects the elements in multi-part geometries.

multiCurve boolean (defaults to true)

Write gml:MultiCurve instead of gml:MultiLineString. Since the latter is deprecated in GML 3.

multiSurface boolean (defaults to true)

Write gml:multiSurface instead of gml:MultiPolygon. Since the latter is deprecated in GML 3.

schemaLocation string | undefined

Optional schemaLocation to use when writing out the GML, this will override the default provided.

hasZ boolean (defaults to false)

If coordinates have a Z value.

Subclasses

Extends

Methods

readFeature(source, options){Feature} inherited

Read a single feature.

Name Type Description
source Document | Element | Object | string

Source.

options

Read options.

Name Type Description
dataProjection ProjectionLike | undefined

Projection of the data we are reading. If not provided, the projection will be derived from the data (where possible) or the dataProjection of the format is assigned (where set). If the projection can not be derived from the data and if no dataProjection is set for a format, the features will not be reprojected.

extent Extent | undefined

Tile extent in map units of the tile being read. This is only required when reading data with tile pixels as geometry units. When configured, a dataProjection with TILE_PIXELS as units and the tile's pixel extent as extent needs to be provided.

featureProjection ProjectionLike | undefined

Projection of the feature geometries created by the format reader. If not provided, features will be returned in the dataProjection.

Returns:
Feature.

readFeatures(source, options){Array<Feature>} inherited

Read all features from a feature collection.

Name Type Description
source Document | Element | Object | string

Source.

options

Options.

Name Type Description
dataProjection ProjectionLike | undefined

Projection of the data we are reading. If not provided, the projection will be derived from the data (where possible) or the dataProjection of the format is assigned (where set). If the projection can not be derived from the data and if no dataProjection is set for a format, the features will not be reprojected.

extent Extent | undefined

Tile extent in map units of the tile being read. This is only required when reading data with tile pixels as geometry units. When configured, a dataProjection with TILE_PIXELS as units and the tile's pixel extent as extent needs to be provided.

featureProjection ProjectionLike | undefined

Projection of the feature geometries created by the format reader. If not provided, features will be returned in the dataProjection.

Returns:
Features.

Read the projection from the source.

Name Type Description
source Document | Element | Object | string

Source.

Returns:
Projection.

writeFeatures(features, options){string} inherited

Encode an array of features as string.

Name Type Description
features Array<Feature>

Features.

options

Write options.

Name Type Description
dataProjection ProjectionLike | undefined

Projection of the data we are writing. If not provided, the dataProjection of the format is assigned (where set). If no dataProjection is set for a format, the features will be returned in the featureProjection.

featureProjection ProjectionLike | undefined

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:
Result.