Coordinate System Configuration API
Coordinate system types and enums: reference frames, units, datums, and geodetic options.
Types
| Name | Description |
|---|---|
| CoordinateSystem | Coordinate system specification. |
| GeodeticOptions | Options for geodetic coordinate representation. |
| HorizontalUnit | Unit of measurement for horizontal geodetic coordinates (latitude/longitude). |
| ReferenceFrame | Configuration structures for the Raptor Guide SDK. |
| VerticalDatum | Vertical datum reference for height measurements. |
| VerticalUnit | Unit of measurement for vertical coordinate (height/altitude). |
CoordinateSystem
struct CoordinateSystem
Coordinate system specification.
Defines the complete coordinate system configuration including reference frame, geodetic options, and coordinate epoch for tectonic plate correction.
Variables
| Name | Description |
|---|---|
| referenceFrame | Spatial reference frame for coordinates. |
| geodeticOptions | Geodetic coordinate options (optional). |
| coordinateEpoch | Coordinate epoch for tectonic plate correction (optional). |
Variable Details
referenceFrame
ReferenceFrame referenceFrame
Spatial reference frame for coordinates.
Determines how position and attitude values are interpreted. Choose based on your application's coordinate system.
See: ReferenceFrame for detailed descriptions
geodeticOptions
std::optional<GeodeticOptions> geodeticOptions
Geodetic coordinate options (optional).
Configures units and datum for geodetic coordinates. Only applies when referenceFrame is set to ReferenceFrame::Geodetic. Ignored when using ECEF coordinates.
If not provided, default GeodeticOptions will be used.
See: GeodeticOptions for available options
coordinateEpoch
std::optional<float> coordinateEpoch
Coordinate epoch for tectonic plate correction (optional).
Enables correction for tectonic plate movement between epoch of reference map and epoch of mission, improving accuracy for high-precision applications. Uses GSRM2.1 model for tectonic plate movement.
Year as decimal number (e.g., 2025.0 for January 1st, 2025).
If provided, the epoch should match the mission epoch (i.e., today's date for real-time, recording date for post-processing). Most applications can omit this parameter.
Tectonic plate shift is typically only a few centimeters per year in most locations, so this can be omitted for many applications unless high precision is required.
Models average, long-term plate movement only (GSRM2.1). Does NOT model deformation in zones along tectonic plate borders, compensate for sudden shifts (earthquakes, landslides), or account for local subsidence/uplift from other geological processes.
If not provided, no tectonic correction is applied.
GeodeticOptions
struct GeodeticOptions
Options for geodetic coordinate representation. Configures units and datum for geodetic coordinates when using ReferenceFrame::Geodetic. These options only apply to geodetic mode and are ignored when using ECEF coordinates.
Variables
| Name | Description |
|---|---|
| verticalDatum | Vertical datum reference. |
| horizontalUnit | Unit for latitude and longitude. |
| verticalUnit | Unit for height/altitude. |
Variable Details
verticalDatum
VerticalDatum verticalDatum
Vertical datum reference.
Default: VerticalDatum::Ellipsoid (WGS84)
horizontalUnit
HorizontalUnit horizontalUnit
Unit for latitude and longitude.
Default: HorizontalUnit::Radian
verticalUnit
VerticalUnit verticalUnit
Unit for height/altitude.
Default: VerticalUnit::Meter
HorizontalUnit
enum class HorizontalUnit
Unit of measurement for horizontal geodetic coordinates (latitude/longitude).
Radian : Radians (default).
Latitude and longitude expressed in radians.
Degree : Degrees.
Latitude and longitude expressed in decimal degrees.
ReferenceFrame
enum class ReferenceFrame
Configuration structures for the Raptor Guide SDK. Contains configuration parameters, coordinate system definitions, and related enums for the Raptor Guide SDK. Spatial reference frame for input/output coordinates. Determines how position and attitude values are interpreted. Choose based on your application's coordinate system.
ECEF : Earth-Centered Earth-Fixed (ECEF) coordinates.
- Position: [X, Y, Z] in meters from Earth's center
- Attitude: Rotation relative to ECEF X,Y,Z axes
Geodetic : Geodetic coordinates with local NED orientation.
- Position: [Latitude(rad), Longitude(rad), Height above (WGS84) Ellipsoid(m)]
- Attitude: Rotation relative to local North-East-Down frame
- Recommended when Covariance matrix is provided (pose search in north-east plane is more robust than in ECEF)
VerticalDatum
enum class VerticalDatum
Vertical datum reference for height measurements.
Ellipsoid : WGS84 Ellipsoid (default).
Height above the WGS84 reference ellipsoid (ellipsoidal height). Measurements typically received from GNSS systems. Altitude/height represented as HAE - Height Above Ellipsoid
EGM2008 : EGM2008 Geoid.
Height above the EGM2008 geoid model (orthometric height approximation). Measurements typically received from barometric altimeters. Altitude/height represented as HAMSL - Height Above Mean Sea Level
VerticalUnit
enum class VerticalUnit
Unit of measurement for vertical coordinate (height/altitude).
Meter : Meters (default).
Height expressed in meters.
Foot : Feet.
Height expressed in feet.