parse<T extends Geometry> static method

Feature<T> parse<T extends Geometry>(
  1. String text, {
  2. TextReaderFormat<FeatureContent> format = GeoJSON.feature,
  3. CoordRefSys? crs,
  4. Map<String, dynamic>? options,
})

Parses a feature with the geometry of T from text conforming to format.

When format is not given, then the feature format of GeoJSON is used as a default.

Use crs to give hints (like axis order, and whether x and y must be swapped when read in) about coordinate reference system in text input.

Format or decoder implementation specific options can be set by options.

Examples:

// a feature with an id and a point geometry (2D coordinates)
Feature.parse(
  format: GeoJSON.feature,
  '''
  {
    "type": "Feature",
    "id": "1",
    "geometry": {
      "type": "Point",
      "coordinates": [10.0, 20.0]
    }
  }
  ''',
);

// a feature with properties and a line string geometry (3D coordinates)
Feature.parse(
  format: GeoJSON.feature,
  '''
  {
    "type": "Feature",
    "geometry": {
      "type": "LineString",
      "coordinates": [
        [10.0, 20.0, 30.0],
        [12.5, 22.5, 32.5],
        [15.0, 25.0, 35.0]
      ]
    },
    "properties": {
      "textProp": "this is property value",
      "intProp": 10,
      "doubleProp": 29.5,
      "arrayProp": ["foo", "bar"]
    }
  }
  ''',
);

Implementation

static Feature<T> parse<T extends Geometry>(
  String text, {
  TextReaderFormat<FeatureContent> format = GeoJSON.feature,
  CoordRefSys? crs,
  Map<String, dynamic>? options,
}) =>
    FeatureBuilder.parse<Feature<T>, T>(
      text,
      format: format,
      crs: crs,
      options: options,
    );