Learn R Programming

lidR (version 4.1.0)

st_crs: Get or set the projection of a LAS* object

Description

Get or set the projection of a LAS* object. st_crs() extends sf:st_crs(), projection() and crs() extend raster:projection() and raster:crs(). projection() and crs() are provided for backward compatibility. For epsg() and wkt(), see details.

Usage

# S3 method for LAS
st_crs(x, ...)

# S3 method for LAScatalog st_crs(x, ...)

# S3 method for LASheader st_crs(x, ...)

# S3 method for LAScluster st_crs(x, ...)

# S3 method for LAS st_crs(x) <- value

# S3 method for LASheader st_crs(x) <- value

# S3 method for LAScatalog st_crs(x) <- value

projection(x, asText = TRUE)

projection(x) <- value

crs(x, asText = FALSE)

crs(x, ...) <- value

# S4 method for LASheader crs(x, asText = FALSE)

# S4 method for LAS crs(x, asText = FALSE)

# S4 method for LAS crs(x, ...) <- value

# S4 method for LAScatalog crs(x, asText = FALSE)

# S4 method for LAScluster crs(x, asText = FALSE)

# S4 method for LAScatalog crs(x, ...) <- value

# S4 method for LASheader crs(x, ...) <- value

epsg(object, ...)

epsg(object) <- value

# S4 method for LASheader epsg(object, ...)

# S4 method for LASheader epsg(object) <- value

# S4 method for LAS epsg(object)

# S4 method for LAS epsg(object) <- value

wkt(obj)

wkt(obj) <- value

# S4 method for LASheader wkt(obj)

# S4 method for LASheader wkt(obj) <- value

# S4 method for LAS wkt(obj)

# S4 method for LAS wkt(obj) <- value

Value

A st_crs() returns a sf::crs. projection() and crs() return a sp::CRS and should no longer be used.

Arguments

x, object, obj

An object of class LAS*

...

Unused.

value

A CRS or a crs or a proj4string string or WKT string or an EPSG code.

asText

logical. If TRUE, the projection is returned as text. Otherwise a CRS object is returned.

Details

There are two ways to store the CRS of a point cloud in a LAS file:

  • Store an EPSG code (for LAS 1.0 to 1.3)

  • Store a WTK string (for LAS 1.4)

On the other hand, R spatial packages use a crs object to store the CRS. This is why the CRS is duplicated in a LAS object. The information belongs within the header in a format that can be written in a LAS file and in the slot crs, and also in a format that can be understood by other R packages.

  • st_crs return the CRS in sf format.

  • st_crs<-: assigns a CRS from a CRS (sp), a crs (sf), a WKT string, a proj4string or an epsg code. It updates the header of the LAS object either with the EPSG code for LAS formats < 1.4 or with a WKT string

  • epsg: reads the epsg code from the header.

  • wkt: reads the WKT string from the header.

Examples

Run this code
LASfile <- system.file("extdata", "Megaplot.laz", package="lidR")
las <- readLAS(LASfile)

# Get the EPSG code stored in the header (returns 0 if not recorded)
epsg(las)

# Get the WKT string stored in the header (LAS >= 1.4)
wkt(las)

# Overwrite the CRS (but does not reproject)
st_crs(las) <- 26918
las

Run the code above in your browser using DataLab