# platformPoses

Position information for each platform in radar scenario

Since R2021a

## Syntax

``poses = platformPoses(scenario)``
``poses = platformPoses(scenario,format)``
``poses = platformPoses(___,'CoordinateSystem',coordinateSystem)``

## Description

example

````poses = platformPoses(scenario)` returns the current poses for all platforms in the radar scenario, `scenario`. Pose is the position, velocity, and orientation of a platform relative to scenario coordinates.```

example

````poses = platformPoses(scenario,format)` also specifies the format of the returned platform orientation as `'quaternion'` or `'rotmat'`.```
````poses = platformPoses(___,'CoordinateSystem',coordinateSystem)` specifies the coordinate system of the `poses` output argument. You can use this syntax only when the `IsEarthCentered` property of the radar scenario is set to `true`.```

## Examples

collapse all

`rs = radarScenario;`

Add a platform to the scenario.

```plat = platform(rs); plat.Trajectory.Position = [1 1 0]; plat.Trajectory.Orientation = quaternion([90 0 0],'eulerd','ZYX','frame');```

Extract the pose of the platform from the radar scenario.

`poses = platformPoses(rs)`
```poses = struct with fields: PlatformID: 1 ClassID: 0 Position: [1 1 0] Velocity: [0 0 0] Acceleration: [0 0 0] Orientation: [1x1 quaternion] AngularVelocity: [0 0 0] ```

`rs = radarScenario;`

Add a platform to the scenario.

```plat = platform(rs); plat.Trajectory.Position = [1 1 0]; plat.Trajectory.Orientation = quaternion([90 0 0],'eulerd','ZYX','frame');```

Extract the pose orientation in matrix format.

```poses = platformPoses(rs,'rotmat'); poses.Orientation```
```ans = 3×3 0.0000 1.0000 0 -1.0000 0.0000 0 0 0 1.0000 ```

## Input Arguments

collapse all

Radar scenario, specified as a `radarScenario` object.

Pose orientation format, specified as `'quaternion'` or `'rotmat'`. When specified as `'quaternion'`, the `Orientation` field of the platform pose structure is a quaternion. When specified as `'rotmat'`, the `Orientation` field is a rotation matrix.

Data Types: `char` | `string`

Coordinate system in which the function reports poses, specified as one of these values:

• `'Cartesian'` — Report poses using Cartesian coordinates in the Earth-Centered-Earth-Fixed coordinate frame.

• `'Geodetic'` — Report positions using geodetic coordinates (latitude, longitude, and altitude). Report orientation, velocity, and acceleration in the local reference frame of each platform (North-East-Down by default) corresponding to the current waypoint.

Specify this argument only when the `IsEarthCentered` property of the radar scenario, `scenario`, is set to `true`.

Data Types: `char` | `string`

## Output Arguments

collapse all

Poses of all platforms in the radar scenario, returned as a structure or an array of structures. Each structure contains these fields.

FieldDescription
`PlatformID`

Unique identifier for the platform, specified as a positive integer. This is a required field with no default value.

`ClassID`

User-defined integer used to classify the type of target, specified as a nonnegative integer. Zero is reserved for unclassified platform types and is the default value.

`Position`

Position of target in scenario coordinates, specified as a real-valued 1-by-3 row vector.

• If the `coordinateSystem` argument is specified as `'Cartesian'`, then `Position` is a three-element vector of Cartesian position coordinates in meters.

• If the `coordinateSystem` argument is specified as `'Geodetic'`, then `Position` is a three-element vector of geodetic coordinates: latitude in degrees, longitude in degrees, and altitude in meters.

`Velocity`

Velocity of platform in scenario coordinates, specified as a real-valued 1-by-3 row vector. Units are meters per second. The default value is ```[0 0 0]```.

`Acceleration`

Acceleration of the platform in scenario coordinates, specified as a 1-by-3 row vector in meters per second squared. The default value is `[0 0 0]`.

`Orientation`

Orientation of the platform with respect to the local scenario navigation frame, specified as a scalar quaternion or a 3-by-3 rotation matrix. Orientation defines the frame rotation from the local navigation coordinate system to the current platform body coordinate system. Units are dimensionless. The default value is `quaternion(1,0,0,0)`.

`AngularVelocity`

Angular velocity of the platform in scenario coordinates, specified as a real-valued 1-by-3 vector. The magnitude of the vector defines the angular speed. The direction defines the axis of clockwise rotation. Units are degrees per second. The default value is `[0 0 0]`.

Data Types: `struct`

## Version History

Introduced in R2021a