Package org.vast.ogc.geopose
Interface Pose
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
PoseImpl
Interface for (Geo)Pose implementations.
A pose consists of a position (either geographic or cartesian) and an
orientation. Orientation is always provided w.r.t a cartesian reference
frame that can be either a topocentric LTP reference frame, or a local
engineering reference frame (e.g. platform or sensor frame)
This is a complex type.
-
Method Summary
Modifier and TypeMethodDescriptionstatic PoseImpl.PoseBuilder
create()
Gets the URI of the local frame whose pose is expressed by this objectGets the URI of the local tangent plane (LTP) reference frame (topocentric frame).double[]
Gets the orientation coordinates If 3 coordinates are provided, yaw/pitch/roll Euler angles in degrees about the local (rotated) axes z, y, and x, applied in that order, are assumed. If 4 coordinates are provided, unit quaternion coordinates in the order x,y,z,w are assumed.double[]
Gets the position coordinates (2D or 3D)Gets the URI of the reference frame with respect to which the pose is providedvoid
setLocalFrame
(String uri) Sets the local frame whose pose is expressed by this objectvoid
Sets the LTP reference framevoid
setOrientation
(double[] coords) Sets the orientation coordinates (3 components for Euler angles, 4 for quaternions)void
setPosition
(double[] pos) Sets the position coordinates (2D or 3D)void
setReferenceFrame
(String uri) Sets the pose reference frameConvert pose to a geographic location when possible
-
Method Details
-
getReferenceFrame
String getReferenceFrame()Gets the URI of the reference frame with respect to which the pose is provided- Returns:
- the pose reference frame
-
setReferenceFrame
Sets the pose reference frame- Parameters:
uri
-
-
getLTPReferenceFrame
String getLTPReferenceFrame()Gets the URI of the local tangent plane (LTP) reference frame (topocentric frame). This is only needed if the main reference frame is a geographic or other planetary CRS and orientation is provided relative to the LTP frame.- Returns:
- the LTP reference frame
-
setLTPReferenceFrame
Sets the LTP reference frame- Parameters:
uri
-
-
getLocalFrame
String getLocalFrame()Gets the URI of the local frame whose pose is expressed by this object- Returns:
- the pose local frame
-
setLocalFrame
Sets the local frame whose pose is expressed by this object- Parameters:
uri
-
-
getPosition
double[] getPosition()Gets the position coordinates (2D or 3D)- Returns:
- The position coordinates in the order specified by the reference frame
-
setPosition
void setPosition(double[] pos) Sets the position coordinates (2D or 3D)- Parameters:
pos
- position coordinates in the order specified by the reference frame
-
getOrientation
double[] getOrientation()Gets the orientation coordinates- If 3 coordinates are provided, yaw/pitch/roll Euler angles in degrees about the local (rotated) axes z, y, and x, applied in that order, are assumed.
- If 4 coordinates are provided, unit quaternion coordinates in the order x,y,z,w are assumed.
-
setOrientation
void setOrientation(double[] coords) Sets the orientation coordinates (3 components for Euler angles, 4 for quaternions)- Parameters:
pos
- euler angles or quaternion coordinates- See Also:
-
toLocation
Point toLocation()Convert pose to a geographic location when possible- Returns:
- A point object with coordinates expressed in a geographic coordinate system
-
create
- Returns:
- a builder to build a new Pose object using the default implementation
-