lattice_sdk/api/types/
location.rs

1pub use crate::prelude::*;
2
3/// Available for Entities that have a single or primary Location.
4#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
5pub struct Location {
6    /// see Position definition for details.
7    #[serde(skip_serializing_if = "Option::is_none")]
8    pub position: Option<Position>,
9    /// Velocity in an ENU reference frame centered on the corresponding position. All units are meters per second.
10    #[serde(rename = "velocityEnu")]
11    #[serde(skip_serializing_if = "Option::is_none")]
12    pub velocity_enu: Option<Enu>,
13    /// Speed is the magnitude of velocity_enu vector [sqrt(e^2 + n^2 + u^2)] when present, measured in m/s.
14    #[serde(rename = "speedMps")]
15    #[serde(skip_serializing_if = "Option::is_none")]
16    pub speed_mps: Option<f64>,
17    /// The entity's acceleration in meters/s^2.
18    #[serde(skip_serializing_if = "Option::is_none")]
19    pub acceleration: Option<Enu>,
20    /// quaternion to translate from entity body frame to it's ENU frame
21    #[serde(rename = "attitudeEnu")]
22    #[serde(skip_serializing_if = "Option::is_none")]
23    pub attitude_enu: Option<Quaternion>,
24}