add country outlines
This commit is contained in:
parent
de32543f5e
commit
77c21ee07d
295
frontend/data/outlines/australia.json
Normal file
295
frontend/data/outlines/australia.json
Normal file
@ -0,0 +1,295 @@
|
||||
{
|
||||
"source": "ne_10m_admin_0_countries.shp",
|
||||
"country": {
|
||||
"name": "Australia",
|
||||
"isoA2": "AU",
|
||||
"isoA3": "AUS",
|
||||
"continent": "Oceania",
|
||||
"subregion": "Australia and New Zealand"
|
||||
},
|
||||
"outline": {
|
||||
"type": "MultiPolygon",
|
||||
"bounds": {
|
||||
"minLon": 112.91944420700008,
|
||||
"maxLon": 159.1064559250001,
|
||||
"minLat": -54.75042083099993,
|
||||
"maxLat": -9.240166924999926
|
||||
},
|
||||
"rings": [
|
||||
[
|
||||
{
|
||||
"x": 40.31,
|
||||
"y": 49.14
|
||||
},
|
||||
{
|
||||
"x": 6.62,
|
||||
"y": 56.24
|
||||
},
|
||||
{
|
||||
"x": 4.54,
|
||||
"y": 54.98
|
||||
},
|
||||
{
|
||||
"x": 6.07,
|
||||
"y": 49.51
|
||||
},
|
||||
{
|
||||
"x": 0.51,
|
||||
"y": 37.16
|
||||
},
|
||||
{
|
||||
"x": 2.06,
|
||||
"y": 37.97
|
||||
},
|
||||
{
|
||||
"x": 1.29,
|
||||
"y": 35.75
|
||||
},
|
||||
{
|
||||
"x": 2.85,
|
||||
"y": 37.52
|
||||
},
|
||||
{
|
||||
"x": 1.02,
|
||||
"y": 33.34
|
||||
},
|
||||
{
|
||||
"x": 2.22,
|
||||
"y": 27.93
|
||||
},
|
||||
{
|
||||
"x": 17.4,
|
||||
"y": 22.84
|
||||
},
|
||||
{
|
||||
"x": 21.64,
|
||||
"y": 15.77
|
||||
},
|
||||
{
|
||||
"x": 23.06,
|
||||
"y": 18.36
|
||||
},
|
||||
{
|
||||
"x": 23.06,
|
||||
"y": 15.24
|
||||
},
|
||||
{
|
||||
"x": 25.95,
|
||||
"y": 15.74
|
||||
},
|
||||
{
|
||||
"x": 24.81,
|
||||
"y": 13.81
|
||||
},
|
||||
{
|
||||
"x": 28.36,
|
||||
"y": 10.28
|
||||
},
|
||||
{
|
||||
"x": 31.39,
|
||||
"y": 10.33
|
||||
},
|
||||
{
|
||||
"x": 32.7,
|
||||
"y": 13.75
|
||||
},
|
||||
{
|
||||
"x": 36.39,
|
||||
"y": 13.08
|
||||
},
|
||||
{
|
||||
"x": 38.23,
|
||||
"y": 6.94
|
||||
},
|
||||
{
|
||||
"x": 42.95,
|
||||
"y": 6.36
|
||||
},
|
||||
{
|
||||
"x": 41.27,
|
||||
"y": 4.15
|
||||
},
|
||||
{
|
||||
"x": 51.21,
|
||||
"y": 5.84
|
||||
},
|
||||
{
|
||||
"x": 48.82,
|
||||
"y": 12.54
|
||||
},
|
||||
{
|
||||
"x": 59.77,
|
||||
"y": 18.44
|
||||
},
|
||||
{
|
||||
"x": 64.15,
|
||||
"y": 3.18
|
||||
},
|
||||
{
|
||||
"x": 66.82,
|
||||
"y": 11.34
|
||||
},
|
||||
{
|
||||
"x": 70.21,
|
||||
"y": 12.53
|
||||
},
|
||||
{
|
||||
"x": 72.34,
|
||||
"y": 21.36
|
||||
},
|
||||
{
|
||||
"x": 77.65,
|
||||
"y": 24.17
|
||||
},
|
||||
{
|
||||
"x": 87.22,
|
||||
"y": 36.68
|
||||
},
|
||||
{
|
||||
"x": 86.91,
|
||||
"y": 47.98
|
||||
},
|
||||
{
|
||||
"x": 80.25,
|
||||
"y": 62.09
|
||||
},
|
||||
{
|
||||
"x": 72.51,
|
||||
"y": 65.71
|
||||
},
|
||||
{
|
||||
"x": 69.32,
|
||||
"y": 62.9
|
||||
},
|
||||
{
|
||||
"x": 66.29,
|
||||
"y": 65.08
|
||||
},
|
||||
{
|
||||
"x": 61.65,
|
||||
"y": 64.08
|
||||
},
|
||||
{
|
||||
"x": 58.19,
|
||||
"y": 61.59
|
||||
},
|
||||
{
|
||||
"x": 57.25,
|
||||
"y": 57.43
|
||||
},
|
||||
{
|
||||
"x": 54.53,
|
||||
"y": 57.97
|
||||
},
|
||||
{
|
||||
"x": 54.52,
|
||||
"y": 54.72
|
||||
},
|
||||
{
|
||||
"x": 51.79,
|
||||
"y": 57.17
|
||||
},
|
||||
{
|
||||
"x": 53.81,
|
||||
"y": 51.15
|
||||
},
|
||||
{
|
||||
"x": 49.9,
|
||||
"y": 56.62
|
||||
},
|
||||
{
|
||||
"x": 45.96,
|
||||
"y": 51.01
|
||||
},
|
||||
{
|
||||
"x": 40.84,
|
||||
"y": 49.41
|
||||
},
|
||||
{
|
||||
"x": 40.31,
|
||||
"y": 49.14
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 75.95,
|
||||
"y": 74.69
|
||||
},
|
||||
{
|
||||
"x": 71.68,
|
||||
"y": 75.39
|
||||
},
|
||||
{
|
||||
"x": 68.81,
|
||||
"y": 69.04
|
||||
},
|
||||
{
|
||||
"x": 76.41,
|
||||
"y": 69.44
|
||||
},
|
||||
{
|
||||
"x": 75.94,
|
||||
"y": 74.66
|
||||
},
|
||||
{
|
||||
"x": 75.95,
|
||||
"y": 74.69
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 54.58,
|
||||
"y": 58.4
|
||||
},
|
||||
{
|
||||
"x": 51.13,
|
||||
"y": 58.61
|
||||
},
|
||||
{
|
||||
"x": 54.54,
|
||||
"y": 58.4
|
||||
},
|
||||
{
|
||||
"x": 54.58,
|
||||
"y": 58.4
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 87.58,
|
||||
"y": 34.61
|
||||
},
|
||||
{
|
||||
"x": 86.9,
|
||||
"y": 36.38
|
||||
},
|
||||
{
|
||||
"x": 87.56,
|
||||
"y": 34.58
|
||||
},
|
||||
{
|
||||
"x": 87.58,
|
||||
"y": 34.61
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 40.31,
|
||||
"y": 4.77
|
||||
},
|
||||
{
|
||||
"x": 37.77,
|
||||
"y": 4.38
|
||||
},
|
||||
{
|
||||
"x": 40.3,
|
||||
"y": 4.74
|
||||
},
|
||||
{
|
||||
"x": 40.31,
|
||||
"y": 4.77
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
}
|
||||
295
frontend/data/outlines/brazil.json
Normal file
295
frontend/data/outlines/brazil.json
Normal file
@ -0,0 +1,295 @@
|
||||
{
|
||||
"source": "ne_10m_admin_0_countries.shp",
|
||||
"country": {
|
||||
"name": "Brazil",
|
||||
"isoA2": "BR",
|
||||
"isoA3": "BRA",
|
||||
"continent": "South America",
|
||||
"subregion": "South America"
|
||||
},
|
||||
"outline": {
|
||||
"type": "MultiPolygon",
|
||||
"bounds": {
|
||||
"minLon": -74.01847469099994,
|
||||
"maxLon": -28.877064581999946,
|
||||
"minLat": -33.74228037499992,
|
||||
"maxLat": 5.267224833000029
|
||||
},
|
||||
"rings": [
|
||||
[
|
||||
{
|
||||
"x": 36.37,
|
||||
"y": 90.9
|
||||
},
|
||||
{
|
||||
"x": 45.1,
|
||||
"y": 80.82
|
||||
},
|
||||
{
|
||||
"x": 40.22,
|
||||
"y": 70.64
|
||||
},
|
||||
{
|
||||
"x": 35.52,
|
||||
"y": 70.09
|
||||
},
|
||||
{
|
||||
"x": 36.67,
|
||||
"y": 60.2
|
||||
},
|
||||
{
|
||||
"x": 34.73,
|
||||
"y": 55.26
|
||||
},
|
||||
{
|
||||
"x": 30.7,
|
||||
"y": 55.2
|
||||
},
|
||||
{
|
||||
"x": 30.01,
|
||||
"y": 48.87
|
||||
},
|
||||
{
|
||||
"x": 19.98,
|
||||
"y": 44.25
|
||||
},
|
||||
{
|
||||
"x": 19.1,
|
||||
"y": 38.33
|
||||
},
|
||||
{
|
||||
"x": 11.97,
|
||||
"y": 41.99
|
||||
},
|
||||
{
|
||||
"x": 7.48,
|
||||
"y": 41.73
|
||||
},
|
||||
{
|
||||
"x": 7.74,
|
||||
"y": 37.68
|
||||
},
|
||||
{
|
||||
"x": 4.04,
|
||||
"y": 39.15
|
||||
},
|
||||
{
|
||||
"x": 0,
|
||||
"y": 32.84
|
||||
},
|
||||
{
|
||||
"x": 2.44,
|
||||
"y": 26.66
|
||||
},
|
||||
{
|
||||
"x": 8.96,
|
||||
"y": 24.5
|
||||
},
|
||||
{
|
||||
"x": 8.78,
|
||||
"y": 11.99
|
||||
},
|
||||
{
|
||||
"x": 10.81,
|
||||
"y": 11.84
|
||||
},
|
||||
{
|
||||
"x": 9.22,
|
||||
"y": 9.12
|
||||
},
|
||||
{
|
||||
"x": 14.61,
|
||||
"y": 8.02
|
||||
},
|
||||
{
|
||||
"x": 18.88,
|
||||
"y": 11.81
|
||||
},
|
||||
{
|
||||
"x": 23.59,
|
||||
"y": 7.65
|
||||
},
|
||||
{
|
||||
"x": 20.41,
|
||||
"y": 2.55
|
||||
},
|
||||
{
|
||||
"x": 24.69,
|
||||
"y": 4.36
|
||||
},
|
||||
{
|
||||
"x": 30.58,
|
||||
"y": 0
|
||||
},
|
||||
{
|
||||
"x": 33.6,
|
||||
"y": 10.46
|
||||
},
|
||||
{
|
||||
"x": 40.02,
|
||||
"y": 8.75
|
||||
},
|
||||
{
|
||||
"x": 39.98,
|
||||
"y": 7.02
|
||||
},
|
||||
{
|
||||
"x": 46.67,
|
||||
"y": 7.92
|
||||
},
|
||||
{
|
||||
"x": 49.85,
|
||||
"y": 2.12
|
||||
},
|
||||
{
|
||||
"x": 53.46,
|
||||
"y": 10.49
|
||||
},
|
||||
{
|
||||
"x": 47.21,
|
||||
"y": 17.6
|
||||
},
|
||||
{
|
||||
"x": 51.35,
|
||||
"y": 15.84
|
||||
},
|
||||
{
|
||||
"x": 51.39,
|
||||
"y": 18.55
|
||||
},
|
||||
{
|
||||
"x": 54.49,
|
||||
"y": 18.06
|
||||
},
|
||||
{
|
||||
"x": 53.95,
|
||||
"y": 20.37
|
||||
},
|
||||
{
|
||||
"x": 57.55,
|
||||
"y": 15.2
|
||||
},
|
||||
{
|
||||
"x": 60.23,
|
||||
"y": 15.32
|
||||
},
|
||||
{
|
||||
"x": 65.32,
|
||||
"y": 18.2
|
||||
},
|
||||
{
|
||||
"x": 64.74,
|
||||
"y": 21.96
|
||||
},
|
||||
{
|
||||
"x": 67.71,
|
||||
"y": 19.5
|
||||
},
|
||||
{
|
||||
"x": 75.39,
|
||||
"y": 20.8
|
||||
},
|
||||
{
|
||||
"x": 85.31,
|
||||
"y": 26.69
|
||||
},
|
||||
{
|
||||
"x": 86.89,
|
||||
"y": 31.85
|
||||
},
|
||||
{
|
||||
"x": 85.76,
|
||||
"y": 37.07
|
||||
},
|
||||
{
|
||||
"x": 77.74,
|
||||
"y": 46.15
|
||||
},
|
||||
{
|
||||
"x": 77.27,
|
||||
"y": 58.82
|
||||
},
|
||||
{
|
||||
"x": 73.16,
|
||||
"y": 69.94
|
||||
},
|
||||
{
|
||||
"x": 55.99,
|
||||
"y": 78.49
|
||||
},
|
||||
{
|
||||
"x": 55.98,
|
||||
"y": 86.59
|
||||
},
|
||||
{
|
||||
"x": 48.61,
|
||||
"y": 95.96
|
||||
},
|
||||
{
|
||||
"x": 51.96,
|
||||
"y": 91.56
|
||||
},
|
||||
{
|
||||
"x": 50.36,
|
||||
"y": 90.43
|
||||
},
|
||||
{
|
||||
"x": 45.72,
|
||||
"y": 100
|
||||
},
|
||||
{
|
||||
"x": 44.88,
|
||||
"y": 95.67
|
||||
},
|
||||
{
|
||||
"x": 36.4,
|
||||
"y": 90.93
|
||||
},
|
||||
{
|
||||
"x": 36.37,
|
||||
"y": 90.9
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 50.58,
|
||||
"y": 15.08
|
||||
},
|
||||
{
|
||||
"x": 48.97,
|
||||
"y": 17.3
|
||||
},
|
||||
{
|
||||
"x": 50.54,
|
||||
"y": 15.05
|
||||
},
|
||||
{
|
||||
"x": 50.58,
|
||||
"y": 15.08
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 56.61,
|
||||
"y": 14.98
|
||||
},
|
||||
{
|
||||
"x": 51.87,
|
||||
"y": 18.05
|
||||
},
|
||||
{
|
||||
"x": 51.91,
|
||||
"y": 13.99
|
||||
},
|
||||
{
|
||||
"x": 56.62,
|
||||
"y": 14.82
|
||||
},
|
||||
{
|
||||
"x": 56.61,
|
||||
"y": 14.98
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
}
|
||||
1839
frontend/data/outlines/canada.json
Normal file
1839
frontend/data/outlines/canada.json
Normal file
File diff suppressed because it is too large
Load Diff
77
frontend/data/outlines/france.json
Normal file
77
frontend/data/outlines/france.json
Normal file
@ -0,0 +1,77 @@
|
||||
{
|
||||
"source": "ne_10m_admin_0_countries.shp",
|
||||
"country": {
|
||||
"name": "France",
|
||||
"isoA2": "-99",
|
||||
"isoA3": "-99",
|
||||
"continent": "Europe",
|
||||
"subregion": "Western Europe"
|
||||
},
|
||||
"outline": {
|
||||
"type": "MultiPolygon",
|
||||
"bounds": {
|
||||
"minLon": -61.79784094999991,
|
||||
"maxLon": 55.854502800000034,
|
||||
"minLat": -21.37078215899993,
|
||||
"maxLat": 51.08754088371883
|
||||
},
|
||||
"rings": [
|
||||
[
|
||||
{
|
||||
"x": 6.53,
|
||||
"y": 67.59
|
||||
},
|
||||
{
|
||||
"x": 6.68,
|
||||
"y": 62.58
|
||||
},
|
||||
{
|
||||
"x": 8.63,
|
||||
"y": 64.78
|
||||
},
|
||||
{
|
||||
"x": 6.53,
|
||||
"y": 67.59
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 54.67,
|
||||
"y": 0
|
||||
},
|
||||
{
|
||||
"x": 59.5,
|
||||
"y": 2.94
|
||||
},
|
||||
{
|
||||
"x": 57.59,
|
||||
"y": 6.73
|
||||
},
|
||||
{
|
||||
"x": 58.88,
|
||||
"y": 10.11
|
||||
},
|
||||
{
|
||||
"x": 54.65,
|
||||
"y": 12.09
|
||||
},
|
||||
{
|
||||
"x": 51.27,
|
||||
"y": 11.08
|
||||
},
|
||||
{
|
||||
"x": 51.58,
|
||||
"y": 6.6
|
||||
},
|
||||
{
|
||||
"x": 48.46,
|
||||
"y": 3.63
|
||||
},
|
||||
{
|
||||
"x": 54.67,
|
||||
"y": 0
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
}
|
||||
529
frontend/data/outlines/germany.json
Normal file
529
frontend/data/outlines/germany.json
Normal file
@ -0,0 +1,529 @@
|
||||
{
|
||||
"source": "ne_10m_admin_0_countries.shp",
|
||||
"country": {
|
||||
"name": "Germany",
|
||||
"isoA2": "DE",
|
||||
"isoA3": "DEU",
|
||||
"continent": "Europe",
|
||||
"subregion": "Western Europe"
|
||||
},
|
||||
"outline": {
|
||||
"type": "MultiPolygon",
|
||||
"bounds": {
|
||||
"minLon": 5.852489868000106,
|
||||
"maxLon": 15.022059367000054,
|
||||
"minLat": 47.27112091100007,
|
||||
"maxLat": 55.065334377000056
|
||||
},
|
||||
"rings": [
|
||||
[
|
||||
{
|
||||
"x": 86.84,
|
||||
"y": 80.82
|
||||
},
|
||||
{
|
||||
"x": 85.76,
|
||||
"y": 83.96
|
||||
},
|
||||
{
|
||||
"x": 82.91,
|
||||
"y": 83.29
|
||||
},
|
||||
{
|
||||
"x": 82.37,
|
||||
"y": 85.82
|
||||
},
|
||||
{
|
||||
"x": 75.1,
|
||||
"y": 89.19
|
||||
},
|
||||
{
|
||||
"x": 78.73,
|
||||
"y": 95.02
|
||||
},
|
||||
{
|
||||
"x": 77.97,
|
||||
"y": 97.5
|
||||
},
|
||||
{
|
||||
"x": 69.66,
|
||||
"y": 94.09
|
||||
},
|
||||
{
|
||||
"x": 58.72,
|
||||
"y": 98.42
|
||||
},
|
||||
{
|
||||
"x": 49.91,
|
||||
"y": 96.08
|
||||
},
|
||||
{
|
||||
"x": 46.97,
|
||||
"y": 100
|
||||
},
|
||||
{
|
||||
"x": 44.64,
|
||||
"y": 96.54
|
||||
},
|
||||
{
|
||||
"x": 29.78,
|
||||
"y": 93.21
|
||||
},
|
||||
{
|
||||
"x": 27.68,
|
||||
"y": 94.6
|
||||
},
|
||||
{
|
||||
"x": 29.53,
|
||||
"y": 95.92
|
||||
},
|
||||
{
|
||||
"x": 18.91,
|
||||
"y": 95.98
|
||||
},
|
||||
{
|
||||
"x": 18.9,
|
||||
"y": 88.98
|
||||
},
|
||||
{
|
||||
"x": 25.6,
|
||||
"y": 78.35
|
||||
},
|
||||
{
|
||||
"x": 9.39,
|
||||
"y": 75.78
|
||||
},
|
||||
{
|
||||
"x": 5.37,
|
||||
"y": 71.98
|
||||
},
|
||||
{
|
||||
"x": 7.09,
|
||||
"y": 67.61
|
||||
},
|
||||
{
|
||||
"x": 2.66,
|
||||
"y": 64.36
|
||||
},
|
||||
{
|
||||
"x": 5.69,
|
||||
"y": 60.94
|
||||
},
|
||||
{
|
||||
"x": 0.06,
|
||||
"y": 51.91
|
||||
},
|
||||
{
|
||||
"x": 3.88,
|
||||
"y": 47.18
|
||||
},
|
||||
{
|
||||
"x": 0.82,
|
||||
"y": 41.81
|
||||
},
|
||||
{
|
||||
"x": 9.72,
|
||||
"y": 40.5
|
||||
},
|
||||
{
|
||||
"x": 9.02,
|
||||
"y": 38.55
|
||||
},
|
||||
{
|
||||
"x": 12.8,
|
||||
"y": 36.37
|
||||
},
|
||||
{
|
||||
"x": 12.22,
|
||||
"y": 33.54
|
||||
},
|
||||
{
|
||||
"x": 8.93,
|
||||
"y": 32.38
|
||||
},
|
||||
{
|
||||
"x": 12.72,
|
||||
"y": 31.3
|
||||
},
|
||||
{
|
||||
"x": 16.51,
|
||||
"y": 22.61
|
||||
},
|
||||
{
|
||||
"x": 12.77,
|
||||
"y": 21.67
|
||||
},
|
||||
{
|
||||
"x": 14.98,
|
||||
"y": 17.95
|
||||
},
|
||||
{
|
||||
"x": 23.76,
|
||||
"y": 17.41
|
||||
},
|
||||
{
|
||||
"x": 25.66,
|
||||
"y": 21.23
|
||||
},
|
||||
{
|
||||
"x": 26.37,
|
||||
"y": 18.64
|
||||
},
|
||||
{
|
||||
"x": 29.44,
|
||||
"y": 19.52
|
||||
},
|
||||
{
|
||||
"x": 28.92,
|
||||
"y": 21.9
|
||||
},
|
||||
{
|
||||
"x": 29.83,
|
||||
"y": 15.33
|
||||
},
|
||||
{
|
||||
"x": 36.62,
|
||||
"y": 15.31
|
||||
},
|
||||
{
|
||||
"x": 43.4,
|
||||
"y": 19.52
|
||||
},
|
||||
{
|
||||
"x": 33.41,
|
||||
"y": 14.47
|
||||
},
|
||||
{
|
||||
"x": 33.92,
|
||||
"y": 9.59
|
||||
},
|
||||
{
|
||||
"x": 29.96,
|
||||
"y": 9.33
|
||||
},
|
||||
{
|
||||
"x": 34.45,
|
||||
"y": 7.17
|
||||
},
|
||||
{
|
||||
"x": 30.63,
|
||||
"y": 2.17
|
||||
},
|
||||
{
|
||||
"x": 44.66,
|
||||
"y": 3.67
|
||||
},
|
||||
{
|
||||
"x": 45.52,
|
||||
"y": 6.48
|
||||
},
|
||||
{
|
||||
"x": 43.49,
|
||||
"y": 7.57
|
||||
},
|
||||
{
|
||||
"x": 46.8,
|
||||
"y": 7.36
|
||||
},
|
||||
{
|
||||
"x": 46.78,
|
||||
"y": 9.51
|
||||
},
|
||||
{
|
||||
"x": 57.61,
|
||||
"y": 8.72
|
||||
},
|
||||
{
|
||||
"x": 53.44,
|
||||
"y": 13.03
|
||||
},
|
||||
{
|
||||
"x": 54.91,
|
||||
"y": 14.13
|
||||
},
|
||||
{
|
||||
"x": 61.13,
|
||||
"y": 14.87
|
||||
},
|
||||
{
|
||||
"x": 63.66,
|
||||
"y": 11.68
|
||||
},
|
||||
{
|
||||
"x": 68.3,
|
||||
"y": 12.41
|
||||
},
|
||||
{
|
||||
"x": 72.86,
|
||||
"y": 7.4
|
||||
},
|
||||
{
|
||||
"x": 77.09,
|
||||
"y": 8.11
|
||||
},
|
||||
{
|
||||
"x": 71.06,
|
||||
"y": 10.21
|
||||
},
|
||||
{
|
||||
"x": 78.32,
|
||||
"y": 8.1
|
||||
},
|
||||
{
|
||||
"x": 83.02,
|
||||
"y": 12.41
|
||||
},
|
||||
{
|
||||
"x": 86.76,
|
||||
"y": 12.33
|
||||
},
|
||||
{
|
||||
"x": 86.86,
|
||||
"y": 15.56
|
||||
},
|
||||
{
|
||||
"x": 91.74,
|
||||
"y": 16.86
|
||||
},
|
||||
{
|
||||
"x": 93.67,
|
||||
"y": 23.27
|
||||
},
|
||||
{
|
||||
"x": 90.21,
|
||||
"y": 28.41
|
||||
},
|
||||
{
|
||||
"x": 95.89,
|
||||
"y": 31.93
|
||||
},
|
||||
{
|
||||
"x": 94.8,
|
||||
"y": 34.43
|
||||
},
|
||||
{
|
||||
"x": 97.16,
|
||||
"y": 38.34
|
||||
},
|
||||
{
|
||||
"x": 95.24,
|
||||
"y": 41.84
|
||||
},
|
||||
{
|
||||
"x": 99.27,
|
||||
"y": 46.57
|
||||
},
|
||||
{
|
||||
"x": 98.78,
|
||||
"y": 52.25
|
||||
},
|
||||
{
|
||||
"x": 96.9,
|
||||
"y": 54.59
|
||||
},
|
||||
{
|
||||
"x": 91.99,
|
||||
"y": 51.69
|
||||
},
|
||||
{
|
||||
"x": 92.63,
|
||||
"y": 53.7
|
||||
},
|
||||
{
|
||||
"x": 72.61,
|
||||
"y": 60
|
||||
},
|
||||
{
|
||||
"x": 70.32,
|
||||
"y": 62.93
|
||||
},
|
||||
{
|
||||
"x": 67.87,
|
||||
"y": 60.94
|
||||
},
|
||||
{
|
||||
"x": 72.76,
|
||||
"y": 66.21
|
||||
},
|
||||
{
|
||||
"x": 71.23,
|
||||
"y": 68.29
|
||||
},
|
||||
{
|
||||
"x": 74.06,
|
||||
"y": 72.31
|
||||
},
|
||||
{
|
||||
"x": 86.63,
|
||||
"y": 80.64
|
||||
},
|
||||
{
|
||||
"x": 86.84,
|
||||
"y": 80.82
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 91.14,
|
||||
"y": 14.46
|
||||
},
|
||||
{
|
||||
"x": 87.11,
|
||||
"y": 15.59
|
||||
},
|
||||
{
|
||||
"x": 89.41,
|
||||
"y": 13.6
|
||||
},
|
||||
{
|
||||
"x": 86.16,
|
||||
"y": 11.7
|
||||
},
|
||||
{
|
||||
"x": 91.14,
|
||||
"y": 14.46
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 13.97,
|
||||
"y": 17.41
|
||||
},
|
||||
{
|
||||
"x": 16.3,
|
||||
"y": 17.22
|
||||
},
|
||||
{
|
||||
"x": 14.41,
|
||||
"y": 17.5
|
||||
},
|
||||
{
|
||||
"x": 13.97,
|
||||
"y": 17.41
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 19.72,
|
||||
"y": 16.72
|
||||
},
|
||||
{
|
||||
"x": 21.38,
|
||||
"y": 16.45
|
||||
},
|
||||
{
|
||||
"x": 19.81,
|
||||
"y": 16.77
|
||||
},
|
||||
{
|
||||
"x": 19.72,
|
||||
"y": 16.72
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 58.92,
|
||||
"y": 7.53
|
||||
},
|
||||
{
|
||||
"x": 56.23,
|
||||
"y": 7.84
|
||||
},
|
||||
{
|
||||
"x": 58.75,
|
||||
"y": 7.31
|
||||
},
|
||||
{
|
||||
"x": 58.92,
|
||||
"y": 7.53
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 79.51,
|
||||
"y": 5.99
|
||||
},
|
||||
{
|
||||
"x": 78.62,
|
||||
"y": 7.66
|
||||
},
|
||||
{
|
||||
"x": 79.51,
|
||||
"y": 6.26
|
||||
},
|
||||
{
|
||||
"x": 79.51,
|
||||
"y": 5.99
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 85.56,
|
||||
"y": 8.64
|
||||
},
|
||||
{
|
||||
"x": 82.39,
|
||||
"y": 10.74
|
||||
},
|
||||
{
|
||||
"x": 79.21,
|
||||
"y": 9.33
|
||||
},
|
||||
{
|
||||
"x": 80.86,
|
||||
"y": 8.72
|
||||
},
|
||||
{
|
||||
"x": 79.51,
|
||||
"y": 6.7
|
||||
},
|
||||
{
|
||||
"x": 83.48,
|
||||
"y": 7.4
|
||||
},
|
||||
{
|
||||
"x": 80.71,
|
||||
"y": 6.42
|
||||
},
|
||||
{
|
||||
"x": 82.21,
|
||||
"y": 4.84
|
||||
},
|
||||
{
|
||||
"x": 85.34,
|
||||
"y": 8.53
|
||||
},
|
||||
{
|
||||
"x": 85.56,
|
||||
"y": 8.64
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 27.35,
|
||||
"y": 1.5
|
||||
},
|
||||
{
|
||||
"x": 30.56,
|
||||
"y": 2.2
|
||||
},
|
||||
{
|
||||
"x": 26.52,
|
||||
"y": 4.14
|
||||
},
|
||||
{
|
||||
"x": 28.47,
|
||||
"y": 0.19
|
||||
},
|
||||
{
|
||||
"x": 27.25,
|
||||
"y": 1.26
|
||||
},
|
||||
{
|
||||
"x": 27.35,
|
||||
"y": 1.5
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
}
|
||||
321
frontend/data/outlines/india.json
Normal file
321
frontend/data/outlines/india.json
Normal file
@ -0,0 +1,321 @@
|
||||
{
|
||||
"source": "ne_10m_admin_0_countries.shp",
|
||||
"country": {
|
||||
"name": "India",
|
||||
"isoA2": "IN",
|
||||
"isoA3": "IND",
|
||||
"continent": "Asia",
|
||||
"subregion": "Southern Asia"
|
||||
},
|
||||
"outline": {
|
||||
"type": "MultiPolygon",
|
||||
"bounds": {
|
||||
"minLon": 68.14340254000007,
|
||||
"maxLon": 97.36225305200003,
|
||||
"minLat": 6.74555084800005,
|
||||
"maxLat": 35.49540557900012
|
||||
},
|
||||
"rings": [
|
||||
[
|
||||
{
|
||||
"x": 33.05,
|
||||
"y": 0
|
||||
},
|
||||
{
|
||||
"x": 39.26,
|
||||
"y": 9.5
|
||||
},
|
||||
{
|
||||
"x": 35.05,
|
||||
"y": 10.25
|
||||
},
|
||||
{
|
||||
"x": 36.28,
|
||||
"y": 14.56
|
||||
},
|
||||
{
|
||||
"x": 44.01,
|
||||
"y": 18.37
|
||||
},
|
||||
{
|
||||
"x": 40.7,
|
||||
"y": 23.16
|
||||
},
|
||||
{
|
||||
"x": 50,
|
||||
"y": 27.83
|
||||
},
|
||||
{
|
||||
"x": 67.98,
|
||||
"y": 31.74
|
||||
},
|
||||
{
|
||||
"x": 70.05,
|
||||
"y": 25.7
|
||||
},
|
||||
{
|
||||
"x": 71.71,
|
||||
"y": 30.17
|
||||
},
|
||||
{
|
||||
"x": 81.23,
|
||||
"y": 30.23
|
||||
},
|
||||
{
|
||||
"x": 80.16,
|
||||
"y": 26.59
|
||||
},
|
||||
{
|
||||
"x": 83.62,
|
||||
"y": 26.6
|
||||
},
|
||||
{
|
||||
"x": 90.65,
|
||||
"y": 21.48
|
||||
},
|
||||
{
|
||||
"x": 96.54,
|
||||
"y": 21.64
|
||||
},
|
||||
{
|
||||
"x": 96.37,
|
||||
"y": 24.61
|
||||
},
|
||||
{
|
||||
"x": 100,
|
||||
"y": 26.09
|
||||
},
|
||||
{
|
||||
"x": 99.17,
|
||||
"y": 29.25
|
||||
},
|
||||
{
|
||||
"x": 92.34,
|
||||
"y": 30.9
|
||||
},
|
||||
{
|
||||
"x": 88.94,
|
||||
"y": 40.48
|
||||
},
|
||||
{
|
||||
"x": 86.13,
|
||||
"y": 39.76
|
||||
},
|
||||
{
|
||||
"x": 84.65,
|
||||
"y": 47.09
|
||||
},
|
||||
{
|
||||
"x": 82.54,
|
||||
"y": 41.01
|
||||
},
|
||||
{
|
||||
"x": 80.23,
|
||||
"y": 43.66
|
||||
},
|
||||
{
|
||||
"x": 78.69,
|
||||
"y": 41.27
|
||||
},
|
||||
{
|
||||
"x": 83.22,
|
||||
"y": 36.67
|
||||
},
|
||||
{
|
||||
"x": 74.18,
|
||||
"y": 35.51
|
||||
},
|
||||
{
|
||||
"x": 73.62,
|
||||
"y": 32.25
|
||||
},
|
||||
{
|
||||
"x": 69.23,
|
||||
"y": 30.9
|
||||
},
|
||||
{
|
||||
"x": 68.26,
|
||||
"y": 33.62
|
||||
},
|
||||
{
|
||||
"x": 71.33,
|
||||
"y": 35.51
|
||||
},
|
||||
{
|
||||
"x": 68.03,
|
||||
"y": 37.74
|
||||
},
|
||||
{
|
||||
"x": 70.48,
|
||||
"y": 38.99
|
||||
},
|
||||
{
|
||||
"x": 71.66,
|
||||
"y": 48.27
|
||||
},
|
||||
{
|
||||
"x": 70.22,
|
||||
"y": 46.23
|
||||
},
|
||||
{
|
||||
"x": 68.81,
|
||||
"y": 48.48
|
||||
},
|
||||
{
|
||||
"x": 67.64,
|
||||
"y": 45.46
|
||||
},
|
||||
{
|
||||
"x": 62.57,
|
||||
"y": 53.9
|
||||
},
|
||||
{
|
||||
"x": 58.61,
|
||||
"y": 54.66
|
||||
},
|
||||
{
|
||||
"x": 48.48,
|
||||
"y": 65.79
|
||||
},
|
||||
{
|
||||
"x": 41.54,
|
||||
"y": 68.85
|
||||
},
|
||||
{
|
||||
"x": 40.09,
|
||||
"y": 87.66
|
||||
},
|
||||
{
|
||||
"x": 36.86,
|
||||
"y": 90.51
|
||||
},
|
||||
{
|
||||
"x": 38.71,
|
||||
"y": 91.61
|
||||
},
|
||||
{
|
||||
"x": 35.14,
|
||||
"y": 91.81
|
||||
},
|
||||
{
|
||||
"x": 32.06,
|
||||
"y": 95.37
|
||||
},
|
||||
{
|
||||
"x": 28.75,
|
||||
"y": 92.46
|
||||
},
|
||||
{
|
||||
"x": 18.16,
|
||||
"y": 67.61
|
||||
},
|
||||
{
|
||||
"x": 15.42,
|
||||
"y": 54.45
|
||||
},
|
||||
{
|
||||
"x": 16.34,
|
||||
"y": 46
|
||||
},
|
||||
{
|
||||
"x": 13.71,
|
||||
"y": 45.97
|
||||
},
|
||||
{
|
||||
"x": 13.56,
|
||||
"y": 49.71
|
||||
},
|
||||
{
|
||||
"x": 8.89,
|
||||
"y": 51.4
|
||||
},
|
||||
{
|
||||
"x": 2.74,
|
||||
"y": 45.91
|
||||
},
|
||||
{
|
||||
"x": 8.08,
|
||||
"y": 43.1
|
||||
},
|
||||
{
|
||||
"x": 4.94,
|
||||
"y": 44.29
|
||||
},
|
||||
{
|
||||
"x": 0.98,
|
||||
"y": 41.94
|
||||
},
|
||||
{
|
||||
"x": 2.32,
|
||||
"y": 40.41
|
||||
},
|
||||
{
|
||||
"x": 0,
|
||||
"y": 41.33
|
||||
},
|
||||
{
|
||||
"x": 2.07,
|
||||
"y": 38.83
|
||||
},
|
||||
{
|
||||
"x": 10.03,
|
||||
"y": 38.59
|
||||
},
|
||||
{
|
||||
"x": 4.76,
|
||||
"y": 29.11
|
||||
},
|
||||
{
|
||||
"x": 7.52,
|
||||
"y": 26.03
|
||||
},
|
||||
{
|
||||
"x": 12.77,
|
||||
"y": 26.21
|
||||
},
|
||||
{
|
||||
"x": 24.7,
|
||||
"y": 11.25
|
||||
},
|
||||
{
|
||||
"x": 20.05,
|
||||
"y": 8.06
|
||||
},
|
||||
{
|
||||
"x": 19.77,
|
||||
"y": 2.97
|
||||
},
|
||||
{
|
||||
"x": 26.13,
|
||||
"y": 3.45
|
||||
},
|
||||
{
|
||||
"x": 31.76,
|
||||
"y": 0.67
|
||||
},
|
||||
{
|
||||
"x": 33.05,
|
||||
"y": 0
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 85.25,
|
||||
"y": 77.26
|
||||
},
|
||||
{
|
||||
"x": 84.1,
|
||||
"y": 83.48
|
||||
},
|
||||
{
|
||||
"x": 85.19,
|
||||
"y": 77.18
|
||||
},
|
||||
{
|
||||
"x": 85.25,
|
||||
"y": 77.26
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
}
|
||||
365
frontend/data/outlines/italy.json
Normal file
365
frontend/data/outlines/italy.json
Normal file
@ -0,0 +1,365 @@
|
||||
{
|
||||
"source": "ne_10m_admin_0_countries.shp",
|
||||
"country": {
|
||||
"name": "Italy",
|
||||
"isoA2": "IT",
|
||||
"isoA3": "ITA",
|
||||
"continent": "Europe",
|
||||
"subregion": "Southern Europe"
|
||||
},
|
||||
"outline": {
|
||||
"type": "MultiPolygon",
|
||||
"bounds": {
|
||||
"minLon": 6.6027283120000675,
|
||||
"maxLon": 18.517425977000073,
|
||||
"minLat": 35.48924388200004,
|
||||
"maxLat": 47.08521494500006
|
||||
},
|
||||
"rings": [
|
||||
[
|
||||
{
|
||||
"x": 3.52,
|
||||
"y": 10
|
||||
},
|
||||
{
|
||||
"x": 10.42,
|
||||
"y": 10.06
|
||||
},
|
||||
{
|
||||
"x": 15.08,
|
||||
"y": 5.46
|
||||
},
|
||||
{
|
||||
"x": 20.14,
|
||||
"y": 10.9
|
||||
},
|
||||
{
|
||||
"x": 22.49,
|
||||
"y": 5.07
|
||||
},
|
||||
{
|
||||
"x": 29.15,
|
||||
"y": 7.46
|
||||
},
|
||||
{
|
||||
"x": 28.79,
|
||||
"y": 4.76
|
||||
},
|
||||
{
|
||||
"x": 32.24,
|
||||
"y": 4.72
|
||||
},
|
||||
{
|
||||
"x": 32.32,
|
||||
"y": 1.9
|
||||
},
|
||||
{
|
||||
"x": 46.82,
|
||||
"y": 0
|
||||
},
|
||||
{
|
||||
"x": 48.7,
|
||||
"y": 3.41
|
||||
},
|
||||
{
|
||||
"x": 59.58,
|
||||
"y": 4.88
|
||||
},
|
||||
{
|
||||
"x": 56.76,
|
||||
"y": 6.86
|
||||
},
|
||||
{
|
||||
"x": 60.81,
|
||||
"y": 12.94
|
||||
},
|
||||
{
|
||||
"x": 54.69,
|
||||
"y": 11.33
|
||||
},
|
||||
{
|
||||
"x": 46.6,
|
||||
"y": 15.28
|
||||
},
|
||||
{
|
||||
"x": 49.78,
|
||||
"y": 18.24
|
||||
},
|
||||
{
|
||||
"x": 47.53,
|
||||
"y": 19.48
|
||||
},
|
||||
{
|
||||
"x": 48.39,
|
||||
"y": 24.44
|
||||
},
|
||||
{
|
||||
"x": 58.86,
|
||||
"y": 30.4
|
||||
},
|
||||
{
|
||||
"x": 62.72,
|
||||
"y": 38.69
|
||||
},
|
||||
{
|
||||
"x": 68.3,
|
||||
"y": 43.12
|
||||
},
|
||||
{
|
||||
"x": 80.05,
|
||||
"y": 44.54
|
||||
},
|
||||
{
|
||||
"x": 78.54,
|
||||
"y": 48.51
|
||||
},
|
||||
{
|
||||
"x": 95.72,
|
||||
"y": 55.49
|
||||
},
|
||||
{
|
||||
"x": 99.99,
|
||||
"y": 59.9
|
||||
},
|
||||
{
|
||||
"x": 98.92,
|
||||
"y": 62.68
|
||||
},
|
||||
{
|
||||
"x": 94.51,
|
||||
"y": 58.64
|
||||
},
|
||||
{
|
||||
"x": 87.06,
|
||||
"y": 56.85
|
||||
},
|
||||
{
|
||||
"x": 82.98,
|
||||
"y": 63.04
|
||||
},
|
||||
{
|
||||
"x": 88.6,
|
||||
"y": 66.22
|
||||
},
|
||||
{
|
||||
"x": 88.71,
|
||||
"y": 70.06
|
||||
},
|
||||
{
|
||||
"x": 83.79,
|
||||
"y": 71.47
|
||||
},
|
||||
{
|
||||
"x": 79.52,
|
||||
"y": 78.87
|
||||
},
|
||||
{
|
||||
"x": 76.22,
|
||||
"y": 78.75
|
||||
},
|
||||
{
|
||||
"x": 77.5,
|
||||
"y": 72.75
|
||||
},
|
||||
{
|
||||
"x": 80.72,
|
||||
"y": 70.59
|
||||
},
|
||||
{
|
||||
"x": 75.72,
|
||||
"y": 60.43
|
||||
},
|
||||
{
|
||||
"x": 72.67,
|
||||
"y": 60.85
|
||||
},
|
||||
{
|
||||
"x": 68.65,
|
||||
"y": 55.32
|
||||
},
|
||||
{
|
||||
"x": 64.96,
|
||||
"y": 56.18
|
||||
},
|
||||
{
|
||||
"x": 65.95,
|
||||
"y": 54.68
|
||||
},
|
||||
{
|
||||
"x": 62.49,
|
||||
"y": 54.29
|
||||
},
|
||||
{
|
||||
"x": 59.75,
|
||||
"y": 50.3
|
||||
},
|
||||
{
|
||||
"x": 54.07,
|
||||
"y": 50.51
|
||||
},
|
||||
{
|
||||
"x": 42.43,
|
||||
"y": 41.44
|
||||
},
|
||||
{
|
||||
"x": 37.8,
|
||||
"y": 40.48
|
||||
},
|
||||
{
|
||||
"x": 32.71,
|
||||
"y": 35.74
|
||||
},
|
||||
{
|
||||
"x": 29.27,
|
||||
"y": 26.39
|
||||
},
|
||||
{
|
||||
"x": 18.13,
|
||||
"y": 22.88
|
||||
},
|
||||
{
|
||||
"x": 7.55,
|
||||
"y": 28.4
|
||||
},
|
||||
{
|
||||
"x": 8.84,
|
||||
"y": 25.09
|
||||
},
|
||||
{
|
||||
"x": 3.11,
|
||||
"y": 24.45
|
||||
},
|
||||
{
|
||||
"x": 3.38,
|
||||
"y": 19.47
|
||||
},
|
||||
{
|
||||
"x": 0,
|
||||
"y": 17.09
|
||||
},
|
||||
{
|
||||
"x": 4.24,
|
||||
"y": 15.75
|
||||
},
|
||||
{
|
||||
"x": 1.5,
|
||||
"y": 11.28
|
||||
},
|
||||
{
|
||||
"x": 3.4,
|
||||
"y": 10.04
|
||||
},
|
||||
{
|
||||
"x": 3.52,
|
||||
"y": 10
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 74.92,
|
||||
"y": 75.74
|
||||
},
|
||||
{
|
||||
"x": 71.25,
|
||||
"y": 82.85
|
||||
},
|
||||
{
|
||||
"x": 73.27,
|
||||
"y": 86.87
|
||||
},
|
||||
{
|
||||
"x": 71.27,
|
||||
"y": 89.95
|
||||
},
|
||||
{
|
||||
"x": 48.88,
|
||||
"y": 80.1
|
||||
},
|
||||
{
|
||||
"x": 51.44,
|
||||
"y": 76.69
|
||||
},
|
||||
{
|
||||
"x": 60.33,
|
||||
"y": 78.58
|
||||
},
|
||||
{
|
||||
"x": 74.78,
|
||||
"y": 75.78
|
||||
},
|
||||
{
|
||||
"x": 74.92,
|
||||
"y": 75.74
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 26.77,
|
||||
"y": 56.3
|
||||
},
|
||||
{
|
||||
"x": 24.87,
|
||||
"y": 68.44
|
||||
},
|
||||
{
|
||||
"x": 20.24,
|
||||
"y": 67.45
|
||||
},
|
||||
{
|
||||
"x": 20.34,
|
||||
"y": 69.76
|
||||
},
|
||||
{
|
||||
"x": 17.11,
|
||||
"y": 70.89
|
||||
},
|
||||
{
|
||||
"x": 14.86,
|
||||
"y": 67.81
|
||||
},
|
||||
{
|
||||
"x": 16.39,
|
||||
"y": 62.37
|
||||
},
|
||||
{
|
||||
"x": 13.35,
|
||||
"y": 52.79
|
||||
},
|
||||
{
|
||||
"x": 16.1,
|
||||
"y": 53.97
|
||||
},
|
||||
{
|
||||
"x": 22.06,
|
||||
"y": 50.21
|
||||
},
|
||||
{
|
||||
"x": 26.72,
|
||||
"y": 56.21
|
||||
},
|
||||
{
|
||||
"x": 26.77,
|
||||
"y": 56.3
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 32.23,
|
||||
"y": 36.56
|
||||
},
|
||||
{
|
||||
"x": 29.41,
|
||||
"y": 37.32
|
||||
},
|
||||
{
|
||||
"x": 32.19,
|
||||
"y": 36.48
|
||||
},
|
||||
{
|
||||
"x": 32.23,
|
||||
"y": 36.56
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
}
|
||||
413
frontend/data/outlines/japan.json
Normal file
413
frontend/data/outlines/japan.json
Normal file
@ -0,0 +1,413 @@
|
||||
{
|
||||
"source": "ne_10m_admin_0_countries.shp",
|
||||
"country": {
|
||||
"name": "Japan",
|
||||
"isoA2": "JP",
|
||||
"isoA3": "JPN",
|
||||
"continent": "Asia",
|
||||
"subregion": "Eastern Asia"
|
||||
},
|
||||
"outline": {
|
||||
"type": "MultiPolygon",
|
||||
"bounds": {
|
||||
"minLon": 122.93816165500004,
|
||||
"maxLon": 153.98560631600003,
|
||||
"minLat": 24.212103583000044,
|
||||
"maxLat": 45.520412502000056
|
||||
},
|
||||
"rings": [
|
||||
[
|
||||
{
|
||||
"x": 28.09,
|
||||
"y": 61.21
|
||||
},
|
||||
{
|
||||
"x": 24.86,
|
||||
"y": 68.13
|
||||
},
|
||||
{
|
||||
"x": 25.25,
|
||||
"y": 64.81
|
||||
},
|
||||
{
|
||||
"x": 24.63,
|
||||
"y": 67.41
|
||||
},
|
||||
{
|
||||
"x": 23.13,
|
||||
"y": 66.23
|
||||
},
|
||||
{
|
||||
"x": 24.7,
|
||||
"y": 59.71
|
||||
},
|
||||
{
|
||||
"x": 23.52,
|
||||
"y": 57.87
|
||||
},
|
||||
{
|
||||
"x": 21.91,
|
||||
"y": 60.78
|
||||
},
|
||||
{
|
||||
"x": 21.39,
|
||||
"y": 57.02
|
||||
},
|
||||
{
|
||||
"x": 25.99,
|
||||
"y": 54.22
|
||||
},
|
||||
{
|
||||
"x": 29.45,
|
||||
"y": 59.02
|
||||
},
|
||||
{
|
||||
"x": 28.15,
|
||||
"y": 61.23
|
||||
},
|
||||
{
|
||||
"x": 28.09,
|
||||
"y": 61.21
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 37.85,
|
||||
"y": 54.87
|
||||
},
|
||||
{
|
||||
"x": 36.2,
|
||||
"y": 57.65
|
||||
},
|
||||
{
|
||||
"x": 33.35,
|
||||
"y": 57.05
|
||||
},
|
||||
{
|
||||
"x": 32.42,
|
||||
"y": 60.11
|
||||
},
|
||||
{
|
||||
"x": 29.22,
|
||||
"y": 57.12
|
||||
},
|
||||
{
|
||||
"x": 35.46,
|
||||
"y": 52.3
|
||||
},
|
||||
{
|
||||
"x": 37.85,
|
||||
"y": 54.84
|
||||
},
|
||||
{
|
||||
"x": 37.85,
|
||||
"y": 54.87
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 33.77,
|
||||
"y": 51.98
|
||||
},
|
||||
{
|
||||
"x": 30.3,
|
||||
"y": 52.43
|
||||
},
|
||||
{
|
||||
"x": 29.37,
|
||||
"y": 55.11
|
||||
},
|
||||
{
|
||||
"x": 25.58,
|
||||
"y": 54.36
|
||||
},
|
||||
{
|
||||
"x": 32.7,
|
||||
"y": 46.55
|
||||
},
|
||||
{
|
||||
"x": 42.29,
|
||||
"y": 46.27
|
||||
},
|
||||
{
|
||||
"x": 44.59,
|
||||
"y": 38.23
|
||||
},
|
||||
{
|
||||
"x": 46.42,
|
||||
"y": 37.61
|
||||
},
|
||||
{
|
||||
"x": 46.25,
|
||||
"y": 41.13
|
||||
},
|
||||
{
|
||||
"x": 50.29,
|
||||
"y": 38.21
|
||||
},
|
||||
{
|
||||
"x": 54.94,
|
||||
"y": 29.06
|
||||
},
|
||||
{
|
||||
"x": 54.5,
|
||||
"y": 23.05
|
||||
},
|
||||
{
|
||||
"x": 56.06,
|
||||
"y": 19.97
|
||||
},
|
||||
{
|
||||
"x": 58.58,
|
||||
"y": 21.81
|
||||
},
|
||||
{
|
||||
"x": 57.85,
|
||||
"y": 18.75
|
||||
},
|
||||
{
|
||||
"x": 59.66,
|
||||
"y": 19.2
|
||||
},
|
||||
{
|
||||
"x": 61.58,
|
||||
"y": 28.41
|
||||
},
|
||||
{
|
||||
"x": 58.07,
|
||||
"y": 34.49
|
||||
},
|
||||
{
|
||||
"x": 56.17,
|
||||
"y": 48.54
|
||||
},
|
||||
{
|
||||
"x": 54.17,
|
||||
"y": 49.58
|
||||
},
|
||||
{
|
||||
"x": 54.2,
|
||||
"y": 46.31
|
||||
},
|
||||
{
|
||||
"x": 51.2,
|
||||
"y": 51.27
|
||||
},
|
||||
{
|
||||
"x": 51.1,
|
||||
"y": 48.8
|
||||
},
|
||||
{
|
||||
"x": 49.26,
|
||||
"y": 51.27
|
||||
},
|
||||
{
|
||||
"x": 45.34,
|
||||
"y": 51.35
|
||||
},
|
||||
{
|
||||
"x": 44.74,
|
||||
"y": 49
|
||||
},
|
||||
{
|
||||
"x": 44.96,
|
||||
"y": 52.81
|
||||
},
|
||||
{
|
||||
"x": 41.3,
|
||||
"y": 56.72
|
||||
},
|
||||
{
|
||||
"x": 39.04,
|
||||
"y": 54.63
|
||||
},
|
||||
{
|
||||
"x": 40.18,
|
||||
"y": 50.82
|
||||
},
|
||||
{
|
||||
"x": 33.74,
|
||||
"y": 51.95
|
||||
},
|
||||
{
|
||||
"x": 33.77,
|
||||
"y": 51.98
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 73.53,
|
||||
"y": 10.01
|
||||
},
|
||||
{
|
||||
"x": 67.47,
|
||||
"y": 12.56
|
||||
},
|
||||
{
|
||||
"x": 65.39,
|
||||
"y": 16.86
|
||||
},
|
||||
{
|
||||
"x": 56.57,
|
||||
"y": 13.8
|
||||
},
|
||||
{
|
||||
"x": 58.82,
|
||||
"y": 17.46
|
||||
},
|
||||
{
|
||||
"x": 55.08,
|
||||
"y": 19.14
|
||||
},
|
||||
{
|
||||
"x": 54.45,
|
||||
"y": 13.58
|
||||
},
|
||||
{
|
||||
"x": 56.11,
|
||||
"y": 10.3
|
||||
},
|
||||
{
|
||||
"x": 59.54,
|
||||
"y": 10.34
|
||||
},
|
||||
{
|
||||
"x": 60.32,
|
||||
"y": 0.33
|
||||
},
|
||||
{
|
||||
"x": 66.96,
|
||||
"y": 6.6
|
||||
},
|
||||
{
|
||||
"x": 70.22,
|
||||
"y": 7.54
|
||||
},
|
||||
{
|
||||
"x": 72.16,
|
||||
"y": 5.51
|
||||
},
|
||||
{
|
||||
"x": 71.89,
|
||||
"y": 10.29
|
||||
},
|
||||
{
|
||||
"x": 73.52,
|
||||
"y": 10.01
|
||||
},
|
||||
{
|
||||
"x": 73.53,
|
||||
"y": 10.01
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 17.39,
|
||||
"y": 87.87
|
||||
},
|
||||
{
|
||||
"x": 15.18,
|
||||
"y": 91.21
|
||||
},
|
||||
{
|
||||
"x": 17.37,
|
||||
"y": 87.79
|
||||
},
|
||||
{
|
||||
"x": 17.39,
|
||||
"y": 87.87
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 21.8,
|
||||
"y": 80.05
|
||||
},
|
||||
{
|
||||
"x": 19.99,
|
||||
"y": 81.05
|
||||
},
|
||||
{
|
||||
"x": 21.77,
|
||||
"y": 79.9
|
||||
},
|
||||
{
|
||||
"x": 21.8,
|
||||
"y": 80.05
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 26.13,
|
||||
"y": 68.89
|
||||
},
|
||||
{
|
||||
"x": 25.55,
|
||||
"y": 71.22
|
||||
},
|
||||
{
|
||||
"x": 26.11,
|
||||
"y": 68.91
|
||||
},
|
||||
{
|
||||
"x": 26.13,
|
||||
"y": 68.89
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 23.26,
|
||||
"y": 60.89
|
||||
},
|
||||
{
|
||||
"x": 22.73,
|
||||
"y": 62.56
|
||||
},
|
||||
{
|
||||
"x": 23.2,
|
||||
"y": 60.88
|
||||
},
|
||||
{
|
||||
"x": 23.26,
|
||||
"y": 60.89
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 38.86,
|
||||
"y": 51.21
|
||||
},
|
||||
{
|
||||
"x": 37.98,
|
||||
"y": 53.17
|
||||
},
|
||||
{
|
||||
"x": 38.79,
|
||||
"y": 51.24
|
||||
},
|
||||
{
|
||||
"x": 38.86,
|
||||
"y": 51.21
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 20.98,
|
||||
"y": 51.16
|
||||
},
|
||||
{
|
||||
"x": 20.63,
|
||||
"y": 52.66
|
||||
},
|
||||
{
|
||||
"x": 21.01,
|
||||
"y": 51.15
|
||||
},
|
||||
{
|
||||
"x": 20.98,
|
||||
"y": 51.16
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
}
|
||||
423
frontend/data/outlines/norway.json
Normal file
423
frontend/data/outlines/norway.json
Normal file
@ -0,0 +1,423 @@
|
||||
{
|
||||
"source": "ne_10m_admin_0_countries.shp",
|
||||
"country": {
|
||||
"name": "Norway",
|
||||
"isoA2": "-99",
|
||||
"isoA3": "-99",
|
||||
"continent": "Europe",
|
||||
"subregion": "Northern Europe"
|
||||
},
|
||||
"outline": {
|
||||
"type": "MultiPolygon",
|
||||
"bounds": {
|
||||
"minLon": -9.11742102799991,
|
||||
"maxLon": 33.64039147200009,
|
||||
"minLat": -54.46249765399995,
|
||||
"maxLat": 80.77008698100008
|
||||
},
|
||||
"rings": [
|
||||
[
|
||||
{
|
||||
"x": 69.56,
|
||||
"y": 8.68
|
||||
},
|
||||
{
|
||||
"x": 49.79,
|
||||
"y": 12.7
|
||||
},
|
||||
{
|
||||
"x": 51.47,
|
||||
"y": 14.36
|
||||
},
|
||||
{
|
||||
"x": 48.48,
|
||||
"y": 16.18
|
||||
},
|
||||
{
|
||||
"x": 36.8,
|
||||
"y": 16.79
|
||||
},
|
||||
{
|
||||
"x": 33.44,
|
||||
"y": 15.72
|
||||
},
|
||||
{
|
||||
"x": 37.94,
|
||||
"y": 14.98
|
||||
},
|
||||
{
|
||||
"x": 32.85,
|
||||
"y": 14.77
|
||||
},
|
||||
{
|
||||
"x": 63.79,
|
||||
"y": 8.36
|
||||
},
|
||||
{
|
||||
"x": 94,
|
||||
"y": 7.75
|
||||
},
|
||||
{
|
||||
"x": 69.77,
|
||||
"y": 8.63
|
||||
},
|
||||
{
|
||||
"x": 69.56,
|
||||
"y": 8.68
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 42.7,
|
||||
"y": 12.72
|
||||
},
|
||||
{
|
||||
"x": 40.68,
|
||||
"y": 12.8
|
||||
},
|
||||
{
|
||||
"x": 42.67,
|
||||
"y": 12.72
|
||||
},
|
||||
{
|
||||
"x": 42.7,
|
||||
"y": 12.72
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 59.98,
|
||||
"y": 8.91
|
||||
},
|
||||
{
|
||||
"x": 56.37,
|
||||
"y": 9.24
|
||||
},
|
||||
{
|
||||
"x": 59.99,
|
||||
"y": 8.9
|
||||
},
|
||||
{
|
||||
"x": 59.98,
|
||||
"y": 8.91
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 54.99,
|
||||
"y": 8.95
|
||||
},
|
||||
{
|
||||
"x": 57.33,
|
||||
"y": 8.9
|
||||
},
|
||||
{
|
||||
"x": 55.02,
|
||||
"y": 8.95
|
||||
},
|
||||
{
|
||||
"x": 54.99,
|
||||
"y": 8.95
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 63.59,
|
||||
"y": 8.38
|
||||
},
|
||||
{
|
||||
"x": 60.55,
|
||||
"y": 8.64
|
||||
},
|
||||
{
|
||||
"x": 63.53,
|
||||
"y": 8.38
|
||||
},
|
||||
{
|
||||
"x": 63.59,
|
||||
"y": 8.38
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 65.76,
|
||||
"y": 8.09
|
||||
},
|
||||
{
|
||||
"x": 63.41,
|
||||
"y": 8.27
|
||||
},
|
||||
{
|
||||
"x": 65.73,
|
||||
"y": 8.09
|
||||
},
|
||||
{
|
||||
"x": 65.76,
|
||||
"y": 8.09
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 67.21,
|
||||
"y": 7.95
|
||||
},
|
||||
{
|
||||
"x": 65.13,
|
||||
"y": 8
|
||||
},
|
||||
{
|
||||
"x": 67.18,
|
||||
"y": 7.96
|
||||
},
|
||||
{
|
||||
"x": 67.21,
|
||||
"y": 7.95
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 76.65,
|
||||
"y": 7.59
|
||||
},
|
||||
{
|
||||
"x": 74.77,
|
||||
"y": 7.66
|
||||
},
|
||||
{
|
||||
"x": 76.6,
|
||||
"y": 7.59
|
||||
},
|
||||
{
|
||||
"x": 76.65,
|
||||
"y": 7.59
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 73.76,
|
||||
"y": 7.59
|
||||
},
|
||||
{
|
||||
"x": 76.25,
|
||||
"y": 7.37
|
||||
},
|
||||
{
|
||||
"x": 73.78,
|
||||
"y": 7.59
|
||||
},
|
||||
{
|
||||
"x": 73.76,
|
||||
"y": 7.59
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 82.45,
|
||||
"y": 7.2
|
||||
},
|
||||
{
|
||||
"x": 80.48,
|
||||
"y": 7.21
|
||||
},
|
||||
{
|
||||
"x": 82.4,
|
||||
"y": 7.2
|
||||
},
|
||||
{
|
||||
"x": 82.45,
|
||||
"y": 7.2
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 2.7,
|
||||
"y": 7.1
|
||||
},
|
||||
{
|
||||
"x": 0,
|
||||
"y": 7.32
|
||||
},
|
||||
{
|
||||
"x": 2.65,
|
||||
"y": 7.09
|
||||
},
|
||||
{
|
||||
"x": 2.7,
|
||||
"y": 7.1
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 78.45,
|
||||
"y": 2.18
|
||||
},
|
||||
{
|
||||
"x": 70.04,
|
||||
"y": 2.39
|
||||
},
|
||||
{
|
||||
"x": 78.4,
|
||||
"y": 2.15
|
||||
},
|
||||
{
|
||||
"x": 78.45,
|
||||
"y": 2.18
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 70.49,
|
||||
"y": 1.89
|
||||
},
|
||||
{
|
||||
"x": 68.46,
|
||||
"y": 1.7
|
||||
},
|
||||
{
|
||||
"x": 73.41,
|
||||
"y": 1.85
|
||||
},
|
||||
{
|
||||
"x": 70.47,
|
||||
"y": 1.89
|
||||
},
|
||||
{
|
||||
"x": 70.49,
|
||||
"y": 1.89
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 49.72,
|
||||
"y": 1.87
|
||||
},
|
||||
{
|
||||
"x": 45.84,
|
||||
"y": 1.39
|
||||
},
|
||||
{
|
||||
"x": 49.7,
|
||||
"y": 1.86
|
||||
},
|
||||
{
|
||||
"x": 49.72,
|
||||
"y": 1.87
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 90.17,
|
||||
"y": 1.38
|
||||
},
|
||||
{
|
||||
"x": 86.44,
|
||||
"y": 1.42
|
||||
},
|
||||
{
|
||||
"x": 89.3,
|
||||
"y": 1.38
|
||||
},
|
||||
{
|
||||
"x": 90.17,
|
||||
"y": 1.38
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 68.33,
|
||||
"y": 1.22
|
||||
},
|
||||
{
|
||||
"x": 70.04,
|
||||
"y": 1.27
|
||||
},
|
||||
{
|
||||
"x": 68.35,
|
||||
"y": 1.22
|
||||
},
|
||||
{
|
||||
"x": 68.33,
|
||||
"y": 1.22
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 68.59,
|
||||
"y": 1.58
|
||||
},
|
||||
{
|
||||
"x": 59.49,
|
||||
"y": 3.1
|
||||
},
|
||||
{
|
||||
"x": 53.86,
|
||||
"y": 2.39
|
||||
},
|
||||
{
|
||||
"x": 61.37,
|
||||
"y": 2.21
|
||||
},
|
||||
{
|
||||
"x": 53.11,
|
||||
"y": 2.01
|
||||
},
|
||||
{
|
||||
"x": 61.78,
|
||||
"y": 1.73
|
||||
},
|
||||
{
|
||||
"x": 46.29,
|
||||
"y": 0.91
|
||||
},
|
||||
{
|
||||
"x": 71.73,
|
||||
"y": 1.48
|
||||
},
|
||||
{
|
||||
"x": 68.61,
|
||||
"y": 1.57
|
||||
},
|
||||
{
|
||||
"x": 68.59,
|
||||
"y": 1.58
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 98.73,
|
||||
"y": 0.4
|
||||
},
|
||||
{
|
||||
"x": 94.94,
|
||||
"y": 0.49
|
||||
},
|
||||
{
|
||||
"x": 98.68,
|
||||
"y": 0.41
|
||||
},
|
||||
{
|
||||
"x": 98.73,
|
||||
"y": 0.4
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"x": 84.87,
|
||||
"y": 0.52
|
||||
},
|
||||
{
|
||||
"x": 62.91,
|
||||
"y": 0.47
|
||||
},
|
||||
{
|
||||
"x": 85.03,
|
||||
"y": 0.5
|
||||
},
|
||||
{
|
||||
"x": 84.87,
|
||||
"y": 0.52
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
}
|
||||
327
frontend/data/outlines/switzerland.json
Normal file
327
frontend/data/outlines/switzerland.json
Normal file
@ -0,0 +1,327 @@
|
||||
{
|
||||
"source": "ne_10m_admin_0_countries.shp",
|
||||
"country": {
|
||||
"name": "Switzerland",
|
||||
"isoA2": "CH",
|
||||
"isoA3": "CHE",
|
||||
"continent": "Europe",
|
||||
"subregion": "Western Europe"
|
||||
},
|
||||
"outline": {
|
||||
"type": "Polygon",
|
||||
"bounds": {
|
||||
"minLon": 5.954809204000128,
|
||||
"maxLon": 10.466626831000013,
|
||||
"minLat": 45.82071848599999,
|
||||
"maxLat": 47.801166077000076
|
||||
},
|
||||
"rings": [
|
||||
[
|
||||
{
|
||||
"x": 99.72,
|
||||
"y": 47.3
|
||||
},
|
||||
{
|
||||
"x": 97.84,
|
||||
"y": 57
|
||||
},
|
||||
{
|
||||
"x": 99.5,
|
||||
"y": 63.8
|
||||
},
|
||||
{
|
||||
"x": 96.2,
|
||||
"y": 63.12
|
||||
},
|
||||
{
|
||||
"x": 93.92,
|
||||
"y": 59.3
|
||||
},
|
||||
{
|
||||
"x": 90.38,
|
||||
"y": 64.04
|
||||
},
|
||||
{
|
||||
"x": 90.24,
|
||||
"y": 68.41
|
||||
},
|
||||
{
|
||||
"x": 92.78,
|
||||
"y": 70.6
|
||||
},
|
||||
{
|
||||
"x": 92.27,
|
||||
"y": 79.28
|
||||
},
|
||||
{
|
||||
"x": 90.6,
|
||||
"y": 79.81
|
||||
},
|
||||
{
|
||||
"x": 87.85,
|
||||
"y": 72.21
|
||||
},
|
||||
{
|
||||
"x": 83.45,
|
||||
"y": 73.23
|
||||
},
|
||||
{
|
||||
"x": 82.44,
|
||||
"y": 76.21
|
||||
},
|
||||
{
|
||||
"x": 79.38,
|
||||
"y": 75.87
|
||||
},
|
||||
{
|
||||
"x": 77.13,
|
||||
"y": 65.79
|
||||
},
|
||||
{
|
||||
"x": 73.33,
|
||||
"y": 66.45
|
||||
},
|
||||
{
|
||||
"x": 72.48,
|
||||
"y": 79.27
|
||||
},
|
||||
{
|
||||
"x": 67.44,
|
||||
"y": 89.54
|
||||
},
|
||||
{
|
||||
"x": 67.55,
|
||||
"y": 100
|
||||
},
|
||||
{
|
||||
"x": 65.28,
|
||||
"y": 99.71
|
||||
},
|
||||
{
|
||||
"x": 64.63,
|
||||
"y": 93.62
|
||||
},
|
||||
{
|
||||
"x": 62.35,
|
||||
"y": 91.8
|
||||
},
|
||||
{
|
||||
"x": 63.26,
|
||||
"y": 86.42
|
||||
},
|
||||
{
|
||||
"x": 58.67,
|
||||
"y": 84.75
|
||||
},
|
||||
{
|
||||
"x": 55.04,
|
||||
"y": 79.06
|
||||
},
|
||||
{
|
||||
"x": 54.18,
|
||||
"y": 68.12
|
||||
},
|
||||
{
|
||||
"x": 47.27,
|
||||
"y": 77.22
|
||||
},
|
||||
{
|
||||
"x": 47.78,
|
||||
"y": 84.54
|
||||
},
|
||||
{
|
||||
"x": 41.59,
|
||||
"y": 95.27
|
||||
},
|
||||
{
|
||||
"x": 35.16,
|
||||
"y": 91.75
|
||||
},
|
||||
{
|
||||
"x": 31.18,
|
||||
"y": 95.6
|
||||
},
|
||||
{
|
||||
"x": 24.65,
|
||||
"y": 96.49
|
||||
},
|
||||
{
|
||||
"x": 18.16,
|
||||
"y": 84.14
|
||||
},
|
||||
{
|
||||
"x": 18.45,
|
||||
"y": 70.03
|
||||
},
|
||||
{
|
||||
"x": 14.6,
|
||||
"y": 67.93
|
||||
},
|
||||
{
|
||||
"x": 7.69,
|
||||
"y": 71.03
|
||||
},
|
||||
{
|
||||
"x": 5.75,
|
||||
"y": 75.02
|
||||
},
|
||||
{
|
||||
"x": 7.23,
|
||||
"y": 78.83
|
||||
},
|
||||
{
|
||||
"x": 3.39,
|
||||
"y": 83.95
|
||||
},
|
||||
{
|
||||
"x": 0.09,
|
||||
"y": 84.36
|
||||
},
|
||||
{
|
||||
"x": 4.02,
|
||||
"y": 72.8
|
||||
},
|
||||
{
|
||||
"x": 2.2,
|
||||
"y": 69.77
|
||||
},
|
||||
{
|
||||
"x": 3.63,
|
||||
"y": 61.49
|
||||
},
|
||||
{
|
||||
"x": 10.51,
|
||||
"y": 52.53
|
||||
},
|
||||
{
|
||||
"x": 10.81,
|
||||
"y": 43.27
|
||||
},
|
||||
{
|
||||
"x": 15.75,
|
||||
"y": 39.38
|
||||
},
|
||||
{
|
||||
"x": 23.98,
|
||||
"y": 23.82
|
||||
},
|
||||
{
|
||||
"x": 23.25,
|
||||
"y": 21.86
|
||||
},
|
||||
{
|
||||
"x": 20.21,
|
||||
"y": 22.57
|
||||
},
|
||||
{
|
||||
"x": 22.57,
|
||||
"y": 15.76
|
||||
},
|
||||
{
|
||||
"x": 27.17,
|
||||
"y": 15.8
|
||||
},
|
||||
{
|
||||
"x": 28.44,
|
||||
"y": 19.41
|
||||
},
|
||||
{
|
||||
"x": 32.17,
|
||||
"y": 18.33
|
||||
},
|
||||
{
|
||||
"x": 37.28,
|
||||
"y": 10.41
|
||||
},
|
||||
{
|
||||
"x": 38.31,
|
||||
"y": 12.97
|
||||
},
|
||||
{
|
||||
"x": 41.33,
|
||||
"y": 10.39
|
||||
},
|
||||
{
|
||||
"x": 46.27,
|
||||
"y": 12.15
|
||||
},
|
||||
{
|
||||
"x": 50.49,
|
||||
"y": 9.05
|
||||
},
|
||||
{
|
||||
"x": 57.76,
|
||||
"y": 10.69
|
||||
},
|
||||
{
|
||||
"x": 58.79,
|
||||
"y": 7.32
|
||||
},
|
||||
{
|
||||
"x": 54,
|
||||
"y": 6.85
|
||||
},
|
||||
{
|
||||
"x": 57.7,
|
||||
"y": 0
|
||||
},
|
||||
{
|
||||
"x": 61.14,
|
||||
"y": 2.21
|
||||
},
|
||||
{
|
||||
"x": 61.22,
|
||||
"y": 5.38
|
||||
},
|
||||
{
|
||||
"x": 63.01,
|
||||
"y": 4.1
|
||||
},
|
||||
{
|
||||
"x": 65.41,
|
||||
"y": 7.54
|
||||
},
|
||||
{
|
||||
"x": 71.56,
|
||||
"y": 6.6
|
||||
},
|
||||
{
|
||||
"x": 79.63,
|
||||
"y": 13.46
|
||||
},
|
||||
{
|
||||
"x": 81.89,
|
||||
"y": 19.77
|
||||
},
|
||||
{
|
||||
"x": 78.07,
|
||||
"y": 37.23
|
||||
},
|
||||
{
|
||||
"x": 86.51,
|
||||
"y": 39.67
|
||||
},
|
||||
{
|
||||
"x": 86.89,
|
||||
"y": 44.12
|
||||
},
|
||||
{
|
||||
"x": 92.12,
|
||||
"y": 48.17
|
||||
},
|
||||
{
|
||||
"x": 97.93,
|
||||
"y": 40.64
|
||||
},
|
||||
{
|
||||
"x": 99.66,
|
||||
"y": 46.22
|
||||
},
|
||||
{
|
||||
"x": 99.72,
|
||||
"y": 47.3
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
}
|
||||
1
frontend/package-lock.json
generated
1
frontend/package-lock.json
generated
@ -8,7 +8,6 @@
|
||||
"name": "fs2026-frontend",
|
||||
"version": "1.0.0",
|
||||
"license": "ISC",
|
||||
"type": "module",
|
||||
"devDependencies": {
|
||||
"@biomejs/biome": "2.3.14"
|
||||
}
|
||||
|
||||
@ -7,7 +7,6 @@
|
||||
"type": "module",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"convert:geojson": "node scripts/tools/convert-geojson-outlines.js",
|
||||
"format": "biome format --write",
|
||||
"lint": "biome lint",
|
||||
"lint:fix": "biome lint --write"
|
||||
|
||||
379
tools/convert-geojson-outlines.js
Normal file
379
tools/convert-geojson-outlines.js
Normal file
@ -0,0 +1,379 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
import { mkdir, readdir, writeFile } from "node:fs/promises";
|
||||
import path from "node:path";
|
||||
import shapefile from "shapefile";
|
||||
|
||||
const DEFAULT_TOLERANCE = 1.5;
|
||||
const SHAPEFILE_BASENAME = "ne_10m_admin_0_countries";
|
||||
const GAME_COUNTRIES = [
|
||||
"Switzerland",
|
||||
"Norway",
|
||||
"Italy",
|
||||
"Japan",
|
||||
"Brazil",
|
||||
"Australia",
|
||||
"France",
|
||||
"India",
|
||||
"Canada",
|
||||
"Germany",
|
||||
];
|
||||
|
||||
function usage() {
|
||||
return `Usage:
|
||||
node convert-geojson-outlines.js <input-dir> <output-dir> [options]
|
||||
|
||||
Options:
|
||||
--tolerance <number> Douglas-Peucker tolerance in 0..100 units. Default: 1.5
|
||||
--max-points <number> Simplify each ring until it has at most this many points.
|
||||
--include-holes Include inner rings from Polygon/MultiPolygon geometries.
|
||||
--pretty Write indented JSON instead of compact JSON.
|
||||
`;
|
||||
}
|
||||
|
||||
function parseArgs(argv) {
|
||||
const positionals = [];
|
||||
const options = {
|
||||
tolerance: DEFAULT_TOLERANCE,
|
||||
maxPoints: null,
|
||||
includeHoles: false,
|
||||
pretty: false,
|
||||
};
|
||||
|
||||
for (let i = 0; i < argv.length; i++) {
|
||||
const arg = argv[i];
|
||||
|
||||
if (arg === "--tolerance") {
|
||||
options.tolerance = Number(argv[++i]);
|
||||
} else if (arg === "--max-points") {
|
||||
options.maxPoints = Number(argv[++i]);
|
||||
} else if (arg === "--include-holes") {
|
||||
options.includeHoles = true;
|
||||
} else if (arg === "--pretty") {
|
||||
options.pretty = true;
|
||||
} else if (arg === "--help" || arg === "-h") {
|
||||
console.log(usage());
|
||||
process.exit(0);
|
||||
} else {
|
||||
positionals.push(arg);
|
||||
}
|
||||
}
|
||||
|
||||
if (positionals.length !== 2) {
|
||||
throw new Error("Expected exactly <input-dir> and <output-dir>.");
|
||||
}
|
||||
if (!Number.isFinite(options.tolerance) || options.tolerance < 0) {
|
||||
throw new Error("--tolerance must be a number greater than or equal to 0.");
|
||||
}
|
||||
if (
|
||||
options.maxPoints !== null &&
|
||||
(!Number.isInteger(options.maxPoints) || options.maxPoints < 4)
|
||||
) {
|
||||
throw new Error("--max-points must be an integer greater than or equal to 4.");
|
||||
}
|
||||
|
||||
return {
|
||||
inputDir: positionals[0],
|
||||
outputDir: positionals[1],
|
||||
options,
|
||||
};
|
||||
}
|
||||
|
||||
function stripNulls(value) {
|
||||
return typeof value === "string" ? value.replaceAll("\0", "").trim() : value;
|
||||
}
|
||||
|
||||
function cleanProperties(properties) {
|
||||
return Object.fromEntries(
|
||||
Object.entries(properties || {}).map(([key, value]) => [key, stripNulls(value)]),
|
||||
);
|
||||
}
|
||||
|
||||
function getCountryName(properties) {
|
||||
return (
|
||||
properties.NAME_EN ||
|
||||
properties.NAME_LONG ||
|
||||
properties.NAME ||
|
||||
properties.ADMIN ||
|
||||
properties.SOVEREIGNT ||
|
||||
""
|
||||
);
|
||||
}
|
||||
|
||||
function slugify(value) {
|
||||
return value
|
||||
.toLowerCase()
|
||||
.replaceAll(/[^a-z0-9]+/g, "-")
|
||||
.replaceAll(/(^-|-$)/g, "");
|
||||
}
|
||||
|
||||
function extractRings(geometry, includeHoles) {
|
||||
if (geometry.type === "Polygon") {
|
||||
return includeHoles
|
||||
? geometry.coordinates
|
||||
: [geometry.coordinates?.[0]].filter(Boolean);
|
||||
}
|
||||
|
||||
if (geometry.type === "MultiPolygon") {
|
||||
return geometry.coordinates.flatMap((polygon) =>
|
||||
includeHoles ? polygon : [polygon?.[0]].filter(Boolean),
|
||||
);
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
function isValidCoordinate(coord) {
|
||||
return (
|
||||
Array.isArray(coord) &&
|
||||
coord.length >= 2 &&
|
||||
Number.isFinite(coord[0]) &&
|
||||
Number.isFinite(coord[1])
|
||||
);
|
||||
}
|
||||
|
||||
function cleanRing(ring) {
|
||||
if (!Array.isArray(ring)) return [];
|
||||
return ring.filter(isValidCoordinate).map(([lon, lat]) => [lon, lat]);
|
||||
}
|
||||
|
||||
function getBounds(rings) {
|
||||
let minLon = Infinity;
|
||||
let maxLon = -Infinity;
|
||||
let minLat = Infinity;
|
||||
let maxLat = -Infinity;
|
||||
|
||||
for (const ring of rings) {
|
||||
for (const [lon, lat] of ring) {
|
||||
minLon = Math.min(minLon, lon);
|
||||
maxLon = Math.max(maxLon, lon);
|
||||
minLat = Math.min(minLat, lat);
|
||||
maxLat = Math.max(maxLat, lat);
|
||||
}
|
||||
}
|
||||
|
||||
if (![minLon, maxLon, minLat, maxLat].every(Number.isFinite)) {
|
||||
throw new Error("Could not calculate bounds from geometry.");
|
||||
}
|
||||
|
||||
return { minLon, maxLon, minLat, maxLat };
|
||||
}
|
||||
|
||||
function roundCoord(value) {
|
||||
return Math.round(value * 100) / 100;
|
||||
}
|
||||
|
||||
function normalizePoint([lon, lat], bounds) {
|
||||
const lonSpan = bounds.maxLon - bounds.minLon;
|
||||
const latSpan = bounds.maxLat - bounds.minLat;
|
||||
|
||||
return {
|
||||
x: roundCoord(lonSpan === 0 ? 50 : ((lon - bounds.minLon) / lonSpan) * 100),
|
||||
y: roundCoord(
|
||||
latSpan === 0 ? 50 : (1 - (lat - bounds.minLat) / latSpan) * 100,
|
||||
),
|
||||
};
|
||||
}
|
||||
|
||||
function samePoint(a, b) {
|
||||
return a.x === b.x && a.y === b.y;
|
||||
}
|
||||
|
||||
function closeRing(points) {
|
||||
if (points.length < 2) return points;
|
||||
const first = points[0];
|
||||
const last = points[points.length - 1];
|
||||
return samePoint(first, last) ? points : [...points, { ...first }];
|
||||
}
|
||||
|
||||
function openRing(points) {
|
||||
if (points.length < 2) return points;
|
||||
const first = points[0];
|
||||
const last = points[points.length - 1];
|
||||
return samePoint(first, last) ? points.slice(0, -1) : points;
|
||||
}
|
||||
|
||||
function squaredDistanceToSegment(point, start, end) {
|
||||
const dx = end.x - start.x;
|
||||
const dy = end.y - start.y;
|
||||
|
||||
if (dx === 0 && dy === 0) {
|
||||
return (point.x - start.x) ** 2 + (point.y - start.y) ** 2;
|
||||
}
|
||||
|
||||
const t = Math.max(
|
||||
0,
|
||||
Math.min(
|
||||
1,
|
||||
((point.x - start.x) * dx + (point.y - start.y) * dy) / (dx * dx + dy * dy),
|
||||
),
|
||||
);
|
||||
const projection = {
|
||||
x: start.x + t * dx,
|
||||
y: start.y + t * dy,
|
||||
};
|
||||
|
||||
return (point.x - projection.x) ** 2 + (point.y - projection.y) ** 2;
|
||||
}
|
||||
|
||||
function douglasPeucker(points, tolerance) {
|
||||
if (points.length <= 2 || tolerance === 0) return points;
|
||||
|
||||
let maxDistance = 0;
|
||||
let splitIndex = 0;
|
||||
const lastIndex = points.length - 1;
|
||||
|
||||
for (let i = 1; i < lastIndex; i++) {
|
||||
const distance = squaredDistanceToSegment(points[i], points[0], points[lastIndex]);
|
||||
if (distance > maxDistance) {
|
||||
maxDistance = distance;
|
||||
splitIndex = i;
|
||||
}
|
||||
}
|
||||
|
||||
if (maxDistance <= tolerance * tolerance) {
|
||||
return [points[0], points[lastIndex]];
|
||||
}
|
||||
|
||||
const left = douglasPeucker(points.slice(0, splitIndex + 1), tolerance);
|
||||
const right = douglasPeucker(points.slice(splitIndex), tolerance);
|
||||
return [...left.slice(0, -1), ...right];
|
||||
}
|
||||
|
||||
function simplifyRing(points, initialTolerance, maxPoints) {
|
||||
let tolerance = initialTolerance;
|
||||
let simplified = closeRing(douglasPeucker(openRing(points), tolerance));
|
||||
let attempts = 0;
|
||||
|
||||
while (maxPoints && simplified.length > maxPoints && attempts < 30) {
|
||||
tolerance = tolerance === 0 ? 0.5 : tolerance * 1.25;
|
||||
simplified = closeRing(douglasPeucker(openRing(points), tolerance));
|
||||
attempts++;
|
||||
}
|
||||
|
||||
return simplified;
|
||||
}
|
||||
|
||||
function normalizeGeometry(geometry, options) {
|
||||
if (!geometry || !["Polygon", "MultiPolygon"].includes(geometry.type)) {
|
||||
throw new Error("No Polygon or MultiPolygon geometry found.");
|
||||
}
|
||||
|
||||
const rings = extractRings(geometry, options.includeHoles)
|
||||
.map(cleanRing)
|
||||
.filter((ring) => ring.length >= 4);
|
||||
|
||||
if (!rings.length) {
|
||||
throw new Error("No valid polygon rings found.");
|
||||
}
|
||||
|
||||
const bounds = getBounds(rings);
|
||||
const normalizedRings = rings
|
||||
.map((ring) => ring.map((point) => normalizePoint(point, bounds)))
|
||||
.map(closeRing)
|
||||
.map((ring) => simplifyRing(ring, options.tolerance, options.maxPoints))
|
||||
.filter((ring) => ring.length >= 4);
|
||||
|
||||
if (!normalizedRings.length) {
|
||||
throw new Error("No valid rings remained after simplification.");
|
||||
}
|
||||
|
||||
return {
|
||||
type: geometry.type,
|
||||
bounds,
|
||||
rings: normalizedRings,
|
||||
};
|
||||
}
|
||||
|
||||
async function findShapefile(inputDir) {
|
||||
const entries = await readdir(inputDir, { withFileTypes: true });
|
||||
const shpFiles = entries
|
||||
.filter((entry) => entry.isFile() && path.extname(entry.name).toLowerCase() === ".shp")
|
||||
.map((entry) => entry.name)
|
||||
.sort((a, b) => a.localeCompare(b));
|
||||
|
||||
const preferred = shpFiles.find(
|
||||
(fileName) => path.basename(fileName, ".shp") === SHAPEFILE_BASENAME,
|
||||
);
|
||||
const fileName = preferred || shpFiles[0];
|
||||
|
||||
if (!fileName) {
|
||||
throw new Error(`No .shp file found in ${inputDir}.`);
|
||||
}
|
||||
|
||||
return path.join(inputDir, fileName);
|
||||
}
|
||||
|
||||
async function readTargetFeatures(shpPath, targets) {
|
||||
const source = await shapefile.open(shpPath, undefined, { encoding: "utf-8" });
|
||||
const features = new Map();
|
||||
|
||||
while (true) {
|
||||
const result = await source.read();
|
||||
if (result.done) break;
|
||||
|
||||
const feature = result.value;
|
||||
const properties = cleanProperties(feature.properties);
|
||||
const countryName = getCountryName(properties);
|
||||
|
||||
if (targets.has(countryName)) {
|
||||
features.set(countryName, {
|
||||
geometry: feature.geometry,
|
||||
properties,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
return features;
|
||||
}
|
||||
|
||||
async function writeCountryOutline(outputDir, countryName, feature, sourceFile, options) {
|
||||
const output = {
|
||||
source: sourceFile,
|
||||
country: {
|
||||
name: countryName,
|
||||
isoA2: feature.properties.ISO_A2,
|
||||
isoA3: feature.properties.ISO_A3,
|
||||
continent: feature.properties.CONTINENT,
|
||||
subregion: feature.properties.SUBREGION,
|
||||
},
|
||||
outline: normalizeGeometry(feature.geometry, options),
|
||||
};
|
||||
const fileName = `${slugify(countryName)}.json`;
|
||||
const json = JSON.stringify(output, null, options.pretty ? 2 : 0);
|
||||
await writeFile(path.join(outputDir, fileName), `${json}\n`, "utf8");
|
||||
console.log(`Converted ${countryName} -> ${fileName}`);
|
||||
}
|
||||
|
||||
async function main() {
|
||||
const { inputDir, outputDir, options } = parseArgs(process.argv.slice(2));
|
||||
const shpPath = await findShapefile(inputDir);
|
||||
const sourceFile = path.basename(shpPath);
|
||||
const targets = new Set(GAME_COUNTRIES);
|
||||
const features = await readTargetFeatures(shpPath, targets);
|
||||
const missing = GAME_COUNTRIES.filter((countryName) => !features.has(countryName));
|
||||
|
||||
if (missing.length) {
|
||||
throw new Error(`Missing country feature(s): ${missing.join(", ")}`);
|
||||
}
|
||||
|
||||
await mkdir(outputDir, { recursive: true });
|
||||
|
||||
for (const countryName of GAME_COUNTRIES) {
|
||||
await writeCountryOutline(
|
||||
outputDir,
|
||||
countryName,
|
||||
features.get(countryName),
|
||||
sourceFile,
|
||||
options,
|
||||
);
|
||||
}
|
||||
|
||||
console.log(`Done. Converted ${GAME_COUNTRIES.length} country outline(s).`);
|
||||
}
|
||||
|
||||
main().catch((error) => {
|
||||
console.error(error instanceof Error ? error.message : error);
|
||||
console.error(usage());
|
||||
process.exit(1);
|
||||
});
|
||||
486
tools/countries/ne_10m_admin_0_countries.README.html
Normal file
486
tools/countries/ne_10m_admin_0_countries.README.html
Normal file
@ -0,0 +1,486 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||
|
||||
<head profile="http://gmpg.org/xfn/11">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
|
||||
<title>Natural Earth » Blog Archive » Admin 0 – Countries - Free vector and raster map data at 1:10m, 1:50m, and 1:110m scales </title>
|
||||
|
||||
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
|
||||
<link rel="alternate" type="application/rss+xml" title="Natural Earth RSS Feed" href="https://www.naturalearthdata.com/feed/" />
|
||||
<link rel="pingback" href="http://www.naturalearthdata.com/xmlrpc.php" />
|
||||
<script type="text/javascript" src="http://www.naturalearthdata.com/wp-content/themes/NEV/includes/js/suckerfish.js"></script>
|
||||
<!--[if lt IE 7]>
|
||||
<script src="http://ie7-js.googlecode.com/svn/version/2.0(beta3)/IE7.js" type="text/javascript"></script>
|
||||
<script defer="defer" type="text/javascript" src="http://www.naturalearthdata.com/wp-content/themes/NEV/includes/js/pngfix.js"></script>
|
||||
<![endif]-->
|
||||
<link rel="stylesheet" href="http://www.naturalearthdata.com/wp-content/themes/NEV/style.css" type="text/css" media="screen" />
|
||||
|
||||
<link rel='dns-prefetch' href='//s.w.org' />
|
||||
<script type="text/javascript">
|
||||
window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/13.0.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/13.0.0\/svg\/","svgExt":".svg","source":{"concatemoji":"http:\/\/www.naturalearthdata.com\/wp-includes\/js\/wp-emoji-release.min.js?ver=5.5.9"}};
|
||||
!function(e,a,t){var n,r,o,i=a.createElement("canvas"),p=i.getContext&&i.getContext("2d");function s(e,t){var a=String.fromCharCode;p.clearRect(0,0,i.width,i.height),p.fillText(a.apply(this,e),0,0);e=i.toDataURL();return p.clearRect(0,0,i.width,i.height),p.fillText(a.apply(this,t),0,0),e===i.toDataURL()}function c(e){var t=a.createElement("script");t.src=e,t.defer=t.type="text/javascript",a.getElementsByTagName("head")[0].appendChild(t)}for(o=Array("flag","emoji"),t.supports={everything:!0,everythingExceptFlag:!0},r=0;r<o.length;r++)t.supports[o[r]]=function(e){if(!p||!p.fillText)return!1;switch(p.textBaseline="top",p.font="600 32px Arial",e){case"flag":return s([127987,65039,8205,9895,65039],[127987,65039,8203,9895,65039])?!1:!s([55356,56826,55356,56819],[55356,56826,8203,55356,56819])&&!s([55356,57332,56128,56423,56128,56418,56128,56421,56128,56430,56128,56423,56128,56447],[55356,57332,8203,56128,56423,8203,56128,56418,8203,56128,56421,8203,56128,56430,8203,56128,56423,8203,56128,56447]);case"emoji":return!s([55357,56424,8205,55356,57212],[55357,56424,8203,55356,57212])}return!1}(o[r]),t.supports.everything=t.supports.everything&&t.supports[o[r]],"flag"!==o[r]&&(t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&t.supports[o[r]]);t.supports.everythingExceptFlag=t.supports.everythingExceptFlag&&!t.supports.flag,t.DOMReady=!1,t.readyCallback=function(){t.DOMReady=!0},t.supports.everything||(n=function(){t.readyCallback()},a.addEventListener?(a.addEventListener("DOMContentLoaded",n,!1),e.addEventListener("load",n,!1)):(e.attachEvent("onload",n),a.attachEvent("onreadystatechange",function(){"complete"===a.readyState&&t.readyCallback()})),(n=t.source||{}).concatemoji?c(n.concatemoji):n.wpemoji&&n.twemoji&&(c(n.twemoji),c(n.wpemoji)))}(window,document,window._wpemojiSettings);
|
||||
</script>
|
||||
<style type="text/css">
|
||||
img.wp-smiley,
|
||||
img.emoji {
|
||||
display: inline !important;
|
||||
border: none !important;
|
||||
box-shadow: none !important;
|
||||
height: 1em !important;
|
||||
width: 1em !important;
|
||||
margin: 0 .07em !important;
|
||||
vertical-align: -0.1em !important;
|
||||
background: none !important;
|
||||
padding: 0 !important;
|
||||
}
|
||||
</style>
|
||||
<link rel='stylesheet' id='wp-block-library-css' href='http://www.naturalearthdata.com/wp-includes/css/dist/block-library/style.min.css?ver=5.5.9' type='text/css' media='all' />
|
||||
<link rel='stylesheet' id='bbp-child-bbpress-css' href='http://www.naturalearthdata.com/wp-content/themes/NEV/css/bbpress.css?ver=2.6.6' type='text/css' media='screen' />
|
||||
<link rel="https://api.w.org/" href="https://www.naturalearthdata.com/wp-json/" /><link rel="alternate" type="application/json" href="https://www.naturalearthdata.com/wp-json/wp/v2/posts/74" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.naturalearthdata.com/xmlrpc.php?rsd" />
|
||||
<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://www.naturalearthdata.com/wp-includes/wlwmanifest.xml" />
|
||||
<link rel='prev' title='Admin 0 – Countries point-of-views' href='https://www.naturalearthdata.com/blog/admin-0-countries-point-of-views/' />
|
||||
<link rel='next' title='Ocean' href='https://www.naturalearthdata.com/downloads/10m-physical-vectors/10m-ocean/' />
|
||||
<meta name="generator" content="WordPress 5.5.9" />
|
||||
<link rel="canonical" href="https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-0-countries/" />
|
||||
<link rel='shortlink' href='https://www.naturalearthdata.com/?p=74' />
|
||||
<link rel="alternate" type="application/json+oembed" href="https://www.naturalearthdata.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.naturalearthdata.com%2Fdownloads%2F10m-cultural-vectors%2F10m-admin-0-countries%2F" />
|
||||
<link rel="alternate" type="text/xml+oembed" href="https://www.naturalearthdata.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.naturalearthdata.com%2Fdownloads%2F10m-cultural-vectors%2F10m-admin-0-countries%2F&format=xml" />
|
||||
|
||||
<script type="text/javascript">
|
||||
/* <![CDATA[ */
|
||||
var ajaxurl = 'https://www.naturalearthdata.com/wp-admin/admin-ajax.php';
|
||||
|
||||
/* ]]> */
|
||||
</script>
|
||||
|
||||
|
||||
<!-- begin gallery scripts -->
|
||||
<link rel="stylesheet" href="http://www.naturalearthdata.com/wp-content/plugins/featured-content-gallery/css/jd.gallery.css.php" type="text/css" media="screen" charset="utf-8"/>
|
||||
<link rel="stylesheet" href="http://www.naturalearthdata.com/wp-content/plugins/featured-content-gallery/css/jd.gallery.css" type="text/css" media="screen" charset="utf-8"/>
|
||||
<script type="text/javascript" src="http://www.naturalearthdata.com/wp-content/plugins/featured-content-gallery/scripts/mootools.v1.11.js"></script>
|
||||
<script type="text/javascript" src="http://www.naturalearthdata.com/wp-content/plugins/featured-content-gallery/scripts/jd.gallery.js.php"></script>
|
||||
<script type="text/javascript" src="http://www.naturalearthdata.com/wp-content/plugins/featured-content-gallery/scripts/jd.gallery.transitions.js"></script>
|
||||
<!-- end gallery scripts -->
|
||||
<link href="http://www.naturalearthdata.com/wp-content/themes/NEV/css/default.css" rel="stylesheet" type="text/css" />
|
||||
<style type="text/css">.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style><!--[if lte IE 7]>
|
||||
<link rel="stylesheet" type="text/css" href="http://www.naturalearthdata.com/wp-content/themes/NEV/ie.css" />
|
||||
<![endif]-->
|
||||
<script src="http://www.naturalearthdata.com/wp-content/themes/NEV/js/jquery-1.2.6.min.js" type="text/javascript" charset="utf-8"></script>
|
||||
<script>
|
||||
jQuery.noConflict();
|
||||
</script>
|
||||
<script type="text/javascript" charset="utf-8">
|
||||
$(function(){
|
||||
var tabContainers = $('div#maintabdiv > div');
|
||||
tabContainers.hide().filter('#comments').show();
|
||||
|
||||
$('div#maintabdiv ul#tabnav a').click(function () {
|
||||
tabContainers.hide();
|
||||
tabContainers.filter(this.hash).show();
|
||||
$('div#maintabdiv ul#tabnav a').removeClass('current');
|
||||
$(this).addClass('current');
|
||||
return false;
|
||||
}).filter('#comments').click();
|
||||
|
||||
|
||||
});
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" language="javascript" src="http://www.naturalearthdata.com/dataTables/media/js/jquery.dataTables.js"></script>
|
||||
<script type="text/javascript" charset="utf-8">
|
||||
$(document).ready(function() {
|
||||
$('#ne_table').dataTable();
|
||||
} );
|
||||
</script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div id="page">
|
||||
<div id="header">
|
||||
<div id="headerimg">
|
||||
<h1><a href="https://www.naturalearthdata.com/"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/nev_logo.png" alt="Natural Earth title="Natural Earth" /></a></h1>
|
||||
<div class="description">Free vector and raster map data at 1:10m, 1:50m, and 1:110m scales</div>
|
||||
<div class="header_search"><form method="get" id="searchform" action="https://www.naturalearthdata.com/">
|
||||
<label class="hidden" for="s">Search for:</label>
|
||||
<div><input type="text" value="" name="s" id="s" />
|
||||
<input type="submit" id="searchsubmit" value="Search" />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<!--<div class="translate_panel" style="align:top; margin-left:650px; top:50px;">
|
||||
<div id="google_translate_element" style="float:left;"></div>
|
||||
<script>
|
||||
function googleTranslateElementInit() {
|
||||
new google.translate.TranslateElement({
|
||||
pageLanguage: 'en'
|
||||
}, 'google_translate_element');
|
||||
}
|
||||
</script>
|
||||
<script src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
|
||||
</div>-->
|
||||
</div>
|
||||
</div>
|
||||
<div id="pagemenu" style="align:bottom;">
|
||||
<ul id="page-list" class="clearfix"><li class="page_item page-item-4"><a href="https://www.naturalearthdata.com/">Home</a></li>
|
||||
<li class="page_item page-item-10"><a href="https://www.naturalearthdata.com/features/">Features</a></li>
|
||||
<li class="page_item page-item-12 page_item_has_children"><a href="https://www.naturalearthdata.com/downloads/">Downloads</a></li>
|
||||
<li class="page_item page-item-6 current_page_parent"><a href="https://www.naturalearthdata.com/blog/">Blog</a></li>
|
||||
<li class="page_item page-item-5044"><a href="https://www.naturalearthdata.com/issues/">Issues</a></li>
|
||||
<li class="page_item page-item-366"><a href="https://www.naturalearthdata.com/corrections/">Corrections</a></li>
|
||||
<li class="page_item page-item-16 page_item_has_children"><a href="https://www.naturalearthdata.com/about/">About</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<hr /><div id="main">
|
||||
<div id="content" class="narrowcolumn">
|
||||
|
||||
|
||||
<div class="post" id="post-74">
|
||||
<h2>Admin 0 – Countries</h2>
|
||||
|
||||
<div class="entry">
|
||||
<div class="downloadPromoBlock">
|
||||
<div style="float: left; width: 170px;"><img loading="lazy" class="alignleft size-thumbnail wp-image-92" title="home_image_3" src="https://www.naturalearthdata.com/wp-content/uploads/2009/09/thumb_countries.png" alt="countries_thumb" width="150" height="97"></div>
|
||||
<div style="float: left; width: 410px;"><em>There are <b>258 countries</b> in the world. Greenland as separate from Denmark. Most users will want this file instead of sovereign states, though some users will want map units instead when needing to distinguish overseas regions of France.</em></div>
|
||||
<div style="float: left; width: 410px;">
|
||||
<p><em>Natural Earth shows <a href="https://www.naturalearthdata.com/about/disputed-boundaries-policy/"><b>de facto</b></a> boundaries by default according to who controls the territory, versus <i>de jure</i>. Optional point-of-view (POV) variants are available for several dozen countries in the next section.</em> </p>
|
||||
<div class="download-link-div">
|
||||
<a class="download-link" rel="nofollow" title="Downloaded 516715 times (Shapefile, geoDB, or TIFF format)" onclick="if (window.urchinTracker) urchinTracker ('https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries.zip');" href="https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries.zip">Download countries</a> <span class="download-link-span">(4.7 MB) version 5.1.1</span>
|
||||
</div>
|
||||
<div class="download-link-div">
|
||||
<a class="download-link" rel="nofollow" title="Downloaded 4769876 times (Shapefile, geoDB, or TIFF format)" onclick="if (window.urchinTracker) urchinTracker ('https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries_lakes.zip');" href="https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries_lakes.zip">Download without boundary lakes</a> <span class="download-link-span">(4.87 MB) version 5.1.1</span>
|
||||
</div>
|
||||
<p><span id="more-74"></span></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="downloadMainBlock">
|
||||
<p><strong>About</strong></p>
|
||||
<p>Countries distinguish between metropolitan (homeland) and independent and semi-independent portions of sovereign states. If you want to see the dependent overseas regions broken out (like in ISO codes, see France for example), use <a href="https://www.naturalearthdata.com/downloads/10m-political-vectors/10m-admin-0-details/">map units</a> instead.</p>
|
||||
<p>Each country is coded with a world region that roughly follows the <a href="http://unstats.un.org/unsd/methods/m49/m49regin.htm">United Nations setup</a>.</p>
|
||||
<p>Countries are coded with standard ISO and FIPS codes. French <a href="http://en.wikipedia.org/wiki/INSEE">INSEE codes</a> are also included.</p>
|
||||
<p>Includes some thematic data from the United Nations (<a href="http://data.un.org/DataMartInfo.aspx">1</a>), U.S. Central Intelligence Agency, and elsewhere.</p>
|
||||
<p><img loading="lazy" class="alignnone size-full wp-image-1896" title="countries_banner" src="https://www.naturalearthdata.com/wp-content/uploads/2009/09/banner_countries.png" alt="countries_banner" width="580" height="150"></p>
|
||||
<p><strong>Disclaimer</strong></p>
|
||||
<p>Natural Earth Vector draws boundaries of countries according to defacto status. We show who actually controls the situation on the ground. Please feel free to mashup our <a href="https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-0-breakaway-disputed-areas/">disputed area themes</a> to match your particular political outlook.</p>
|
||||
<p><strong>Known Problems</strong></p>
|
||||
<p>None.</p>
|
||||
<p><strong>Version History</strong></p>
|
||||
<ul>
|
||||
<li>
|
||||
<a rel="nofollow" title="Download version 5.1.1 of ne_10m_admin_0_countries.zip" href="https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries.zip">5.1.1</a>
|
||||
</li>
|
||||
<li>
|
||||
<a rel="nofollow" title="Download version 5.1.0 of ne_10m_admin_0_countries.zip" href="https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries.zip?version=5.1.0">5.1.0</a>
|
||||
</li>
|
||||
<li>
|
||||
<a rel="nofollow" title="Download version 5.0.1 of ne_10m_admin_0_countries.zip" href="https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries.zip?version=5.0.1">5.0.1</a>
|
||||
</li>
|
||||
<li>
|
||||
<a rel="nofollow" title="Download version 5.0.0 of ne_10m_admin_0_countries.zip" href="https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries.zip?version=5.0.0">5.0.0</a>
|
||||
</li>
|
||||
<li>
|
||||
<a rel="nofollow" title="Download version 4.1.0 of ne_10m_admin_0_countries.zip" href="https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries.zip?version=4.1.0">4.1.0</a>
|
||||
</li>
|
||||
<li>
|
||||
<a rel="nofollow" title="Download version 4.0.0 of ne_10m_admin_0_countries.zip" href="https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries.zip?version=4.0.0">4.0.0</a>
|
||||
</li>
|
||||
<li>
|
||||
<a rel="nofollow" title="Download version 3.1.0 of ne_10m_admin_0_countries.zip" href="https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_admin_0_countries.zip?version=3.1.0">3.1.0</a>
|
||||
</li>
|
||||
<li>
|
||||
3.0.0
|
||||
</li>
|
||||
<li>
|
||||
2.0.0
|
||||
</li>
|
||||
<li>
|
||||
1.4.0
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p><a href="https://github.com/nvkelso/natural-earth-vector/blob/master/CHANGELOG">The master changelog is available on Github »</a></p>
|
||||
</div>
|
||||
|
||||
|
||||
<p class="postmetadata2">
|
||||
<small>
|
||||
This entry was posted
|
||||
on Friday, September 25th, 2009 at 2:13 am and is filed under <a href="https://www.naturalearthdata.com/download/downloads/10m-cultural-vectors/" rel="category tag">10m-cultural-vectors</a>, <a href="https://www.naturalearthdata.com/download/downloads/featured-on-homepage/" rel="category tag">Featured on Homepage</a>.
|
||||
You can follow any responses to this entry through the <a href="https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-0-countries/feed/">RSS 2.0</a> feed.
|
||||
|
||||
Both comments and pings are currently closed.
|
||||
|
||||
|
||||
</small>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- You can start editing here. -->
|
||||
|
||||
|
||||
<!-- If comments are closed. -->
|
||||
<p class="nocomments">Comments are closed.</p>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
<div id="sidebar">
|
||||
<ul>
|
||||
<li id="rssfeeds">Subscribe: <a href="https://www.naturalearthdata.com/feed/">Entries</a> | <a href="https://www.naturalearthdata.com/comments/feed/">Comments</a></li>
|
||||
<li id="search-3" class="widget widget_search"><h2 class="widgettitle">Search</h2>
|
||||
<form method="get" id="searchform" action="https://www.naturalearthdata.com/">
|
||||
<label class="hidden" for="s">Search for:</label>
|
||||
<div><input type="text" value="" name="s" id="s" />
|
||||
<input type="submit" id="searchsubmit" value="Search" />
|
||||
</div>
|
||||
</form>
|
||||
</li>
|
||||
<li id="linkcat-2" class="widget widget_links"><h2 class="widgettitle">Links</h2>
|
||||
|
||||
<ul class='xoxo blogroll'>
|
||||
<li><a href="http://www.nacis.org">NACIS</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li id="tag_cloud-3" class="widget widget_tag_cloud"><h2 class="widgettitle">Tags</h2>
|
||||
<div class="tagcloud"><a href="https://www.naturalearthdata.com/tag/10m/" class="tag-cloud-link tag-link-65 tag-link-position-1" style="font-size: 16.4pt;" aria-label="10m (2 items)">10m</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/50m/" class="tag-cloud-link tag-link-64 tag-link-position-2" style="font-size: 8pt;" aria-label="50m (1 item)">50m</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/90/" class="tag-cloud-link tag-link-61 tag-link-position-3" style="font-size: 8pt;" aria-label="90 (1 item)">90</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/180/" class="tag-cloud-link tag-link-60 tag-link-position-4" style="font-size: 8pt;" aria-label="180 (1 item)">180</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/admin-0/" class="tag-cloud-link tag-link-40 tag-link-position-5" style="font-size: 8pt;" aria-label="admin-0 (1 item)">admin-0</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/bjorn/" class="tag-cloud-link tag-link-46 tag-link-position-6" style="font-size: 8pt;" aria-label="bjorn (1 item)">bjorn</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/bounding-box/" class="tag-cloud-link tag-link-68 tag-link-position-7" style="font-size: 8pt;" aria-label="bounding box (1 item)">bounding box</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/browser/" class="tag-cloud-link tag-link-47 tag-link-position-8" style="font-size: 8pt;" aria-label="browser (1 item)">browser</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/change-log/" class="tag-cloud-link tag-link-74 tag-link-position-9" style="font-size: 8pt;" aria-label="change log (1 item)">change log</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/corrections/" class="tag-cloud-link tag-link-34 tag-link-position-10" style="font-size: 8pt;" aria-label="corrections (1 item)">corrections</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/countries/" class="tag-cloud-link tag-link-41 tag-link-position-11" style="font-size: 8pt;" aria-label="countries (1 item)">countries</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/downloads/" class="tag-cloud-link tag-link-432 tag-link-position-12" style="font-size: 8pt;" aria-label="Downloads (1 item)">Downloads</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/error/" class="tag-cloud-link tag-link-67 tag-link-position-13" style="font-size: 8pt;" aria-label="error (1 item)">error</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/extent/" class="tag-cloud-link tag-link-69 tag-link-position-14" style="font-size: 8pt;" aria-label="extent (1 item)">extent</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/ext-js/" class="tag-cloud-link tag-link-56 tag-link-position-15" style="font-size: 8pt;" aria-label="ext js (1 item)">ext js</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/forums/" class="tag-cloud-link tag-link-35 tag-link-position-16" style="font-size: 8pt;" aria-label="forums (1 item)">forums</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/geoext/" class="tag-cloud-link tag-link-57 tag-link-position-17" style="font-size: 8pt;" aria-label="geoext (1 item)">geoext</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/hans/" class="tag-cloud-link tag-link-63 tag-link-position-18" style="font-size: 8pt;" aria-label="hans (1 item)">hans</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/imagery/" class="tag-cloud-link tag-link-59 tag-link-position-19" style="font-size: 8pt;" aria-label="imagery (1 item)">imagery</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/import/" class="tag-cloud-link tag-link-66 tag-link-position-20" style="font-size: 8pt;" aria-label="import (1 item)">import</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/mapnik/" class="tag-cloud-link tag-link-53 tag-link-position-21" style="font-size: 8pt;" aria-label="mapnik (1 item)">mapnik</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/maptiler/" class="tag-cloud-link tag-link-51 tag-link-position-22" style="font-size: 8pt;" aria-label="maptiler (1 item)">maptiler</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/map-tiles/" class="tag-cloud-link tag-link-49 tag-link-position-23" style="font-size: 8pt;" aria-label="map tiles (1 item)">map tiles</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/marine-boundary/" class="tag-cloud-link tag-link-76 tag-link-position-24" style="font-size: 8pt;" aria-label="marine boundary (1 item)">marine boundary</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/national-parks/" class="tag-cloud-link tag-link-75 tag-link-position-25" style="font-size: 8pt;" aria-label="national parks (1 item)">national parks</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/new-data/" class="tag-cloud-link tag-link-36 tag-link-position-26" style="font-size: 8pt;" aria-label="new data (1 item)">new data</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/nsd/" class="tag-cloud-link tag-link-72 tag-link-position-27" style="font-size: 8pt;" aria-label="nsd (1 item)">nsd</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/openlayers/" class="tag-cloud-link tag-link-55 tag-link-position-28" style="font-size: 8pt;" aria-label="openlayers (1 item)">openlayers</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/physical-labels/" class="tag-cloud-link tag-link-38 tag-link-position-29" style="font-size: 8pt;" aria-label="physical labels (1 item)">physical labels</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/pngng/" class="tag-cloud-link tag-link-52 tag-link-position-30" style="font-size: 8pt;" aria-label="pngng (1 item)">pngng</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/populated-places/" class="tag-cloud-link tag-link-39 tag-link-position-31" style="font-size: 8pt;" aria-label="populated places (1 item)">populated places</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/raster/" class="tag-cloud-link tag-link-58 tag-link-position-32" style="font-size: 16.4pt;" aria-label="raster (2 items)">raster</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/terrestrial-hypsography/" class="tag-cloud-link tag-link-45 tag-link-position-33" style="font-size: 8pt;" aria-label="terrestrial hypsography (1 item)">terrestrial hypsography</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/tfw/" class="tag-cloud-link tag-link-62 tag-link-position-34" style="font-size: 8pt;" aria-label="tfw (1 item)">tfw</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/thematic-mapping/" class="tag-cloud-link tag-link-48 tag-link-position-35" style="font-size: 8pt;" aria-label="thematic mapping (1 item)">thematic mapping</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/themese/" class="tag-cloud-link tag-link-37 tag-link-position-36" style="font-size: 8pt;" aria-label="themese (1 item)">themese</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/tif/" class="tag-cloud-link tag-link-71 tag-link-position-37" style="font-size: 8pt;" aria-label="tif (1 item)">tif</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/tilecache/" class="tag-cloud-link tag-link-54 tag-link-position-38" style="font-size: 8pt;" aria-label="tilecache (1 item)">tilecache</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/tiles/" class="tag-cloud-link tag-link-50 tag-link-position-39" style="font-size: 8pt;" aria-label="tiles (1 item)">tiles</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/time-zones/" class="tag-cloud-link tag-link-44 tag-link-position-40" style="font-size: 8pt;" aria-label="time zones (1 item)">time zones</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/towns/" class="tag-cloud-link tag-link-42 tag-link-position-41" style="font-size: 8pt;" aria-label="towns (1 item)">towns</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/transportation/" class="tag-cloud-link tag-link-43 tag-link-position-42" style="font-size: 8pt;" aria-label="transportation (1 item)">transportation</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/update/" class="tag-cloud-link tag-link-33 tag-link-position-43" style="font-size: 22pt;" aria-label="update (3 items)">update</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/visitors/" class="tag-cloud-link tag-link-73 tag-link-position-44" style="font-size: 8pt;" aria-label="visitors (1 item)">visitors</a>
|
||||
<a href="https://www.naturalearthdata.com/tag/world-file/" class="tag-cloud-link tag-link-70 tag-link-position-45" style="font-size: 8pt;" aria-label="world file (1 item)">world file</a></div>
|
||||
</li>
|
||||
<li id="recent-comments-3" class="widget widget_recent_comments"><h2 class="widgettitle">Recent Comments</h2>
|
||||
<ul id="recentcomments"><li class="recentcomments"><span class="comment-author-link"><a href='http://www.bbscode.top/index.php/2022/03/17/aligning-natural-earth-geojson-and-raster-to-render-in-d3/' rel='external nofollow ugc' class='url'>Aligning Natural Earth Geojson and Raster to render in D3 – BBSCODE</a></span> on <a href="https://www.naturalearthdata.com/downloads/50m-raster-data/50m-shaded-relief/comment-page-1/#comment-6144">1:50m Shaded Relief</a></li><li class="recentcomments"><span class="comment-author-link"><a href='https://wp.csusm.edu/adahn/2022/03/14/qgis-a-mapping-tool/' rel='external nofollow ugc' class='url'>QGIS a Mapping Tool – April Dahn</a></span> on <a href="https://www.naturalearthdata.com/downloads/50m-raster-data/50m-shaded-relief/comment-page-1/#comment-6143">1:50m Shaded Relief</a></li><li class="recentcomments"><span class="comment-author-link"><a href='https://wp.csusm.edu/rsheehan/2022/03/13/more-mapping-with-qgis/' rel='external nofollow ugc' class='url'>More Mapping with QGIS – History 502</a></span> on <a href="https://www.naturalearthdata.com/downloads/50m-raster-data/50m-shaded-relief/comment-page-1/#comment-6142">1:50m Shaded Relief</a></li><li class="recentcomments"><span class="comment-author-link"><a href='http://ivermectin6mg.quest' rel='external nofollow ugc' class='url'>buy ivermectin 12 mg tablets</a></span> on <a href="https://www.naturalearthdata.com/forums/topic/download-urls-double-slash/comment-page-1/#comment-6141">Download URLs – double slash</a></li><li class="recentcomments"><span class="comment-author-link"><a href='https://slacker.ro/2021/10/01/building-a-beautiful-and-clear-map-from-massive-complex-data/' rel='external nofollow ugc' class='url'>Building A Beautiful And Clear Map From Massive, Complex Data – Slacker News</a></span> on <a href="https://www.naturalearthdata.com/downloads/10m-raster-data/10m-shaded-relief/comment-page-1/#comment-6140">1:10m Shaded Relief</a></li></ul></li>
|
||||
<li id="bbp_topics_widget-2" class="widget widget_display_topics"><h2 class="widgettitle">Recent Forum Topics</h2>
|
||||
|
||||
<ul class="bbp-topics-widget newness">
|
||||
|
||||
|
||||
<li>
|
||||
<a class="bbp-forum-title" href="https://www.naturalearthdata.com/forums/topic/natural-earth-in-wagner-vii/">Natural Earth in Wagner VII</a>
|
||||
|
||||
|
||||
by <span class="topic-author"><a href="https://www.naturalearthdata.com/forums/users/frax/" title="View Hugo Ahlenius's profile" class="bbp-author-link"><span class="bbp-author-avatar"><img alt='' src='http://2.gravatar.com/avatar/2bd3b3347fd34f7dd734bf4b78fb353d?s=14&d=retro&r=g' srcset='http://2.gravatar.com/avatar/2bd3b3347fd34f7dd734bf4b78fb353d?s=28&d=retro&r=g 2x' class='avatar avatar-14 photo' height='14' width='14' loading='lazy'/></span><span class="bbp-author-name">Hugo Ahlenius</span></a></span>
|
||||
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
<li>
|
||||
<a class="bbp-forum-title" href="https://www.naturalearthdata.com/forums/topic/downloads-are-404ing/">Downloads are 404ing</a>
|
||||
|
||||
|
||||
by <span class="topic-author"><a href="https://www.naturalearthdata.com/forums/users/nathaniel/" title="View Nathaniel's profile" class="bbp-author-link"><span class="bbp-author-avatar"><img alt='' src='http://2.gravatar.com/avatar/e679fead4b7cb50b7b60e7c4f99bc348?s=14&d=retro&r=g' srcset='http://2.gravatar.com/avatar/e679fead4b7cb50b7b60e7c4f99bc348?s=28&d=retro&r=g 2x' class='avatar avatar-14 photo' height='14' width='14' loading='lazy'/></span><span class="bbp-author-name">Nathaniel</span></a></span>
|
||||
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
<li>
|
||||
<a class="bbp-forum-title" href="https://www.naturalearthdata.com/forums/topic/disputed-territories-type-field/">Disputed Territories: "type" field</a>
|
||||
|
||||
|
||||
by <span class="topic-author"><a href="https://www.naturalearthdata.com/forums/users/alykat/" title="View alykat's profile" class="bbp-author-link"><span class="bbp-author-avatar"><img alt='' src='http://2.gravatar.com/avatar/8c60e36c6b6542afb738eb950429d6ba?s=14&d=retro&r=g' srcset='http://2.gravatar.com/avatar/8c60e36c6b6542afb738eb950429d6ba?s=28&d=retro&r=g 2x' class='avatar avatar-14 photo' height='14' width='14' loading='lazy'/></span><span class="bbp-author-name">alykat</span></a></span>
|
||||
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
<li>
|
||||
<a class="bbp-forum-title" href="https://www.naturalearthdata.com/forums/topic/iso-code-confusion/">ISO code confusion</a>
|
||||
|
||||
|
||||
by <span class="topic-author"><a href="https://www.naturalearthdata.com/forums/users/nth/" title="View nth's profile" class="bbp-author-link"><span class="bbp-author-avatar"><img alt='' src='http://0.gravatar.com/avatar/f5060dc4d25dbced2933380279e0c1c5?s=14&d=retro&r=g' srcset='http://0.gravatar.com/avatar/f5060dc4d25dbced2933380279e0c1c5?s=28&d=retro&r=g 2x' class='avatar avatar-14 photo' height='14' width='14' loading='lazy'/></span><span class="bbp-author-name">nth</span></a></span>
|
||||
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
<li>
|
||||
<a class="bbp-forum-title" href="https://www.naturalearthdata.com/forums/topic/bad-adm1name-encoding-in-version-3-0-0-and-missing-diacritics-in-name/">Bad ADM1NAME, encoding in version 3.0.0 and missing diacritics in NAME</a>
|
||||
|
||||
|
||||
by <span class="topic-author"><a href="https://www.naturalearthdata.com/forums/users/pfunes/" title="View pfunes's profile" class="bbp-author-link"><span class="bbp-author-avatar"><img alt='' src='http://2.gravatar.com/avatar/eded29f5ea7062bfe350281260b0596b?s=14&d=retro&r=g' srcset='http://2.gravatar.com/avatar/eded29f5ea7062bfe350281260b0596b?s=28&d=retro&r=g 2x' class='avatar avatar-14 photo' height='14' width='14' loading='lazy'/></span><span class="bbp-author-name">pfunes</span></a></span>
|
||||
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
<li>
|
||||
<a class="bbp-forum-title" href="https://www.naturalearthdata.com/forums/topic/u-s-county-shape-file-2/">U.S. County Shape File</a>
|
||||
|
||||
|
||||
by <span class="topic-author"><a href="https://www.naturalearthdata.com/forums/users/gzingsheim/" title="View gzingsheim's profile" class="bbp-author-link"><span class="bbp-author-avatar"><img alt='' src='http://1.gravatar.com/avatar/d617957f9d5d7d062deeadbfa011d8b6?s=14&d=retro&r=g' srcset='http://1.gravatar.com/avatar/d617957f9d5d7d062deeadbfa011d8b6?s=28&d=retro&r=g 2x' class='avatar avatar-14 photo' height='14' width='14' loading='lazy'/></span><span class="bbp-author-name">gzingsheim</span></a></span>
|
||||
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
<li>
|
||||
<a class="bbp-forum-title" href="https://www.naturalearthdata.com/forums/topic/projection-proportion-compatibility/">Projection / Proportion / Compatibility?</a>
|
||||
|
||||
|
||||
by <span class="topic-author"><a href="https://www.naturalearthdata.com/forums/users/liquidized/" title="View Liquidized's profile" class="bbp-author-link"><span class="bbp-author-avatar"><img alt='' src='http://0.gravatar.com/avatar/06422086ab7aab2b767e3df7f7a67bdd?s=14&d=retro&r=g' srcset='http://0.gravatar.com/avatar/06422086ab7aab2b767e3df7f7a67bdd?s=28&d=retro&r=g 2x' class='avatar avatar-14 photo' height='14' width='14' loading='lazy'/></span><span class="bbp-author-name">Liquidized</span></a></span>
|
||||
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
<li>
|
||||
<a class="bbp-forum-title" href="https://www.naturalearthdata.com/forums/topic/download-urls-double-slash/">Download URLs – double slash</a>
|
||||
|
||||
|
||||
by <span class="topic-author"><a href="https://www.naturalearthdata.com/forums/users/vastur/" title="View vastur's profile" class="bbp-author-link"><span class="bbp-author-avatar"><img alt='' src='http://2.gravatar.com/avatar/e07b4667376982e080d64cf0250acc9b?s=14&d=retro&r=g' srcset='http://2.gravatar.com/avatar/e07b4667376982e080d64cf0250acc9b?s=28&d=retro&r=g 2x' class='avatar avatar-14 photo' height='14' width='14' loading='lazy'/></span><span class="bbp-author-name">vastur</span></a></span>
|
||||
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
<li>
|
||||
<a class="bbp-forum-title" href="https://www.naturalearthdata.com/forums/topic/map-soft-writer-me/">map soft – writer: me</a>
|
||||
|
||||
|
||||
by <span class="topic-author"><a href="https://www.naturalearthdata.com/forums/users/krzysztof/" title="View krzysztof's profile" class="bbp-author-link"><span class="bbp-author-avatar"><img alt='' src='http://2.gravatar.com/avatar/be9767706435aa6e10d50185f6def05e?s=14&d=retro&r=g' srcset='http://2.gravatar.com/avatar/be9767706435aa6e10d50185f6def05e?s=28&d=retro&r=g 2x' class='avatar avatar-14 photo' height='14' width='14' loading='lazy'/></span><span class="bbp-author-name">krzysztof</span></a></span>
|
||||
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
<li>
|
||||
<a class="bbp-forum-title" href="https://www.naturalearthdata.com/forums/topic/unicode-encoding-issue-ne_10m_lakes-dbf/">Unicode encoding issue – ne_10m_lakes.dbf</a>
|
||||
|
||||
|
||||
by <span class="topic-author"><a href="https://www.naturalearthdata.com/forums/users/filter-1/" title="View filter.1's profile" class="bbp-author-link"><span class="bbp-author-avatar"><img alt='' src='http://1.gravatar.com/avatar/daae13b2efd52a3865320ada9ed3ae18?s=14&d=retro&r=g' srcset='http://1.gravatar.com/avatar/daae13b2efd52a3865320ada9ed3ae18?s=28&d=retro&r=g 2x' class='avatar avatar-14 photo' height='14' width='14' loading='lazy'/></span><span class="bbp-author-name">filter.1</span></a></span>
|
||||
|
||||
|
||||
</li>
|
||||
|
||||
|
||||
</ul>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<hr />
|
||||
<div id="footer">
|
||||
<div id="footerarea">
|
||||
<div id="footerlogos">
|
||||
<p>Supported by:</p>
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://www.nacis.org" target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/nacis.png" alt="NACIS" /></a>
|
||||
</div>
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://www.cartotalk.com" target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/cartotalk_ad.png" alt="Cartotalk" /></a>
|
||||
</div>
|
||||
<div class="footer-ad-box">
|
||||
<img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/mapgiving.png" alt="Mapgiving" />
|
||||
</div>
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://www.geography.wisc.edu/cartography/" target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/wisconsin.png" alt="University of Wisconsin Madison - Cartography Dept." /></a>
|
||||
</div>
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://www.shadedrelief.com" target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/shaded_relief.png" alt="Shaded Relief" /></a>
|
||||
</div>
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://www.xnrproductions.com " target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/xnr.png" alt="XNR Productions" /></a>
|
||||
</div>
|
||||
|
||||
<p style="clear:both;"></p>
|
||||
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://www.freac.fsu.edu" target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/fsu.png" alt="Florida State University - FREAC" /></a>
|
||||
</div>
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://www.springercartographics.com" target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/scllc.png" alt="Springer Cartographics LLC" /></a>
|
||||
</div>
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://www.washingtonpost.com" target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/wpost.png" alt="Washington Post" /></a>
|
||||
</div>
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://www.redgeographics.com" target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/redgeo.png" alt="Red Geographics" /></a>
|
||||
</div>
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://kelsocartography.com/blog " target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/kelso.png" alt="Kelso Cartography" /></a>
|
||||
</div>
|
||||
|
||||
<p style="clear:both;"></p>
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://www.avenza.com" target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/avenza.png" alt="Avenza Systems Inc." /></a>
|
||||
</div>
|
||||
<div class="footer-ad-box">
|
||||
<a href="http://www.stamen.com" target="_blank"><img src="http://www.naturalearthdata.com/wp-content/themes/NEV/images/stamen_ne_logo.png" alt="Stamen Design" /></a>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<p style="clear:both;"></p>
|
||||
<span id="footerleft">
|
||||
© 2009 - 2022. Natural Earth. All rights reserved.
|
||||
</span>
|
||||
<span id="footerright">
|
||||
<!-- Please help promote WordPress and simpleX. Do not remove -->
|
||||
<div>Powered by <a href="http://wordpress.org/">WordPress</a></div>
|
||||
<div><a href="http://www.naturalearthdata.com/wp-admin">Staff Login »</a></div>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<script type='text/javascript' src='http://www.naturalearthdata.com/wp-includes/js/wp-embed.min.js?ver=5.5.9' id='wp-embed-js'></script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
<!-- Dynamic page generated in 0.242 seconds. -->
|
||||
<!-- Cached page generated by WP-Super-Cache on 2022-05-09 00:23:33 -->
|
||||
|
||||
<!-- Compression = gzip -->
|
||||
<!-- super cache -->
|
||||
1
tools/countries/ne_10m_admin_0_countries.VERSION.txt
Normal file
1
tools/countries/ne_10m_admin_0_countries.VERSION.txt
Normal file
@ -0,0 +1 @@
|
||||
5.1.1
|
||||
1
tools/countries/ne_10m_admin_0_countries.cpg
Normal file
1
tools/countries/ne_10m_admin_0_countries.cpg
Normal file
@ -0,0 +1 @@
|
||||
UTF-8
|
||||
BIN
tools/countries/ne_10m_admin_0_countries.dbf
Normal file
BIN
tools/countries/ne_10m_admin_0_countries.dbf
Normal file
Binary file not shown.
1
tools/countries/ne_10m_admin_0_countries.prj
Normal file
1
tools/countries/ne_10m_admin_0_countries.prj
Normal file
@ -0,0 +1 @@
|
||||
GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]]
|
||||
BIN
tools/countries/ne_10m_admin_0_countries.shp
Normal file
BIN
tools/countries/ne_10m_admin_0_countries.shp
Normal file
Binary file not shown.
BIN
tools/countries/ne_10m_admin_0_countries.shx
Normal file
BIN
tools/countries/ne_10m_admin_0_countries.shx
Normal file
Binary file not shown.
BIN
tools/ne_10m_admin_0_countries.zip
Normal file
BIN
tools/ne_10m_admin_0_countries.zip
Normal file
Binary file not shown.
93
tools/package-lock.json
generated
Normal file
93
tools/package-lock.json
generated
Normal file
@ -0,0 +1,93 @@
|
||||
{
|
||||
"name": "tools",
|
||||
"version": "1.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "tools",
|
||||
"version": "1.0.0",
|
||||
"license": "ISC",
|
||||
"type": "module",
|
||||
"devDependencies": {
|
||||
"shapefile": "0.6.6"
|
||||
}
|
||||
},
|
||||
"node_modules/array-source": {
|
||||
"version": "0.0.4",
|
||||
"resolved": "https://registry.npmjs.org/array-source/-/array-source-0.0.4.tgz",
|
||||
"integrity": "sha512-frNdc+zBn80vipY+GdcJkLEbMWj3xmzArYApmUGxoiV8uAu/ygcs9icPdsGdA26h0MkHUMW6EN2piIvVx+M5Mw==",
|
||||
"dev": true,
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/commander": {
|
||||
"version": "2.20.3",
|
||||
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
|
||||
"integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/file-source": {
|
||||
"version": "0.6.1",
|
||||
"resolved": "https://registry.npmjs.org/file-source/-/file-source-0.6.1.tgz",
|
||||
"integrity": "sha512-1R1KneL7eTXmXfKxC10V/9NeGOdbsAXJ+lQ//fvvcHUgtaZcZDWNJNblxAoVOyV1cj45pOtUrR3vZTBwqcW8XA==",
|
||||
"dev": true,
|
||||
"license": "BSD-3-Clause",
|
||||
"dependencies": {
|
||||
"stream-source": "0.3"
|
||||
}
|
||||
},
|
||||
"node_modules/path-source": {
|
||||
"version": "0.1.3",
|
||||
"resolved": "https://registry.npmjs.org/path-source/-/path-source-0.1.3.tgz",
|
||||
"integrity": "sha512-dWRHm5mIw5kw0cs3QZLNmpUWty48f5+5v9nWD2dw3Y0Hf+s01Ag8iJEWV0Sm0kocE8kK27DrIowha03e1YR+Qw==",
|
||||
"dev": true,
|
||||
"license": "BSD-3-Clause",
|
||||
"dependencies": {
|
||||
"array-source": "0.0",
|
||||
"file-source": "0.6"
|
||||
}
|
||||
},
|
||||
"node_modules/shapefile": {
|
||||
"version": "0.6.6",
|
||||
"resolved": "https://registry.npmjs.org/shapefile/-/shapefile-0.6.6.tgz",
|
||||
"integrity": "sha512-rLGSWeK2ufzCVx05wYd+xrWnOOdSV7xNUW5/XFgx3Bc02hBkpMlrd2F1dDII7/jhWzv0MSyBFh5uJIy9hLdfuw==",
|
||||
"dev": true,
|
||||
"license": "BSD-3-Clause",
|
||||
"dependencies": {
|
||||
"array-source": "0.0",
|
||||
"commander": "2",
|
||||
"path-source": "0.1",
|
||||
"slice-source": "0.4",
|
||||
"stream-source": "0.3",
|
||||
"text-encoding": "^0.6.4"
|
||||
},
|
||||
"bin": {
|
||||
"dbf2json": "bin/dbf2json",
|
||||
"shp2json": "bin/shp2json"
|
||||
}
|
||||
},
|
||||
"node_modules/slice-source": {
|
||||
"version": "0.4.1",
|
||||
"resolved": "https://registry.npmjs.org/slice-source/-/slice-source-0.4.1.tgz",
|
||||
"integrity": "sha512-YiuPbxpCj4hD9Qs06hGAz/OZhQ0eDuALN0lRWJez0eD/RevzKqGdUx1IOMUnXgpr+sXZLq3g8ERwbAH0bCb8vg==",
|
||||
"dev": true,
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/stream-source": {
|
||||
"version": "0.3.5",
|
||||
"resolved": "https://registry.npmjs.org/stream-source/-/stream-source-0.3.5.tgz",
|
||||
"integrity": "sha512-ZuEDP9sgjiAwUVoDModftG0JtYiLUV8K4ljYD1VyUMRWtbVf92474o4kuuul43iZ8t/hRuiDAx1dIJSvirrK/g==",
|
||||
"dev": true,
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/text-encoding": {
|
||||
"version": "0.6.4",
|
||||
"resolved": "https://registry.npmjs.org/text-encoding/-/text-encoding-0.6.4.tgz",
|
||||
"integrity": "sha512-hJnc6Qg3dWoOMkqP53F0dzRIgtmsAge09kxUIqGrEUS4qr5rWLckGYaQAVr+opBrIMRErGgy6f5aPnyPpyGRfg==",
|
||||
"deprecated": "no longer maintained",
|
||||
"dev": true,
|
||||
"license": "Unlicense"
|
||||
}
|
||||
}
|
||||
}
|
||||
15
tools/package.json
Normal file
15
tools/package.json
Normal file
@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "tools",
|
||||
"version": "1.0.0",
|
||||
"description": "",
|
||||
"license": "ISC",
|
||||
"author": "",
|
||||
"type": "module",
|
||||
"main": "convert-geojson-outlines.js",
|
||||
"scripts": {
|
||||
"convert": "node convert-geojson-outlines.js countries ../frontend/data/outlines --pretty"
|
||||
},
|
||||
"devDependencies": {
|
||||
"shapefile": "0.6.6"
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user