Example #1
0
def test_parse():
    assert crs_util.parse_name(TEST_WKT) == "WGS 84"
    assert crs_util.parse_authority(TEST_WKT) == ("EPSG", "4326")

    assert crs_util.parse_name(AXIS_LAST_WKT) == "WGS 84"
    assert crs_util.parse_authority(AXIS_LAST_WKT) == ("EPSG", "4326")

    # Strangely this doesn't entirely work using osgeo:
    spatial_ref = SpatialReference(TEST_WKT)
    assert spatial_ref.GetName() == "WGS 84"
    assert spatial_ref.GetAuthorityName(None) is None
    assert spatial_ref.GetAuthorityCode(None) is None
Example #2
0
def wkt_to_gpkg_spatial_ref_sys(wkt):
    """Given a WKT crs definition, generate a gpkg_spatial_ref_sys meta item."""
    spatial_ref = SpatialReference(wkt)
    organization = spatial_ref.GetAuthorityName(None) or "NONE"
    srs_id = crs_util.get_identifier_int(spatial_ref)
    return [{
        "srs_name": spatial_ref.GetName(),
        "definition": wkt,
        "organization": organization,
        "srs_id": srs_id,
        "organization_coordsys_id": srs_id,
        "description": None,
    }]
Example #3
0
def wkt_to_gpkg_spatial_ref_sys(wkt):
    """Given a WKT crs definition, generate a gpkg_spatial_ref_sys meta item."""
    # TODO: Better support for custom WKT. https://github.com/koordinates/sno/issues/148
    spatial_ref = SpatialReference(wkt)
    spatial_ref.AutoIdentifyEPSG()
    organization = spatial_ref.GetAuthorityName(None) or "NONE"
    srs_id = spatial_ref.GetAuthorityCode(None) or 0
    return [{
        "srs_name": spatial_ref.GetName(),
        "definition": wkt,
        "organization": organization,
        "srs_id": srs_id,
        "organization_coordsys_id": srs_id,
        "description": None,
    }]