Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

pol2cart

将极坐标或柱坐标转换为笛卡尔坐标

说明

示例

[x,y] = pol2cart(theta,rho) 将极坐标数组 thetarho 的对应元素变换为二维笛卡尔坐标或 xy 坐标。

示例

[x,y,z] = pol2cart(theta,rho,z) 将柱坐标数组 thetarhoz 的对应元素变换为三维笛卡尔坐标或 xyz 坐标。

示例

全部折叠

将矩阵 thetarho 中对应项定义的极坐标转换为二维笛卡尔坐标 xy

theta = [0 pi/4 pi/2 pi]
theta = 1×4

         0    0.7854    1.5708    3.1416

rho = [5 5 10 10]
rho = 1×4

     5     5    10    10

[x,y] = pol2cart(theta,rho)
x = 1×4

    5.0000    3.5355    0.0000  -10.0000

y = 1×4

         0    3.5355   10.0000    0.0000

将矩阵 thetarhoz 中对应项定义的柱坐标转换为三维笛卡尔坐标 xyz

theta = [0 pi/4 pi/2 pi]'
theta = 4×1

         0
    0.7854
    1.5708
    3.1416

rho = [1 3 4 5]'
rho = 4×1

     1
     3
     4
     5

z = [7 8 9 10]'
z = 4×1

     7
     8
     9
    10

[x,y,z] = pol2cart(theta,rho,z)
x = 4×1

    1.0000
    2.1213
    0.0000
   -5.0000

y = 4×1

         0
    2.1213
    4.0000
    0.0000

z = 4×1

     7
     8
     9
    10

输入参数

全部折叠

角坐标,指定为标量、向量、矩阵或多维数组。thetarhoz 必须具有相同的大小或具有兼容的大小(例如,theta 是一个 M×N 矩阵,rho 是标量,z 是标量或 1×N 行向量)。有关详细信息,请参阅基本运算的兼容数组大小

theta 是在 x-y 平面上从 x 轴的正向测量的逆时针角度(以弧度为单位)。

数据类型: single | double
复数支持:

径向坐标,指定为标量、向量、矩阵或多维数组。thetarhoz 的大小必须相同,或具有兼容的大小。

rho 是从原点到 x-y 平面上某点的距离。

数据类型: single | double
复数支持:

仰角坐标,指定为标量、向量、矩阵或多维数组。thetarhoz 的大小必须相同,或具有兼容的大小。

z 是高出 x-y 平面的高度。

数据类型: single | double
复数支持:

输出参数

全部折叠

笛卡尔坐标,以数组形式返回。

算法

从极坐标和柱坐标到笛卡尔坐标的映射:

Figure shows 2-D and 3-D mappings from polar to Cartesian coordinates. The 2-D mapping has X and Y axes, with rho equal to the radius of the point and theta its angle in relation to X. The 3-D mapping additionally has a value for Z that requires no conversion.

扩展功能

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

GPU 代码生成
使用 GPU Coder™ 为 NVIDIA® GPU 生成 CUDA® 代码。

版本历史记录

在 R2006a 之前推出

另请参阅

| |