public class
GeospatialPose
Describes a specific location, elevation, and orientation relative to Earth. It is comprised of:
- Latitude and longitude are specified in degrees, with positive values being north of the equator and east of the prime meridian as defined by the WGS84 specification.
- Altitude is specified in meters above the WGS84 ellipsoid, which is roughly equivalent to meters above sea level.
- Orientation approximates the direction the user is facing in the EUS coordinate system. The EUS coordinate system has X+ pointing east, Y+ pointing up, and Z+ pointing south.
- Accuracy of the latitude, longitude, altitude, and orientation are available as numeric confidence intervals where a large value (large interval) means low confidence and small value (small interval) means high confidence.
GeospatialPose
can be retrieved from Earth.getCameraGeospatialPose()
and by
converting a Pose
using Earth.getGeospatialPose(Pose)
.
Public Methods
double
|
getAltitude()
Returns the
GeospatialPose 's altitude in meters as elevation above the WGS84 ellipsoid. |
float[]
|
getEastUpSouthQuaternion()
Extracts the orientation from a Geospatial pose.
|
double
|
getHeading()
This method is deprecated.
This function has been deprecated in favor of
getEastUpSouthQuaternion()
which provides orientation values in 3D space. To determine a value analogous to the
heading value, calculate the yaw, pitch, and roll values from getEastUpSouthQuaternion() . When the device is pointing downwards, i.e. perpendicular to
the ground, heading is analoguous to roll, and when the device is upright in the device's
default orientation mode, heading is analogous to yaw.
|
double
|
getHeadingAccuracy()
This method is deprecated.
This function has deprecated in favor of
getOrientationYawAccuracy() ,
which provides the accuracy analogous to the heading accuracy when the device is held
upright in the default orientation mode.
|
double
|
getHorizontalAccuracy()
Returns the
GeospatialPose 's estimated horizontal accuracy in meters with respect to
latitude and longitude. |
double
|
getLatitude()
Returns the
GeospatialPose 's latitude in degrees. |
double
|
getLongitude()
Returns the
GeospatialPose 's longitude in degrees. |
double
|
getOrientationYawAccuracy()
Returns the
GeospatialPose 's estimated orientation yaw angle accuracy. |
double
|
getVerticalAccuracy()
Returns the
GeospatialPose 's estimated altitude accuracy in meters. |
Inherited Methods
Public Methods
public double getAltitude ()
getAltitude
public double getAltitude()
Returns the GeospatialPose
's altitude in meters as elevation above the WGS84 ellipsoid.
public float[] getEastUpSouthQuaternion ()
getEastUpSouthQuaternion
public float[] getEastUpSouthQuaternion()
Extracts the orientation from a Geospatial pose. The output quaternion represents the rotation matrix transforming a vector from the target to the east-up-south (EUS) coordinate system (i.e. X+ points east, Y+ points up, and Z+ points south). Values are written in the order {x, y, z, w}.
public double getHeading ()
getHeading
public double getHeading()
This method was deprecated.
This function has been deprecated in favor of getEastUpSouthQuaternion()
which provides orientation values in 3D space. To determine a value analogous to the
heading value, calculate the yaw, pitch, and roll values from getEastUpSouthQuaternion()
. When the device is pointing downwards, i.e. perpendicular to
the ground, heading is analoguous to roll, and when the device is upright in the device's
default orientation mode, heading is analogous to yaw.
Returns the GeospatialPose
's heading. Heading is specified in degrees clockwise from
true north and approximates the direction the device is facing. The value returned when facing
north is 0°, when facing east is 90°, when facing south is +/-180°, and when facing west is
-90°.
This function will return heading values for GeospatialPose
from Earth.getCameraGeospatialPose()
and returns 0 for all other GeospatialPose
objects.
You may use getEastUpSouthQuaternion()
instead, which provides a more
detailed orientation in 3D space.
The heading approximation is based on the rotation of the device in its current orientation mode (i.e. portrait or landscape) and pitch. For example, when the device is held vertically or upright, the heading is based on the camera optical axis. If the device is held horizontally, looking downwards, the heading is based on the top of the device, with respect to the orientation mode.
Note: Heading is currently only supported in the device's default orientation mode, which is portrait mode for most supported devices.
Details | |
---|---|
Returns | the heading component of this pose's orientation in [-180.0, 180.0] degree range. |
public double getHeadingAccuracy ()
getHeadingAccuracy
public double getHeadingAccuracy()
This method was deprecated.
This function has deprecated in favor of getOrientationYawAccuracy()
,
which provides the accuracy analogous to the heading accuracy when the device is held
upright in the default orientation mode.
Returns the GeospatialPose
's estimated heading accuracy.
This function will return values for GeospatialPose
from Earth.getCameraGeospatialPose()
and returns 0 for all other GeospatialPose
objects.
We define heading accuracy as the radius of the 68th percentile confidence level around
getHeading()
. In other words, there is a 68% probability that the true
heading is within getHeadingAccuracy()
of this GeospatialPose
's
heading. Larger values indicate lower accuracy.
For example, if the estimated heading is 60°, and the heading accuracy is 10°, then there is an estimated 68% probability of the true heading being between 50° and 70°.
Details | |
---|---|
Returns | the accuracy of the heading confidence in degrees. |
public double getHorizontalAccuracy ()
getHorizontalAccuracy
public double getHorizontalAccuracy()
Returns the GeospatialPose
's estimated horizontal accuracy in meters with respect to
latitude and longitude.
We define horizontal accuracy as the radius of the 68th percentile confidence level around
the estimated horizontal location. In other words, if you draw a circle centered at this GeospatialPose
's latitude and longitude, and with a radius equal to the horizontal accuracy,
then there is a 68% probability that the true location is inside the circle. Larger numbers
indicate lower accuracy.
For example, if the latitude is 10°, longitude is 10°, and the returned value is 15, then there is a 68% probability that the true location is within 15 meters of the (10°, 10°) latitude/longitude coordinate.
Details | |
---|---|
Returns | the estimated horizontal accuracy with respect to latitude and longitude, radial, in meters. |
public double getLatitude ()
getLatitude
public double getLatitude()
Returns the GeospatialPose
's latitude in degrees. Positive values are north of the
equator as defined by the WGS84
specification.
public double getLongitude ()
getLongitude
public double getLongitude()
Returns the GeospatialPose
's longitude in degrees. Positive values are east of the
prime meridian as defined by the WGS84 specification.
public double getOrientationYawAccuracy ()
getOrientationYawAccuracy
public double getOrientationYawAccuracy()
Returns the GeospatialPose
's estimated orientation yaw angle accuracy. Yaw rotation is
the angle between the pose's compass direction and north, and can be determined from getEastUpSouthQuaternion()
.
We define yaw accuracy as the estimated radius of the 68th percentile confidence level
around yaw angles from getEastUpSouthQuaternion()
. In other words, there
is a 68% probability that the true yaw angle is within getOrientationYawAccuracy()
of this GeospatialPose
's orientation.
Larger values indicate lower accuracy.
For example, if the estimated yaw angle is 60°, and the orientation yaw accuracy is 10°, then there is an estimated 68% probability of the true yaw angle being between 50° and 70°.
Details | |
---|---|
Returns | the accuracy of the orientation yaw confidence in degrees. |
public double getVerticalAccuracy ()
getVerticalAccuracy
public double getVerticalAccuracy()
Returns the GeospatialPose
's estimated altitude accuracy in meters.
We define vertical accuracy as the radius of the 68th percentile confidence level around the
estimated altitude. In other words, there is a 68% probability that the true altitude is within
the output value (in meters) of this GeospatialPose
's altitude (above or below). Larger
numbers indicate lower accuracy.
For example, if this GeospatialPose
's altitude is 100 meters, and the output value
is 20 meters, there is a 68% chance that the true altitude is within 20 meters of 100 meters.
Details | |
---|---|
Returns | the estimated vertical accuracy in meters. |