主要内容

本页采用了机器翻译。点击此处可查看英文原文。

aer2enu

将局部球坐标系转换为局部东北天坐标系

说明

[xEast,yNorth,zUp] = aer2enu(az,elev,slantRange) 将由 azelevslantRange 指定的局部方位角 - 仰角 - 距离 (AER) 球面坐标转换为由 xEastyNorthzUp 指定的局部东北天 (ENU) 笛卡尔坐标。两个坐标系都使用相同的局部原点。每个输入参数的大小必须与其他参数一致,或为标量。

示例

[___] = aer2enu(___,angleUnit) 指定方位角和仰角的单位。将 angleUnit 指定为 'degrees'(默认值)或 'radians'

示例

全部折叠

一个传感器捕获了附近地面车辆的 AER 坐标。利用车辆相对于同一传感器的 AER 坐标,求出车辆相对于该传感器的 ENU 坐标。

首先,指定车辆的 AER 坐标。请以度为单位指定方位角和仰角。例如,在此示例中,请以米为单位指定斜距。

az = 34.1160;
elev = 4.1931;
slantRange = 15.1070; 

然后,计算车辆的 ENU 坐标。ENU 坐标的单位与斜距所指定的单位一致。因此,ENU 坐标以米为单位表示。

[xEast,yNorth,zUp] = aer2enu(az,elev,slantRange)
xEast = 
8.4504
yNorth = 
12.4737
zUp = 
1.1046

使用 enu2aer 函数逆转转换。

[az,elev,slantRange] = enu2aer(xEast,yNorth,zUp)
az = 
34.1160
elev = 
4.1931
slantRange = 
15.1070

输入参数

全部折叠

本地 AER 坐标系中一个或多个点的方位角,指定为标量、向量、矩阵或 N 维数组。方位角以北为起点顺时针测量。请以度为单位指定值。要使用弧度值,请将 angleUnit 参数指定为 'radians'

数据类型: single | double

局部 AER 坐标系中一个或多个点的仰角,指定为标量、向量、矩阵或 N 维数组。请以包含局部原点的 xEast-yNorth 平面为基准指定高程。若局部原点位于椭球体表面,则 xEast-yNorth 平面与该椭球体相切。

请以度为单位指定值。要使用弧度值,请将 angleUnit 参数指定为 'radians'

数据类型: single | double

相对于本地原点的距离,指定为标量、向量、矩阵或 N 维数组。请将每段距离指定为沿一条三维笛卡尔直线测量的距离。

数据类型: single | double

角度单位,指定为 "degrees"(默认值)或 "radians"

输出参量

全部折叠

局部东北天 (ENU) 坐标系中一个或多个点的 ENU x 坐标,以标量、向量、矩阵或 N 维数组形式返回。返回值的单位与 slantRange 参量的单位相同。

局部东北天 (ENU) 坐标系中一个或多个点的 ENU y 坐标,以标量、向量、矩阵或 N 维数组形式返回。返回值的单位与 slantRange 参量的单位相同。

局部东北天 (ENU) 坐标系中一个或多个点的 ENU z 坐标,以标量、向量、矩阵或 N 维数组形式返回。返回值的单位与 slantRange 参量的单位相同。

扩展功能

全部展开

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

版本历史记录

在 R2012b 中推出

全部展开