MultiLineString.parse constructor

MultiLineString.parse(
  1. String text, {
  2. TextReaderFormat<SimpleGeometryContent> format = GeoJSON.geometry,
  3. CoordRefSys? crs,
  4. Map<String, dynamic>? options,
})

Parses a multi line string geometry from text conforming to format.

When format is not given, then the geometry 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. When data itself have CRS information it overrides this value.

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

Examples:

// a multi line string with two line strings both with three 2D positions
MultiLineString.parse(
  format: GeoJSON.geometry,
  '''
  {
    "type": "MultiLineString",
    "coordinates": [
      [[10.0,20.0], [12.5,22.5], [15.0,25.0]],
      [[12.5,23.0], [11.5,24.0], [12.5,24.0]]
    ]
  }
  ''',
);
MultiLineString.parse(
  format: WKT.geometry,
  '''
  MULTILINESTRING (
    (10.0 20.0,12.5 22.5,15.0 25.0),
    (12.5 23.0,11.5 24.0,12.5 24.0)
  )
  ''',
);

// a multi line string with two line strings both with three 3D positions
MultiLineString.parse(
  format: GeoJSON.geometry,
  '''
  {
    "type": "MultiLineString",
    "coordinates": [
      [[10.0,20.0,30.0], [12.5,22.5,32.5], [15.0,25.0,35.0]],
      [[12.5,23.0,32.5], [11.5,24.0,31.5], [12.5,24.0,32.5]]
    ]
  }
  ''',
);
MultiLineString.parse(
  format: WKT.geometry,
  '''
  MULTILINESTRING Z (
    (10.0 20.0 30.0,12.5 22.5 32.5,15.0 25.0 35.0),
    (12.5 23.0 32.5,11.5 24.0 31.5,12.5 24.0 32.5)
  )
  ''',
);

Implementation

factory MultiLineString.parse(
  String text, {
  TextReaderFormat<SimpleGeometryContent> format = GeoJSON.geometry,
  CoordRefSys? crs,
  Map<String, dynamic>? options,
}) =>
    GeometryBuilder.parse<MultiLineString>(
      text,
      format: format,
      crs: crs,
      options: options,
    );