This function is a wrapper for sf::st_crs, unless threating numeric character strings as integers, and accepting also UTM timezones, paths of spatial files and paths of text files containing WKT like .prj (see details) .

st_crs2(x, ...)

Arguments

x

numeric, character, or object of class sf or sfc, being:

  • EPSG code: numeric (e.g. 32632) or character (in the form "32632" or "EPSG:32632");

  • UTM zone: numeric (e.g. 32, interpreted as 32 North) or character (e.g. "32" or "32N" for zone 32 North, "32S" for 32 South);

  • WKT test: passed as character string or as path of a text file containing it (e.g. the path of a .prj file);

  • PROJ.4 string, passed as character (e.g. "+proj=utm +zone=32 +datum=WGS84 +units=m +no_defs" (NOTE: this representation is deprecated with PROJ >= 6 -- see http://rgdal.r-forge.r-project.org/articles/PROJ6_GDAL3.html -- so a warning is returned using it, unless the string contains only the epsg code -- e.g. "+init=epsg:32632", in which case the EPSG code is taken);

  • path of a spatial file (managed by sf::st_read or stars::read_stars), passed as character string of length 1;

  • spatial file of class sf or sfc.

...

other parameters passed to sf::st_crs.

Value

An object of class crs of length 2.

Details

See sf::st_crs for details.

Note

License: GPL 3.0

References

L. Ranghetti, M. Boschetti, F. Nutini, L. Busetto (2020). "sen2r": An R toolbox for automatically downloading and preprocessing Sentinel-2 satellite data. Computers & Geosciences, 139, 104473. DOI: 10.1016/j.cageo.2020.104473, URL: http://sen2r.ranghetti.info/.

Examples

## CRS from EPSG st_crs2(32609)
#> Coordinate Reference System: #> User input: EPSG:32609 #> wkt: #> PROJCS["WGS 84 / UTM zone 9N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",-129], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32609"]]
st_crs2("EPSG:32609")
#> Coordinate Reference System: #> User input: EPSG:32609 #> wkt: #> PROJCS["WGS 84 / UTM zone 9N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",-129], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32609"]]
## CRS from UTM zone st_crs2(9)
#> Coordinate Reference System: #> User input: EPSG:32609 #> wkt: #> PROJCS["WGS 84 / UTM zone 9N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",-129], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32609"]]
st_crs2("09")
#> Coordinate Reference System: #> User input: EPSG:32609 #> wkt: #> PROJCS["WGS 84 / UTM zone 9N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",-129], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32609"]]
st_crs2("9N")
#> Coordinate Reference System: #> User input: EPSG:32609 #> wkt: #> PROJCS["WGS 84 / UTM zone 9N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",-129], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32609"]]
st_crs2("09S")
#> Coordinate Reference System: #> User input: EPSG:32709 #> wkt: #> PROJCS["WGS 84 / UTM zone 9S", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",-129], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",10000000], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32709"]]
## CRS from WKT (string or path) (wkt_32n <- sf::st_as_text(sf::st_crs(32609)))
#> [1] "PROJCS[\"WGS 84 / UTM zone 9N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-129],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32609\"]]"
st_crs2(wkt_32n)
#> Coordinate Reference System: #> User input: PROJCS["WGS 84 / UTM zone 9N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-129],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","32609"]] #> wkt: #> PROJCS["WGS 84 / UTM zone 9N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",-129], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32609"]]
writeLines(wkt_32n, wkt_32n_path <- tempfile()) st_crs2(wkt_32n_path)
#> Coordinate Reference System: #> User input: PROJCS["WGS 84 / UTM zone 9N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-129],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","32609"]] #> wkt: #> PROJCS["WGS 84 / UTM zone 9N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",-129], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32609"]]
## CRS from spatial file path raster_path <- system.file( "extdata/out/S2A2A_20190723_022_Barbellino_BOA_10.tif", package="sen2r" ) vector_path <- system.file( "extdata/vector/barbellino.geojson", package="sen2r" ) st_crs2(raster_path)
#> Coordinate Reference System: #> User input: PROJCS["WGS 84 / UTM zone 32N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",9],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","32632"]] #> wkt: #> PROJCS["WGS 84 / UTM zone 32N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",9], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32632"]]
st_crs2(vector_path)
#> Coordinate Reference System: #> User input: 32632 #> wkt: #> PROJCS["WGS 84 / UTM zone 32N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",9], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32632"]]
## CRS from spatial files st_crs2(stars::read_stars(raster_path))
#> Coordinate Reference System: #> User input: PROJCS["WGS 84 / UTM zone 32N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",9],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","32632"]] #> wkt: #> PROJCS["WGS 84 / UTM zone 32N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",9], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32632"]]
st_crs2(sf::read_sf(vector_path))
#> Coordinate Reference System: #> User input: 32632 #> wkt: #> PROJCS["WGS 84 / UTM zone 32N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",9], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32632"]]
# \donttest{ ## CRS from PROJ.4 string # (avoid using this with PROJ >= 6!) st_crs2("+init=epsg:32609") # this makes use of the EPSG code
#> Coordinate Reference System: #> User input: EPSG:32609 #> wkt: #> PROJCS["WGS 84 / UTM zone 9N", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",-129], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["metre",1, #> AUTHORITY["EPSG","9001"]], #> AXIS["Easting",EAST], #> AXIS["Northing",NORTH], #> AUTHORITY["EPSG","32609"]]
st_crs2("+proj=utm +zone=9 +datum=WGS84 +units=m +no_defs")
#> Warning: Using PROJ.4 strings is deprecated with PROJ >= 6 (see #> https://www.r-spatial.org/r/2020/03/17/wkt.html).
#> Coordinate Reference System: #> User input: +proj=utm +zone=9 +datum=WGS84 +units=m +no_defs #> wkt: #> PROJCS["UTM Zone 9, Northern Hemisphere", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",-129], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["Meter",1]]
st_crs2(raster::raster(raster_path)) # st_crs(raster) uses the PROJ.4 as input
#> Coordinate Reference System: #> User input: +proj=utm +zone=32 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0 #> wkt: #> PROJCS["UTM Zone 32, Northern Hemisphere", #> GEOGCS["WGS 84", #> DATUM["WGS_1984", #> SPHEROID["WGS 84",6378137,298.257223563, #> AUTHORITY["EPSG","7030"]], #> AUTHORITY["EPSG","6326"]], #> PRIMEM["Greenwich",0, #> AUTHORITY["EPSG","8901"]], #> UNIT["degree",0.0174532925199433, #> AUTHORITY["EPSG","9122"]], #> AUTHORITY["EPSG","4326"]], #> PROJECTION["Transverse_Mercator"], #> PARAMETER["latitude_of_origin",0], #> PARAMETER["central_meridian",9], #> PARAMETER["scale_factor",0.9996], #> PARAMETER["false_easting",500000], #> PARAMETER["false_northing",0], #> UNIT["Meter",1]]
# }