-
Notifications
You must be signed in to change notification settings - Fork 0
/
parseCode.js
62 lines (61 loc) · 1.61 KB
/
parseCode.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
import defs from './defs';
// import wkt from 'wkt-parser';
// import projStr from './projString';
// import match from './match';
function testObj(code){
return typeof code === 'string';
}
function testDef(code){
return code in defs;
}
// var codeWords = ['PROJECTEDCRS', 'PROJCRS', 'GEOGCS','GEOCCS','PROJCS','LOCAL_CS', 'GEODCRS', 'GEODETICCRS', 'GEODETICDATUM', 'ENGCRS', 'ENGINEERINGCRS'];
// function testWKT(code){
// return codeWords.some(function (word) {
// return code.indexOf(word) > -1;
// });
// }
// var codes = ['3857', '900913', '3785', '102113'];
// function checkMercator(item) {
// var auth = match(item, 'authority');
// if (!auth) {
// return;
// }
// var code = match(auth, 'epsg');
// return code && codes.indexOf(code) > -1;
// }
// function checkProjStr(item) {
// var ext = match(item, 'extension');
// if (!ext) {
// return;
// }
// return match(ext, 'proj4');
// }
// function testProj(code){
// return code[0] === '+';
// }
function parse(code){
if (testObj(code)) {
//check to see if this is a WKT string
if (testDef(code)) {
return defs[code];
}
// if (testWKT(code)) {
// var out = wkt(code);
// // test of spetial case, due to this being a very common and often malformed
// if (checkMercator(out)) {
// return defs['EPSG:3857'];
// }
// var maybeProjStr = checkProjStr(out);
// if (maybeProjStr) {
// return projStr(maybeProjStr);
// }
// return out;
// }
// if (testProj(code)) {
// return projStr(code);
// }
}else{
return code;
}
}
export default parse;