Obtain an sf::crs
or fm_crs
object from a spatial object, or
convert crs information to construct a new sf::crs
object.
fm_crs_is_null(x)fm_crs(x, ..., crsonly = FALSE)
fm_crs_oblique(x)
fm_crs_oblique(x) <- value
# S3 method for fm_crs
print(x, ...)
# S3 method for default
fm_crs(x, ..., crsonly = FALSE)
# S3 method for fm_crs
st_crs(x, ...)
# S3 method for fm_crs
$(x, name)
# S3 method for fm_crs
fm_crs(x, ..., crsonly = FALSE)
# S3 method for inla.CRS
fm_crs(x, ..., crsonly = FALSE)
# S3 method for character
fm_crs(x, ..., crsonly = FALSE)
# S3 method for Spatial
fm_crs(x, ..., crsonly = FALSE)
# S3 method for SpatVector
fm_crs(x, ..., crsonly = FALSE)
# S3 method for SpatRaster
fm_crs(x, ..., crsonly = FALSE)
# S3 method for sf
fm_crs(x, ..., crsonly = FALSE)
# S3 method for sfc
fm_crs(x, ..., crsonly = FALSE)
# S3 method for sfg
fm_crs(x, ..., crsonly = FALSE)
# S3 method for inla.mesh
fm_crs(x, ..., crsonly = FALSE)
# S3 method for inla.mesh.lattice
fm_crs(x, ..., crsonly = FALSE)
# S3 method for inla.mesh.segment
fm_crs(x, ..., crsonly = FALSE)
fm_wkt_predef()
Either an sf::crs
object or an fm_crs
object,
depending on if the coordinate reference system described by the parameters
can be expressed with a pure crs
object or not.
A crs
object (sf::st_crs()
) or a fm_crs
object.
An S3 fm_crs
object is a list with elements crs
and oblique
.
fm_wkt_predef
returns a WKT2 string defining a projection
Object to convert to crs
or to extract crs
information from.
If character
, a string suitable for sf::st_crs(x)
, or the name of a
predefined wkt
string from ``names(fm_wkt_predef())`.
Additional parameters. Not currently in use.
logical; if TRUE
, remove any oblique
information
for fm_crs
class objects and return a pure crs
class object. Default: FALSE
.
Vector of length at most 4 of rotation angles (in degrees) for an oblique projection, all values defaulting to zero. The values indicate (longitude, latitude, orientation, orbit), as explained in the Details section below.
element name
st_crs(fm_crs)
: st_crs(x, ...)
is equivalent to fm_crs(x, ..., crsonly = TRUE)
when x
is a fm_crs
object.
$
: For a fm_crs
object x
, x$name
calls the accessor method for the
crs
object inside it. If name
is "crs", the internal crs object itself is returned.
If name
is "oblique", the internal oblique angle parameter vector is returned.
fm_crs_is_null()
: Check if an object is or has NULL
or NA
CRS information
Finn Lindgren finn.lindgren@gmail.com
The first two
elements of the oblique
vector are the (longitude, latitude)
coordinates for the oblique centre point. The third value (orientation) is a
counterclockwise rotation angle for an observer looking at the centre point
from outside the sphere. The fourth value is the quasi-longitude (orbit
angle) for a rotation along the oblique observers equator.
Simple oblique: oblique=c(0, 45)
Polar: oblique=c(0, 90)
Quasi-transversal: oblique=c(0, 0, 90)
Satellite orbit viewpoint: oblique=c(lon0-time*v1, 0, orbitangle, orbit0+time*v2)
, where lon0
is the longitude at which a satellite
orbit crosses the equator at time=0
, when the satellite is at an
angle orbit0
further along in its orbit. The orbital angle relative
to the equatorial plane is orbitangle
, and v1
and v2
are the angular velocities of the planet and the satellite, respectively.
Note that "forward" from the satellite's point of view is "to the right" in
the projection.
When oblique[2]
or oblique[3]
are non-zero, the resulting
projection is only correct for perfect spheres.
sf::st_crs()
, fm_crs_wkt
crs1 <- fm_crs("longlat_globe")
crs2 <- fm_crs("lambert_globe")
crs3 <- fm_crs("mollweide_norm")
crs4 <- fm_crs("hammer_globe")
crs5 <- fm_crs("sphere")
crs6 <- fm_crs("globe")
if (FALSE) {
names(fm_wkt_predef())
}
Run the code above in your browser using DataLab