Viewing version 2.0.0. Open the latest package page.
wkt_parser
2.0.0Wkt-parser is a Dart version of proj4js/wkt-parser. With wkt-parser you can parse a WKT projection string (OGC, ESRI) into json that proj4dart can consume.
Readme
WKT-PARSER-DART
Wkt-parser-dart is the Dart version of proj4js/wkt-parser to convert a WKT CRS string into a Map<String, dynamic> object.
Installing
Add wkt_parser to pubspec.yml (dependencies section), then run pub get to download the new dependencies.
dependencies:
wkt_parser: any # or the latest version on Pub
Using
You can convert any OGC WKT / ESRI WKT definition string copied from epsg.io into a Map<String,dynamic> format which then can be further converted into JSON to be fully interoperable with any programming languages. This example uses the OGC WKT of EPSG:23700.
import 'package:wkt_parser/wkt_parser.dart' as wkt_parser;
void main() {
// WKT CRS string
var wktText =
'PROJCS["HD72 / EOV",GEOGCS["HD72",DATUM["Hungarian_Datum_1972",SPHEROID["GRS 1967",6378160,298.247167427,AUTHORITY["EPSG","7036"]],TOWGS84[52.17,-71.82,-14.9,0,0,0,0],AUTHORITY["EPSG","6237"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4237"]],PROJECTION["Hotine_Oblique_Mercator_Azimuth_Center"],PARAMETER["latitude_of_center",47.14439372222222],PARAMETER["longitude_of_center",19.04857177777778],PARAMETER["azimuth",90],PARAMETER["rectified_grid_angle",90],PARAMETER["scale_factor",0.99993],PARAMETER["false_easting",650000],PARAMETER["false_northing",200000],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Y",EAST],AXIS["X",NORTH],AUTHORITY["EPSG","23700"]]';
// Parsed object of type ProjWKT
var output = wkt_parser.parseWKT(wktText);
// This returns a JSON encoded string of the WKT
print(output.toString());
}
The result should be (with JSON encode):
{
"type": "PROJCS",
"name": "HD72 / EOV",
"GEOGCS": {
"name": "HD72",
"DATUM": {
"name": "Hungarian_Datum_1972",
"SPHEROID": {
"name": "GRS 1967",
"a": 6378160.0,
"rf": 298.247167427,
"AUTHORITY": {
"EPSG": "7036"
}
},
"TOWGS84": [52.17, -71.82, -14.9, 0.0, 0.0, 0.0, 0.0],
"AUTHORITY": {
"EPSG": "6237"
}
},
"PRIMEM": {
"name": "greenwich",
"convert": 0.0,
"AUTHORITY": {
"EPSG": "8901"
}
},
"UNIT": {
"name": "degree",
"convert": 0.0174532925199433,
"AUTHORITY": {
"EPSG": "9122"
}
},
"AUTHORITY": {
"EPSG": "4237"
}
},
"PROJECTION": "Hotine_Oblique_Mercator_Azimuth_Center",
"latitude_of_center": 47.14439372222222,
"longitude_of_center": 19.04857177777778,
"azimuth": 90.0,
"rectified_grid_angle": 90.0,
"scale_factor": 0.99993,
"false_easting": 650000.0,
"false_northing": 200000.0,
"UNIT": {
"name": "metre",
"convert": 1.0,
"AUTHORITY": {
"EPSG": "9001"
}
},
"AXIS": [
["Y", "EAST"],
["X", "NORTH"]
],
"AUTHORITY": {
"EPSG": "23700"
},
"projName": "Hotine_Oblique_Mercator_Azimuth_Center",
"units": "meter",
"to_meter": 1.0,
"datumCode": "hungarian_datum_1972",
"ellps": "GRS 1967",
"a": 6378160.0,
"rf": 298.247167427,
"datum_params": [52.17, -71.82, -14.9, 0.0, 0.0, 0.0, 0.0],
"k0": 0.99993,
"lat0": 0.8228248943093227,
"longc": 0.3324602953246919,
"x0": 650000.0,
"y0": 200000.0,
"alpha": 1.5707963267948966,
"srsCode": "HD72 / EOV"
}
Author
Wkt-parser-dart was ported from proj4js/wkt-parser by Gergely Padányi-Gulyás (@fegyi001) at Ulyssys Ltd, Budapest, Hungary.
Changelog
Changelog
2.0.0 - 2021-03-23
- Stable null safety release
- BREAKING CHANGE:
parseWKTnow returnsMap<String, dynamic>instead ofMap<dynamic, dynamic>
1.0.7 - 2020-03-20
- Merge fix
1.0.6 - 2020-03-20
- Rename example file for dart pub to find it
1.0.5 - 2020-03-20
- Rename example file for dart pub to find it
- Longer description for dart pub
1.0.4 - 2020-03-20
- Fix in cleanWKT
1.0.3 - 2020-03-04
- Add missing params to ProjWKT
1.0.2 - 2020-03-04
- Rename WKT to ProjWKT
- Rename parse() to parseWKT()
1.0.1 - 2020-03-03
- Class WKT with static parse() method
- Getters for WKT object parameters
1.0.0 - 2020-03-02
- Initial version
- It produces the same result as proj4js/wkt-parser for all the tests defined in proj4js/wkt-parser
Installing
export PUB_HOSTED_URL=https://pub.mirror.p-hatan.com
flutter pub add 'wkt_parser:2.0.0'pubspec.yaml
name: wkt_parser
description: Wkt-parser is a Dart version of proj4js/wkt-parser. With wkt-parser you can parse a WKT projection string (OGC, ESRI) into json that proj4dart can consume.
version: 2.0.0
homepage: https://github.com/fegyi001/wkt-parser-dart
environment:
sdk: '>=2.12.0 <3.0.0'
# dependencies:
dev_dependencies:
pedantic: ^1.11.0
test: ^1.16.8
Version history
| Version | Published | Archive | SHA-256 |
|---|---|---|---|
| 1.0.0 | On demand | Download | 66d8310b…52e971 |
| 1.0.1 | On demand | Download | bd38afa9…2b3b18 |
| 1.0.2 | On demand | Download | 8de59e2a…7e5695 |
| 1.0.3 | On demand | Download | 38084ea9…dcbcd7 |
| 1.0.4 | On demand | Download | 7e592245…357d83 |
| 1.0.5 | On demand | Download | e66fc990…b060f4 |
| 1.0.6 | On demand | Download | f034193c…97ffd8 |
| 1.0.7 | On demand | Download | 1da78c2d…b1c82a |
| 2.0.0 | Cached · Upstream SHA-256 matched | Download | 8a555fc6…937f13 |
Dependencies
No direct dependencies declared.