PROJJSON¶
PROJJSON是 WKT2:2019 / ISO-19162:2019 ,它本身实现了 OGC Topic 2: Referencing by coordinates . 除了编码的不同之外,语义与WKT2:2019完全相同。
从proj6.2开始,PROJJSON就可以作为PROJ的输入和输出。
当前版本为0.4。
图式¶
其语法的JSON模式可在https://proj.org/schemas/v0.4/projjson.schema.json获得
历史¶
V0.4:id对象中允许的附加属性(版本、AUTHORITY_CITICATION、URI)
V0.3:边界CRS对象中允许的附加属性(名称、范围、区域、bbox、用法、备注、id、id)
v0.2:在VerticalCRS对象中添加大地水准面模型。
v0.1:项目6.2的初始版本
内容¶
高级对象是:
坐标参考系(CRS):
常见问题:
GeographicCRS
GeodeticCRS
ProjectedCRS
CompoundCRS
BoundCRS
更深奥的是:
VerticalCRS
EngineeringCRS
TemporalCRS
ParametricCRS
DerivedGeographicCRS
DerivedGeodeticCRS
DerivedProjectedCRS
DerivedVerticalCRS
DerivedEngineeringCRS
DerivedTemporalCRS
DerivedParametricCRS
协调操作:
Transformation
Conversion
ConcatenatedOperation
其他:
PrimeMeridian
Ellipsoid
Datum
DatumEnsemble
实例¶
地理CCR¶
以下调用
projinfo EPSG:4326 -o PROJJSON -q
将输出:
{
"$schema": "https://proj.org/schemas/v0.1/projjson.schema.json",
"type": "GeographicCRS",
"name": "WGS 84",
"datum": {
"type": "GeodeticReferenceFrame",
"name": "World Geodetic System 1984",
"ellipsoid": {
"name": "WGS 84",
"semi_major_axis": 6378137,
"inverse_flattening": 298.257223563
}
},
"coordinate_system": {
"subtype": "ellipsoidal",
"axis": [
{
"name": "Geodetic latitude",
"abbreviation": "Lat",
"direction": "north",
"unit": "degree"
},
{
"name": "Geodetic longitude",
"abbreviation": "Lon",
"direction": "east",
"unit": "degree"
}
]
},
"area": "World",
"bbox": {
"south_latitude": -90,
"west_longitude": -180,
"north_latitude": 90,
"east_longitude": 180
},
"id": {
"authority": "EPSG",
"code": 4326
}
}
项目CRS¶
以下调用
projinfo EPSG:32631 -o PROJJSON -q
将输出:
{
"$schema": "https://proj.org/schemas/v0.1/projjson.schema.json",
"type": "ProjectedCRS",
"name": "WGS 84 / UTM zone 31N",
"base_crs": {
"name": "WGS 84",
"datum": {
"type": "GeodeticReferenceFrame",
"name": "World Geodetic System 1984",
"ellipsoid": {
"name": "WGS 84",
"semi_major_axis": 6378137,
"inverse_flattening": 298.257223563
}
},
"coordinate_system": {
"subtype": "ellipsoidal",
"axis": [
{
"name": "Geodetic latitude",
"abbreviation": "Lat",
"direction": "north",
"unit": "degree"
},
{
"name": "Geodetic longitude",
"abbreviation": "Lon",
"direction": "east",
"unit": "degree"
}
]
},
"id": {
"authority": "EPSG",
"code": 4326
}
},
"conversion": {
"name": "UTM zone 31N",
"method": {
"name": "Transverse Mercator",
"id": {
"authority": "EPSG",
"code": 9807
}
},
"parameters": [
{
"name": "Latitude of natural origin",
"value": 0,
"unit": "degree",
"id": {
"authority": "EPSG",
"code": 8801
}
},
{
"name": "Longitude of natural origin",
"value": 3,
"unit": "degree",
"id": {
"authority": "EPSG",
"code": 8802
}
},
{
"name": "Scale factor at natural origin",
"value": 0.9996,
"unit": "unity",
"id": {
"authority": "EPSG",
"code": 8805
}
},
{
"name": "False easting",
"value": 500000,
"unit": "metre",
"id": {
"authority": "EPSG",
"code": 8806
}
},
{
"name": "False northing",
"value": 0,
"unit": "metre",
"id": {
"authority": "EPSG",
"code": 8807
}
}
]
},
"coordinate_system": {
"subtype": "Cartesian",
"axis": [
{
"name": "Easting",
"abbreviation": "E",
"direction": "east",
"unit": "metre"
},
{
"name": "Northing",
"abbreviation": "N",
"direction": "north",
"unit": "metre"
}
]
},
"area": "World - N hemisphere - 0°E to 6°E - by country",
"bbox": {
"south_latitude": 0,
"west_longitude": 0,
"north_latitude": 84,
"east_longitude": 6
},
"id": {
"authority": "EPSG",
"code": 32631
}
}